configure: Use a platform name check for MacOS shared library support,

it's completely different from the others anyway.
This commit is contained in:
Alexandre Julliard 2006-08-15 12:55:25 +02:00
parent e533e972bf
commit 42b81ea006
2 changed files with 216 additions and 281 deletions

119
configure vendored
View file

@ -740,12 +740,12 @@ LIBEXT
IMPLIBEXT
DLLTOOL
DLLWRAP
LDEXECFLAGS
LDEXERPATH
LDDLLRPATH
COREFOUNDATIONLIB
IOKITLIB
LDEXECFLAGS
COREAUDIO
LDEXERPATH
LDDLLRPATH
CROSSTEST
CROSSCC
CROSSWINDRES
@ -15278,6 +15278,29 @@ fi
WIN16_FILES=""
WIN16_INSTALL=""
;;
darwin*|macosx*)
DLLEXT=".so"
LIBEXT="dylib"
DLLFLAGS="$DLLFLAGS -fPIC"
LDDLLFLAGS="-bundle -multiply_defined suppress"
LDSHARED="\$(CC) -dynamiclib -install_name @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/\$(DYNAME)"
STRIP="$STRIP -u -r"
COREFOUNDATIONLIB="-framework CoreFoundation"
IOKITLIB="-framework IOKit -framework CoreFoundation"
LDEXECFLAGS="-image_base 0x7bf00000 -Wl,-segaddr,WINE_DOS,0x00000000,-segaddr,WINE_SHARED_HEAP,0x7f000000"
if test "$ac_cv_header_CoreAudio_CoreAudio_h" = "yes" -a "$ac_cv_header_AudioUnit_AudioUnit_h" = "yes"
then
COREAUDIO="-framework CoreAudio -framework AudioUnit -framework CoreServices"
fi
case $host_cpu in
*powerpc*)
LDDLLFLAGS="$LDDLLFLAGS -read_only_relocs warning" ;;
esac
;;
*)
DLLFLAGS="$DLLFLAGS -fPIC"
DLLEXT=".so"
@ -16017,89 +16040,6 @@ echo "${ECHO_T}$ac_cv_c_dll_unixware" >&6; }
LDSHARED="\$(CC) -Wl,-G \$(SONAME:%=-Wl,-h,%)"
LDDLLFLAGS="-Wl,-G,-B,symbolic"
else
{ echo "$as_me:$LINENO: checking whether we can build a Mach-O (Mac OS X/Darwin) dll" >&5
echo $ECHO_N "checking whether we can build a Mach-O (Mac OS X/Darwin) dll... $ECHO_C" >&6; }
if test "${ac_cv_c_dll_macho+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
ac_wine_try_cflags_saved=$CFLAGS
CFLAGS="$CFLAGS -bundle"
cat >conftest.$ac_ext <<_ACEOF
void myfunc() {}
_ACEOF
rm -f conftest.$ac_objext conftest$ac_exeext
if { (ac_try="$ac_link"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_link") 2>conftest.er1
ac_status=$?
grep -v '^ *+' conftest.er1 >conftest.err
rm -f conftest.er1
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
{ ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; } &&
{ ac_try='test -s conftest$ac_exeext'
{ (case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
(eval "$ac_try") 2>&5
ac_status=$?
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); }; }; then
ac_cv_c_dll_macho="yes"
else
echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_cv_c_dll_macho="no"
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
CFLAGS=$ac_wine_try_cflags_saved
fi
{ echo "$as_me:$LINENO: result: $ac_cv_c_dll_macho" >&5
echo "${ECHO_T}$ac_cv_c_dll_macho" >&6; }
if test "$ac_cv_c_dll_macho" = "yes"
then
LIBEXT="dylib"
LDDLLFLAGS="-bundle -multiply_defined suppress"
LDSHARED="\$(CC) -dynamiclib -install_name @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/\$(DYNAME)"
STRIP="$STRIP -u -r"
COREFOUNDATIONLIB="-framework CoreFoundation"
IOKITLIB="-framework IOKit -framework CoreFoundation"
LDEXECFLAGS="-image_base 0x7bf00000 -Wl,-segaddr,WINE_DOS,0x00000000,-segaddr,WINE_SHARED_HEAP,0x7f000000"
if test "$ac_cv_header_CoreAudio_CoreAudio_h" = "yes" -a "$ac_cv_header_AudioUnit_AudioUnit_h" = "yes"
then
COREAUDIO="-framework CoreAudio -framework AudioUnit -framework CoreServices"
fi
case $host_cpu in
*powerpc*)
CFLAGS="$CFLAGS -ffixed-r13"
LDDLLFLAGS="$LDDLLFLAGS -read_only_relocs warning"
;;
esac
else
{ echo "$as_me:$LINENO: checking whether we can build an HP-UX dll" >&5
echo $ECHO_N "checking whether we can build an HP-UX dll... $ECHO_C" >&6; }
@ -16168,7 +16108,6 @@ echo "${ECHO_T}$ac_cv_c_dll_hpux" >&6; }
fi
fi
fi
fi
CROSSTEST=""
@ -25086,12 +25025,12 @@ LIBEXT!$LIBEXT$ac_delim
IMPLIBEXT!$IMPLIBEXT$ac_delim
DLLTOOL!$DLLTOOL$ac_delim
DLLWRAP!$DLLWRAP$ac_delim
LDEXECFLAGS!$LDEXECFLAGS$ac_delim
LDEXERPATH!$LDEXERPATH$ac_delim
LDDLLRPATH!$LDDLLRPATH$ac_delim
COREFOUNDATIONLIB!$COREFOUNDATIONLIB$ac_delim
IOKITLIB!$IOKITLIB$ac_delim
LDEXECFLAGS!$LDEXECFLAGS$ac_delim
COREAUDIO!$COREAUDIO$ac_delim
LDEXERPATH!$LDEXERPATH$ac_delim
LDDLLRPATH!$LDDLLRPATH$ac_delim
CROSSTEST!$CROSSTEST$ac_delim
CROSSCC!$CROSSCC$ac_delim
CROSSWINDRES!$CROSSWINDRES$ac_delim

View file

@ -1031,6 +1031,28 @@ case $host_os in
WIN16_FILES=""
WIN16_INSTALL=""
;;
darwin*|macosx*)
DLLEXT=".so"
LIBEXT="dylib"
DLLFLAGS="$DLLFLAGS -fPIC"
LDDLLFLAGS="-bundle -multiply_defined suppress"
LDSHARED="\$(CC) -dynamiclib -install_name @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/\$(DYNAME)"
STRIP="$STRIP -u -r"
dnl declare needed frameworks
AC_SUBST(COREFOUNDATIONLIB,"-framework CoreFoundation")
AC_SUBST(IOKITLIB,"-framework IOKit -framework CoreFoundation")
AC_SUBST(LDEXECFLAGS,["-image_base 0x7bf00000 -Wl,-segaddr,WINE_DOS,0x00000000,-segaddr,WINE_SHARED_HEAP,0x7f000000"])
if test "$ac_cv_header_CoreAudio_CoreAudio_h" = "yes" -a "$ac_cv_header_AudioUnit_AudioUnit_h" = "yes"
then
dnl CoreServices needed by AudioUnit
AC_SUBST(COREAUDIO,"-framework CoreAudio -framework AudioUnit -framework CoreServices")
fi
case $host_cpu in
*powerpc*)
LDDLLFLAGS="$LDDLLFLAGS -read_only_relocs warning" dnl FIXME
;;
esac
;;
*)
DLLFLAGS="$DLLFLAGS -fPIC"
DLLEXT=".so"
@ -1121,31 +1143,6 @@ case $host_os in
LDSHARED="\$(CC) -Wl,-G \$(SONAME:%=-Wl,-h,%)"
LDDLLFLAGS="-Wl,-G,-B,symbolic"
else
AC_CACHE_CHECK(whether we can build a Mach-O (Mac OS X/Darwin) dll, ac_cv_c_dll_macho,
[WINE_TRY_SHLIB_FLAGS([-bundle], ac_cv_c_dll_macho="yes", ac_cv_c_dll_macho="no")])
if test "$ac_cv_c_dll_macho" = "yes"
then
LIBEXT="dylib"
LDDLLFLAGS="-bundle -multiply_defined suppress"
LDSHARED="\$(CC) -dynamiclib -install_name @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/\$(DYNAME)"
STRIP="$STRIP -u -r"
dnl declare needed frameworks
AC_SUBST(COREFOUNDATIONLIB,"-framework CoreFoundation")
AC_SUBST(IOKITLIB,"-framework IOKit -framework CoreFoundation")
AC_SUBST(LDEXECFLAGS,["-image_base 0x7bf00000 -Wl,-segaddr,WINE_DOS,0x00000000,-segaddr,WINE_SHARED_HEAP,0x7f000000"])
if test "$ac_cv_header_CoreAudio_CoreAudio_h" = "yes" -a "$ac_cv_header_AudioUnit_AudioUnit_h" = "yes"
then
dnl CoreServices needed by AudioUnit
AC_SUBST(COREAUDIO,"-framework CoreAudio -framework AudioUnit -framework CoreServices")
fi
case $host_cpu in
*powerpc*)
CFLAGS="$CFLAGS -ffixed-r13"
LDDLLFLAGS="$LDDLLFLAGS -read_only_relocs warning"
;;
esac
else
AC_CACHE_CHECK(whether we can build an HP-UX dll, ac_cv_c_dll_hpux,
[WINE_TRY_SHLIB_FLAGS([-shared], ac_cv_c_dll_hpux="yes", ac_cv_c_dll_hpux="no")])
@ -1158,7 +1155,6 @@ case $host_os in
fi
fi
fi
fi
dnl Check for cross compiler to build test programs
AC_SUBST(CROSSTEST,"")