[PATCH] configure.ac: Solaris linker and compiler flags
Evgeny Litvinenko
evgeny.v.litvinenko at gmail.com
Sun Sep 8 17:23:38 CDT 2019
Signed-off-by: Evgeny Litvinenko <evgeny.v.litvinenko at gmail.com>
---
configure.ac | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)
diff --git a/configure.ac b/configure.ac
index b39b6b2c90..aec9c135bf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -940,6 +940,60 @@ case $host_os in
fi
;;
+ solaris*)
+ DLLFLAGS="$DLLFLAGS -fPIC"
+ LDDLLFLAGS="-shared -fPIC"
+
+ WINE_TRY_CFLAGS([-fPIC -Wl,-pie], [LDEXECFLAGS="-Wl,-pie"])
+
+ AC_CACHE_CHECK([for linker flags to build shared library], ac_cv_c_dll_ld_opts,
+ [WINE_TRY_SHLIB_FLAGS([$LDDLLFLAGS -Wl,-G,-B,symbolic],
+ [ac_cv_c_dll_ld_opts="-Wl,-G,-B,symbolic"],
+ [WINE_TRY_SHLIB_FLAGS([$LDDLLFLAGS -Wl,-shared,-Bsymbolic],
+ [ac_cv_c_dll_ld_opts="-Wl,-shared,-Bsymbolic"],
+ [ac_cv_c_dll_ld_opts=""])])])
+
+ AC_CACHE_CHECK([for linker flags to record a shared object name], ac_cv_c_dll_ld_soname,
+ [WINE_TRY_SHLIB_FLAGS([$LDDLLFLAGS -Wl,-soname,confest.so.1],
+ [ac_cv_c_dll_ld_soname="-Wl,-soname,libwine.so.$libwine_soversion"],
+ [WINE_TRY_SHLIB_FLAGS([$LDDLLFLAGS -Wl,-h,confest.so.1],
+ [ac_cv_c_dll_ld_soname="-Wl,-h,libwine.so.$libwine_soversion"],
+ [ac_cv_c_dll_ld_soname=""])])])
+
+ echo '{ global: *; };' >conftest.map
+ AC_CACHE_CHECK([for linker flags to use mapfile], ac_cv_c_dll_ld_map,
+ [WINE_TRY_SHLIB_FLAGS([$LDDLLFLAGS -Wl,--version-script=conftest.map],
+ [ac_cv_c_dll_ld_map="-Wl,--version-script=\$(srcdir)/wine.map"],
+ [WINE_TRY_SHLIB_FLAGS([$LDDLLFLAGS -Wl,-M,conftest.map],
+ [ac_cv_c_dll_ld_map="-Wl,-M,\$(srcdir)/wine.map"],
+ [ac_cv_c_dll_ld_map=""])])])
+ rm -f conftest.map
+
+ AC_SUBST(LIBWINE_LDFLAGS,"$LDDLLFLAGS $ac_cv_c_dll_ld_opts $ac_cv_c_dll_ld_soname $ac_cv_c_dll_ld_map")
+
+ WINEPRELOADER_LDFLAGS="-static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c400000"
+
+ WINE_TRY_CFLAGS([-Wl,--export-dynamic], [WINELOADER_LDFLAGS="-Wl,--export-dynamic"])
+
+ WINE_TRY_CFLAGS([-Wl,--rpath,\$ORIGIN/../lib],
+ [LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`"
+ LDRPATH_LOCAL="-Wl,--rpath,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"],
+ [WINE_TRY_CFLAGS([-Wl,-R,\$ORIGIN/../lib],
+ [LDRPATH_INSTALL="-Wl,-R,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`"
+ LDRPATH_LOCAL="-Wl,-R,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"])])
+
+ WINE_TRY_CFLAGS([-Wl,--enable-new-dtags],
+ [LDRPATH_INSTALL="$LDRPATH_INSTALL -Wl,--enable-new-dtags"])
+
+ WINE_TRY_CFLAGS([-Wl,-z,max-page-size=0x1000],
+ [WINELOADER_LDFLAGS="$WINELOADER_LDFLAGS -Wl,-z,max-page-size=0x1000"])
+
+ AC_SUBST(LIBWINE_SHAREDLIB,"libwine.so.$libwine_version")
+ AC_SUBST(LIBWINE_DEPENDS,"wine.map")
+ TOP_INSTALL_LIB="$TOP_INSTALL_LIB libs/wine/libwine.so.$libwine_version libs/wine/libwine.so.$libwine_soversion"
+ TOP_INSTALL_DEV="$TOP_INSTALL_DEV libs/wine/libwine.so"
+ ;;
+
*)
case $host_cpu in
*i[[3456789]]86*)
--
2.23.0
More information about the wine-devel
mailing list