]> granicus.if.org Git - libexpat/commitdiff
reorganised check for compiler supporting visibility
authorMarco Maggi <marco.maggi-ipsu@poste.it>
Thu, 18 Oct 2018 11:27:40 +0000 (13:27 +0200)
committerMarco Maggi <marco.maggi-ipsu@poste.it>
Thu, 18 Oct 2018 11:27:40 +0000 (13:27 +0200)
expat/acinclude.m4
expat/configure.ac
expat/conftools/expat-compiler-supports-visibility.mp4 [new file with mode: 0644]

index e6b5f63a8a865276d989d897f1338cbea8f4fef2..0d12c3e8875f9d61c16902344eafda0537ac0a17 100644 (file)
@@ -8,5 +8,6 @@ m4_include(conftools/ax-append-flag.m4)
 m4_include(conftools/ax-append-compile-flags.m4)
 m4_include(conftools/ax-append-link-flags.m4)
 dnl m4_include(conftools/ax-gcc-version.m4)
+m4_include(conftools/expat-compiler-supports-visibility.mp4)
 
 ### end of file
index 37d9850af4adb76e5bd11a47cedde81189c21863..20d894d0a70be24965817868ef8fed80d348528f 100644 (file)
@@ -90,14 +90,9 @@ AC_LANG_POP([C++])
 AS_IF([test "$GCC" = yes],
   [AX_APPEND_LINK_FLAGS([-fno-strict-aliasing],[LDFLAGS])])
 
-AC_MSG_CHECKING(whether compiler supports visibility)
-AS_VAR_COPY(OLDCFLAGS,CFLAGS)
-AS_VAR_APPEND(CFLAGS,[" -fvisibility=hidden -Wall -Werror"])
-AC_COMPILE_IFELSE([AC_LANG_SOURCE([[void __attribute__((visibility("default"))) foo(void); void foo(void) {}]])],
-  [AC_MSG_RESULT(yes)
-   AS_VAR_SET(CFLAGS,"$OLDCFLAGS -fvisibility=hidden -DXML_ENABLE_VISIBILITY=1")],
-  [AC_MSG_RESULT(no)
-   AS_VAR_COPY(CFLAGS, OLDCFLAGS)])
+EXPAT_COMPILER_SUPPORTS_VISIBILITY([
+  AX_APPEND_FLAG([-fvisibility=hidden],       [CFLAGS])
+  AX_APPEND_FLAG([-DXML_ENABLE_VISIBILITY=1], [CFLAGS])])
 
 dnl Checks for header files.
 AC_HEADER_STDC
diff --git a/expat/conftools/expat-compiler-supports-visibility.mp4 b/expat/conftools/expat-compiler-supports-visibility.mp4
new file mode 100644 (file)
index 0000000..2ea9f97
--- /dev/null
@@ -0,0 +1,20 @@
+dnl expat-compiler-supports-visibility.mp4
+dnl
+dnl SYNOPSIS
+dnl
+dnl    EXPAT_COMPILER_SUPPORTS_VISIBILITY([ACTION-IF-YES], [ACTION-IF-NO])
+dnl
+
+AC_DEFUN([EXPAT_COMPILER_SUPPORTS_VISIBILITY],
+  [AC_MSG_CHECKING(whether compiler supports visibility)
+   AS_VAR_COPY([OLDFLAGS],[CFLAGS])
+   AS_VAR_APPEND(CFLAGS,[" -fvisibility=hidden -Wall -Werror"])
+   AC_COMPILE_IFELSE([AC_LANG_SOURCE([[void __attribute__((visibility("default"))) foo(void); void foo(void) {}]])],
+     [AC_MSG_RESULT(yes)
+      AS_VAR_COPY([CFLAGS],[OLDFLAGS])
+      $1],
+     [AC_MSG_RESULT(no)
+      AS_VAR_COPY([CFLAGS],[OLDFLAGS])
+      $2])])
+
+dnl end of file