[130974] trunk/dports/devel/libunwind

jeremyhu at macports.org jeremyhu at macports.org
Sun Jan 4 02:40:59 PST 2015


Revision: 130974
          https://trac.macports.org/changeset/130974
Author:   jeremyhu at macports.org
Date:     2015-01-04 02:40:59 -0800 (Sun, 04 Jan 2015)
Log Message:
-----------
libunwind: Don't hide symbols from the linker as we would if this were landing in libSystem

Modified Paths:
--------------
    trunk/dports/devel/libunwind/Portfile

Added Paths:
-----------
    trunk/dports/devel/libunwind/files/libunwind-donthide.patch

Modified: trunk/dports/devel/libunwind/Portfile
===================================================================
--- trunk/dports/devel/libunwind/Portfile	2015-01-04 09:49:32 UTC (rev 130973)
+++ trunk/dports/devel/libunwind/Portfile	2015-01-04 10:40:59 UTC (rev 130974)
@@ -5,7 +5,7 @@
 
 name                    libunwind
 version                 3.5.0
-revision                2
+revision                3
 epoch                   1
 categories              devel
 platforms               darwin
@@ -38,8 +38,7 @@
 }
 
 patchfiles \
-    libunwind-available.patch \
-    libunwind-fallback-x86_64.patch
+    libunwind-available.patch
 
 post-patch {
     if {${os.major} < 9} {
@@ -74,6 +73,10 @@
     supported_archs     i386 x86_64
     variant universal   {}
 
+    patchfiles-append \
+        libunwind-donthide.patch \
+        libunwind-fallback-x86_64.patch
+
     if {${os.major} < 10} {
         # Leopard's libSystem's libmacho does not contain getsectiondata()
 

Added: trunk/dports/devel/libunwind/files/libunwind-donthide.patch
===================================================================
--- trunk/dports/devel/libunwind/files/libunwind-donthide.patch	                        (rev 0)
+++ trunk/dports/devel/libunwind/files/libunwind-donthide.patch	2015-01-04 10:40:59 UTC (rev 130974)
@@ -0,0 +1,41 @@
+--- src/Unwind/Unwind_AppleExtras.cpp.orig	2015-01-04 02:29:35.000000000 -0800
++++ src/Unwind/Unwind_AppleExtras.cpp	2015-01-04 02:30:46.000000000 -0800
+@@ -41,38 +41,7 @@ struct libgcc_object_info {
+ 
+ 
+ // static linker symbols to prevent wrong two level namespace for _Unwind symbols
+-#if __arm__
+-   #define NOT_HERE_BEFORE_5_0(sym)     \
+-       extern const char sym##_tmp30 __asm("$ld$hide$os3.0$_" #sym ); \
+-       __attribute__((visibility("default"))) const char sym##_tmp30 = 0; \
+-       extern const char sym##_tmp31 __asm("$ld$hide$os3.1$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp31 = 0; \
+-       extern const char sym##_tmp32 __asm("$ld$hide$os3.2$_" #sym );\
+-           __attribute__((visibility("default"))) const char sym##_tmp32 = 0; \
+-       extern const char sym##_tmp40 __asm("$ld$hide$os4.0$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp40 = 0; \
+-       extern const char sym##_tmp41 __asm("$ld$hide$os4.1$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp41 = 0; \
+-       extern const char sym##_tmp42 __asm("$ld$hide$os4.2$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp42 = 0; \
+-       extern const char sym##_tmp43 __asm("$ld$hide$os4.3$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp43 = 0;
+-#elif __arm64__
+   #define NOT_HERE_BEFORE_10_6(sym)
+   #define NEVER_HERE(sym)
+-#else
+-  #define NOT_HERE_BEFORE_10_6(sym) \
+-    extern const char sym##_tmp4 __asm("$ld$hide$os10.4$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp4 = 0; \
+-    extern const char sym##_tmp5 __asm("$ld$hide$os10.5$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp5 = 0;
+-  #define NEVER_HERE(sym) \
+-    extern const char sym##_tmp4 __asm("$ld$hide$os10.4$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp4 = 0; \
+-    extern const char sym##_tmp5 __asm("$ld$hide$os10.5$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp5 = 0; \
+-    extern const char sym##_tmp6 __asm("$ld$hide$os10.6$_" #sym ); \
+-          __attribute__((visibility("default"))) const char sym##_tmp6 = 0;
+-#endif
+ 
+ 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20150104/37cbd715/attachment.html>


More information about the macports-changes mailing list