1 |
commit: e3ccf22ff4505f2d99a78a187826c490eb7a38dd |
2 |
Author: Alon Bar-Lev <alonbl <AT> gentoo <DOT> org> |
3 |
AuthorDate: Thu Aug 31 18:52:03 2017 +0000 |
4 |
Commit: Alon Bar-Lev <alonbl <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Aug 31 18:52:19 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e3ccf22f |
7 |
|
8 |
dev-libs/cryptlib: version bump (beta) |
9 |
|
10 |
Package-Manager: Portage-2.3.6, Repoman-2.3.1 |
11 |
|
12 |
dev-libs/cryptlib/Manifest | 2 + |
13 |
dev-libs/cryptlib/cryptlib-3.4.3.1-r2.ebuild | 1 + |
14 |
....4.3.1-r2.ebuild => cryptlib-3.4.4_beta.ebuild} | 73 ++++++++++++++++------ |
15 |
.../cryptlib/files/cryptlib-3.4.4_beta-build.patch | 25 ++++++++ |
16 |
4 files changed, 83 insertions(+), 18 deletions(-) |
17 |
|
18 |
diff --git a/dev-libs/cryptlib/Manifest b/dev-libs/cryptlib/Manifest |
19 |
index c4284aeb356..898863be77a 100644 |
20 |
--- a/dev-libs/cryptlib/Manifest |
21 |
+++ b/dev-libs/cryptlib/Manifest |
22 |
@@ -1,2 +1,4 @@ |
23 |
DIST cl3431.zip 5828863 SHA256 4a608d725f66669d983083420f9f57f763f320292c50346de3e8c1caeee743bd SHA512 d6a3403361fe39b855ec85b030989c5dfc54e499260869de0de151ad6f62245020561dd308b86edf6792da9663e19a0c0d21c53aa7434b21e83eb4b7445fd8dc WHIRLPOOL eccc446361f7daa9cf5a017ae7e229b2003f198490b9cae1bed61fd7bd585e9a08ec54c6c035ba2c4f3e8a58d3eb9756a61f608d5a299c8cc66b159a87e95874 |
24 |
+DIST cl344beta.zip 4433862 SHA256 f661e3f26944465fa9492cd17b339710d457da86d85d66e801f14fc4ba617411 SHA512 5144162b101c62e02fdaab20030a2fd3fb3b7a75cdf8a8160a3616f8e23d8f4a8db0eb9b1116d89f8c93e9be348b0458c22f3674e1d6c50f7380e50f60ad2483 WHIRLPOOL cc8f6e7e1ff3641e59ec8ade9034caca11e1b6b0e8801bd5da8b03104aee372d0a8f205f04829a8a6ec5fd0bad1736230b2d24733037a64dd401106e09d43a1f |
25 |
DIST cryptlib-3.4.0-manual.pdf.bz2 1215921 SHA256 b06b736e6e123f578adcd08a8ede6cdb62e3e6d4ac2decb3570def1b29d44da8 SHA512 dbf9914a110a686dc23fedd23c16cefbae12cc67e378db67ac292f8f782b3b615a5819013f2b9c4861086c7ddfab690db9d68a911346102def323255cf48069b WHIRLPOOL 8cc64ab7ffe8a97714e793dd3dfe36708e7e2c7ec583479c593d767de22b860be5bcf0a70427f6f2e7e1d9732ec4ba2d2b3f1617f97bb649c0298924e4a93fb6 |
26 |
+DIST cryptlib-3.4.4_beta-manual.pdf 3497791 SHA256 0317cde5a4d6967ceaf49471fe911c0238e78a233465d52755404f07ad2873a5 SHA512 3440aa86ac9672dfff302054c3868856d0dbc1a9ada47cfeed3761f7b3dc17cd45950ce24127ef5832803596263fa34bc6bfdd7a7b369f68959b4b93d59a3435 WHIRLPOOL af53cd9328931ea7dfb8f2c65dc7265fe52db70f1e3b1d487bc10228fc8e6a53b18a0947e57e61e68e087c70a593b8799b5dfc7fd3bbf7825661afefd972aca4 |
27 |
|
28 |
diff --git a/dev-libs/cryptlib/cryptlib-3.4.3.1-r2.ebuild b/dev-libs/cryptlib/cryptlib-3.4.3.1-r2.ebuild |
29 |
index 54b2988b4ac..e6c6f90c117 100644 |
30 |
--- a/dev-libs/cryptlib/cryptlib-3.4.3.1-r2.ebuild |
31 |
+++ b/dev-libs/cryptlib/cryptlib-3.4.3.1-r2.ebuild |
32 |
@@ -72,6 +72,7 @@ src_prepare() { |
33 |
src_compile() { |
34 |
use ldap && append-cppflags -DHAS_LDAP |
35 |
use odbc && append-cppflags -DHAS_ODBC |
36 |
+ append-cppflags -DHAS_ZLIB |
37 |
|
38 |
export DISABLE_AUTODETECT=1 |
39 |
emake EXTRA_CFLAGS="${CPPFLAGS} ${CFLAGS}" shared |
40 |
|
41 |
diff --git a/dev-libs/cryptlib/cryptlib-3.4.3.1-r2.ebuild b/dev-libs/cryptlib/cryptlib-3.4.4_beta.ebuild |
42 |
similarity index 61% |
43 |
copy from dev-libs/cryptlib/cryptlib-3.4.3.1-r2.ebuild |
44 |
copy to dev-libs/cryptlib/cryptlib-3.4.4_beta.ebuild |
45 |
index 54b2988b4ac..7bca33567f3 100644 |
46 |
--- a/dev-libs/cryptlib/cryptlib-3.4.3.1-r2.ebuild |
47 |
+++ b/dev-libs/cryptlib/cryptlib-3.4.4_beta.ebuild |
48 |
@@ -9,15 +9,16 @@ DISTUTILS_OPTIONAL=1 |
49 |
inherit distutils-r1 flag-o-matic multilib toolchain-funcs versionator |
50 |
|
51 |
MY_PV="${PV//.}" |
52 |
+MY_PV="${MY_PV//_}" |
53 |
|
54 |
DESCRIPTION="Powerful security toolkit for adding encryption to software" |
55 |
HOMEPAGE="http://www.cs.auckland.ac.nz/~pgut001/cryptlib/" |
56 |
DOC_PREFIX="${PN}-$(get_version_component_range 1-2 ${PV}).0" |
57 |
-SRC_URI="ftp://ftp.franken.de/pub/crypt/cryptlib/cl${MY_PV}.zip |
58 |
- doc? ( mirror://gentoo/${DOC_PREFIX}-manual.pdf.bz2 )" |
59 |
+SRC_URI="http://www.cypherpunks.to/~peter/cl${MY_PV}.zip |
60 |
+ doc? ( http://www.cypherpunks.to/~peter/manual.pdf -> ${P}-manual.pdf )" |
61 |
|
62 |
LICENSE="Sleepycat" |
63 |
-KEYWORDS="amd64 x86" |
64 |
+KEYWORDS="" |
65 |
SLOT="0" |
66 |
IUSE="doc ldap odbc python static-libs test" |
67 |
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" |
68 |
@@ -33,16 +34,18 @@ DEPEND="${RDEPEND} |
69 |
|
70 |
PATCHES=( |
71 |
"${FILESDIR}/${P}-build.patch" |
72 |
- "${FILESDIR}/${P}-zlib.patch" |
73 |
) |
74 |
|
75 |
+# |
76 |
# test access the network |
77 |
+# upstream provides no way to disable these |
78 |
+# tests |
79 |
+# |
80 |
RESTRICT="test" |
81 |
|
82 |
src_unpack() { |
83 |
# we need the -a option, so we can not use 'unpack' |
84 |
unzip -qoa "${DISTDIR}/cl${MY_PV}.zip" || die |
85 |
- use doc && unpack "${DOC_PREFIX}-manual.pdf.bz2" |
86 |
} |
87 |
|
88 |
wrap_python() { |
89 |
@@ -52,19 +55,41 @@ wrap_python() { |
90 |
fi |
91 |
} |
92 |
|
93 |
+pkg_setup() { |
94 |
+ # |
95 |
+ # Disable upstream detection |
96 |
+ # Non standard and hardcoded methods |
97 |
+ # |
98 |
+ export DISABLE_AUTODETECT=1 |
99 |
+ |
100 |
+ # |
101 |
+ # Add our own CFLAGS/CPPFLAGS |
102 |
+ # |
103 |
+ export EXTRA_CFLAGS="${CPPFLAGS} ${CFLAGS}" |
104 |
+} |
105 |
+ |
106 |
src_prepare() { |
107 |
default |
108 |
|
109 |
- rm -fr zlib || die |
110 |
+ # |
111 |
+ # Make sure we do not use the embedded zlib |
112 |
+ # |
113 |
+ rm -fr zlib || die "remove zlib" |
114 |
|
115 |
- # we want our own CFLAGS ;-) |
116 |
- sed -i -e "s:-m.*=pentium::g" -e "s:-fomit-frame-pointer::g" -e "s:-O2::g" \ |
117 |
+ # |
118 |
+ # Upstream package should not set optimization flags |
119 |
+ # Or at least allow simple method to disable behavior |
120 |
+ # |
121 |
+ sed -i -e "s:-fomit-frame-pointer::g" -e "s:-O2::g" \ |
122 |
-e "s:-O3::g" -e "s:-O4::g" makefile || die "sed makefile failed" |
123 |
sed -i -e "s/-march=[[:alnum:]\.=-]*//g" -e "s/-mcpu=[[:alnum:]\.=-]*//g" \ |
124 |
-e "s:-O2::g" -e "s:-O3::g" tools/ccopts.sh || die "sed tools/ccopts.sh failed" |
125 |
|
126 |
- # change 'make' to '$(MAKE)' |
127 |
- sed -i -e "s:@\?make:\$(MAKE):g" makefile || die "sed makefile failed" |
128 |
+ # |
129 |
+ # Not sure why MAKE = make is required |
130 |
+ # make sets this to correct value |
131 |
+ # |
132 |
+ sed -i -e "/^MAKE/d" makefile || die "sed makefile make failed" |
133 |
|
134 |
wrap_python ${FUNCNAME} |
135 |
} |
136 |
@@ -73,16 +98,25 @@ src_compile() { |
137 |
use ldap && append-cppflags -DHAS_LDAP |
138 |
use odbc && append-cppflags -DHAS_ODBC |
139 |
|
140 |
- export DISABLE_AUTODETECT=1 |
141 |
- emake EXTRA_CFLAGS="${CPPFLAGS} ${CFLAGS}" shared |
142 |
- use static-libs && emake EXTRA_CFLAGS="${CPPFLAGS} ${CFLAGS}" default |
143 |
- use test && emake EXTRA_CFLAGS="${CPPFLAGS} ${CFLAGS}" stestlib |
144 |
+ # |
145 |
+ # Disable internal zlib dependnecies |
146 |
+ # For some reason this applied also when |
147 |
+ # System zlib is being used |
148 |
+ # |
149 |
+ COMMON_MAKE_OPTS="ZLIBOBJS= CC=$(tc-getCC) AR=$(tc-getAR) STRIP=true" |
150 |
+ emake ${COMMON_MAKE_OPTS} shared |
151 |
+ use static-libs && emake ${COMMON_MAKE_OPTS} default |
152 |
+ use test && emake ${COMMON_MAKE_OPTS} stestlib |
153 |
|
154 |
# |
155 |
+ # Symlink the libraries. |
156 |
+ # |
157 |
# Without this: |
158 |
# 1. python will link against the static lib |
159 |
# 2. tests will not work find soname. |
160 |
# |
161 |
+ # Bad upstream behavior |
162 |
+ # |
163 |
local libname="libcl.so.$(get_version_component_range 1-3 ${PV})" |
164 |
local solibname="libcl.so.$(get_version_component_range 1-2 ${PV})" |
165 |
ln -s "${libname}" "${solibname}" || die |
166 |
@@ -100,14 +134,17 @@ src_test() { |
167 |
src_install() { |
168 |
einstalldocs |
169 |
|
170 |
+ # |
171 |
+ # Upstream does not provide |
172 |
+ # a simple target for install |
173 |
+ # |
174 |
doheader cryptlib.h |
175 |
- |
176 |
dolib.so libcl.so* |
177 |
use static-libs && dolib.a libcl.a |
178 |
|
179 |
+ wrap_python ${FUNCNAME} |
180 |
+ |
181 |
if use doc; then |
182 |
- newdoc "${DOC_PREFIX}-manual.pdf" "manual.pdf" |
183 |
+ newdoc "${DISTDIR}/${P}-manual.pdf" "manual.pdf" |
184 |
fi |
185 |
- |
186 |
- wrap_python ${FUNCNAME} |
187 |
} |
188 |
|
189 |
diff --git a/dev-libs/cryptlib/files/cryptlib-3.4.4_beta-build.patch b/dev-libs/cryptlib/files/cryptlib-3.4.4_beta-build.patch |
190 |
new file mode 100644 |
191 |
index 00000000000..1a99287c6f3 |
192 |
--- /dev/null |
193 |
+++ b/dev-libs/cryptlib/files/cryptlib-3.4.4_beta-build.patch |
194 |
@@ -0,0 +1,25 @@ |
195 |
+From 188dce32ea9c58271c8ce48ab02a3b255498bf9f Mon Sep 17 00:00:00 2001 |
196 |
+From: Alon Bar-Lev <alon.barlev@×××××.com> |
197 |
+Date: Sat, 4 Feb 2017 05:08:47 +0200 |
198 |
+Subject: [PATCH] build: allow specify additional CFLAGS |
199 |
+ |
200 |
+Signed-off-by: Alon Bar-Lev <alon.barlev@×××××.com> |
201 |
+--- |
202 |
+ makefile | 2 +- |
203 |
+ 1 file changed, 1 insertion(+), 1 deletion(-) |
204 |
+ |
205 |
+diff --git a/makefile b/makefile |
206 |
+index cb9884c..827a78a 100644 |
207 |
+--- a/makefile |
208 |
++++ b/makefile |
209 |
+@@ -90,7 +90,7 @@ DYLIBNAME = lib$(PROJ).$(MAJ).$(MIN).dylib |
210 |
+ # Further cc flags are gathered dynamically at runtime via the ccopts.sh |
211 |
+ # script. |
212 |
+ |
213 |
+-CFLAGS = -c -D__UNIX__ -DNDEBUG -I. |
214 |
++CFLAGS = -c -D__UNIX__ -DNDEBUG -I. $(EXTRA_CFLAGS) |
215 |
+ CFLAGS_ANALYSE = -c -D__UNIX__ -I. |
216 |
+ CFLAGS_COVERAGE = -c -D__UNIX__ -I. -ggdb3 -fno-omit-frame-pointer -O1 --coverage -fprofile-arcs -ftest-coverage |
217 |
+ CFLAGS_DEBUG = -c -D__UNIX__ -I. -ggdb3 -fno-omit-frame-pointer -O0 |
218 |
+-- |
219 |
+2.10.2 |