diff options
-rw-r--r-- | sys-apps/file/file-5.33-r3.ebuild (renamed from sys-apps/file/file-5.33-r2.ebuild) | 8 | ||||
-rw-r--r-- | sys-apps/file/files/file-5.33-gl_VISIBILITY-macro.patch | 116 |
2 files changed, 123 insertions, 1 deletions
diff --git a/sys-apps/file/file-5.33-r2.ebuild b/sys-apps/file/file-5.33-r3.ebuild index e67df7bc93a5..e9203f385ff5 100644 --- a/sys-apps/file/file-5.33-r2.ebuild +++ b/sys-apps/file/file-5.33-r3.ebuild @@ -33,11 +33,17 @@ DEPEND=" RDEPEND="${DEPEND} python? ( !dev-python/python-magic )" -PATCHES=( "${FILESDIR}"/${P}-CVE-2018-10360.patch ) +PATCHES=( + "${FILESDIR}"/${P}-CVE-2018-10360.patch + "${FILESDIR}"/${P}-gl_VISIBILITY-macro.patch +) src_prepare() { default + # We are patching configure script so fix timestamp to avoid autoreconf + touch -r compile configure + [[ ${PV} == "9999" ]] && eautoreconf elibtoolize diff --git a/sys-apps/file/files/file-5.33-gl_VISIBILITY-macro.patch b/sys-apps/file/files/file-5.33-gl_VISIBILITY-macro.patch new file mode 100644 index 000000000000..cef3cb5518bb --- /dev/null +++ b/sys-apps/file/files/file-5.33-gl_VISIBILITY-macro.patch @@ -0,0 +1,116 @@ +https://bugs.gentoo.org/661508 + +--- a/configure ++++ b/configure +@@ -638,6 +638,8 @@ + IS_CROSS_COMPILE_FALSE + IS_CROSS_COMPILE_TRUE + LIBOBJS ++HAVE_VISIBILITY ++CFLAG_VISIBILITY + OTOOL64 + OTOOL + LIPO +@@ -12512,7 +12519,92 @@ + # Only expand once: + + +-gl_VISIBILITY ++ ++ ++ CFLAG_VISIBILITY= ++ HAVE_VISIBILITY=0 ++ if test -n "$GCC"; then ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the -Werror option is usable" >&5 ++$as_echo_n "checking whether the -Werror option is usable... " >&6; } ++ if ${gl_cv_cc_vis_werror+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ ++ gl_save_CFLAGS="$CFLAGS" ++ CFLAGS="$CFLAGS -Werror" ++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++ ++int ++main () ++{ ++ ++ ; ++ return 0; ++} ++_ACEOF ++if ac_fn_c_try_compile "$LINENO"; then : ++ gl_cv_cc_vis_werror=yes ++else ++ gl_cv_cc_vis_werror=no ++fi ++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ++ CFLAGS="$gl_save_CFLAGS" ++fi ++ ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_vis_werror" >&5 ++$as_echo "$gl_cv_cc_vis_werror" >&6; } ++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for simple visibility declarations" >&5 ++$as_echo_n "checking for simple visibility declarations... " >&6; } ++ if ${gl_cv_cc_visibility+:} false; then : ++ $as_echo_n "(cached) " >&6 ++else ++ ++ gl_save_CFLAGS="$CFLAGS" ++ CFLAGS="$CFLAGS -fvisibility=hidden" ++ if test $gl_cv_cc_vis_werror = yes; then ++ CFLAGS="$CFLAGS -Werror" ++ fi ++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext ++/* end confdefs.h. */ ++extern __attribute__((__visibility__("hidden"))) int hiddenvar; ++ extern __attribute__((__visibility__("default"))) int exportedvar; ++ extern __attribute__((__visibility__("hidden"))) int hiddenfunc (void); ++ extern __attribute__((__visibility__("default"))) int exportedfunc (void); ++ void dummyfunc (void) {} ++ ++int ++main () ++{ ++ ++ ; ++ return 0; ++} ++_ACEOF ++if ac_fn_c_try_compile "$LINENO"; then : ++ gl_cv_cc_visibility=yes ++else ++ gl_cv_cc_visibility=no ++fi ++rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ++ CFLAGS="$gl_save_CFLAGS" ++fi ++ ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_cc_visibility" >&5 ++$as_echo "$gl_cv_cc_visibility" >&6; } ++ if test $gl_cv_cc_visibility = yes; then ++ CFLAG_VISIBILITY="-fvisibility=hidden" ++ HAVE_VISIBILITY=1 ++ fi ++ fi ++ ++ ++ ++cat >>confdefs.h <<_ACEOF ++#define HAVE_VISIBILITY $HAVE_VISIBILITY ++_ACEOF ++ ++ + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 + $as_echo_n "checking for ANSI C header files... " >&6; } + if ${ac_cv_header_stdc+:} false; then : +@@ -16194,7 +16286,7 @@ + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` +- test -z "am__include" && continue ++ test -z "$am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the |