# Macro added for some Cygwin-specific support -*- sh -*-
# @author@: Kayvan Sylvan
-AC_DEFUN(CHECK_WITH_CYGWIN,
+AC_DEFUN([CHECK_WITH_CYGWIN],
[
case $host_os in
cygwin* | mingw* | pw32* )
- if test "$GCC" = yes; then
- # Ensure MSVC-compatible struct packing convention.
- # Depends on GCC version. gcc2 uses -fnative-struct while
- # gcc3 uses -mms-bitfields.
- #
- msnative_struct=''
- AC_MSG_CHECKING([how to get MSVC-compatible struct packing])
- case `$CC --version | sed -e 's,\..*,.,' -e q` in
- 2.)
- if $CC -v --help 2>/dev/null | grep fnative-struct > /dev/null; then
- msnative_struct='-fnative-struct'
- fi
- ;;
- *)
- if $CC -v --help 2>/dev/null | grep ms-bitfields > /dev/null; then
- msnative_struct='-mms-bitfields'
- fi
- ;;
- esac
-
- if test x"$msnative_struct" = x; then
- AC_MSG_RESULT([no way])
- AC_MSG_WARN([produced libraries might be incompatible with MSVC libs])
- else
- CXXFLAGS="$CXXFLAGS $msnative_struct"
- AC_MSG_RESULT([${msnative_struct}])
- fi
- fi
-
- # Export all symbols to Win32 DLL using MinGW 2.0 ld.
- WIN32_LD_EXPORT_ALL_SYMBOLS=''
- AC_MSG_CHECKING([whether ld accepts --export-all-symbols])
- if $LD --help 2>&1 | egrep 'export-all-symbols' > /dev/null; then
- WIN32_LD_EXPORT_ALL_SYMBOLS='-Wl,--export-all-symbols'
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- if test x"$WIN32_LD_EXPORT_ALL_SYMBOLS" != x; then
- LDFLAGS="$LDFLAGS $WIN32_LD_EXPORT_ALL_SYMBOLS"
- fi
+ # TODO 1: pass -DQ_CYGWIN_WIN" *when* the option
+ # --without-x is passed to configure *and* platform is cygwin
+ # TODO 2: see how to pass -mno-cygwin when building native
+ # mingw within cygwin
;;
esac
])