Gentoo Archives: gentoo-commits

From: Quentin Retornaz <gentoo@××××××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/libressl:master commit in: dev-libs/libressl/, dev-libs/libressl/files/
Date: Sun, 25 Apr 2021 15:55:36
Message-Id: 1619366056.1c68a4fd4b3f817f1fe596f737b039cc93343552.quentin@gentoo
1 commit: 1c68a4fd4b3f817f1fe596f737b039cc93343552
2 Author: Quentin Retornaz <gentoo <AT> retornaz <DOT> com>
3 AuthorDate: Sun Apr 25 15:54:16 2021 +0000
4 Commit: Quentin Retornaz <gentoo <AT> retornaz <DOT> com>
5 CommitDate: Sun Apr 25 15:54:16 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/libressl.git/commit/?id=1c68a4fd
7
8 dev-libs/libressl: move from ::gentoo
9
10 Package-Manager: Portage-3.0.18, Repoman-3.0.2
11 Signed-off-by: Quentin Retornaz <gentoo <AT> retornaz.com>
12
13 dev-libs/libressl/Manifest | 10 ++++
14 .../libressl/files/libressl-2.8.3-solaris10.patch | 69 ++++++++++++++++++++++
15 .../libressl/files/libressl-2.9.2-non-glibc.patch | 32 ++++++++++
16 dev-libs/libressl/files/libressl-3.2.2-build.patch | 56 ++++++++++++++++++
17 dev-libs/libressl/libressl-2.9.2.ebuild | 63 ++++++++++++++++++++
18 dev-libs/libressl/libressl-3.0.2.ebuild | 62 +++++++++++++++++++
19 dev-libs/libressl/libressl-3.1.3.ebuild | 62 +++++++++++++++++++
20 dev-libs/libressl/libressl-3.1.4.ebuild | 62 +++++++++++++++++++
21 dev-libs/libressl/libressl-3.1.5.ebuild | 62 +++++++++++++++++++
22 dev-libs/libressl/libressl-3.2.0.ebuild | 62 +++++++++++++++++++
23 dev-libs/libressl/libressl-3.2.1.ebuild | 62 +++++++++++++++++++
24 dev-libs/libressl/libressl-3.2.3.ebuild | 62 +++++++++++++++++++
25 dev-libs/libressl/libressl-3.3.0.ebuild | 63 ++++++++++++++++++++
26 dev-libs/libressl/libressl-3.3.1.ebuild | 63 ++++++++++++++++++++
27 dev-libs/libressl/metadata.xml | 30 ++++++++++
28 15 files changed, 820 insertions(+)
29
30 diff --git a/dev-libs/libressl/Manifest b/dev-libs/libressl/Manifest
31 new file mode 100644
32 index 0000000..5150e4c
33 --- /dev/null
34 +++ b/dev-libs/libressl/Manifest
35 @@ -0,0 +1,10 @@
36 +DIST libressl-2.9.2.tar.gz 3607549 BLAKE2B 496e993e4f1c85167e0344afab61259d4e3f094a7e5dfac85878191070e2c196753162532efb921fab582481aeda3705fca9a2b48921cba82465192f2c1eef95 SHA512 b43e73e47c1f14da3c702ab42f29f1d67645a4fa425441337bd6c125b481ef78a40fd13e6b34dadb2af337e1c0c190cfb616186d4db9c9a743a37e594b9b8033
37 +DIST libressl-3.0.2.tar.gz 3669468 BLAKE2B 84ad2c1fea8d2119f191ec8ab3f999fb0354636d48aabb76fa1786139c669c9d8ca105d79cc8416dd20683818eccc84490cdadc9ca94cb2b0e411644e923a3d6 SHA512 19226da3bc9776e1da40b8e94dfa53564d5e6acc80edee539ba12d7a75c1bb8c0603e7633f26a6ef8b12adc56bb677ccda448575aa6be2ad3df5447465a4b080
38 +DIST libressl-3.1.3.tar.gz 3766345 BLAKE2B 4956fa0ae6030e9e9969d584db3bc0084c4b155207d1472ebfa40c8e68e925214b66ed1bc7e32d98a9a48de0b61909323a0380a973c724422c92bfe88b9fdfb2 SHA512 f9f497fe5d09b8b762175da038a8e67d9d2567462fefc49e434d306a3071ba3a4d369c89143d9d90e3bbcc7b9ba051c9c923a0dfc41d856edc08ae59fa727ee8
39 +DIST libressl-3.1.4.tar.gz 3767238 BLAKE2B e639349e50f985360f2cef01b16b5c8f3c725d4a9bbee1117787174e4de6eb9b14cc8ad5f1704971057dd0f5000eea01f3b172178c534c70d38921418034d94c SHA512 77a53c4294fc332006502dc3af069346e2c9efc9240de7f91eb48e89043525900b5b23652cfd159221c3a482cc01e263611adb752e23b707f965156e3a7cd895
40 +DIST libressl-3.1.5.tar.gz 3767605 BLAKE2B 9dc97caac831591c150ef0fc9b36970e5c18b1793294b074b5c42176cd7eafbdb713461757edab7072fc0a770480db5987252c9a960cfebeaa3ef5341de2a290 SHA512 b1e576a654d4f740ef466e5291344ee9a65276f2a1d4975bf93c407b8b51d78dd99f381f1d14162ed1f6b6e7f14a67ccdd377e7d9f71ef2875cc8cf17f580c51
41 +DIST libressl-3.2.0.tar.gz 3775925 BLAKE2B 99d74fad16e272be8e3b23b873c35970ce3693e088baf365670ad8e8cbb846e90f4232bbc6c65b70a35060da99b9b210b3debce1c78d531e810de26e3e2f05cb SHA512 e8bf95af4e4e855b0462eb12df8f802102a3bee5bb40fb1859e7c40d9e3ce89f0d2eb0acdd923e7c592b4aeb7ecc556f753c0a12d0dace05d2ef342bffdd9d07
42 +DIST libressl-3.2.1.tar.gz 3798341 BLAKE2B 25d4d0fa758d92fd781f39000e631d7cec0a5a8210b2b127b7d49ef0e96e1a20a45f60e6231dcbe379f57f19c1ca8a4dde6205b1cc52ee44d17a4a21da34c98a SHA512 0204177ad0291f3fce4c77ab21cce17785d0239f2ae4be8fbdce5575cc98775186caa0e1851b211c05be07e3cc603111eeaac4379c8977e7b140fedee2551f93
43 +DIST libressl-3.2.3.tar.gz 3839953 BLAKE2B 219c9c2e78952d56dd9eadb92c9732f426cbdd20a2dc905d827ca0547a347065f3347e960dee7456994d8d52d8cb19a028add3e9f343a20864dbb15f4e6654c8 SHA512 8c281f5a155a4cc9bfeb31767d8c29de6ceec602649ff98460c44c4b2c15999799d5549ce07a823a4f7f20f9b441f8718b3ef8eac19ddb6cf6d150e6fe8c9d13
44 +DIST libressl-3.3.0.tar.gz 3837684 BLAKE2B 0b2947fa00f86829b574beedc462ed7e602b417f057c8bcf966508952e10c17709a4ea484e4b8699eee2cee228e00518a25c9eedd96534273c56a467cdc0c39b SHA512 3ea1339719b85234e4db8753eb11b760b9969bf0917d2556126bb048fc41022def628995587e438781092dcc49233109641b174f156cc4ec451fe8a217372cec
45 +DIST libressl-3.3.1.tar.gz 3838592 BLAKE2B 67c5bd72c1d1085c13fd3bf2e3829a6b83d61c3c9af5f5e65dca7548abe967f0ec8ebe3c46c6af576c54304b432069aab9d940bded90925cb44fffa7a8f35c29 SHA512 a0a6c10af71c6932a63381f33b2d0fe38b28d1c3c62c0c2de770695152f6eb3c558fdedd2fb6cdf34bd9a2dd3887aec615b652cbc3c1eed6c3c973c787a0c294
46
47 diff --git a/dev-libs/libressl/files/libressl-2.8.3-solaris10.patch b/dev-libs/libressl/files/libressl-2.8.3-solaris10.patch
48 new file mode 100644
49 index 0000000..20a0af0
50 --- /dev/null
51 +++ b/dev-libs/libressl/files/libressl-2.8.3-solaris10.patch
52 @@ -0,0 +1,69 @@
53 +From libressl Thu Jul 21 09:25:08 2016
54 +From: schily () schily ! net (Joerg Schilling)
55 +Date: Thu, 21 Jul 2016 09:25:08 +0000
56 +To: libressl
57 +Subject: Non-portable code in ./crypto/compat/getentropy_solaris.c
58 +Message-Id: <579094f4.Ca9M384ri4oiBOIa%schily () schily ! net>
59 +X-MARC-Message: https://marc.info/?l=libressl&m=146910737815443
60 +
61 +Hi,
62 +
63 +the code works only on Solaris based on OpenSolaris-ON from February 18 2010 or
64 +later.
65 +
66 +Many people however still use Solaris 10.
67 +
68 +BTW: there is an official portable ELF way based on the AUX vector to do the same
69 +but this was unfortunately not made a public libc interface, so it would need to
70 +be incorporated into your code:
71 +
72 +https://sourceforge.net/p/schillix-on/schillix-on/ci/default/tree/usr/src/lib/libc/port/gen/getauxv.c
73 +
74 +___getauxptr(AT_PHDR) returns the address of &phdr[0]
75 +___getauxval(AT_PHENT) returns sizeof(phdr[0])
76 +___getauxval(AT_PHNUM) returns # phdr entries
77 +
78 +
79 +Here is a patch to disable the non-portable code getting the code to compile at
80 +all:
81 +
82 +
83 +
84 +--- a/crypto/compat/getentropy_solaris.c
85 ++++ b/crypto/compat/getentropy_solaris.c
86 +@@ -72,7 +72,9 @@
87 + static int getentropy_urandom(void *buf, size_t len, const char *path,
88 + int devfscheck);
89 + static int getentropy_fallback(void *buf, size_t len);
90 ++#ifdef ElfW
91 + static int getentropy_phdr(struct dl_phdr_info *info, size_t size, void *data);
92 ++#endif
93 +
94 + int
95 + getentropy(void *buf, size_t len)
96 +@@ -244,6 +246,7 @@
97 + #endif
98 + };
99 +
100 ++#ifdef ElfW
101 + static int
102 + getentropy_phdr(struct dl_phdr_info *info, size_t size, void *data)
103 + {
104 +@@ -252,6 +255,7 @@
105 + SHA512_Update(ctx, &info->dlpi_addr, sizeof (info->dlpi_addr));
106 + return (0);
107 + }
108 ++#endif
109 +
110 + static int
111 + getentropy_fallback(void *buf, size_t len)
112 +@@ -290,7 +294,9 @@
113 + cnt += (int)tv.tv_usec;
114 + }
115 +
116 ++#ifdef ElfW
117 + dl_iterate_phdr(getentropy_phdr, &ctx);
118 ++#endif
119 +
120 + for (ii = 0; ii < sizeof(cl)/sizeof(cl[0]); ii++)
121 + HX(clock_gettime(cl[ii], &ts) == -1, ts);
122
123 diff --git a/dev-libs/libressl/files/libressl-2.9.2-non-glibc.patch b/dev-libs/libressl/files/libressl-2.9.2-non-glibc.patch
124 new file mode 100644
125 index 0000000..b00316d
126 --- /dev/null
127 +++ b/dev-libs/libressl/files/libressl-2.9.2-non-glibc.patch
128 @@ -0,0 +1,32 @@
129 +From a9f0b2143c3154da34b8798127263f6f11f61bd5 Mon Sep 17 00:00:00 2001
130 +From: Ishimoto Shinobu <47295761+protonesso@××××××××××××××××××××.com>
131 +Date: Tue, 21 May 2019 22:41:05 +0900
132 +Subject: [PATCH] avoid glibc
133 +
134 +cause problems on musl systems
135 +
136 +Upstream-Status: Backport
137 +[https://github.com/libressl-portable/portable/pull/529]
138 +Signed-off-by: Stefan Strogin <steils@g.o>
139 +---
140 + crypto/compat/getprogname_linux.c | 4 +---
141 + 1 file changed, 1 insertion(+), 3 deletions(-)
142 +
143 +diff --git a/crypto/compat/getprogname_linux.c b/crypto/compat/getprogname_linux.c
144 +index 2c89743..4e7e31f 100644
145 +--- a/crypto/compat/getprogname_linux.c
146 ++++ b/crypto/compat/getprogname_linux.c
147 +@@ -26,9 +26,7 @@ getprogname(void)
148 + #if defined(__ANDROID_API__) && __ANDROID_API__ < 21
149 + extern const char *__progname;
150 + return __progname;
151 +-#elif defined(__GLIBC__)
152 +- return program_invocation_short_name;
153 + #else
154 +-#error "Cannot emulate getprogname"
155 ++ return program_invocation_short_name;
156 + #endif
157 + }
158 +--
159 +2.21.0
160 +
161
162 diff --git a/dev-libs/libressl/files/libressl-3.2.2-build.patch b/dev-libs/libressl/files/libressl-3.2.2-build.patch
163 new file mode 100644
164 index 0000000..586e7a7
165 --- /dev/null
166 +++ b/dev-libs/libressl/files/libressl-3.2.2-build.patch
167 @@ -0,0 +1,56 @@
168 +From 9abd36e3af5876f67c633f27496ad5660ab7fe24 Mon Sep 17 00:00:00 2001
169 +From: Brent Cook <busterb@×××××.com>
170 +Date: Sun, 18 Oct 2020 22:14:03 -0500
171 +Subject: [PATCH] modify nc build to link libcompat objects directly
172 +
173 +Rather than assuming the static version of libcrypto exists for pulling in the compatibility functions, link the compat objects directly. This modifies the object file generation script a bit to handle the empty-case properly as well.
174 +---
175 + apps/nc/Makefile.am | 8 ++++++--
176 + crypto/Makefile.am | 4 ++--
177 + 2 files changed, 8 insertions(+), 4 deletions(-)
178 +
179 +diff --git a/apps/nc/Makefile.am b/apps/nc/Makefile.am
180 +index d678f1eda..58b5c0118 100644
181 +--- a/apps/nc/Makefile.am
182 ++++ b/apps/nc/Makefile.am
183 +@@ -1,5 +1,7 @@
184 + include $(top_srcdir)/Makefile.am.common
185 +
186 ++-include $(abs_top_builddir)/crypto/libcrypto_la_objects.mk
187 ++
188 + if BUILD_NC
189 +
190 + if ENABLE_NC
191 +@@ -12,11 +14,13 @@ endif
192 + EXTRA_DIST = nc.1
193 + EXTRA_DIST += CMakeLists.txt
194 +
195 +-nc_LDFLAGS = $(abs_top_builddir)/crypto/.libs/libcrypto.a
196 +-
197 + nc_LDADD = $(abs_top_builddir)/tls/libtls.la
198 + nc_LDADD += $(PLATFORM_LDADD) $(PROG_LDADD)
199 +
200 ++nc_LDADD += $(libcrypto_la_objects)
201 ++nc_LDADD += $(libcompat_la_objects)
202 ++nc_LDADD += $(libcompatnoopt_la_objects)
203 ++
204 + AM_CPPFLAGS += -I$(top_srcdir)/apps/nc/compat
205 +
206 + nc_SOURCES = atomicio.c
207 +diff --git a/crypto/Makefile.am b/crypto/Makefile.am
208 +index 97a84e1a7..e32ca96c3 100644
209 +--- a/crypto/Makefile.am
210 ++++ b/crypto/Makefile.am
211 +@@ -99,10 +99,10 @@ libcrypto_la_objects.mk: Makefile
212 + | sed 's/ */ $$\(abs_top_builddir\)\/crypto\//g' \
213 + > libcrypto_la_objects.mk
214 + @echo "libcompat_la_objects= $(libcompat_la_OBJECTS)" \
215 +- | sed 's/ */ $$\(abs_top_builddir\)\/crypto\//g' \
216 ++ | sed 's/compat\// $$\(abs_top_builddir\)\/crypto\/&/g' \
217 + >> libcrypto_la_objects.mk
218 + @echo "libcompatnoopt_la_objects= $(libcompatnoopt_la_OBJECTS)" \
219 +- | sed 's/ */ $$\(abs_top_builddir\)\/crypto\//g' \
220 ++ | sed 's/compat\// $$\(abs_top_builddir\)\/crypto\/&/g' \
221 + >> libcrypto_la_objects.mk
222 +
223 + libcrypto_la_LDFLAGS = -version-info @LIBCRYPTO_VERSION@ -no-undefined -export-symbols crypto_portable.sym
224
225 diff --git a/dev-libs/libressl/libressl-2.9.2.ebuild b/dev-libs/libressl/libressl-2.9.2.ebuild
226 new file mode 100644
227 index 0000000..515b2a4
228 --- /dev/null
229 +++ b/dev-libs/libressl/libressl-2.9.2.ebuild
230 @@ -0,0 +1,63 @@
231 +# Copyright 1999-2021 Gentoo Authors
232 +# Distributed under the terms of the GNU General Public License v2
233 +
234 +EAPI=6
235 +
236 +inherit multilib-minimal libtool
237 +
238 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
239 +HOMEPAGE="https://www.libressl.org/"
240 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
241 +
242 +LICENSE="ISC openssl"
243 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
244 +# we'll try to use the max of either. However, if either change between
245 +# versions, we have to change the subslot to trigger rebuild of consumers.
246 +SLOT="0/47"
247 +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
248 +IUSE="+asm static-libs test"
249 +RESTRICT="!test? ( test )"
250 +REQUIRED_USE="test? ( static-libs )"
251 +
252 +DEPEND="${RDEPEND}"
253 +PDEPEND="app-misc/ca-certificates"
254 +
255 +src_prepare() {
256 + touch crypto/Makefile.in
257 +
258 + sed -i \
259 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
260 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
261 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
262 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
263 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
264 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
265 + configure || die "fixing CFLAGS failed"
266 +
267 + if ! use test ; then
268 + sed -i \
269 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
270 + Makefile.in || die "Removing tests failed"
271 + fi
272 +
273 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
274 + eapply "${FILESDIR}"/${P}-non-glibc.patch
275 + eapply_user
276 +
277 + elibtoolize # for Solaris
278 +}
279 +
280 +multilib_src_configure() {
281 + ECONF_SOURCE="${S}" econf \
282 + $(use_enable asm) \
283 + $(use_enable static-libs static)
284 +}
285 +
286 +multilib_src_test() {
287 + emake check
288 +}
289 +
290 +multilib_src_install_all() {
291 + einstalldocs
292 + find "${D}" -name '*.la' -exec rm -f {} + || die
293 +}
294
295 diff --git a/dev-libs/libressl/libressl-3.0.2.ebuild b/dev-libs/libressl/libressl-3.0.2.ebuild
296 new file mode 100644
297 index 0000000..06fccf5
298 --- /dev/null
299 +++ b/dev-libs/libressl/libressl-3.0.2.ebuild
300 @@ -0,0 +1,62 @@
301 +# Copyright 1999-2021 Gentoo Authors
302 +# Distributed under the terms of the GNU General Public License v2
303 +
304 +EAPI=7
305 +
306 +inherit multilib-minimal libtool
307 +
308 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
309 +HOMEPAGE="https://www.libressl.org/"
310 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
311 +
312 +LICENSE="ISC openssl"
313 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
314 +# we'll try to use the max of either. However, if either change between
315 +# versions, we have to change the subslot to trigger rebuild of consumers.
316 +SLOT="0/47"
317 +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 ~sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
318 +IUSE="+asm static-libs test"
319 +RESTRICT="!test? ( test )"
320 +REQUIRED_USE="test? ( static-libs )"
321 +
322 +DEPEND="${RDEPEND}"
323 +PDEPEND="app-misc/ca-certificates"
324 +
325 +src_prepare() {
326 + touch crypto/Makefile.in
327 +
328 + sed -i \
329 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
330 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
331 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
332 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
333 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
334 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
335 + configure || die "fixing CFLAGS failed"
336 +
337 + if ! use test ; then
338 + sed -i \
339 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
340 + Makefile.in || die "Removing tests failed"
341 + fi
342 +
343 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
344 + eapply_user
345 +
346 + elibtoolize # for Solaris
347 +}
348 +
349 +multilib_src_configure() {
350 + ECONF_SOURCE="${S}" econf \
351 + $(use_enable asm) \
352 + $(use_enable static-libs static)
353 +}
354 +
355 +multilib_src_test() {
356 + emake check
357 +}
358 +
359 +multilib_src_install_all() {
360 + einstalldocs
361 + find "${D}" -name '*.la' -exec rm -f {} + || die
362 +}
363
364 diff --git a/dev-libs/libressl/libressl-3.1.3.ebuild b/dev-libs/libressl/libressl-3.1.3.ebuild
365 new file mode 100644
366 index 0000000..e7248a0
367 --- /dev/null
368 +++ b/dev-libs/libressl/libressl-3.1.3.ebuild
369 @@ -0,0 +1,62 @@
370 +# Copyright 1999-2021 Gentoo Authors
371 +# Distributed under the terms of the GNU General Public License v2
372 +
373 +EAPI=7
374 +
375 +inherit multilib-minimal libtool
376 +
377 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
378 +HOMEPAGE="https://www.libressl.org/"
379 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
380 +
381 +LICENSE="ISC openssl"
382 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
383 +# we'll try to use the max of either. However, if either change between
384 +# versions, we have to change the subslot to trigger rebuild of consumers.
385 +SLOT="0/48"
386 +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
387 +IUSE="+asm static-libs test"
388 +RESTRICT="!test? ( test )"
389 +REQUIRED_USE="test? ( static-libs )"
390 +
391 +DEPEND="${RDEPEND}"
392 +PDEPEND="app-misc/ca-certificates"
393 +
394 +src_prepare() {
395 + touch crypto/Makefile.in
396 +
397 + sed -i \
398 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
399 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
400 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
401 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
402 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
403 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
404 + configure || die "fixing CFLAGS failed"
405 +
406 + if ! use test ; then
407 + sed -i \
408 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
409 + Makefile.in || die "Removing tests failed"
410 + fi
411 +
412 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
413 + eapply_user
414 +
415 + elibtoolize # for Solaris
416 +}
417 +
418 +multilib_src_configure() {
419 + ECONF_SOURCE="${S}" econf \
420 + $(use_enable asm) \
421 + $(use_enable static-libs static)
422 +}
423 +
424 +multilib_src_test() {
425 + emake check
426 +}
427 +
428 +multilib_src_install_all() {
429 + einstalldocs
430 + find "${D}" -name '*.la' -exec rm -f {} + || die
431 +}
432
433 diff --git a/dev-libs/libressl/libressl-3.1.4.ebuild b/dev-libs/libressl/libressl-3.1.4.ebuild
434 new file mode 100644
435 index 0000000..e7248a0
436 --- /dev/null
437 +++ b/dev-libs/libressl/libressl-3.1.4.ebuild
438 @@ -0,0 +1,62 @@
439 +# Copyright 1999-2021 Gentoo Authors
440 +# Distributed under the terms of the GNU General Public License v2
441 +
442 +EAPI=7
443 +
444 +inherit multilib-minimal libtool
445 +
446 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
447 +HOMEPAGE="https://www.libressl.org/"
448 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
449 +
450 +LICENSE="ISC openssl"
451 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
452 +# we'll try to use the max of either. However, if either change between
453 +# versions, we have to change the subslot to trigger rebuild of consumers.
454 +SLOT="0/48"
455 +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
456 +IUSE="+asm static-libs test"
457 +RESTRICT="!test? ( test )"
458 +REQUIRED_USE="test? ( static-libs )"
459 +
460 +DEPEND="${RDEPEND}"
461 +PDEPEND="app-misc/ca-certificates"
462 +
463 +src_prepare() {
464 + touch crypto/Makefile.in
465 +
466 + sed -i \
467 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
468 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
469 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
470 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
471 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
472 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
473 + configure || die "fixing CFLAGS failed"
474 +
475 + if ! use test ; then
476 + sed -i \
477 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
478 + Makefile.in || die "Removing tests failed"
479 + fi
480 +
481 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
482 + eapply_user
483 +
484 + elibtoolize # for Solaris
485 +}
486 +
487 +multilib_src_configure() {
488 + ECONF_SOURCE="${S}" econf \
489 + $(use_enable asm) \
490 + $(use_enable static-libs static)
491 +}
492 +
493 +multilib_src_test() {
494 + emake check
495 +}
496 +
497 +multilib_src_install_all() {
498 + einstalldocs
499 + find "${D}" -name '*.la' -exec rm -f {} + || die
500 +}
501
502 diff --git a/dev-libs/libressl/libressl-3.1.5.ebuild b/dev-libs/libressl/libressl-3.1.5.ebuild
503 new file mode 100644
504 index 0000000..e7248a0
505 --- /dev/null
506 +++ b/dev-libs/libressl/libressl-3.1.5.ebuild
507 @@ -0,0 +1,62 @@
508 +# Copyright 1999-2021 Gentoo Authors
509 +# Distributed under the terms of the GNU General Public License v2
510 +
511 +EAPI=7
512 +
513 +inherit multilib-minimal libtool
514 +
515 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
516 +HOMEPAGE="https://www.libressl.org/"
517 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
518 +
519 +LICENSE="ISC openssl"
520 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
521 +# we'll try to use the max of either. However, if either change between
522 +# versions, we have to change the subslot to trigger rebuild of consumers.
523 +SLOT="0/48"
524 +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
525 +IUSE="+asm static-libs test"
526 +RESTRICT="!test? ( test )"
527 +REQUIRED_USE="test? ( static-libs )"
528 +
529 +DEPEND="${RDEPEND}"
530 +PDEPEND="app-misc/ca-certificates"
531 +
532 +src_prepare() {
533 + touch crypto/Makefile.in
534 +
535 + sed -i \
536 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
537 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
538 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
539 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
540 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
541 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
542 + configure || die "fixing CFLAGS failed"
543 +
544 + if ! use test ; then
545 + sed -i \
546 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
547 + Makefile.in || die "Removing tests failed"
548 + fi
549 +
550 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
551 + eapply_user
552 +
553 + elibtoolize # for Solaris
554 +}
555 +
556 +multilib_src_configure() {
557 + ECONF_SOURCE="${S}" econf \
558 + $(use_enable asm) \
559 + $(use_enable static-libs static)
560 +}
561 +
562 +multilib_src_test() {
563 + emake check
564 +}
565 +
566 +multilib_src_install_all() {
567 + einstalldocs
568 + find "${D}" -name '*.la' -exec rm -f {} + || die
569 +}
570
571 diff --git a/dev-libs/libressl/libressl-3.2.0.ebuild b/dev-libs/libressl/libressl-3.2.0.ebuild
572 new file mode 100644
573 index 0000000..d487867
574 --- /dev/null
575 +++ b/dev-libs/libressl/libressl-3.2.0.ebuild
576 @@ -0,0 +1,62 @@
577 +# Copyright 1999-2021 Gentoo Authors
578 +# Distributed under the terms of the GNU General Public License v2
579 +
580 +EAPI=7
581 +
582 +inherit multilib-minimal libtool
583 +
584 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
585 +HOMEPAGE="https://www.libressl.org/"
586 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
587 +
588 +LICENSE="ISC openssl"
589 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
590 +# we'll try to use the max of either. However, if either change between
591 +# versions, we have to change the subslot to trigger rebuild of consumers.
592 +SLOT="0/48"
593 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
594 +IUSE="+asm static-libs test"
595 +RESTRICT="!test? ( test )"
596 +REQUIRED_USE="test? ( static-libs )"
597 +
598 +DEPEND="${RDEPEND}"
599 +PDEPEND="app-misc/ca-certificates"
600 +
601 +src_prepare() {
602 + touch crypto/Makefile.in
603 +
604 + sed -i \
605 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
606 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
607 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
608 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
609 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
610 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
611 + configure || die "fixing CFLAGS failed"
612 +
613 + if ! use test ; then
614 + sed -i \
615 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
616 + Makefile.in || die "Removing tests failed"
617 + fi
618 +
619 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
620 + eapply_user
621 +
622 + elibtoolize # for Solaris
623 +}
624 +
625 +multilib_src_configure() {
626 + ECONF_SOURCE="${S}" econf \
627 + $(use_enable asm) \
628 + $(use_enable static-libs static)
629 +}
630 +
631 +multilib_src_test() {
632 + emake check
633 +}
634 +
635 +multilib_src_install_all() {
636 + einstalldocs
637 + find "${D}" -name '*.la' -exec rm -f {} + || die
638 +}
639
640 diff --git a/dev-libs/libressl/libressl-3.2.1.ebuild b/dev-libs/libressl/libressl-3.2.1.ebuild
641 new file mode 100644
642 index 0000000..d487867
643 --- /dev/null
644 +++ b/dev-libs/libressl/libressl-3.2.1.ebuild
645 @@ -0,0 +1,62 @@
646 +# Copyright 1999-2021 Gentoo Authors
647 +# Distributed under the terms of the GNU General Public License v2
648 +
649 +EAPI=7
650 +
651 +inherit multilib-minimal libtool
652 +
653 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
654 +HOMEPAGE="https://www.libressl.org/"
655 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
656 +
657 +LICENSE="ISC openssl"
658 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
659 +# we'll try to use the max of either. However, if either change between
660 +# versions, we have to change the subslot to trigger rebuild of consumers.
661 +SLOT="0/48"
662 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
663 +IUSE="+asm static-libs test"
664 +RESTRICT="!test? ( test )"
665 +REQUIRED_USE="test? ( static-libs )"
666 +
667 +DEPEND="${RDEPEND}"
668 +PDEPEND="app-misc/ca-certificates"
669 +
670 +src_prepare() {
671 + touch crypto/Makefile.in
672 +
673 + sed -i \
674 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
675 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
676 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
677 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
678 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
679 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
680 + configure || die "fixing CFLAGS failed"
681 +
682 + if ! use test ; then
683 + sed -i \
684 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
685 + Makefile.in || die "Removing tests failed"
686 + fi
687 +
688 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
689 + eapply_user
690 +
691 + elibtoolize # for Solaris
692 +}
693 +
694 +multilib_src_configure() {
695 + ECONF_SOURCE="${S}" econf \
696 + $(use_enable asm) \
697 + $(use_enable static-libs static)
698 +}
699 +
700 +multilib_src_test() {
701 + emake check
702 +}
703 +
704 +multilib_src_install_all() {
705 + einstalldocs
706 + find "${D}" -name '*.la' -exec rm -f {} + || die
707 +}
708
709 diff --git a/dev-libs/libressl/libressl-3.2.3.ebuild b/dev-libs/libressl/libressl-3.2.3.ebuild
710 new file mode 100644
711 index 0000000..d487867
712 --- /dev/null
713 +++ b/dev-libs/libressl/libressl-3.2.3.ebuild
714 @@ -0,0 +1,62 @@
715 +# Copyright 1999-2021 Gentoo Authors
716 +# Distributed under the terms of the GNU General Public License v2
717 +
718 +EAPI=7
719 +
720 +inherit multilib-minimal libtool
721 +
722 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
723 +HOMEPAGE="https://www.libressl.org/"
724 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
725 +
726 +LICENSE="ISC openssl"
727 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
728 +# we'll try to use the max of either. However, if either change between
729 +# versions, we have to change the subslot to trigger rebuild of consumers.
730 +SLOT="0/48"
731 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
732 +IUSE="+asm static-libs test"
733 +RESTRICT="!test? ( test )"
734 +REQUIRED_USE="test? ( static-libs )"
735 +
736 +DEPEND="${RDEPEND}"
737 +PDEPEND="app-misc/ca-certificates"
738 +
739 +src_prepare() {
740 + touch crypto/Makefile.in
741 +
742 + sed -i \
743 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
744 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
745 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
746 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
747 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
748 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
749 + configure || die "fixing CFLAGS failed"
750 +
751 + if ! use test ; then
752 + sed -i \
753 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
754 + Makefile.in || die "Removing tests failed"
755 + fi
756 +
757 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
758 + eapply_user
759 +
760 + elibtoolize # for Solaris
761 +}
762 +
763 +multilib_src_configure() {
764 + ECONF_SOURCE="${S}" econf \
765 + $(use_enable asm) \
766 + $(use_enable static-libs static)
767 +}
768 +
769 +multilib_src_test() {
770 + emake check
771 +}
772 +
773 +multilib_src_install_all() {
774 + einstalldocs
775 + find "${D}" -name '*.la' -exec rm -f {} + || die
776 +}
777
778 diff --git a/dev-libs/libressl/libressl-3.3.0.ebuild b/dev-libs/libressl/libressl-3.3.0.ebuild
779 new file mode 100644
780 index 0000000..7de8ec1
781 --- /dev/null
782 +++ b/dev-libs/libressl/libressl-3.3.0.ebuild
783 @@ -0,0 +1,63 @@
784 +# Copyright 1999-2021 Gentoo Authors
785 +# Distributed under the terms of the GNU General Public License v2
786 +
787 +EAPI=7
788 +
789 +inherit multilib-minimal libtool
790 +
791 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
792 +HOMEPAGE="https://www.libressl.org/"
793 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
794 +
795 +LICENSE="ISC openssl"
796 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
797 +# we'll try to use the max of either. However, if either change between
798 +# versions, we have to change the subslot to trigger rebuild of consumers.
799 +SLOT="0/48"
800 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
801 +IUSE="+asm static-libs test"
802 +RESTRICT="!test? ( test )"
803 +REQUIRED_USE="test? ( static-libs )"
804 +
805 +DEPEND="${RDEPEND}"
806 +PDEPEND="app-misc/ca-certificates"
807 +
808 +src_prepare() {
809 + touch crypto/Makefile.in
810 +
811 + sed -i \
812 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
813 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
814 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
815 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
816 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
817 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
818 + configure || die "fixing CFLAGS failed"
819 +
820 + if ! use test ; then
821 + sed -i \
822 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
823 + Makefile.in || die "Removing tests failed"
824 + fi
825 +
826 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
827 + #eapply "${FILESDIR}"/${PN}-3.2.2-build.patch
828 + eapply_user
829 +
830 + elibtoolize # for Solaris
831 +}
832 +
833 +multilib_src_configure() {
834 + ECONF_SOURCE="${S}" econf \
835 + $(use_enable asm) \
836 + $(use_enable static-libs static)
837 +}
838 +
839 +multilib_src_test() {
840 + emake check
841 +}
842 +
843 +multilib_src_install_all() {
844 + einstalldocs
845 + find "${D}" -name '*.la' -exec rm -f {} + || die
846 +}
847
848 diff --git a/dev-libs/libressl/libressl-3.3.1.ebuild b/dev-libs/libressl/libressl-3.3.1.ebuild
849 new file mode 100644
850 index 0000000..b92c362
851 --- /dev/null
852 +++ b/dev-libs/libressl/libressl-3.3.1.ebuild
853 @@ -0,0 +1,63 @@
854 +# Copyright 1999-2021 Gentoo Authors
855 +# Distributed under the terms of the GNU General Public License v2
856 +
857 +EAPI=7
858 +
859 +inherit multilib-minimal libtool
860 +
861 +DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
862 +HOMEPAGE="https://www.libressl.org/"
863 +SRC_URI="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${P}.tar.gz"
864 +
865 +LICENSE="ISC openssl"
866 +# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
867 +# we'll try to use the max of either. However, if either change between
868 +# versions, we have to change the subslot to trigger rebuild of consumers.
869 +SLOT="0/48"
870 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
871 +IUSE="+asm static-libs test"
872 +RESTRICT="!test? ( test )"
873 +REQUIRED_USE="test? ( static-libs )"
874 +
875 +DEPEND="${RDEPEND}"
876 +PDEPEND="app-misc/ca-certificates"
877 +
878 +src_prepare() {
879 + touch crypto/Makefile.in
880 +
881 + sed -i \
882 + -e '/^[ \t]*CFLAGS=/s#-g ##' \
883 + -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
884 + -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
885 + -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
886 + -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
887 + -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
888 + configure || die "fixing CFLAGS failed"
889 +
890 + if ! use test ; then
891 + sed -i \
892 + -e '/^[ \t]*SUBDIRS =/s#tests##' \
893 + Makefile.in || die "Removing tests failed"
894 + fi
895 +
896 + eapply "${FILESDIR}"/${PN}-2.8.3-solaris10.patch
897 + #eapply "${FILESDIR}"/${PN}-3.2.2-build.patch
898 + eapply_user
899 +
900 + elibtoolize # for Solaris
901 +}
902 +
903 +multilib_src_configure() {
904 + ECONF_SOURCE="${S}" econf \
905 + $(use_enable asm) \
906 + $(use_enable static-libs static)
907 +}
908 +
909 +multilib_src_test() {
910 + emake check
911 +}
912 +
913 +multilib_src_install_all() {
914 + einstalldocs
915 + find "${D}" -name '*.la' -exec rm -f {} + || die
916 +}
917
918 diff --git a/dev-libs/libressl/metadata.xml b/dev-libs/libressl/metadata.xml
919 new file mode 100644
920 index 0000000..a7201a6
921 --- /dev/null
922 +++ b/dev-libs/libressl/metadata.xml
923 @@ -0,0 +1,30 @@
924 +<?xml version="1.0" encoding="UTF-8"?>
925 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
926 +<pkgmetadata>
927 + <maintainer type="project">
928 + <email>libressl@g.o</email>
929 + </maintainer>
930 + <longdescription lang="en">
931 + LibreSSL is a version of the TLS/crypto stack forked from OpenSSL in
932 + 2014, with goals of modernizing the codebase, improving security, and
933 + applying best practice development processes.
934 + </longdescription>
935 + <use>
936 + <flag name="asm">Enables assembly</flag>
937 + </use>
938 + <upstream>
939 + <changelog>http://www.libressl.org/releases.html</changelog>
940 + <bugs-to>
941 + https://github.com/libressl-portable/portable/issues
942 + </bugs-to>
943 + <remote-id type="github">libressl-portable/portable</remote-id>
944 + </upstream>
945 + <slots>
946 + <slot name="0">
947 + Pin source packages to SLOT 0, as binary compatibility slots are expected to come and go.
948 + </slot>
949 + <subslots>
950 + Reflect ABI of libcrypto.so and libssl.so only, NOT libtls.so.
951 + </subslots>
952 + </slots>
953 +</pkgmetadata>