diff options
author | tnn <tnn@pkgsrc.org> | 2016-08-16 09:34:12 +0000 |
---|---|---|
committer | tnn <tnn@pkgsrc.org> | 2016-08-16 09:34:12 +0000 |
commit | f2f043e1a7a9ca936bf4e87137a5c424077af15a (patch) | |
tree | d4e6ce615d4413b9d2ef0189e04d3fe38d89616c /www/firefox | |
parent | b5e9918beacf508c51efdc33d741c6f0a52ca86d (diff) | |
download | pkgsrc-f2f043e1a7a9ca936bf4e87137a5c424077af15a.tar.gz |
fix pkg/50767 linker error when using clang
Diffstat (limited to 'www/firefox')
-rw-r--r-- | www/firefox/distinfo | 4 | ||||
-rw-r--r-- | www/firefox/patches/patch-toolkit_library_libxul.mk | 16 | ||||
-rw-r--r-- | www/firefox/patches/patch-xpcom_components_Module.h | 16 |
3 files changed, 35 insertions, 1 deletions
diff --git a/www/firefox/distinfo b/www/firefox/distinfo index 917d0b39b06..4e0a6d9cdc0 100644 --- a/www/firefox/distinfo +++ b/www/firefox/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.250 2016/08/06 08:46:59 ryoon Exp $ +$NetBSD: distinfo,v 1.251 2016/08/16 09:34:12 tnn Exp $ SHA1 (firefox-48.0.source.tar.xz) = 2b73cfc996861fe895ad7564d485bf9e35190767 RMD160 (firefox-48.0.source.tar.xz) = 7f1754fd11849c4894b4cb234fe1c3fc4be47ba6 @@ -86,10 +86,12 @@ SHA1 (patch-rc) = 9628b038f036f3fc0e37bdf84fa0abf99dbc8d2a SHA1 (patch-toolkit_components_protobuf_src_google_protobuf_stubs_atomicops.h) = 5ffb0782bbbff2fd17ad71e98b349b4ec3dc6c8c SHA1 (patch-toolkit_components_protobuf_src_google_protobuf_stubs_platform__macros.h) = bd4388323851fcb7b10392d6a27f9bc56633a52e SHA1 (patch-toolkit_components_terminator_nsTerminator.cpp) = 5b6d2e5c9f685d32894898d3ef3aec09a1a1e5ce +SHA1 (patch-toolkit_library_libxul.mk) = 98d79e7ae52d4b54111512a98a03810e2bbe454d SHA1 (patch-toolkit_library_moz.build) = be0b3ae0c8048fd61c67b2ae78b2a0813cbefd85 SHA1 (patch-toolkit_xre_glxtest.cpp) = cf048491778610454b914400e53072afedd96e7b SHA1 (patch-toolkit_xre_nsEmbedFunctions.cpp) = 4db0dfc98ffeb09f524a471e6a727f2c3b045afe SHA1 (patch-xpcom_base_nscore.h) = d7c96eda884d7f370442749c43caba50da61bbe4 +SHA1 (patch-xpcom_components_Module.h) = 892f8d6a9cb868e5cdc3c6f6be233055dd1ca529 SHA1 (patch-xpcom_reflect_xptcall_md_unix_Makefile.in) = 950874fbc255c93a828bddd84ffe8478094214cc SHA1 (patch-xpcom_reflect_xptcall_md_unix_moz.build) = 82026e72559334810be2f8a510d22f0553a353c2 SHA1 (patch-xpcom_reflect_xptcall_md_unix_xptcinvoke__arm__netbsd.cpp) = 493d1433ae72bbd0c65ab3f51de43fb864a6f58d diff --git a/www/firefox/patches/patch-toolkit_library_libxul.mk b/www/firefox/patches/patch-toolkit_library_libxul.mk new file mode 100644 index 00000000000..91de9d61f3c --- /dev/null +++ b/www/firefox/patches/patch-toolkit_library_libxul.mk @@ -0,0 +1,16 @@ +$NetBSD: patch-toolkit_library_libxul.mk,v 1.4 2016/08/16 09:34:12 tnn Exp $ + +Can't do relocation against extern protected symbol (pkg/50767) +usr/bin/ld: ../../xpcom/components/nsComponentManager.o: relocation R_X86_64_PC32 against protected symbol `start_kPStaticModules_NSModule' can not be used when making a shared object + +--- toolkit/library/libxul.mk.orig 2016-06-18 12:32:59.901404958 +0000 ++++ toolkit/library/libxul.mk +@@ -55,7 +55,7 @@ endif + ifdef _MSC_VER + get_first_and_last = dumpbin -exports $1 | grep _NSModule@@ | sort -k 3 | sed -n 's/^.*?\([^@]*\)@@.*$$/\1/;1p;$$p' + else +-get_first_and_last = $(TOOLCHAIN_PREFIX)nm -g $1 | grep _NSModule$$ | grep -vw refptr | sort | sed -n 's/^.* _*\([^ ]*\)$$/\1/;1p;$$p' ++get_first_and_last = $(TOOLCHAIN_PREFIX)nm $1 | grep _NSModule$$ | grep -vw refptr | sort | sed -n 's/^.* _*\([^ ]*\)$$/\1/;1p;$$p' + endif + + LOCAL_CHECKS = test "$$($(get_first_and_last) | xargs echo)" != "start_kPStaticModules_NSModule end_kPStaticModules_NSModule" && echo "NSModules are not ordered appropriately" && exit 1 || exit 0 diff --git a/www/firefox/patches/patch-xpcom_components_Module.h b/www/firefox/patches/patch-xpcom_components_Module.h new file mode 100644 index 00000000000..8d5a487c923 --- /dev/null +++ b/www/firefox/patches/patch-xpcom_components_Module.h @@ -0,0 +1,16 @@ +$NetBSD: patch-xpcom_components_Module.h,v 1.3 2016/08/16 09:34:12 tnn Exp $ + +Can't do relocation against extern protected symbol (pkg/50767) +usr/bin/ld: ../../xpcom/components/nsComponentManager.o: relocation R_X86_64_PC32 against protected symbol `start_kPStaticModules_NSModule' can not be used when making a shared object + +--- xpcom/components/Module.h.orig 2016-06-01 04:11:44.000000000 +0000 ++++ xpcom/components/Module.h +@@ -125,7 +125,7 @@ struct Module + # define NSMODULE_SECTION __declspec(allocate(".kPStaticModules$M"), dllexport) + # elif defined(__GNUC__) + # if defined(__ELF__) +-# define NSMODULE_SECTION __attribute__((section(".kPStaticModules"), visibility("protected"))) ++# define NSMODULE_SECTION __attribute__((section(".kPStaticModules"), visibility("hidden"))) + # elif defined(__MACH__) + # define NSMODULE_SECTION __attribute__((section("__DATA, .kPStaticModules"), visibility("default"))) + # elif defined (_WIN32) |