cryptlib/cryptlib.spec

changeset 566
c371e003ecc3
parent 85
e6a1cd7ed6ba
     1.1 --- a/cryptlib/cryptlib.spec	Tue Aug 28 18:34:05 2012 +0200
     1.2 +++ b/cryptlib/cryptlib.spec	Tue Aug 28 18:34:10 2012 +0200
     1.3 @@ -22,9 +22,9 @@
     1.4  ##
     1.5  
     1.6  #   package version
     1.7 -%define       V_full  3.3.2
     1.8 -%define       V_comp  332
     1.9 -%define       V_track 332
    1.10 +%define       V_full  3.4.1
    1.11 +%define       V_comp  341
    1.12 +%define       V_track 341
    1.13  
    1.14  #   package information
    1.15  Name:         cryptlib
    1.16 @@ -37,35 +37,31 @@
    1.17  Group:        Cryptography
    1.18  License:      MIT-style
    1.19  Version:      %{V_full}
    1.20 -Release:      20090106
    1.21 +Release:      20120800
    1.22  
    1.23  #   list of sources
    1.24  Source0:      ftp://ftp.franken.de/pub/crypt/cryptlib/cl%{V_comp}.zip
    1.25  Source1:      ftp://ftp.franken.de/pub/crypt/cryptlib/manual.pdf
    1.26 -Source2:      bn-sol.s
    1.27 +Source2:      c-sol.s
    1.28  Patch0:       cryptlib.patch
    1.29  
    1.30  #   build information
    1.31 -Prefix:       %{l_prefix}
    1.32 -BuildRoot:    %{l_buildroot}
    1.33 -BuildPreReq:  OpenPKG, openpkg >= 20040130, make, gcc, infozip
    1.34 -PreReq:       OpenPKG, openpkg >= 20040130
    1.35 -AutoReq:      no
    1.36 -AutoReqProv:  no
    1.37 +BuildPreReq:  OpenPKG, openpkg >= 20100101, infozip, make, gcc
    1.38 +PreReq:       OpenPKG, openpkg >= 20100101
    1.39  
    1.40  %description
    1.41      CryptLib is a powerful security toolkit which allows even
    1.42      inexperienced crypto programmers to easily add encryption and
    1.43 -    authentication services to their software. The high-level interface
    1.44 +    authentication services to their software. The high level interface
    1.45      provides anyone with the ability to add strong security capabilities
    1.46      to an application in as little as half an hour, without needing
    1.47 -    to know any of the low-level details which make the encryption
    1.48 +    to know any of the low level details which make the encryption
    1.49      or authentication work. Because of this, cryptlib dramatically
    1.50      reduces the cost involved in adding security to new or existing
    1.51      applications. CryptLib provides a standardised interface to a number
    1.52 -    of popular encryption algorithms, as well as providing a high-level
    1.53 +    of popular encryption algorithms, as well as providing a high level
    1.54      interface which hides most of the implementation details and
    1.55 -    provides an operating-system-independent encoding method which makes
    1.56 +    provides an operating system independent encoding method which makes
    1.57      it easy to transfer secured data from one operating environment to
    1.58      another.
    1.59  
    1.60 @@ -80,18 +76,38 @@
    1.61  %prep
    1.62      %setup -q -c -T
    1.63      %{l_prefix}/bin/unzip -q -x %{SOURCE0}
    1.64 -    cp %{SOURCE bn-sol.s} bn/
    1.65      %patch -p0
    1.66 -    %{l_shtool} subst -e 's;\r$;;' tools/*.pl tools/*.sh
    1.67 -    %{l_shtool} subst -e 's;-xO3 *;;g' 's; *-O;;g' makefile
    1.68 -    %{l_shtool} subst -e 's; *-O[1234];;g' 's; *-O;;g' makefile
    1.69 +
    1.70 +    #   repair 'can't open crypt/c-sol.s for reading'
    1.71 +    cp %{SOURCE c-sol.s} bn/bn-sol.s
    1.72 +    cp %{SOURCE c-sol.s} crypt/
    1.73 +
    1.74 +    #   remove CR causing build failure
    1.75 +    %{l_shtool} subst -e 's;\r$;;' tools/*.sh
    1.76 +
    1.77 +    #   disable automatic detection
    1.78 +    %{l_shtool} subst \
    1.79 +        -e 's;if \[ .*/sql.h \];if false;g' \
    1.80 +        -e 's;if \[ .*/ldap.h \];if false;g' \
    1.81 +        tools/ccopts.sh
    1.82 +
    1.83 +    #   allow for parallel build
    1.84 +    %{l_shtool} subst \
    1.85 +        -e 's;@\([\.\-]\);@+\1;g' \
    1.86 +        -e 's;@\(make\);@+\1;g' \
    1.87 +        makefile
    1.88 +
    1.89 +    #   special handling for GCC
    1.90 +    if [ ".`(%{l_cc} -v; %{l_cc} --version) </dev/null 2>&1 | grep -i 'gcc'`" != . ]; then
    1.91 +        %{l_shtool} subst -e 's;-xO\([0-9] *\);-O\1;g' makefile
    1.92 +    fi
    1.93  
    1.94  %build
    1.95 +    %{l_make} babies love cookies
    1.96      %{l_make} %{l_mflags -O} \
    1.97          CC="%{l_cc} %{l_cflags -O}"
    1.98  
    1.99  %install
   1.100 -    rm -rf $RPM_BUILD_ROOT
   1.101      %{l_shtool} mkdir -f -p -m 755 \
   1.102          $RPM_BUILD_ROOT%{l_prefix}/include \
   1.103          $RPM_BUILD_ROOT%{l_prefix}/lib \
   1.104 @@ -109,5 +125,4 @@
   1.105  %files -f files
   1.106  
   1.107  %clean
   1.108 -    rm -rf $RPM_BUILD_ROOT
   1.109  

mercurial