]> git.kaiwu.me - njs.git/commitdiff
The visibility attribute disabling in the commit af6c17324584
authorIgor Sysoev <igor@sysoev.ru>
Fri, 23 Sep 2016 08:59:58 +0000 (11:59 +0300)
committerIgor Sysoev <igor@sysoev.ru>
Fri, 23 Sep 2016 08:59:58 +0000 (11:59 +0300)
had not resovled the issue.  So now it is enabled and the aligment
attribute has been disabled instead for Linux/PPC64.

nxt/auto/clang
nxt/nxt_clang.h

index 122981483aa0221904f9974146f5756b3f7bf8ff..c041e1912327533c8c8e5bb4cef0e623353defa3 100644 (file)
@@ -202,6 +202,19 @@ nxt_feature_test="int main() {
 . ${NXT_AUTO}feature
 
 
+nxt_feature="GCC __attribute__ visibility"
+nxt_feature_name=NXT_HAVE_GCC_ATTRIBUTE_VISIBILITY
+nxt_feature_run=
+nxt_feature_path=
+nxt_feature_libs=
+nxt_feature_test="int n __attribute__ ((visibility(\"default\")));
+
+                  int main() {
+                      return 1;
+                  }"
+. ${NXT_AUTO}feature
+
+
 nxt_feature="GCC __attribute__ aligned"
 nxt_feature_name=NXT_HAVE_GCC_ATTRIBUTE_ALIGNED
 nxt_feature_run=
index af381adb74bd4d15014b5e0e1d089260baeec3f9..c409491ab88c15ef09c001ab5d14749eb6a95352 100644 (file)
 #endif
 
 
-#if (NXT_HAVE_GCC_ATTRIBUTE_MALLOC)
-#define NXT_MALLOC_LIKE    __attribute__((__malloc__))
+#if (NXT_HAVE_GCC_ATTRIBUTE_ALIGNED)
 
+#if (NXT_LINUX && __PPC64__)
+/* Old GNU ld linker may hang on Linux ppc64le platform. */
+#define nxt_aligned(x)
 #else
-#define NXT_MALLOC_LIKE
+#define nxt_aligned(x)     __attribute__((aligned(x)))
+#endif
+
+#else
+#define nxt_aligned(x)
 #endif
 
 
-#if (NXT_HAVE_GCC_ATTRIBUTE_ALIGNED)
-#define nxt_aligned(x)     __attribute__((aligned(x)))
+#if (NXT_HAVE_GCC_ATTRIBUTE_MALLOC)
+#define NXT_MALLOC_LIKE    __attribute__((__malloc__))
 
 #else
-#define nxt_aligned(x)
+#define NXT_MALLOC_LIKE
 #endif