|
|
@@ -3265,42 +3265,40 @@ MHD_CHECK_FUNC([[sysctlbyname]], [[
|
|
|
MHD_CHECK_FUNC([[usleep]], [[#include <unistd.h>]], [[usleep(100000);]])
|
|
|
MHD_CHECK_FUNC([[nanosleep]], [[#include <time.h>]], [[struct timespec ts2, ts1 = {0, 0}; nanosleep(&ts1, &ts2);]])
|
|
|
|
|
|
-HIDDEN_VISIBILITY_CFLAGS=""
|
|
|
-AH_TEMPLATE([_MHD_EXTERN],[defines how to decorate public symbols w][hile building the library])
|
|
|
-CFLAGS="${user_CFLAGS}"
|
|
|
-MHD_CHECK_CC_CFLAG([-fvisibility=hidden],[CFLAGS_ac],
|
|
|
+# NOTE: require setting of errattr_CFLAGS above
|
|
|
+CFLAGS="${CFLAGS_ac} ${user_CFLAGS} ${errattr_CFLAGS}"
|
|
|
+AC_CACHE_CHECK([whether $CC supports __attribute__((visibility("default")))],[mhd_cv_cc_attr_visibility_default],
|
|
|
[
|
|
|
- # NOTE: require setting of errattr_CFLAGS above
|
|
|
- CFLAGS="${CFLAGS_ac} -fvisibility=hidden ${user_CFLAGS} ${errattr_CFLAGS}"
|
|
|
- AC_CACHE_CHECK([whether $CC supports __attribute__((visibility("default")))],[mhd_cv_cc_attr_visibility],
|
|
|
- [
|
|
|
- AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
|
|
-extern __attribute__((visibility("default"))) int test_extrn_func(void);
|
|
|
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
|
|
+extern __attribute__((visibility("default"))) int
|
|
|
+test_extrn_func(void);
|
|
|
|
|
|
-int test_extrn_func(void) {return 0;}
|
|
|
- ]])
|
|
|
- ],
|
|
|
- [mhd_cv_cc_attr_visibility="yes"],[mhd_cv_cc_attr_visibility="no"]
|
|
|
- )
|
|
|
- ]
|
|
|
+extern __attribute__((visibility("default"))) int
|
|
|
+test_extrn_func(void) {return 0;}
|
|
|
+ ]])
|
|
|
+ ],
|
|
|
+ [mhd_cv_cc_attr_visibility_default="yes"],[mhd_cv_cc_attr_visibility_default="no"]
|
|
|
+ )
|
|
|
+ ]
|
|
|
+)
|
|
|
+AS_VAR_IF([mhd_cv_cc_attr_visibility_default],["yes"],
|
|
|
+ [
|
|
|
+ AC_DEFINE([HAVE_ATTR_VISIBILITY_DEFAULT],[1],
|
|
|
+ [Define to '1' if your compiler supports __attribute__((visibility("default")))]
|
|
|
)
|
|
|
- AS_VAR_IF([mhd_cv_cc_attr_visibility],["yes"],
|
|
|
+
|
|
|
+ CFLAGS="${user_CFLAGS}"
|
|
|
+ MHD_CHECK_CC_CFLAG([-fvisibility=hidden],[CFLAGS_ac],
|
|
|
[
|
|
|
- HIDDEN_VISIBILITY_CFLAGS="-fvisibility=hidden"
|
|
|
- AS_IF([test "x$os_is_native_w32" = "xyes" && test "x$enable_shared" = "xyes"],
|
|
|
- [AC_DEFINE([_MHD_EXTERN], [__attribute__((visibility("default"))) __declspec(dllexport) extern])],
|
|
|
- [AC_DEFINE([_MHD_EXTERN], [__attribute__((visibility("default"))) extern])]
|
|
|
- )
|
|
|
+ MHD_APPEND_FLAG_TO_VAR([MHD_LIB_CFLAGS],[-fvisibility=hidden])
|
|
|
],
|
|
|
[
|
|
|
- AC_MSG_WARN([$CC supports -fvisibility, but does not support __attribute__((visibility("default"))). Check compiler and compiler flags.])
|
|
|
- AC_DEFINE([_MHD_EXTERN], [extern])
|
|
|
+ AC_MSG_WARN([[$CC supports __attribute__((visibility("default"))), but does not support -fvisibility=hidden. Check compiler and compiler flags.]])
|
|
|
]
|
|
|
)
|
|
|
- ],[AC_DEFINE([_MHD_EXTERN], [extern])]
|
|
|
+ ]
|
|
|
)
|
|
|
CFLAGS="${CFLAGS_ac} ${user_CFLAGS}"
|
|
|
-AC_SUBST([HIDDEN_VISIBILITY_CFLAGS])
|
|
|
|
|
|
# libcurl (required for testing)
|
|
|
AC_ARG_ENABLE([curl],
|