| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180 |
- ##
- ## gnupg2.spec -- OpenPKG RPM Package Specification
- ## Copyright (c) 2000-2007 OpenPKG Foundation e.V. <http://openpkg.net/>
- ## Copyright (c) 2000-2007 Ralf S. Engelschall <http://engelschall.com/>
- ##
- ## Permission to use, copy, modify, and distribute this software for
- ## any purpose with or without fee is hereby granted, provided that
- ## the above copyright notice and this permission notice appear in all
- ## copies.
- ##
- ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
- ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- ## SUCH DAMAGE.
- ##
- # package information
- Name: gnupg2
- Summary: GNU Privacy Guard
- URL: http://www.gnupg.org/
- Vendor: Werner Koch
- Packager: OpenPKG Foundation e.V.
- Distribution: OpenPKG Community
- Class: EVAL
- Group: PGP
- License: GPL
- Version: 2.0.4
- Release: 20070509
- # package options
- %option with_curl yes
- %option with_idea no
- %option with_ldap no
- # list of sources
- Source0: ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-%{version}.tar.bz2
- Source1: ftp://ftp.gnupg.dk/pub/contrib-dk/idea.c.gz
- Patch0: gnupg2.patch
- # build information
- Prefix: %{l_prefix}
- BuildRoot: %{l_buildroot}
- BuildPreReq: OpenPKG, openpkg >= 20040130, make
- PreReq: OpenPKG, openpkg >= 20040130, pinentry
- BuildPreReq: gcrypt, libksba, libassuan, gpg-error, zlib, bzip2, readline, pth, libiconv
- PreReq: gcrypt, libksba, libassuan, gpg-error, zlib, bzip2, readline, pth, libiconv
- %if "%{with_curl}" == "yes"
- BuildPreReq: curl, openssl
- PreReq: curl, openssl
- %endif
- %if "%{with_ldap}" == "yes"
- BuildPreReq: openldap, openssl
- PreReq: openldap, openssl
- %endif
- AutoReq: no
- AutoReqProv: no
- %description
- GnuPG (GNU Privacy Guard) is a GNU utility for encrypting data and
- creating digital signatures. GnuPG has advanced key management
- capabilities and is compliant with the proposed OpenPGP Internet
- standard described in RFC2440. Since GnuPG doesn't use any patented
- algorithm, it is not compatible with any version of PGP2 (PGP2.x
- uses only IDEA, patented worldwide).
- %track
- prog gnupg2 = {
- version = %{version}
- url = ftp://ftp.gnupg.org/gcrypt/gnupg/
- regex = gnupg-(2\.__VER__)\.tar\.(gz|bz2)
- }
- %prep
- %setup -q -n gnupg-%{version}
- %if "%{with_idea}" == "yes"
- %{l_gzip} -d -c %{SOURCE idea.c.gz} >cipher/idea.c
- %endif
- %patch -p0
- %build
- # configure program
- export LIBS=""
- echo "int main(int argc, char *argv[]) { return 0; }" >dummy.c
- for lib in termcap termlib curses ncurses; do
- rc=0; %{l_cc} -o dummy dummy.c -l$lib >/dev/null 2>&1 || rc=1
- if [ $rc -eq 0 ]; then LIBS="$LIBS -l$lib"; break; fi
- done
- %if "%{with_curl}" == "yes" || "%{with_ldap}" == "yes"
- LIBS="$LIBS -lssl -lcrypto"
- %endif
- %if "%{with_curl}" == "yes"
- LIBS="$LIBS -lz"
- %endif
- LIBS="$LIBS -liconv"
- export CC="%{l_cc}"
- export CFLAGS="%{l_cflags -O}"
- export CPPFLAGS="%{l_cppflags}"
- export LDFLAGS="%{l_ldflags}"
- ./configure \
- --prefix=%{l_prefix} \
- --datadir=%{l_prefix}/share/gnupg2 \
- --mandir=%{l_prefix}/man \
- --infodir=%{l_prefix}/info \
- --with-zlib=%{l_prefix} \
- --with-bzip2=%{l_prefix} \
- --with-readline=%{l_prefix} \
- --with-libiconv-prefix=%{l_prefix} \
- --with-gpg-error-prefix=%{l_prefix} \
- --with-libgcrypt-prefix=%{l_prefix} \
- --with-libassuan-prefix=%{l_prefix} \
- --with-ksba-prefix=%{l_prefix} \
- --with-pth-prefix=%{l_prefix} \
- --with-agent-pgm=%{l_prefix}/bin/gpg-agent \
- --with-pinentry-pgm=%{l_prefix}/bin/pinentry \
- --with-dirmngr-pgm=%{l_prefix}/bin/dirmngr \
- --with-included-regex \
- %if "%{with_curl}" == "yes"
- --with-libcurl=%{l_prefix} \
- %else
- --without-libcurl \
- %endif
- --without-included-gettext \
- --without-libintl-prefix \
- --disable-nls \
- --disable-scdaemon \
- --enable-generic \
- --enable-finger \
- --enable-hkp \
- %if "%{with_ldap}" == "yes"
- --enable-ldap \
- %else
- --disable-ldap \
- %endif
- %if "%{with_curl}" == "yes"
- --with-libcurl=%{l_prefix} \
- %else
- --without-libcurl \
- %endif
- --enable-exec \
- --enable-keyserver-helpers \
- --with-mailprog="%{l_prefix}/sbin/sendmail" \
- --disable-mailto
- # build program
- %{l_make} %{l_mflags}
- %install
- # install program
- rm -rf $RPM_BUILD_ROOT
- %{l_make} %{l_mflags} install AM_MAKEFLAGS="DESTDIR=$RPM_BUILD_ROOT"
- # strip down and post-adjust installation files
- strip $RPM_BUILD_ROOT%{l_prefix}/bin/* 2>/dev/null || true
- strip $RPM_BUILD_ROOT%{l_prefix}/libexec/gnupg/* 2>/dev/null || true
- rm -f $RPM_BUILD_ROOT%{l_prefix}/info/dir
- rm -f $RPM_BUILD_ROOT%{l_prefix}/man/man1/scdaemon.1
- mv $RPM_BUILD_ROOT%{l_prefix}/bin/gpgsm-gencert.sh \
- $RPM_BUILD_ROOT%{l_prefix}/bin/gpgsm-gencert
- mv $RPM_BUILD_ROOT%{l_prefix}/man/man1/gpgsm-gencert.sh.1 \
- $RPM_BUILD_ROOT%{l_prefix}/man/man1/gpgsm-gencert.1
- # determine installation files
- %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
- %{l_files_std} \
- '%attr(4755,%{l_susr},%{l_mgrp}) %{l_prefix}/bin/gpg2'
- %files -f files
- %clean
- rm -rf $RPM_BUILD_ROOT
|