cryptlib/cryptlib.spec

Mon, 28 Jan 2013 17:37:18 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Mon, 28 Jan 2013 17:37:18 +0100
changeset 758
a2c6460cfb16
parent 85
e6a1cd7ed6ba
permissions
-rw-r--r--

Correct socket error reporting improvement with IPv6 portable code,
after helpful recommendation by Saúl Ibarra Corretgé on OSips devlist.

michael@37 1 ##
michael@37 2 ## cryptlib.spec -- OpenPKG RPM Package Specification
michael@37 3 ## Copyright (c) 2000-2008 OpenPKG Foundation e.V. <http://openpkg.net/>
michael@37 4 ##
michael@37 5 ## Permission to use, copy, modify, and distribute this software for
michael@37 6 ## any purpose with or without fee is hereby granted, provided that
michael@37 7 ## the above copyright notice and this permission notice appear in all
michael@37 8 ## copies.
michael@37 9 ##
michael@37 10 ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
michael@37 11 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
michael@37 12 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
michael@37 13 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
michael@37 14 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
michael@37 15 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
michael@37 16 ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
michael@37 17 ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
michael@37 18 ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
michael@37 19 ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
michael@37 20 ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
michael@37 21 ## SUCH DAMAGE.
michael@37 22 ##
michael@37 23
michael@37 24 # package version
michael@566 25 %define V_full 3.4.1
michael@566 26 %define V_comp 341
michael@566 27 %define V_track 341
michael@37 28
michael@37 29 # package information
michael@37 30 Name: cryptlib
michael@37 31 Summary: Cryptography Library
michael@37 32 URL: http://www.cs.auckland.ac.nz/~pgut001/cryptlib/
michael@37 33 Vendor: Peter Gutmann
michael@37 34 Packager: OpenPKG Foundation e.V.
michael@37 35 Distribution: OpenPKG Community
michael@37 36 Class: EVAL
michael@37 37 Group: Cryptography
michael@37 38 License: MIT-style
michael@37 39 Version: %{V_full}
michael@566 40 Release: 20120800
michael@37 41
michael@37 42 # list of sources
michael@37 43 Source0: ftp://ftp.franken.de/pub/crypt/cryptlib/cl%{V_comp}.zip
michael@37 44 Source1: ftp://ftp.franken.de/pub/crypt/cryptlib/manual.pdf
michael@566 45 Source2: c-sol.s
michael@37 46 Patch0: cryptlib.patch
michael@37 47
michael@37 48 # build information
michael@566 49 BuildPreReq: OpenPKG, openpkg >= 20100101, infozip, make, gcc
michael@566 50 PreReq: OpenPKG, openpkg >= 20100101
michael@37 51
michael@37 52 %description
michael@37 53 CryptLib is a powerful security toolkit which allows even
michael@37 54 inexperienced crypto programmers to easily add encryption and
michael@566 55 authentication services to their software. The high level interface
michael@37 56 provides anyone with the ability to add strong security capabilities
michael@37 57 to an application in as little as half an hour, without needing
michael@566 58 to know any of the low level details which make the encryption
michael@37 59 or authentication work. Because of this, cryptlib dramatically
michael@37 60 reduces the cost involved in adding security to new or existing
michael@37 61 applications. CryptLib provides a standardised interface to a number
michael@566 62 of popular encryption algorithms, as well as providing a high level
michael@37 63 interface which hides most of the implementation details and
michael@566 64 provides an operating system independent encoding method which makes
michael@37 65 it easy to transfer secured data from one operating environment to
michael@37 66 another.
michael@37 67
michael@37 68 %track
michael@37 69 prog cryptlib = {
michael@37 70 version = %{V_track}
michael@37 71 url = ftp://ftp.franken.de/pub/crypt/cryptlib/
michael@37 72 regex = cl(__VER__)\.zip
michael@37 73 transform = "s/^(\d\d)$/${1}0/, $_"
michael@37 74 }
michael@37 75
michael@37 76 %prep
michael@37 77 %setup -q -c -T
michael@37 78 %{l_prefix}/bin/unzip -q -x %{SOURCE0}
michael@37 79 %patch -p0
michael@566 80
michael@566 81 # repair 'can't open crypt/c-sol.s for reading'
michael@566 82 cp %{SOURCE c-sol.s} bn/bn-sol.s
michael@566 83 cp %{SOURCE c-sol.s} crypt/
michael@566 84
michael@566 85 # remove CR causing build failure
michael@566 86 %{l_shtool} subst -e 's;\r$;;' tools/*.sh
michael@566 87
michael@566 88 # disable automatic detection
michael@566 89 %{l_shtool} subst \
michael@566 90 -e 's;if \[ .*/sql.h \];if false;g' \
michael@566 91 -e 's;if \[ .*/ldap.h \];if false;g' \
michael@566 92 tools/ccopts.sh
michael@566 93
michael@566 94 # allow for parallel build
michael@566 95 %{l_shtool} subst \
michael@566 96 -e 's;@\([\.\-]\);@+\1;g' \
michael@566 97 -e 's;@\(make\);@+\1;g' \
michael@566 98 makefile
michael@566 99
michael@566 100 # special handling for GCC
michael@566 101 if [ ".`(%{l_cc} -v; %{l_cc} --version) </dev/null 2>&1 | grep -i 'gcc'`" != . ]; then
michael@566 102 %{l_shtool} subst -e 's;-xO\([0-9] *\);-O\1;g' makefile
michael@566 103 fi
michael@37 104
michael@37 105 %build
michael@566 106 %{l_make} babies love cookies
michael@38 107 %{l_make} %{l_mflags -O} \
michael@37 108 CC="%{l_cc} %{l_cflags -O}"
michael@37 109
michael@37 110 %install
michael@37 111 %{l_shtool} mkdir -f -p -m 755 \
michael@37 112 $RPM_BUILD_ROOT%{l_prefix}/include \
michael@37 113 $RPM_BUILD_ROOT%{l_prefix}/lib \
michael@37 114 $RPM_BUILD_ROOT%{l_prefix}/share/cryptlib
michael@37 115 %{l_shtool} install -c -m 644 \
michael@37 116 cryptlib.h $RPM_BUILD_ROOT%{l_prefix}/include/
michael@37 117 %{l_shtool} install -c -m 644 \
michael@37 118 libcl.a $RPM_BUILD_ROOT%{l_prefix}/lib/libcryptlib.a
michael@37 119 %{l_shtool} install -c -m 644 \
michael@37 120 %{SOURCE manual.pdf} $RPM_BUILD_ROOT%{l_prefix}/share/cryptlib/
michael@37 121 %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
michael@37 122 %{l_files_std} \
michael@37 123 '%doc %{l_prefix}/share/cryptlib/manual.pdf'
michael@37 124
michael@37 125 %files -f files
michael@37 126
michael@37 127 %clean
michael@37 128

mercurial