public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: net-libs/serf/, net-libs/serf/files/
@ 2016-01-15  3:43 Mike Frysinger
  0 siblings, 0 replies; 3+ messages in thread
From: Mike Frysinger @ 2016-01-15  3:43 UTC (permalink / raw
  To: gentoo-commits

commit:     32c2bba917aa517e021ba38c8fab2d9cf52d9ec8
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 15 03:27:29 2016 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Fri Jan 15 03:43:13 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=32c2bba9

net-libs/serf: fix various cross-compile issues

- Use SYSROOT to locate helper config scripts to compile against.
- Drop OPENSSL var as it's useless.
- Respect AR/RANLIB settings.
- Make static libs optional.
- Pass settings to install phase too to avoid rebuilding things.

 net-libs/serf/files/serf-1.3.8-openssl.patch    | 28 ++++++++++
 net-libs/serf/files/serf-1.3.8-static-lib.patch | 49 ++++++++++++++++++
 net-libs/serf/serf-1.3.8-r1.ebuild              | 68 +++++++++++++++++++++++++
 3 files changed, 145 insertions(+)

diff --git a/net-libs/serf/files/serf-1.3.8-openssl.patch b/net-libs/serf/files/serf-1.3.8-openssl.patch
new file mode 100644
index 0000000..4cc3719
--- /dev/null
+++ b/net-libs/serf/files/serf-1.3.8-openssl.patch
@@ -0,0 +1,28 @@
+the build doesn't actually use the openssl var for anything useful.
+it blindly adds it to the -I/-L paths which causes problems when you
+cross-compile and when you link (it also adds it to -rpath).  punt
+the setting and forget about it.
+
+--- a/SConstruct
++++ b/SConstruct
+@@ -354,8 +354,6 @@ else:
+     apr_libs = ''
+     apu_libs = ''
+ 
+-  env.Append(CPPPATH=['$OPENSSL/include'])
+-  env.Append(LIBPATH=['$OPENSSL/lib'])
+ 
+ 
+ # If build with gssapi, get its information and define SERF_HAVE_GSSAPI
+@@ -369,8 +369,9 @@ if sys.platform == 'win32':
+ # On some systems, the -R values that APR describes never make it into actual
+ # RPATH flags. We'll manually map all directories in LIBPATH into new
+ # flags to set RPATH values.
+-for d in env['LIBPATH']:
+-  env.Append(RPATH=':'+d)
++if env.get('LIBPATH', None):
++  for d in env['LIBPATH']:
++    env.Append(RPATH=':'+d)
+ 
+ # Set up the construction of serf-*.pc
+ pkgconfig = env.Textfile('serf-%d.pc' % (MAJOR,),

diff --git a/net-libs/serf/files/serf-1.3.8-static-lib.patch b/net-libs/serf/files/serf-1.3.8-static-lib.patch
new file mode 100644
index 0000000..1538328
--- /dev/null
+++ b/net-libs/serf/files/serf-1.3.8-static-lib.patch
@@ -0,0 +1,49 @@
+respect the active archiver tool instead of using `ar` all the time.
+same for `ranlib`.
+
+also add support for BUILD_STATIC bool for controlling the libserf.a.
+
+--- a/SConstruct
++++ b/SConstruct
+@@ -103,6 +103,9 @@
+   BoolVariable('APR_STATIC',
+                "Enable using a static compiled APR",
+                False),
++  RawListVariable('AR', "Command name or path of the archiver", None),
++  RawListVariable('RANLIB', "Command name or path of the archiver indexer", None),
++  BoolVariable('BUILD_STATIC', 'Build libserf static library', True),
+   RawListVariable('CC', "Command name or path of the C compiler", None),
+   RawListVariable('CFLAGS', "Extra flags for the C compiler (space-separated)",
+                   None),
+@@ -193,6 +196,7 @@ if gssapi and os.path.isdir(gssapi):
+ 
+ debug = env.get('DEBUG', None)
+ aprstatic = env.get('APR_STATIC', None)
++build_static = env.get('BUILD_STATIC', True)
+ 
+ Help(opts.GenerateHelpText(env))
+ opts.Save(SAVED_CONFIG, env)
+@@ -384,7 +388,9 @@ pkgconfig = env.Textfile('serf-%d.pc' % (MAJOR,),
+                                                        env.get('GSSAPI_LIBS', '')),
+                            })
+ 
+-env.Default(lib_static, lib_shared, pkgconfig)
++env.Default(lib_shared, pkgconfig)
++if build_static:
++  env.Default(lib_static)
+ 
+ if CALLOUT_OKAY:
+   conf = Configure(env)
+@@ -420,8 +420,10 @@ if sys.platform == 'darwin':
+                                      % (target_install_shared_path,
+                                         install_shared_path)))
+ 
+-env.Alias('install-lib', [install_static, install_shared,
+-                          ])
++install_libs = [install_shared]
++if build_static:
++  install_libs.append(install_static)
++env.Alias('install-lib', install_libs)
+ env.Alias('install-inc', env.Install(incdir, HEADER_FILES))
+ env.Alias('install-pc', env.Install(os.path.join(libdir, 'pkgconfig'),
+                                     pkgconfig))

diff --git a/net-libs/serf/serf-1.3.8-r1.ebuild b/net-libs/serf/serf-1.3.8-r1.ebuild
new file mode 100644
index 0000000..c31fb28
--- /dev/null
+++ b/net-libs/serf/serf-1.3.8-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils scons-utils toolchain-funcs
+
+DESCRIPTION="HTTP client library"
+HOMEPAGE="https://code.google.com/p/serf/"
+SRC_URI="https://serf.googlecode.com/svn/src_releases/${P}.tar.bz2"
+
+LICENSE="Apache-2.0"
+SLOT="1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="kerberos static-libs"
+
+RDEPEND="dev-libs/apr:1=
+	dev-libs/apr-util:1=
+	dev-libs/openssl:0=
+	sys-libs/zlib:0=
+	kerberos? ( virtual/krb5 )"
+DEPEND="${RDEPEND}
+	>=dev-util/scons-2.3.0"
+
+src_prepare() {
+	epatch "${FILESDIR}/${PN}-1.3.2-disable_linking_against_unneeded_libraries.patch"
+	epatch "${FILESDIR}/${PN}-1.3.8-scons_variables.patch"
+	epatch "${FILESDIR}/${PN}-1.3.8-tests.patch"
+	epatch "${FILESDIR}/${PN}-1.3.8-static-lib.patch"
+	epatch "${FILESDIR}/${PN}-1.3.8-openssl.patch"
+
+	# https://code.google.com/p/serf/issues/detail?id=133
+	sed -e "/env.Append(CCFLAGS=\['-O2'\])/d" -i SConstruct
+}
+
+src_compile() {
+	myesconsargs=(
+		PREFIX="${EPREFIX}/usr"
+		LIBDIR="${EPREFIX}/usr/$(get_libdir)"
+		# These config scripts are sent through a shell with an empty env
+		# which breaks the SYSROOT usage in them.  Set the vars inline to
+		# avoid that.
+		APR="SYSROOT='${SYSROOT}' ${SYSROOT}${EPREFIX}/usr/bin/apr-1-config"
+		APU="SYSROOT='${SYSROOT}' ${SYSROOT}${EPREFIX}/usr/bin/apu-1-config"
+		BUILD_STATIC=$(usex static-libs)
+		AR="$(tc-getAR)"
+		RANLIB="$(tc-getRANLIB)"
+		CC="$(tc-getCC)"
+		CPPFLAGS="${CPPFLAGS}"
+		CFLAGS="${CFLAGS}"
+		LINKFLAGS="${LDFLAGS}"
+	)
+
+	if use kerberos; then
+		myesconsargs+=( GSSAPI="${SYSROOT}${EPREFIX}/usr/bin/krb5-config" )
+	fi
+
+	escons
+}
+
+src_test() {
+	escons check
+}
+
+src_install() {
+	escons install --install-sandbox="${D}"
+}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-libs/serf/, net-libs/serf/files/
@ 2020-09-20 19:38 Michał Górny
  0 siblings, 0 replies; 3+ messages in thread
From: Michał Górny @ 2020-09-20 19:38 UTC (permalink / raw
  To: gentoo-commits

commit:     4e0d64ad7d8b31dd7a4b649ab092f83796a03c32
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 20 19:30:49 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Sep 20 19:38:28 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4e0d64ad

net-libs/serf: Remove old

Closes: https://bugs.gentoo.org/735550
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 net-libs/serf/Manifest                             |   1 -
 ...isable_linking_against_unneeded_libraries.patch |  13 ---
 .../serf/files/serf-1.3.8-scons_variables.patch    | 110 ---------------------
 net-libs/serf/files/serf-1.3.8-tests.patch         |  95 ------------------
 net-libs/serf/serf-1.3.8-r1.ebuild                 |  71 -------------
 net-libs/serf/serf-1.3.8.ebuild                    |  61 ------------
 net-libs/serf/serf-1.3.9.ebuild                    |  71 -------------
 7 files changed, 422 deletions(-)

diff --git a/net-libs/serf/Manifest b/net-libs/serf/Manifest
index 6be53a8dc67..28e866e100e 100644
--- a/net-libs/serf/Manifest
+++ b/net-libs/serf/Manifest
@@ -1,2 +1 @@
-DIST serf-1.3.8.tar.bz2 143337 BLAKE2B 873f78ec7fab6323e3351e43ed7b03e8208be8d7ced5a017ca121ecbc091de49a963e69beeee592f39dfab23ff30d4bda3378192ea24f2ec07a5569ee19dc062 SHA512 78787a0d1e3e72dd9afc2e0de65e9af3b4303fefdcb865bd5e087fae570a7fe4d1395ce021756db4685c6e63e31c495563afe57baf677bf9846657f5d63d4205
 DIST serf-1.3.9.tar.bz2 145132 BLAKE2B 59776f85b409b2eaea81f3e07b0301515e20cbd2aa0ef05c1c38aa8152a6d5627e526e4bc160abb1fd438e9fa46f97096c639860729d2ea8e0b2fcfcf8222002 SHA512 9f5418d991840a08d293d1ecba70cd9534a207696d002f22dbe62354e7b005955112a0d144a76c89c7f7ad3b4c882e54974441fafa0c09c4aa25c49c021ca75d

diff --git a/net-libs/serf/files/serf-1.3.2-disable_linking_against_unneeded_libraries.patch b/net-libs/serf/files/serf-1.3.2-disable_linking_against_unneeded_libraries.patch
deleted file mode 100644
index f86646a28d8..00000000000
--- a/net-libs/serf/files/serf-1.3.2-disable_linking_against_unneeded_libraries.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- SConstruct
-+++ SConstruct
-@@ -345,8 +345,8 @@
-   ### there is probably a better way to run/capture output.
-   ### env.ParseConfig() may be handy for getting this stuff into the build
-   if CALLOUT_OKAY:
--    apr_libs = os.popen(env.subst('$APR --link-libtool --libs')).read().strip()
--    apu_libs = os.popen(env.subst('$APU --link-libtool --libs')).read().strip()
-+    apr_libs = os.popen(env.subst('$APR --link-ld')).read().strip()
-+    apu_libs = os.popen(env.subst('$APU --link-ld')).read().strip()
-   else:
-     apr_libs = ''
-     apu_libs = ''

diff --git a/net-libs/serf/files/serf-1.3.8-scons_variables.patch b/net-libs/serf/files/serf-1.3.8-scons_variables.patch
deleted file mode 100644
index b51e846d893..00000000000
--- a/net-libs/serf/files/serf-1.3.8-scons_variables.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-https://code.google.com/p/serf/issues/detail?id=151
-https://code.google.com/p/serf/source/detail?r=2413
-
---- SConstruct
-+++ SConstruct
-@@ -223,12 +223,12 @@
- 
- if sys.platform == 'darwin':
- #  linkflags.append('-Wl,-install_name,@executable_path/%s.dylib' % (LIBNAME,))
--  env.Append(LINKFLAGS='-Wl,-install_name,%s/%s.dylib' % (thisdir, LIBNAME,))
-+  env.Append(LINKFLAGS=['-Wl,-install_name,%s/%s.dylib' % (thisdir, LIBNAME,)])
- 
- if sys.platform != 'win32':
-   ### gcc only. figure out appropriate test / better way to check these
-   ### flags, and check for gcc.
--  env.Append(CFLAGS='-std=c89')
-+  env.Append(CFLAGS=['-std=c89'])
- 
-   ### These warnings are not available on Solaris
-   if sys.platform != 'sunos5': 
-@@ -237,17 +237,17 @@
-                         '-Wall'])
- 
-   if debug:
--    env.Append(CCFLAGS='-g')
-+    env.Append(CCFLAGS=['-g'])
-     env.Append(CPPDEFINES=['DEBUG', '_DEBUG'])
-   else:
--    env.Append(CCFLAGS='-O2')
--    env.Append(CPPDEFINES='NDEBUG')
-+    env.Append(CCFLAGS=['-O2'])
-+    env.Append(CPPDEFINES=['NDEBUG'])
- 
-   ### works for Mac OS. probably needs to change
-   env.Append(LIBS=['ssl', 'crypto', 'z', ])
- 
-   if sys.platform == 'sunos5':
--    env.Append(LIBS='m')
-+    env.Append(LIBS=['m'])
- else:
-   # Warning level 4, no unused argument warnings
-   env.Append(CCFLAGS=['/W4', '/wd4100'])
-@@ -260,8 +260,8 @@
-   else:
-     # Optimize for speed, use DLL runtime
-     env.Append(CCFLAGS=['/O2', '/MD'])
--    env.Append(CPPDEFINES='NDEBUG')
--    env.Append(LINKFLAGS='/RELEASE')
-+    env.Append(CPPDEFINES=['NDEBUG'])
-+    env.Append(LINKFLAGS=['/RELEASE'])
- 
- # PLAN THE BUILD
- SHARED_SOURCES = []
-@@ -307,25 +307,25 @@
-                CPPPATH=['$APR/include', '$APU/include'])
- 
-   # zlib
--  env.Append(LIBS='zlib.lib')
-+  env.Append(LIBS=['zlib.lib'])
-   if not env.get('SOURCE_LAYOUT', None):
--    env.Append(CPPPATH='$ZLIB/include',
--               LIBPATH='$ZLIB/lib')
-+    env.Append(CPPPATH=['$ZLIB/include'],
-+               LIBPATH=['$ZLIB/lib'])
-   else:
--    env.Append(CPPPATH='$ZLIB',
--               LIBPATH='$ZLIB')
-+    env.Append(CPPPATH=['$ZLIB'],
-+               LIBPATH=['$ZLIB'])
- 
-   # openssl
-   env.Append(LIBS=['libeay32.lib', 'ssleay32.lib'])
-   if not env.get('SOURCE_LAYOUT', None):
--    env.Append(CPPPATH='$OPENSSL/include/openssl',
--               LIBPATH='$OPENSSL/lib')
-+    env.Append(CPPPATH=['$OPENSSL/include/openssl'],
-+               LIBPATH=['$OPENSSL/lib'])
-   elif 0: # opensslstatic:
--    env.Append(CPPPATH='$OPENSSL/inc32',
--               LIBPATH='$OPENSSL/out32')
-+    env.Append(CPPPATH=['$OPENSSL/inc32'],
-+               LIBPATH=['$OPENSSL/out32'])
-   else:
--    env.Append(CPPPATH='$OPENSSL/inc32',
--               LIBPATH='$OPENSSL/out32dll')
-+    env.Append(CPPPATH=['$OPENSSL/inc32'],
-+               LIBPATH=['$OPENSSL/out32dll'])
- else:
-   if os.path.isdir(apr):
-     apr = os.path.join(apr, 'bin', 'apr-1-config')
-@@ -351,8 +351,8 @@
-     apr_libs = ''
-     apu_libs = ''
- 
--  env.Append(CPPPATH='$OPENSSL/include')
--  env.Append(LIBPATH='$OPENSSL/lib')
-+  env.Append(CPPPATH=['$OPENSSL/include'])
-+  env.Append(LIBPATH=['$OPENSSL/lib'])
- 
- 
- # If build with gssapi, get its information and define SERF_HAVE_GSSAPI
-@@ -362,7 +362,7 @@
-         env['GSSAPI_LIBS'] = cmd.strip()
-         return env.MergeFlags(cmd, unique)
-     env.ParseConfig('$GSSAPI --libs gssapi', parse_libs)
--    env.Append(CPPDEFINES='SERF_HAVE_GSSAPI')
-+    env.Append(CPPDEFINES=['SERF_HAVE_GSSAPI'])
- if sys.platform == 'win32':
-   env.Append(CPPDEFINES=['SERF_HAVE_SSPI'])
- 

diff --git a/net-libs/serf/files/serf-1.3.8-tests.patch b/net-libs/serf/files/serf-1.3.8-tests.patch
deleted file mode 100644
index 65b9962f252..00000000000
--- a/net-libs/serf/files/serf-1.3.8-tests.patch
+++ /dev/null
@@ -1,95 +0,0 @@
-https://code.google.com/p/serf/source/detail?r=2443
-https://code.google.com/p/serf/source/detail?r=2444
-https://code.google.com/p/serf/source/detail?r=2445
-
---- test/test_buckets.c
-+++ test/test_buckets.c
-@@ -1232,9 +1232,9 @@
- 
-     /* The largest buffer we should need is 0.1% larger than the
-        uncompressed data, + 12 bytes. This info comes from zlib.h.
-+       buf_size = orig_len + (orig_len / 1000) + 12;
-        Note: This isn't sufficient when using Z_NO_FLUSH and extremely compressed
-        data. Use a buffer bigger than what we need. */
--//    buf_size = orig_len + (orig_len / 1000) + 12;
-     buf_size = 100000;
- 
-     write_buf = apr_palloc(pool, buf_size);
-@@ -1309,12 +1309,12 @@
-                           expected_len);
- }
- 
--static void deflate_buckets(CuTest *tc, int nr_of_loops)
-+static void deflate_buckets(CuTest *tc, int nr_of_loops, apr_pool_t *pool)
- {
-     const char *msg = "12345678901234567890123456789012345678901234567890";
- 
-     test_baton_t *tb = tc->testBaton;
--    serf_bucket_alloc_t *alloc = serf_bucket_allocator_create(tb->pool, NULL,
-+    serf_bucket_alloc_t *alloc = serf_bucket_allocator_create(pool, NULL,
-                                                               NULL);
-     z_stream zdestr;
-     int i;
-@@ -1333,8 +1333,8 @@
-     {
-         serf_config_t *config;
- 
--        serf_context_t *ctx = serf_context_create(tb->pool);
--        /* status = */ serf__config_store_get_config(ctx, NULL, &config, tb->pool);
-+        serf_context_t *ctx = serf_context_create(pool);
-+        /* status = */ serf__config_store_get_config(ctx, NULL, &config, pool);
- 
-         serf_bucket_set_config(defbkt, config);
-     }
-@@ -1356,11 +1356,11 @@
-         if (i == nr_of_loops - 1) {
-             CuAssertIntEquals(tc, APR_SUCCESS,
-                               deflate_compress(&data, &len, &zdestr, msg,
--                                               strlen(msg), 1, tb->pool));
-+                                               strlen(msg), 1, pool));
-         } else {
-             CuAssertIntEquals(tc, APR_SUCCESS,
-                               deflate_compress(&data, &len, &zdestr, msg,
--                                               strlen(msg), 0, tb->pool));
-+                                               strlen(msg), 0, pool));
-         }
- 
-         if (len == 0)
-@@ -1378,10 +1378,15 @@
- static void test_deflate_buckets(CuTest *tc)
- {
-     int i;
-+    apr_pool_t *iterpool;
-+    test_baton_t *tb = tc->testBaton;
- 
-+    apr_pool_create(&iterpool, tb->pool);
-     for (i = 1; i < 1000; i++) {
--        deflate_buckets(tc, i);
-+        apr_pool_clear(iterpool);
-+        deflate_buckets(tc, i, iterpool);
-     }
-+    apr_pool_destroy(iterpool);
- }
- 
- static apr_status_t discard_data(serf_bucket_t *bkt,
---- test/test_util.c
-+++ test/test_util.c
-@@ -363,10 +363,18 @@
-     return status;
- }
- 
-+static int pool_abort_func(int retcode)
-+{
-+    fprintf(stderr, "Out of memory\n");
-+    abort();
-+    return 0;
-+}
-+
- void *test_setup(void *dummy)
- {
-     apr_pool_t *test_pool;
-     apr_pool_create(&test_pool, NULL);
-+    apr_pool_abort_set(pool_abort_func, test_pool);
-     return test_pool;
- }
- 

diff --git a/net-libs/serf/serf-1.3.8-r1.ebuild b/net-libs/serf/serf-1.3.8-r1.ebuild
deleted file mode 100644
index f951a44343b..00000000000
--- a/net-libs/serf/serf-1.3.8-r1.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 2008-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils scons-utils toolchain-funcs flag-o-matic
-
-DESCRIPTION="HTTP client library"
-HOMEPAGE="https://serf.apache.org/"
-SRC_URI="mirror://apache/${PN}/${P}.tar.bz2"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
-IUSE="kerberos static-libs libressl"
-RESTRICT="test"
-
-RDEPEND="dev-libs/apr:1=
-	dev-libs/apr-util:1=
-	!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= )
-	sys-libs/zlib:0=
-	kerberos? ( virtual/krb5 )"
-DEPEND="${RDEPEND}
-	>=dev-util/scons-2.3.0"
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-1.3.2-disable_linking_against_unneeded_libraries.patch"
-	epatch "${FILESDIR}/${PN}-1.3.8-scons_variables.patch"
-	epatch "${FILESDIR}/${PN}-1.3.8-tests.patch"
-	epatch "${FILESDIR}/${PN}-1.3.8-static-lib.patch"
-	epatch "${FILESDIR}/${PN}-1.3.8-openssl.patch"
-
-	# https://code.google.com/p/serf/issues/detail?id=133
-	sed -e "/env.Append(CCFLAGS=\['-O2'\])/d" -i SConstruct
-
-	# need limits.h for PATH_MAX (only when EXTENSIONS is enabled)
-	[[ ${CHOST} == *-solaris* ]] && append-cppflags -D__EXTENSIONS__
-}
-
-src_compile() {
-	myesconsargs=(
-		PREFIX="${EPREFIX}/usr"
-		LIBDIR="${EPREFIX}/usr/$(get_libdir)"
-		# These config scripts are sent through a shell with an empty env
-		# which breaks the SYSROOT usage in them.  Set the vars inline to
-		# avoid that.
-		APR="SYSROOT='${SYSROOT}' ${SYSROOT}${EPREFIX}/usr/bin/apr-1-config"
-		APU="SYSROOT='${SYSROOT}' ${SYSROOT}${EPREFIX}/usr/bin/apu-1-config"
-		BUILD_STATIC=$(usex static-libs)
-		AR="$(tc-getAR)"
-		RANLIB="$(tc-getRANLIB)"
-		CC="$(tc-getCC)"
-		CPPFLAGS="${CPPFLAGS}"
-		CFLAGS="${CFLAGS}"
-		LINKFLAGS="${LDFLAGS}"
-	)
-
-	if use kerberos; then
-		myesconsargs+=( GSSAPI="${SYSROOT}${EPREFIX}/usr/bin/krb5-config" )
-	fi
-
-	escons
-}
-
-src_test() {
-	escons check
-}
-
-src_install() {
-	escons install --install-sandbox="${D}"
-}

diff --git a/net-libs/serf/serf-1.3.8.ebuild b/net-libs/serf/serf-1.3.8.ebuild
deleted file mode 100644
index 5fca0dc8af9..00000000000
--- a/net-libs/serf/serf-1.3.8.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2008-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils scons-utils toolchain-funcs
-
-DESCRIPTION="HTTP client library"
-HOMEPAGE="https://serf.apache.org/"
-SRC_URI="mirror://apache/${PN}/${P}.tar.bz2"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~ppc-aix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
-IUSE="kerberos"
-RESTRICT="test"
-
-RDEPEND="dev-libs/apr:1=
-	dev-libs/apr-util:1=
-	dev-libs/openssl:0=
-	sys-libs/zlib:0=
-	kerberos? ( virtual/krb5 )"
-DEPEND="${RDEPEND}
-	>=dev-util/scons-2.3.0"
-
-src_prepare() {
-	epatch "${FILESDIR}/${PN}-1.3.2-disable_linking_against_unneeded_libraries.patch"
-	epatch "${FILESDIR}/${PN}-1.3.8-scons_variables.patch"
-	epatch "${FILESDIR}/${PN}-1.3.8-tests.patch"
-
-	# https://code.google.com/p/serf/issues/detail?id=133
-	sed -e "/env.Append(CCFLAGS=\['-O2'\])/d" -i SConstruct
-}
-
-src_compile() {
-	local myesconsargs=(
-		PREFIX="${EPREFIX}/usr"
-		LIBDIR="${EPREFIX}/usr/$(get_libdir)"
-		APR="${EPREFIX}/usr/bin/apr-1-config"
-		APU="${EPREFIX}/usr/bin/apu-1-config"
-		OPENSSL="${EPREFIX}/usr"
-		CC="$(tc-getCC)"
-		CPPFLAGS="${CPPFLAGS}"
-		CFLAGS="${CFLAGS}"
-		LINKFLAGS="${LDFLAGS}"
-	)
-
-	if use kerberos; then
-		myesconsargs+=(GSSAPI="${EPREFIX}/usr/bin/krb5-config")
-	fi
-
-	escons
-}
-
-src_test() {
-	escons check
-}
-
-src_install() {
-	escons install --install-sandbox="${D}"
-}

diff --git a/net-libs/serf/serf-1.3.9.ebuild b/net-libs/serf/serf-1.3.9.ebuild
deleted file mode 100644
index 4b06dc39a97..00000000000
--- a/net-libs/serf/serf-1.3.9.ebuild
+++ /dev/null
@@ -1,71 +0,0 @@
-# Copyright 2008-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="5"
-
-inherit eutils scons-utils toolchain-funcs flag-o-matic
-
-DESCRIPTION="HTTP client library"
-HOMEPAGE="https://serf.apache.org/"
-SRC_URI="mirror://apache/${PN}/${P}.tar.bz2"
-
-LICENSE="Apache-2.0"
-SLOT="1"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris"
-IUSE="kerberos static-libs libressl"
-RESTRICT="test"
-
-RDEPEND="dev-libs/apr:1=
-	dev-libs/apr-util:1=
-	!libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= )
-	sys-libs/zlib:0=
-	kerberos? ( virtual/krb5 )"
-DEPEND="${RDEPEND}
-	>=dev-util/scons-2.3.0"
-
-src_prepare() {
-	#epatch "${FILESDIR}/${PN}-1.3.2-disable_linking_against_unneeded_libraries.patch"
-	#epatch "${FILESDIR}/${PN}-1.3.8-scons_variables.patch"
-	#epatch "${FILESDIR}/${PN}-1.3.8-tests.patch"
-	epatch "${FILESDIR}/${PN}-1.3.8-static-lib.patch"
-	epatch "${FILESDIR}/${PN}-1.3.8-openssl.patch"
-
-	# https://code.google.com/p/serf/issues/detail?id=133
-	sed -e "/env.Append(CCFLAGS=\['-O2'\])/d" -i SConstruct
-
-	# need limits.h for PATH_MAX (only when EXTENSIONS is enabled)
-	[[ ${CHOST} == *-solaris* ]] && append-cppflags -D__EXTENSIONS__
-}
-
-src_compile() {
-	myesconsargs=(
-		PREFIX="${EPREFIX}/usr"
-		LIBDIR="${EPREFIX}/usr/$(get_libdir)"
-		# These config scripts are sent through a shell with an empty env
-		# which breaks the SYSROOT usage in them.  Set the vars inline to
-		# avoid that.
-		APR="SYSROOT='${SYSROOT}' ${SYSROOT}${EPREFIX}/usr/bin/apr-1-config"
-		APU="SYSROOT='${SYSROOT}' ${SYSROOT}${EPREFIX}/usr/bin/apu-1-config"
-		BUILD_STATIC=$(usex static-libs)
-		AR="$(tc-getAR)"
-		RANLIB="$(tc-getRANLIB)"
-		CC="$(tc-getCC)"
-		CPPFLAGS="${CPPFLAGS}"
-		CFLAGS="${CFLAGS}"
-		LINKFLAGS="${LDFLAGS}"
-	)
-
-	if use kerberos; then
-		myesconsargs+=( GSSAPI="${SYSROOT}${EPREFIX}/usr/bin/krb5-config" )
-	fi
-
-	escons
-}
-
-src_test() {
-	escons check
-}
-
-src_install() {
-	escons install --install-sandbox="${D}"
-}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: net-libs/serf/, net-libs/serf/files/
@ 2023-05-10 16:38 Sam James
  0 siblings, 0 replies; 3+ messages in thread
From: Sam James @ 2023-05-10 16:38 UTC (permalink / raw
  To: gentoo-commits

commit:     2a155bd2b730a6351625803877e5cdb3057bd5af
Author:     orbea <orbea <AT> riseup <DOT> net>
AuthorDate: Mon May  1 02:48:07 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed May 10 16:35:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a155bd2

net-libs/serf: add upstream libressl patch

This patch was accepted upstream and disables the use of
OPENSSL_malloc_init() when it is not available as is the case with
LibreSSL. Additionally serf has changed greatly since the 1.3.9 release
in 2016 and no longer uses OPENSSL_malloc_init() altogether in their
current git commit (2899841) which has no build failures with LibreSSL
3.7.2.

The build fix for the tests (Commit 6f689c72) was not backported since
the tests are restricted in the ebuild.

Bug: https://bugs.gentoo.org/903001
Upstream-Commit: https://github.com/apache/serf/commit/df0d2d0dbdf88576f26da9c71df3ab6249d351dc
Signed-off-by: orbea <orbea <AT> riseup.net>
Closes: https://github.com/gentoo/gentoo/pull/30817
Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-libs/serf/files/serf-1.3.9-libressl.patch | 51 +++++++++++++++++++++++++++
 net-libs/serf/serf-1.3.9-r3.ebuild            |  1 +
 2 files changed, 52 insertions(+)

diff --git a/net-libs/serf/files/serf-1.3.9-libressl.patch b/net-libs/serf/files/serf-1.3.9-libressl.patch
new file mode 100644
index 000000000000..1c437e81bc05
--- /dev/null
+++ b/net-libs/serf/files/serf-1.3.9-libressl.patch
@@ -0,0 +1,51 @@
+https://bugs.gentoo.org/903001
+https://github.com/apache/serf/commit/df0d2d0dbdf88576f26da9c71df3ab6249d351dc
+
+From df0d2d0dbdf88576f26da9c71df3ab6249d351dc Mon Sep 17 00:00:00 2001
+From: Stefan Sperling <stsp@apache.org>
+Date: Tue, 20 Dec 2016 09:57:08 +0000
+Subject: [PATCH] Fix another build problem with LibreSSL.
+
+* SConstruct: Check for OpenSSL_malloc_init() and provide the
+   SERF_HAVE_OPENSSL_MALLOC_INIT feature flag.
+
+* buckets/ssl_buckets.c
+  (init_ssl_libraries): Use SERF_HAVE_OPENSSL_MALLOC_INIT instead
+   of USE_LEGACY_OPENSSL.
+
+git-svn-id: https://svn.apache.org/repos/asf/serf/trunk@1775242 13f79535-47bb-0310-9956-ffa450edef68
+---
+ SConstruct            | 6 ++++++
+ buckets/ssl_buckets.c | 2 +-
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/SConstruct b/SConstruct
+index 4358a23..115f409 100644
+--- a/SConstruct
++++ b/SConstruct
+@@ -373,6 +373,12 @@ else:
+   env.Append(CPPPATH=['$OPENSSL/include'])
+   env.Append(LIBPATH=['$OPENSSL/lib'])
+ 
++  # Check for OpenSSL functions which are only available in some of
++  # the versions we support. Also handles forks like LibreSSL.
++  conf = Configure(env)
++  if conf.CheckFunc('OPENSSL_malloc_init'):
++    env.Append(CPPDEFINES=['SERF_HAVE_OPENSSL_MALLOC_INIT'])
++  env = conf.Finish()
+ 
+ # If build with gssapi, get its information and define SERF_HAVE_GSSAPI
+ if gssapi and CALLOUT_OKAY:
+diff --git a/buckets/ssl_buckets.c b/buckets/ssl_buckets.c
+index b01e535..27c84c7 100644
+--- a/buckets/ssl_buckets.c
++++ b/buckets/ssl_buckets.c
+@@ -1156,7 +1156,7 @@ static void init_ssl_libraries(void)
+         }
+ #endif
+ 
+-#ifdef USE_OPENSSL_1_1_API
++#ifdef SERF_HAVE_OPENSSL_MALLOC_INIT
+         OPENSSL_malloc_init();
+ #else
+         CRYPTO_malloc_init();

diff --git a/net-libs/serf/serf-1.3.9-r3.ebuild b/net-libs/serf/serf-1.3.9-r3.ebuild
index b0992008750e..7464e14dba6d 100644
--- a/net-libs/serf/serf-1.3.9-r3.ebuild
+++ b/net-libs/serf/serf-1.3.9-r3.ebuild
@@ -34,6 +34,7 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-1.3.9-python3-check.patch
 	"${FILESDIR}"/${PN}-1.3.9-openssl-3-bio-ctrl.patch
 	"${FILESDIR}"/${PN}-1.3.9-openssl-3-errgetfunc.patch
+	"${FILESDIR}"/${PN}-1.3.9-libressl.patch #903001
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-05-10 16:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-09-20 19:38 [gentoo-commits] repo/gentoo:master commit in: net-libs/serf/, net-libs/serf/files/ Michał Górny
  -- strict thread matches above, loose matches on Subject: below --
2023-05-10 16:38 Sam James
2016-01-15  3:43 Mike Frysinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox