Hello community, here is the log from the commit of package gluegen2 for openSUSE:Factory checked in at 2017-11-27 22:17:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gluegen2 (Old) and /work/SRC/openSUSE:Factory/.gluegen2.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gluegen2" Mon Nov 27 22:17:07 2017 rev:12 rq:545523 version:2.3.2 Changes: -------- --- /work/SRC/openSUSE:Factory/gluegen2/gluegen2.changes 2017-10-07 17:51:14.969763747 +0200 +++ /work/SRC/openSUSE:Factory/.gluegen2.new/gluegen2.changes 2017-11-27 22:17:10.097341320 +0100 @@ -1,0 +2,7 @@ +Sat Nov 25 13:50:24 UTC 2017 - [email protected] + +- Fix building of dependent packages (e.g. jogl2) on ARMv7/Aarch64 + * Drop gluegen2-missing-arch-symbol.patch + * Add gluegen2-0001-Remove-version-overrides-for-memcpy.patch + +------------------------------------------------------------------- Old: ---- gluegen2-missing-arch-symbol.patch New: ---- gluegen2-0001-Remove-version-overrides-for-memcpy.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gluegen2.spec ++++++ --- /var/tmp/diff_new_pack.dvB5qh/_old 2017-11-27 22:17:12.349259582 +0100 +++ /var/tmp/diff_new_pack.dvB5qh/_new 2017-11-27 22:17:12.357259292 +0100 @@ -39,7 +39,7 @@ Patch6: gluegen2-add-ppc64-aarch64.patch # PATCH-FIX-UPSTREAM gluegen2-no-static-libstdc++.patch [email protected] -- Do not use -static-libstdc++ option for linker, causes build failures Patch7: gluegen2-no-static-libstdc++.patch -Patch8: gluegen2-missing-arch-symbol.patch +Patch8: gluegen2-0001-Remove-version-overrides-for-memcpy.patch Patch9: gluegen2-jdk9.patch BuildRequires: ant-antlr BuildRequires: ant-contrib ++++++ gluegen2-0001-Remove-version-overrides-for-memcpy.patch ++++++ >From f4e2a278d68dda55130f0ef5808f803c45a0595a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]> Date: Sat, 25 Nov 2017 14:47:56 +0100 Subject: [PATCH] Remove version overrides for memcpy memcpy from different GLIBC versions differ in behaviour when source and destination overlap. gluegen tries to force use of the oldest available memcpy version to allow usage on systems which have an older glibc version than the build host. This is not necessary in a Linux distribution context. As the glibc on ARMv7 and Aarch64 do not provide memcpy@GLIBC_2.4 symbols, but only the unversioned symbol, this breaks building packages using gluegen, e.g. jogl. --- make/stub_includes/platform/glibc-compat-symbols.h | 29 ++++------------------ 1 file changed, 5 insertions(+), 24 deletions(-) diff --git a/make/stub_includes/platform/glibc-compat-symbols.h b/make/stub_includes/platform/glibc-compat-symbols.h index 1163c78..293fa2e 100644 --- a/make/stub_includes/platform/glibc-compat-symbols.h +++ b/make/stub_includes/platform/glibc-compat-symbols.h @@ -16,30 +16,11 @@ * Check build-in macro definitions via 'gcc -dM -E - < /dev/null' */ #if defined(__linux__) /* Actually we like to test whether we link against GLIBC .. */ - #if defined(__GNUC__) - #if defined(__aarch64__) - #define GLIBC_COMPAT_SYMBOL(FFF) __asm__(".symver " #FFF "," #FFF "@GLIBC_2.4"); - #elif defined(__arm__) - #define GLIBC_COMPAT_SYMBOL(FFF) __asm__(".symver " #FFF "," #FFF "@GLIBC_2.4"); - #elif defined(__amd64__) - #define GLIBC_COMPAT_SYMBOL(FFF) __asm__(".symver " #FFF "," #FFF "@GLIBC_2.2.5"); - #else - #define GLIBC_COMPAT_SYMBOL(FFF) __asm__(".symver " #FFF "," #FFF "@GLIBC_2.0"); - #endif /*__amd64__*/ - #elif defined(__clang__) - #if defined(__aarch64__) - #define GLIBC_COMPAT_SYMBOL(FFF) asm(".symver " #FFF "," #FFF "@GLIBC_2.4"); - #elif defined(__arm__) - #define GLIBC_COMPAT_SYMBOL(FFF) asm(".symver " #FFF "," #FFF "@GLIBC_2.4"); - #elif defined(__amd64__) - #define GLIBC_COMPAT_SYMBOL(FFF) asm(".symver " #FFF "," #FFF "@GLIBC_2.2.5"); - #else - #define GLIBC_COMPAT_SYMBOL(FFF) asm(".symver " #FFF "," #FFF "@GLIBC_2.0"); - #endif /*__amd64__*/ - #else - #warning GLIBC_COMPAT_SYMBOL not supported with current compiler on GNU/Linux - #define GLIBC_COMPAT_SYMBOL(FFF) - #endif + /* + * Use compile time symbol version at runtime, no need to override for backwards + * compatiblity. + */ + #define GLIBC_COMPAT_SYMBOL(FFF) #else #warning GLIBC_COMPAT_SYMBOL not supported with target OS #define GLIBC_COMPAT_SYMBOL(FFF) -- 2.15.0
