Mon, 28 Jan 2013 17:37:18 +0100
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 |