Kaydet (Commit) 1118f575 authored tarafından David Tardon's avatar David Tardon

mingw: avoid hardcoded dll versions and deps

The idea is to use libo_MINGW_CHECK_DLL for libs that must be available
(typically that would be the "main" library, e.g., libxml2 or libcurl)
and libo_MINGW_TRY_DLL for possible dependencies (that may not be the
same on different systems). All further references to the dlls are
exclusively through the configured variables or defines set from these
variables (e.g., instead of hardcoding libxml2-2.dll, use
$(MINGW_LIBXML2_DLL)).

The macros are documented in m4/mingw.m4 .

Files that must be changed when adding a new dll:
* configure.in
* config_host.mk.in
* external/mingw-dlls/makefile.mk
* scp2/source/ooo/makefile.mk
* scp2/source/ooo/mingw_dlls.scp
üst c7b319d2
...@@ -276,13 +276,52 @@ export MFC_INCLUDE=@MFC_INCLUDE@ ...@@ -276,13 +276,52 @@ export MFC_INCLUDE=@MFC_INCLUDE@
export MFC_LIB=@MFC_LIB@ export MFC_LIB=@MFC_LIB@
export MINGWCXX=@MINGWCXX@ export MINGWCXX=@MINGWCXX@
export MINGWSTRIP=@MINGWSTRIP@ export MINGWSTRIP=@MINGWSTRIP@
export MINGW_CAIRO_DLL=@MINGW_CAIRO_DLL@
export MINGW_CLIB_DIR=@MINGW_CLIB_DIR@ export MINGW_CLIB_DIR=@MINGW_CLIB_DIR@
export MINGW_EXTERNAL_DLLS=@MINGW_EXTERNAL_DLLS@ export MINGW_CRYPTO_DLL=@MINGW_CRYPTO_DLL@
export MINGW_CURL_DLL=@MINGW_CURL_DLL@
export MINGW_DB_DLL=@MINGW_DB_DLL@
export MINGW_EXPAT_DLL=@MINGW_EXPAT_DLL@
export MINGW_FONTCONFIG_DLL=@MINGW_FONTCONFIG_DLL@
export MINGW_FREETYPE_DLL=@MINGW_FREETYPE_DLL@
export MINGW_GCCDLL=@MINGW_GCCDLL@ export MINGW_GCCDLL=@MINGW_GCCDLL@
export MINGW_GCRYPT_DLL=@MINGW_GCRYPT_DLL@
export MINGW_GNUTLS_DLL=@MINGW_GNUTLS_DLL@
export MINGW_GPG_ERROR_DLL=@MINGW_GPG_ERROR_DLL@
export MINGW_GRAPHITE2_DLL=@MINGW_GRAPHITE2_DLL@
export MINGW_GXXDLL=@MINGW_GXXDLL@ export MINGW_GXXDLL=@MINGW_GXXDLL@
export MINGW_HUNSPELL_DLL=@MINGW_HUNSPELL_DLL@
export MINGW_HYPHEN_DLL=@MINGW_HYPHEN_DLL@
export MINGW_ICUDATA_DLL=@MINGW_ICUDATA_DLL@
export MINGW_ICUI18N_DLL=@MINGW_ICUI18N_DLL@
export MINGW_ICUUC_DLL=@MINGW_ICUUC_DLL@
export MINGW_IDN_DLL=@MINGW_IDN_DLL@
export MINGW_INTL_DLL=@MINGW_INTL_DLL@
export MINGW_LCMS2_DLL=@MINGW_LCMS2_DLL@
export MINGW_LIBXML_DLL=@MINGW_LIBXML_DLL@
export MINGW_LIBXSLT_DLL=@MINGW_LIBXSLT_DLL@
export MINGW_LPSOLVE_DLL=@MINGW_LPSOLVE_DLL@
export MINGW_MYTHES_DLL=@MINGW_MYTHES_DLL@
export MINGW_NEON_DLL=@MINGW_NEON_DLL@
export MINGW_NSPR4_DLL=@MINGW_NSPR4_DLL@
export MINGW_NSS3_DLL=@MINGW_NSS3_DLL@
export MINGW_NSSUTIL3_DLL=@MINGW_NSSUTIL3_DLL@
export MINGW_PIXMAN_DLL=@MINGW_PIXMAN_DLL@
export MINGW_PLC4_DLL=@MINGW_PLC4_DLL@
export MINGW_PLDS4_DLL=@MINGW_PLDS4_DLL@
export MINGW_PNG15_DLL=@MINGW_PNG15_DLL@
export MINGW_RAPTOR_DLL=@MINGW_RAPTOR_DLL@
export MINGW_RASQAL_DLL=@MINGW_RASQAL_DLL@
export MINGW_REDLAND_DLL=@MINGW_REDLAND_DLL@
export MINGW_SHARED_GCCLIB=@MINGW_SHARED_GCCLIB@ export MINGW_SHARED_GCCLIB=@MINGW_SHARED_GCCLIB@
export MINGW_SHARED_GXXLIB=@MINGW_SHARED_GXXLIB@ export MINGW_SHARED_GXXLIB=@MINGW_SHARED_GXXLIB@
export MINGW_SHARED_LIBSTDCPP=@MINGW_SHARED_LIBSTDCPP@ export MINGW_SHARED_LIBSTDCPP=@MINGW_SHARED_LIBSTDCPP@
export MINGW_SQLITE3_DLL=@MINGW_SQLITE3_DLL@
export MINGW_SSH2_DLL=@MINGW_SSH2_DLL@
export MINGW_SSL3_DLL=@MINGW_SSL3_DLL@
export MINGW_SSL_DLL=@MINGW_SSL_DLL@
export MINGW_TASN1_DLL=@MINGW_TASN1_DLL@
export MINGW_ZLIB_DLL=@MINGW_ZLIB_DLL@
export MKDEPENDSOLVER=TRUE export MKDEPENDSOLVER=TRUE
export ML_EXE=@ML_EXE@ export ML_EXE=@ML_EXE@
export MOC4=@MOC4@ export MOC4=@MOC4@
......
...@@ -11,7 +11,6 @@ save_CXX=$CXX ...@@ -11,7 +11,6 @@ save_CXX=$CXX
BUILD_TYPE="LibO" BUILD_TYPE="LibO"
SCPDEFS="" SCPDEFS=""
GIT_REPO_NAMES="" GIT_REPO_NAMES=""
MINGW_EXTERNAL_DLLS=""
LO_PATH= # used by path_munge to construct a PATH variable LO_PATH= # used by path_munge to construct a PATH variable
PathFormat() PathFormat()
...@@ -5807,13 +5806,14 @@ if test "$with_system_expat" = "yes"; then ...@@ -5807,13 +5806,14 @@ if test "$with_system_expat" = "yes"; then
[AC_MSG_ERROR(expat.h not found. install expat)], []) [AC_MSG_ERROR(expat.h not found. install expat)], [])
AC_CHECK_LIB([expat], [XML_ParserCreate], [:], AC_CHECK_LIB([expat], [XML_ParserCreate], [:],
[AC_MSG_RESULT(expat library not found or functional.)], []) [AC_MSG_RESULT(expat library not found or functional.)], [])
libo_ADD_MINGW_EXTERNAL_DLLS([libexpat],[MINGW_EXTERNAL_DLLS],[libexpat-1.dll]) libo_MINGW_CHECK_DLL([EXPAT], [libexpat])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_EXPAT=NO SYSTEM_EXPAT=NO
BUILD_TYPE="$BUILD_TYPE EXPAT" BUILD_TYPE="$BUILD_TYPE EXPAT"
fi fi
AC_SUBST(SYSTEM_EXPAT) AC_SUBST(SYSTEM_EXPAT)
AC_SUBST([MINGW_EXPAT_DLL])
dnl =================================================================== dnl ===================================================================
dnl Check for system libcdr dnl Check for system libcdr
...@@ -5900,6 +5900,7 @@ if test "$with_system_lcms2" = "yes"; then ...@@ -5900,6 +5900,7 @@ if test "$with_system_lcms2" = "yes"; then
AC_MSG_RESULT([external]) AC_MSG_RESULT([external])
SYSTEM_LCMS2=YES SYSTEM_LCMS2=YES
PKG_CHECK_MODULES( LCMS2, lcms2 ) PKG_CHECK_MODULES( LCMS2, lcms2 )
libo_MINGW_CHECK_DLL([LCMS2], [liblcms2])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_LCMS2=NO SYSTEM_LCMS2=NO
...@@ -5908,6 +5909,7 @@ fi ...@@ -5908,6 +5909,7 @@ fi
AC_SUBST(SYSTEM_LCMS2) AC_SUBST(SYSTEM_LCMS2)
AC_SUBST(LCMS2_CFLAGS) AC_SUBST(LCMS2_CFLAGS)
AC_SUBST(LCMS2_LIBS) AC_SUBST(LCMS2_LIBS)
AC_SUBST([MINGW_LCMS2_DLL])
dnl =================================================================== dnl ===================================================================
dnl Check for system cppunit dnl Check for system cppunit
...@@ -6022,7 +6024,7 @@ if test "$with_system_libxml" = "yes"; then ...@@ -6022,7 +6024,7 @@ if test "$with_system_libxml" = "yes"; then
AC_MSG_ERROR([xsltproc is required]) AC_MSG_ERROR([xsltproc is required])
fi fi
libo_ADD_MINGW_EXTERNAL_DLLS([libxslt],[MINGW_EXTERNAL_DLLS],[libxslt-1.dll]) libo_MINGW_CHECK_DLL([LIBXSLT], [libxslt])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_LIBXSLT=NO SYSTEM_LIBXSLT=NO
...@@ -6044,6 +6046,7 @@ AC_SUBST(SYSTEM_LIBXSLT_FOR_BUILD) ...@@ -6044,6 +6046,7 @@ AC_SUBST(SYSTEM_LIBXSLT_FOR_BUILD)
AC_SUBST(LIBXSLT_CFLAGS) AC_SUBST(LIBXSLT_CFLAGS)
AC_SUBST(LIBXSLT_LIBS) AC_SUBST(LIBXSLT_LIBS)
AC_SUBST(XSLTPROC) AC_SUBST(XSLTPROC)
AC_SUBST([MINGW_LIBXSLT_DLL])
# =================================================================== # ===================================================================
# Check for system libxml # Check for system libxml
...@@ -6072,7 +6075,8 @@ if test "$with_system_libxml" = "yes"; then ...@@ -6072,7 +6075,8 @@ if test "$with_system_libxml" = "yes"; then
AC_MSG_ERROR([xmllint is required]) AC_MSG_ERROR([xmllint is required])
fi fi
libo_ADD_MINGW_EXTERNAL_DLLS([libxml2],[MINGW_EXTERNAL_DLLS],[zlib1.dll libxml2-2.dll]) libo_MINGW_CHECK_DLL([LIBXML],[libxml2])
libo_MINGW_TRY_DLL([ZLIB],[zlib1])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_LIBXML=NO SYSTEM_LIBXML=NO
...@@ -6082,7 +6086,8 @@ AC_SUBST(SYSTEM_LIBXML) ...@@ -6082,7 +6086,8 @@ AC_SUBST(SYSTEM_LIBXML)
AC_SUBST(LIBXML_CFLAGS) AC_SUBST(LIBXML_CFLAGS)
AC_SUBST(LIBXML_LIBS) AC_SUBST(LIBXML_LIBS)
AC_SUBST(XMLLINT) AC_SUBST(XMLLINT)
AC_SUBST([MINGW_LIBXML_DLL])
AC_SUBST([MINGW_ZLIB_DLL])
dnl =================================================================== dnl ===================================================================
dnl Checks for Python dnl Checks for Python
dnl =================================================================== dnl ===================================================================
...@@ -6309,7 +6314,7 @@ or install the Berkeley db development package.]) ...@@ -6309,7 +6314,7 @@ or install the Berkeley db development package.])
fi fi
SCPDEFS="$SCPDEFS -DSYSTEM_DB" SCPDEFS="$SCPDEFS -DSYSTEM_DB"
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS libdb-4.8.dll" libo_MINGW_CHECK_DLL([DB], [libdb])
elif test $_os != iOS -a $_os != Android; then elif test $_os != iOS -a $_os != Android; then
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_DB=NO SYSTEM_DB=NO
...@@ -6321,6 +6326,7 @@ AC_SUBST(SYSTEM_DB) ...@@ -6321,6 +6326,7 @@ AC_SUBST(SYSTEM_DB)
AC_SUBST(SYSTEM_DB_CFLAGS) AC_SUBST(SYSTEM_DB_CFLAGS)
AC_SUBST(DB_LIB) AC_SUBST(DB_LIB)
AC_SUBST(DB_CPPLIB) AC_SUBST(DB_CPPLIB)
AC_SUBST([MINGW_DB_DLL])
AC_MSG_CHECKING([whether to build the MySQL Connector extension]) AC_MSG_CHECKING([whether to build the MySQL Connector extension])
if test "x$enable_ext_mysql_connector" = "xyes" -a "x$enable_extension_integration" != "xno"; then if test "x$enable_ext_mysql_connector" = "xyes" -a "x$enable_extension_integration" != "xno"; then
...@@ -6802,7 +6808,18 @@ if test "$with_system_curl" = "yes"; then ...@@ -6802,7 +6808,18 @@ if test "$with_system_curl" = "yes"; then
;; ;;
esac esac
libo_ADD_MINGW_EXTERNAL_DLLS([libcurl],[MINGW_EXTERNAL_DLLS],[libintl-8.dll libidn-11.dll libnspr4.dll nssutil3.dll libplc4.dll libplds4.dll nss3.dll ssl3.dll libgpg-error-0.dll libgcrypt-11.dll libssh2-1.dll libcurl-4.dll]) libo_MINGW_CHECK_DLL([CURL], [libcurl])
libo_MINGW_TRY_DLL([INTL], [libintl])
libo_MINGW_TRY_DLL([IDN], [libidn])
libo_MINGW_TRY_DLL([NSPR4], [libnspr4])
libo_MINGW_TRY_DLL([NSSUTIL3], [nssutil3])
libo_MINGW_TRY_DLL([PLC4], [libplc4])
libo_MINGW_TRY_DLL([PLDS4], [libplds4])
libo_MINGW_TRY_DLL([NSS3], [nss3])
libo_MINGW_TRY_DLL([SSL3], [ssl3])
libo_MINGW_TRY_DLL([GPG_ERROR], [libgpg-error])
libo_MINGW_TRY_DLL([GCRYPT], [libgcrypt])
libo_MINGW_TRY_DLL([SSH2], [libssh2])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_CURL=NO SYSTEM_CURL=NO
...@@ -6811,6 +6828,18 @@ fi ...@@ -6811,6 +6828,18 @@ fi
AC_SUBST(SYSTEM_CURL) AC_SUBST(SYSTEM_CURL)
AC_SUBST(CURL_CFLAGS) AC_SUBST(CURL_CFLAGS)
AC_SUBST(CURL_LIBS) AC_SUBST(CURL_LIBS)
AC_SUBST([MINGW_CURL_DLL])
AC_SUBST([MINGW_GCRYPT_DLL])
AC_SUBST([MINGW_GPG_ERROR_DLL])
AC_SUBST([MINGW_IDN_DLL])
AC_SUBST([MINGW_INTL_DLL])
AC_SUBST([MINGW_NSPR4_DLL])
AC_SUBST([MINGW_NSS3_DLL])
AC_SUBST([MINGW_NSSUTIL3_DLL])
AC_SUBST([MINGW_PLC4_DLL])
AC_SUBST([MINGW_PLDS4_DLL])
AC_SUBST([MINGW_SSH2_DLL])
AC_SUBST([MINGW_SSL3_DLL])
dnl =================================================================== dnl ===================================================================
dnl Check for system boost dnl Check for system boost
...@@ -7418,7 +7447,9 @@ if test "$with_system_icu" = "yes"; then ...@@ -7418,7 +7447,9 @@ if test "$with_system_icu" = "yes"; then
fi fi
fi fi
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS icui18n$ICU_MAJOR$ICU_MINOR.dll icuuc$ICU_MAJOR$ICU_MINOR.dll icudata$ICU_MAJOR$ICU_MINOR.dll" libo_MINGW_CHECK_DLL([ICUDATA], [icudata][$ICU_MAJOR][$ICU_MINOR])
libo_MINGW_CHECK_DLL([ICU18N], [icui18n][$ICU_MAJOR][$ICU_MINOR])
libo_MINGW_CHECK_DLL([ICUUC], [icuuc][$ICU_MAJOR][$ICU_MINOR])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_ICU="NO" SYSTEM_ICU="NO"
...@@ -7434,6 +7465,9 @@ AC_SUBST(ICU_MAJOR) ...@@ -7434,6 +7465,9 @@ AC_SUBST(ICU_MAJOR)
AC_SUBST(ICU_MINOR) AC_SUBST(ICU_MINOR)
AC_SUBST(ICU_MICRO) AC_SUBST(ICU_MICRO)
AC_SUBST(ICU_RECLASSIFIED_CLOSE_PARENTHESIS) AC_SUBST(ICU_RECLASSIFIED_CLOSE_PARENTHESIS)
AC_SUBST([MINGW_ICUDATA_DLL])
AC_SUBST([MINGW_ICUI18N_DLL])
AC_SUBST([MINGW_ICUUC_DLL])
dnl =================================================================== dnl ===================================================================
dnl Graphite dnl Graphite
...@@ -7448,7 +7482,7 @@ if test "$_os" = "WINNT" -o "$_os" = "Linux" && test "$enable_graphite" = "" -o ...@@ -7448,7 +7482,7 @@ if test "$_os" = "WINNT" -o "$_os" = "Linux" && test "$enable_graphite" = "" -o
AC_MSG_RESULT([external]) AC_MSG_RESULT([external])
SYSTEM_GRAPHITE=YES SYSTEM_GRAPHITE=YES
PKG_CHECK_MODULES( GRAPHITE, graphite2 >= 0.9.3 ) PKG_CHECK_MODULES( GRAPHITE, graphite2 >= 0.9.3 )
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS libgraphite2.dll" libo_MINGW_CHECK_DLL([GRAPHITE2], [libgraphite2])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_GRAPHITE=NO SYSTEM_GRAPHITE=NO
...@@ -7461,6 +7495,7 @@ AC_SUBST(ENABLE_GRAPHITE) ...@@ -7461,6 +7495,7 @@ AC_SUBST(ENABLE_GRAPHITE)
AC_SUBST(SYSTEM_GRAPHITE) AC_SUBST(SYSTEM_GRAPHITE)
AC_SUBST(GRAPHITE_LIBS) AC_SUBST(GRAPHITE_LIBS)
AC_SUBST(GRAPHITE_CFLAGS) AC_SUBST(GRAPHITE_CFLAGS)
AC_SUBST([MINGW_GRAPHITE2_DLL])
dnl =================================================================== dnl ===================================================================
dnl SampleICC dnl SampleICC
...@@ -7647,7 +7682,9 @@ if test "$with_system_neon" = "yes"; then ...@@ -7647,7 +7682,9 @@ if test "$with_system_neon" = "yes"; then
NEON_VERSION="`$PKG_CONFIG --modversion neon | $SED 's/\.//g'`" NEON_VERSION="`$PKG_CONFIG --modversion neon | $SED 's/\.//g'`"
NEON_CFLAGS="$NEON_CFLAGS -DSYSTEM_NEON -DUSE_DAV_LOCKS=1" NEON_CFLAGS="$NEON_CFLAGS -DSYSTEM_NEON -DUSE_DAV_LOCKS=1"
SYSTEM_NEON=YES SYSTEM_NEON=YES
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS libtasn1-3.dll libgnutls-26.dll libneon-27.dll" libo_MINGW_CHECK_DLL([NEON], [libneon])
libo_MINGW_TRY_DLL([TASN1], [libtasn1])
libo_MINGW_TRY_DLL([GNUTLS], [libgnutls])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_NEON=NO SYSTEM_NEON=NO
...@@ -7659,6 +7696,9 @@ AC_SUBST(SYSTEM_NEON) ...@@ -7659,6 +7696,9 @@ AC_SUBST(SYSTEM_NEON)
AC_SUBST(NEON_VERSION) AC_SUBST(NEON_VERSION)
AC_SUBST(NEON_LIBS) AC_SUBST(NEON_LIBS)
AC_SUBST(NEON_CFLAGS) AC_SUBST(NEON_CFLAGS)
AC_SUBST([MINGW_GNUTLS_DLL])
AC_SUBST([MINGW_NEON_DLL])
AC_SUBST([MINGW_TASN1_DLL])
fi fi
dnl =================================================================== dnl ===================================================================
...@@ -7681,7 +7721,8 @@ if test "$with_system_openssl" = "yes"; then ...@@ -7681,7 +7721,8 @@ if test "$with_system_openssl" = "yes"; then
PKG_CHECK_MODULES( OPENSSL, openssl ) PKG_CHECK_MODULES( OPENSSL, openssl )
fi fi
SYSTEM_OPENSSL=YES SYSTEM_OPENSSL=YES
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS libssl-8.dll libcrypto-8.dll" libo_MINGW_CHECK_DLL([SSL], [libssl])
libo_MINGW_CHECK_DLL([CRYPTO], [libcrypto])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_OPENSSL=NO SYSTEM_OPENSSL=NO
...@@ -7690,6 +7731,8 @@ fi ...@@ -7690,6 +7731,8 @@ fi
AC_SUBST(SYSTEM_OPENSSL) AC_SUBST(SYSTEM_OPENSSL)
AC_SUBST(OPENSSL_CFLAGS) AC_SUBST(OPENSSL_CFLAGS)
AC_SUBST(OPENSSL_LIBS) AC_SUBST(OPENSSL_LIBS)
AC_SUBST([MINGW_SSL_DLL])
AC_SUBST([MINGW_CRYPTO_DLL])
dnl =================================================================== dnl ===================================================================
dnl Check for system redland dnl Check for system redland
...@@ -7700,7 +7743,10 @@ if test "$with_system_redland" = "yes"; then ...@@ -7700,7 +7743,10 @@ if test "$with_system_redland" = "yes"; then
SYSTEM_REDLAND=YES SYSTEM_REDLAND=YES
dnl versions before 1.0.8 write RDF/XML that is useless for ODF (@xml:base) dnl versions before 1.0.8 write RDF/XML that is useless for ODF (@xml:base)
PKG_CHECK_MODULES(REDLAND, redland >= 1.0.8) PKG_CHECK_MODULES(REDLAND, redland >= 1.0.8)
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS libraptor-1.dll librasqal-2.dll libsqlite3-0.dll librdf-0.dll" libo_MINGW_CHECK_DLL([REDLAND], [librdf])
libo_MINGW_TRY_DLL([RAPTOR], [libraptor])
libo_MINGW_TRY_DLL([RASQAL], [librasqal])
libo_MINGW_TRY_DLL([SQLITE3], [libsqlite3])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
BUILD_TYPE="$BUILD_TYPE REDLAND" BUILD_TYPE="$BUILD_TYPE REDLAND"
...@@ -7709,6 +7755,10 @@ fi ...@@ -7709,6 +7755,10 @@ fi
AC_SUBST(SYSTEM_REDLAND) AC_SUBST(SYSTEM_REDLAND)
AC_SUBST(REDLAND_CFLAGS) AC_SUBST(REDLAND_CFLAGS)
AC_SUBST(REDLAND_LIBS) AC_SUBST(REDLAND_LIBS)
AC_SUBST([MINGW_RAPTOR_DLL])
AC_SUBST([MINGW_RASQAL_DLL])
AC_SUBST([MINGW_REDLAND_DLL])
AC_SUBST([MINGW_SQLITE3_DLL])
dnl =================================================================== dnl ===================================================================
dnl Check for system hunspell dnl Check for system hunspell
...@@ -7730,7 +7780,7 @@ if test "$with_system_hunspell" = "yes"; then ...@@ -7730,7 +7780,7 @@ if test "$with_system_hunspell" = "yes"; then
HUNSPELL_LIBS=-lhunspell HUNSPELL_LIBS=-lhunspell
fi fi
AC_LANG_POP([C++]) AC_LANG_POP([C++])
libo_ADD_MINGW_EXTERNAL_DLLS([libhunspell],[MINGW_EXTERNAL_DLLS],[libhunspell-1.3-0.dll]) libo_MINGW_CHECK_DLL([HUNSPELL], [libhunspell-1.3])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_HUNSPELL=NO SYSTEM_HUNSPELL=NO
...@@ -7739,6 +7789,7 @@ fi ...@@ -7739,6 +7789,7 @@ fi
AC_SUBST(SYSTEM_HUNSPELL) AC_SUBST(SYSTEM_HUNSPELL)
AC_SUBST(HUNSPELL_CFLAGS) AC_SUBST(HUNSPELL_CFLAGS)
AC_SUBST(HUNSPELL_LIBS) AC_SUBST(HUNSPELL_LIBS)
AC_SUBST([MINGW_HUNSPELL_DLL])
dnl =================================================================== dnl ===================================================================
dnl Checking for altlinuxhyph dnl Checking for altlinuxhyph
...@@ -7762,7 +7813,7 @@ if test "$with_system_altlinuxhyph" = "yes"; then ...@@ -7762,7 +7813,7 @@ if test "$with_system_altlinuxhyph" = "yes"; then
AC_CHECK_LIB(hnj, hnj_hyphen_hyphenate2, [HYPHEN_LIB=-lhnj], AC_CHECK_LIB(hnj, hnj_hyphen_hyphenate2, [HYPHEN_LIB=-lhnj],
[ AC_MSG_ERROR(altlinuxhyph library not found or too old.)], []) [ AC_MSG_ERROR(altlinuxhyph library not found or too old.)], [])
fi fi
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS libhyphen-0.dll" libo_MINGW_CHECK_DLL([HYPHEN], [libhyphen])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_HYPH=NO SYSTEM_HYPH=NO
...@@ -7770,6 +7821,7 @@ else ...@@ -7770,6 +7821,7 @@ else
fi fi
AC_SUBST(SYSTEM_HYPH) AC_SUBST(SYSTEM_HYPH)
AC_SUBST(HYPHEN_LIB) AC_SUBST(HYPHEN_LIB)
AC_SUBST([MINGW_HYPHEN_DLL])
dnl =================================================================== dnl ===================================================================
dnl Checking for mythes dnl Checking for mythes
...@@ -7794,7 +7846,7 @@ if test "$with_system_mythes" = "yes"; then ...@@ -7794,7 +7846,7 @@ if test "$with_system_mythes" = "yes"; then
fi fi
fi fi
AC_LANG_POP([C++]) AC_LANG_POP([C++])
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS libmythes-1.2-0.dll" libo_MINGW_CHECK_DLL([MYTHES], [libmythes-1.2])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_MYTHES=NO SYSTEM_MYTHES=NO
...@@ -7803,6 +7855,7 @@ fi ...@@ -7803,6 +7855,7 @@ fi
AC_SUBST(SYSTEM_MYTHES) AC_SUBST(SYSTEM_MYTHES)
AC_SUBST(MYTHES_CFLAGS) AC_SUBST(MYTHES_CFLAGS)
AC_SUBST(MYTHES_LIBS) AC_SUBST(MYTHES_LIBS)
AC_SUBST([MINGW_MYTHES_DLL])
dnl =================================================================== dnl ===================================================================
dnl Checking for lpsolve dnl Checking for lpsolve
...@@ -7820,13 +7873,14 @@ if test "$with_system_lpsolve" = "yes"; then ...@@ -7820,13 +7873,14 @@ if test "$with_system_lpsolve" = "yes"; then
AC_CHECK_LIB([lpsolve55], [make_lp], [:], AC_CHECK_LIB([lpsolve55], [make_lp], [:],
[ AC_MSG_ERROR(lpsolve library not found or too old.)], []) [ AC_MSG_ERROR(lpsolve library not found or too old.)], [])
LIBS=$save_LIBS LIBS=$save_LIBS
MINGW_EXTERNAL_DLLS="$MINGW_EXTERNAL_DLLS lpsolve55.dll" libo_MINGW_CHECK_DLL([LPSOLVE], [lpsolve55])
else else
AC_MSG_RESULT([internal]) AC_MSG_RESULT([internal])
SYSTEM_LPSOLVE=NO SYSTEM_LPSOLVE=NO
BUILD_TYPE="$BUILD_TYPE LPSOLVE" BUILD_TYPE="$BUILD_TYPE LPSOLVE"
fi fi
AC_SUBST(SYSTEM_LPSOLVE) AC_SUBST(SYSTEM_LPSOLVE)
AC_SUBST([MINGW_LPSOLVE_DLL])
dnl =================================================================== dnl ===================================================================
dnl Checking for libexttextcat dnl Checking for libexttextcat
...@@ -9929,7 +9983,11 @@ if test "$enable_cairo_canvas" = "yes" -a "$with_system_cairo" = "yes"; then ...@@ -9929,7 +9983,11 @@ if test "$enable_cairo_canvas" = "yes" -a "$with_system_cairo" = "yes"; then
AC_LANG_POP([C]) AC_LANG_POP([C])
fi fi
fi fi
libo_ADD_MINGW_EXTERNAL_DLLS([libcairo],[MINGW_EXTERNAL_DLLS],[libfontconfig-1.dll libfreetype-6.dll libpixman-1-0.dll libpng15-15.dll libcairo-2.dll]) libo_MINGW_CHECK_DLL([CAIRO], [libcairo])
libo_MINGW_TRY_DLL([FONTCONFIG], [libfontconfig])
libo_MINGW_TRY_DLL([FREETYPE], [libfreetype])
libo_MINGW_TRY_DLL([PIXMAN], [libpixman])
libo_MINGW_TRY_DLL([PNG15], [libpng15])
else else
AC_MSG_RESULT([no]) AC_MSG_RESULT([no])
...@@ -9955,6 +10013,11 @@ fi ...@@ -9955,6 +10013,11 @@ fi
AC_SUBST(SYSTEM_CAIRO) AC_SUBST(SYSTEM_CAIRO)
AC_SUBST(CAIRO_CFLAGS) AC_SUBST(CAIRO_CFLAGS)
AC_SUBST(CAIRO_LIBS) AC_SUBST(CAIRO_LIBS)
AC_SUBST([MINGW_CAIRO_DLL])
AC_SUBST([MINGW_FONTCONFIG_DLL])
AC_SUBST([MINGW_FREETYPE_DLL])
AC_SUBST([MINGW_PIXMAN_DLL])
AC_SUBST([MINGW_PNG15_DLL])
dnl =================================================================== dnl ===================================================================
...@@ -11012,20 +11075,6 @@ AC_SUBST(WIN_TOUCH) ...@@ -11012,20 +11075,6 @@ AC_SUBST(WIN_TOUCH)
AC_SUBST(BUILD_TYPE) AC_SUBST(BUILD_TYPE)
if test "$WITH_MINGW" != "yes"; then
MINGW_EXTERNAL_DLLS=
else
mingw_dlldir=`$CC -print-sysroot`/mingw/bin
for DLL in $MINGW_EXTERNAL_DLLS; do
AC_MSG_CHECKING([for $DLL])
if ! test -f "$mingw_dlldir/$DLL"; then
AC_MSG_ERROR([Could not find $DLL, install the appropriate mingw32-<package>, not only mingw32-<package>-devel.])
fi
AC_MSG_RESULT([$mingw_dlldir/$DLL])
done
fi
AC_SUBST(MINGW_EXTERNAL_DLLS)
AC_SUBST(SOLARINC) AC_SUBST(SOLARINC)
AC_SUBST(SOLARLIB) AC_SUBST(SOLARLIB)
......
...@@ -41,7 +41,47 @@ dummy: ...@@ -41,7 +41,47 @@ dummy:
.ELSE .ELSE
MINGW_DLLS:=$(MINGW_EXTERNAL_DLLS) MINGW_DLLS:= \
$(MINGW_CAIRO_DLL) \
$(MINGW_CRYPTO_DLL) \
$(MINGW_CURL_DLL) \
$(MINGW_DB_DLL) \
$(MINGW_EXPAT_DLL) \
$(MINGW_FONTCONFIG_DLL) \
$(MINGW_FREETYPE_DLL) \
$(MINGW_GCRYPT_DLL) \
$(MINGW_GNUTLS_DLL) \
$(MINGW_GPG_ERROR_DLL) \
$(MINGW_GRAPHITE2_DLL) \
$(MINGW_HUNSPELL_DLL) \
$(MINGW_HYPHEN_DLL) \
$(MINGW_ICUDATA_DLL) \
$(MINGW_ICUI18N_DLL) \
$(MINGW_ICUUC_DLL) \
$(MINGW_IDN_DLL) \
$(MINGW_INTL_DLL) \
$(MINGW_LCMS2_DLL) \
$(MINGW_LIBXML_DLL) \
$(MINGW_LIBXSLT_DLL) \
$(MINGW_LPSOLVE_DLL) \
$(MINGW_MYTHES_DLL) \
$(MINGW_NEON_DLL) \
$(MINGW_NSPR4_DLL) \
$(MINGW_NSS3_DLL) \
$(MINGW_NSSUTIL3_DLL) \
$(MINGW_PIXMAN_DLL) \
$(MINGW_PLC4_DLL) \
$(MINGW_PLDS4_DLL) \
$(MINGW_PNG15_DLL) \
$(MINGW_RAPTOR_DLL) \
$(MINGW_RASQAL_DLL) \
$(MINGW_REDLAND_DLL) \
$(MINGW_SQLITE3_DLL) \
$(MINGW_SSH2_DLL) \
$(MINGW_SSL3_DLL) \
$(MINGW_SSL_DLL) \
$(MINGW_TASN1_DLL) \
$(MINGW_ZLIB_DLL)
.IF "$(MINGW_SHARED_GCCLIB)" == "YES" .IF "$(MINGW_SHARED_GCCLIB)" == "YES"
MINGW_DLLS+=$(MINGW_GCCDLL) MINGW_DLLS+=$(MINGW_GCCDLL)
......
# libo_FIND_MINGW_EXTERNAL_DLLS([library-names],[variable],[?exclude],[?default-value]) dnl Version: MPL 1.1 / GPLv3+ / LGPLv3+
# uses: CC, SED, WITH_MINGW dnl
# -------------------------------------------------------------------- dnl The contents of this file are subject to the Mozilla Public License Version
AC_DEFUN([libo_FIND_MINGW_EXTERNAL_DLLS], dnl 1.1 (the "License"); you may not use this file except in compliance with
[if test "$WITH_MINGW" = yes -a -n "$CC"; then dnl the License or as specified alternatively below. You may obtain a copy of
_libo_mingw_libdir=`$CC -print-sysroot`/mingw/lib dnl the License at http://www.mozilla.org/MPL/
_libo_mingw_found_la= dnl
_libo_mingw_test_la([$1],[_libo_mingw_found_la],[$_libo_mingw_libdir]) dnl Software distributed under the License is distributed on an "AS IS" basis,
if test "$_libo_mingw_found_la" = yes; then dnl WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
_libo_mingw_find_dlls([$1],[$2],[$3],[$_libo_mingw_libdir]) dnl for the specific language governing rights and limitations under the
else dnl License.
# no .la files found, use defaults dnl
$2="$4" dnl Major Contributor(s):
fi dnl Copyright (C) 2012 Red Hat, Inc., David Tardon <dtardon@redhat.com>
fi[]dnl dnl (initial developer)
]) # libo_FIND_MINGW_EXTERNAL_DLLS dnl
dnl All Rights Reserved.
# libo_ADD_MINGW_EXTERNAL_DLLS([library-names],[variable],[?default-value]) dnl
# uses: CC, SED, WITH_MINGW dnl For minor contributions see the git repository.
# -------------------------------------------------------- dnl
AC_DEFUN([libo_ADD_MINGW_EXTERNAL_DLLS], dnl Alternatively, the contents of this file may be used under the terms of
[libo_FIND_MINGW_EXTERNAL_DLLS([$1],[_libo_mingw_found_dlls],[$$2],[$3]) dnl either the GNU General Public License Version 3 or later (the "GPLv3+"), or
if test -n "$_libo_mingw_found_dlls"; then dnl the GNU Lesser General Public License Version 3 or later (the "LGPLv3+"),
$2="$$2 $_libo_mingw_found_dlls" dnl in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
fi[]dnl dnl instead of those above.
]) # libo_ADD_MINGW_EXTERNAL_DLLS
# _libo_mingw_get_libtool_var([key],[lib],[out-var]) # libo_MINGW_CHECK_DLL(variable-infix,dll-name-stem,[action-if-found],[action-if-not-found])
m4_define([_libo_mingw_get_libtool_var], #
[$3=`$SED -n -e '/^$1=/{' -e "s/.*='//" -e "s/'//" -e p -e '}' $2`[]dnl # Checks for presence of dll dll-name-stem . Sets variable
]) # _libo_mingw_get_libtool_var # MINGW_variable-infix_DLL if found, issues an error otherwise.
#
# It recognizes these dll patterns (x, y match any character, but they
# are supposed to be numerals):
# * name-x.dll
# * name-xy.dll
# * name-x.y.dll
# * name.dll
#
#
# Example:
# libo_MINGW_CHECK_DLL([EXPAT], [libexpat])
# might result in MINGW_EXPAT_DLL=libexpat-1.dll being set.
#
# uses CC, WITH_MINGW
# ------------------------------------------------------------------------------------------
AC_DEFUN([libo_MINGW_CHECK_DLL],
[AC_ARG_VAR([MINGW_][$1][_DLL],[output variable containing the found dll name])dnl
# _libo_mingw_find_dll([library],[dlls],[out-var]) if test -n "$WITH_MINGW"; then
m4_define([_libo_mingw_find_dll], dnl TODO move this to configure: there is no need to call $CC more than once
[_libo_mingw_get_libtool_var([dlname],[$1],[_libo_mingw_dlname]) _libo_mingw_dlldir=`$CC -print-sysroot`/mingw/bin
_libo_mingw_dlname=`basename $_libo_mingw_dlname` _libo_mingw_dllname=
_libo_mingw_dll_present= AC_MSG_CHECKING([for $2 dll])
for _libo_mingw_dll in $2; do
if test "$_libo_mingw_dlname" = "$_libo_mingw_dll"; then
_libo_mingw_dll_present=yes
break
fi
done
if test -z "$_libo_mingw_dll_present"; then
$3="$_libo_mingw_dlname"
fi[]dnl
]) # _libo_mingw_find_dll
# _libo_mingw_find_dlls([libraries],[dlls],[out-var],[libdir]) dnl try one- or two-numbered version
m4_define([_libo_mingw_find_dlls], _libo_mingw_try_dll([$2][-?.dll])
[_libo_mingw_new_dlls= if test "$_libo_mingw_dllname" = ""; then
for _libo_mingw_lib in $1; do _libo_mingw_try_dll([$2][-??.dll])
_libo_mingw_lib="$4/$_libo_mingw_lib.la"
_libo_mingw_new_dll=
_libo_mingw_find_dll([$_libo_mingw_lib],[$3 $_libo_mingw_new_dlls],[_libo_mingw_new_dll])
if test -n "$_libo_mingw_new_dll"; then
_libo_mingw_new_dlls="$_libo_mingw_new_dlls $_libo_mingw_new_dll"
fi fi
dnl maybe the version contains a dot (e.g., libdb)
_libo_mingw_get_libtool_var([dependency_libs],[$_libo_mingw_lib],[_libo_mingw_dep_libs]) if test "$_libo_mingw_dllname" = ""; then
for _libo_mingw_dep_lib in $_libo_mingw_dep_libs; do _libo_mingw_try_dll([$2][-?.?.dll])
if test "${_libo_mingw_dep_lib%.la}" != "$_libo_mingw_dep_lib"; then
_libo_mingw_new_dll=''
_libo_mingw_find_dll([$_libo_mingw_dep_lib],[$3 $_libo_mingw_new_dlls],[_libo_mingw_new_dll])
if test -n "$_libo_mingw_new_dll"; then
_libo_mingw_new_dlls="$_libo_mingw_new_dlls $_libo_mingw_new_dll"
fi fi
dnl maybe it is not versioned
if test "$_libo_mingw_dllname" = ""; then
_libo_mingw_try_dll([$2][.dll])
fi fi
done
done
$2="$_libo_mingw_new_dlls"[]dnl
]) # _libo_mingw_find_dlls
# _libo_mingw_test_la([libraries],[out-var],[libdir]) if test "$_libo_mingw_dllname" = ""; then
m4_define([_libo_mingw_test_la], AC_MSG_RESULT([no])
[for _libo_mingw_lib in $1; do m4_default([$4],[AC_MSG_ERROR([no dll found for $2])])
if test -f "$3/$_libo_mingw_lib.la"; then else
$2=yes AC_MSG_RESULT([$_libo_mingw_dllname])
break [MINGW_][$1][_DLL]="$_libo_mingw_dllname"
m4_default([$3],[])
fi fi
done[]dnl fi[]dnl
]) # _libo_mingw_test_la ]) # libo_MINGW_CHECK_DLL
# libo_MINGW_TRY_DLL(variable-infix,dll-name-stem)
#
# Checks for presence of dll dll-name-stem . Sets variable
# MINGW_variable-infix_DLL if found, does nothing otherwise.
#
# See libo_MINGW_CHECK_DLL for further info.
#
# uses CC, WITH_MINGW
# ------------------------------------------------
AC_DEFUN([libo_MINGW_TRY_DLL],
[dnl shortcut: do not test for already found dlls
if test -z "$[MINGW_][$1][_DLL]"; then
libo_MINGW_CHECK_DLL([$1],[$2],[[]],[[]])
fi[]dnl
]) # libo_MINGW_TRY_DLL
# _libo_mingw_try_dll(dll-name,dll-dir)
m4_define([_libo_mingw_try_dll],
[_libo_mingw_trying_dll=`ls "[$_libo_mingw_dlldir]"/[$1] 2>/dev/null`
if test -f "$_libo_mingw_trying_dll"; then
_libo_mingw_dllname=`basename "$_libo_mingw_trying_dll"`
fi[]dnl
]) # _libo_mingw_try_dll
dnl vim:set shiftwidth=4 softtabstop=4 expandtab:
...@@ -257,6 +257,166 @@ SCPDEFS+=-DMINGW_GCCDLL=\""$(MINGW_GCCDLL)"\" ...@@ -257,6 +257,166 @@ SCPDEFS+=-DMINGW_GCCDLL=\""$(MINGW_GCCDLL)"\"
SCPDEFS+=-DMINGW_GXXDLL=\""$(MINGW_GXXDLL)"\" SCPDEFS+=-DMINGW_GXXDLL=\""$(MINGW_GXXDLL)"\"
.ENDIF .ENDIF
.IF "$(MINGW_CAIRO_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_CAIRO_DLL -DMINGW_CAIRO_DLL=\""$(MINGW_CAIRO_DLL)"\"
.ENDIF
.IF "$(MINGW_CURL_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_CURL_DLL -DMINGW_CURL_DLL=\""$(MINGW_CURL_DLL)"\"
.ENDIF
.IF "$(MINGW_CRYPTO_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_CRYPTO_DLL -DMINGW_CRYPTO_DLL=\""$(MINGW_CRYPTO_DLL)"\"
.ENDIF
.IF "$(MINGW_DB_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_DB_DLL -DMINGW_DB_DLL=\""$(MINGW_DB_DLL)"\"
.ENDIF
.IF "$(MINGW_EXPAT_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_EXPAT_DLL -DMINGW_EXPAT_DLL=\""$(MINGW_EXPAT_DLL)"\"
.ENDIF
.IF "$(MINGW_FONTCONFIG_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_FONTCONFIG_DLL -DMINGW_FONTCONFIG_DLL=\""$(MINGW_FONTCONFIG_DLL)"\"
.ENDIF
.IF "$(MINGW_FREETYPE_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_FREETYPE_DLL -DMINGW_FREETYPE_DLL=\""$(MINGW_FREETYPE_DLL)"\"
.ENDIF
.IF "$(MINGW_GCRYPT_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_GCRYPT_DLL -DMINGW_GCRYPT_DLL=\""$(MINGW_GCRYPT_DLL)"\"
.ENDIF
.IF "$(MINGW_GNUTLS_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_GNUTLS_DLL -DMINGW_GNUTLS_DLL=\""$(MINGW_GNUTLS_DLL)"\"
.ENDIF
.IF "$(MINGW_GPG_ERROR_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_GPG_ERROR_DLL -DMINGW_GPG_ERROR_DLL=\""$(MINGW_GPG_ERROR_DLL)"\"
.ENDIF
.IF "$(MINGW_GRAPHITE2_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_GRAPHITE2_DLL -DMINGW_GRAPHITE2_DLL=\""$(MINGW_GRAPHITE2_DLL)"\"
.ENDIF
.IF "$(MINGW_HUNSPELL_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_HUNSPELL_DLL -DMINGW_HUNSPELL_DLL=\""$(MINGW_HUNSPELL_DLL)"\"
.ENDIF
.IF "$(MINGW_HYPHEN_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_HYPHEN_DLL -DMINGW_HYPHEN_DLL=\""$(MINGW_HYPHEN_DLL)"\"
.ENDIF
.IF "$(MINGW_ICUDATA_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_ICUDATA_DLL -DMINGW_ICUDATA_DLL=\""$(MINGW_ICUDATA_DLL)"\"
.ENDIF
.IF "$(MINGW_ICUI18N_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_ICUI18N_DLL -DMINGW_ICUI18N_DLL=\""$(MINGW_ICUI18N_DLL)"\"
.ENDIF
.IF "$(MINGW_ICUUC_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_ICUUC_DLL -DMINGW_ICUUC_DLL=\""$(MINGW_ICUUC_DLL)"\"
.ENDIF
.IF "$(MINGW_IDN_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_IDN_DLL -DMINGW_IDN_DLL=\""$(MINGW_IDN_DLL)"\"
.ENDIF
.IF "$(MINGW_INTL_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_INTL_DLL -DMINGW_INTL_DLL=\""$(MINGW_INTL_DLL)"\"
.ENDIF
.IF "$(MINGW_LCMS2_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_LCMS2_DLL -DMINGW_LCMS2_DLL=\""$(MINGW_LCMS2_DLL)"\"
.ENDIF
.IF "$(MINGW_LIBXML_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_LIBXML_DLL -DMINGW_LIBXML_DLL=\""$(MINGW_LIBXML_DLL)"\"
.ENDIF
.IF "$(MINGW_LIBXSLT_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_LIBXSLT_DLL -DMINGW_LIBXSLT_DLL=\""$(MINGW_LIBXSLT_DLL)"\"
.ENDIF
.IF "$(MINGW_LPSOLVE_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_LPSOLVE_DLL -DMINGW_LPSOLVE_DLL=\""$(MINGW_LPSOLVE_DLL)"\"
.ENDIF
.IF "$(MINGW_MYTHES_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_MYTHES_DLL -DMINGW_MYTHES_DLL=\""$(MINGW_MYTHES_DLL)"\"
.ENDIF
.IF "$(MINGW_NEON_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_NEON_DLL -DMINGW_NEON_DLL=\""$(MINGW_NEON_DLL)"\"
.ENDIF
.IF "$(MINGW_NSPR4_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_NSPR4_DLL -DMINGW_NSPR4_DLL=\""$(MINGW_NSPR4_DLL)"\"
.ENDIF
.IF "$(MINGW_NSS3_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_NSS3_DLL -DMINGW_NSS3_DLL=\""$(MINGW_NSS3_DLL)"\"
.ENDIF
.IF "$(MINGW_NSSUTIL3_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_NSSUTIL3_DLL -DMINGW_NSSUTIL3_DLL=\""$(MINGW_NSSUTIL3_DLL)"\"
.ENDIF
.IF "$(MINGW_PIXMAN_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_PIXMAN_DLL -DMINGW_PIXMAN_DLL=\""$(MINGW_PIXMAN_DLL)"\"
.ENDIF
.IF "$(MINGW_PLC4_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_PLC4_DLL -DMINGW_PLC4_DLL=\""$(MINGW_PLC4_DLL)"\"
.ENDIF
.IF "$(MINGW_PLDS4_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_PLDS4_DLL -DMINGW_PLDS4_DLL=\""$(MINGW_PLDS4_DLL)"\"
.ENDIF
.IF "$(MINGW_PNG15_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_PNG15_DLL -DMINGW_PNG15_DLL=\""$(MINGW_PNG15_DLL)"\"
.ENDIF
.IF "$(MINGW_RAPTOR_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_RAPTOR_DLL -DMINGW_RAPTOR_DLL=\""$(MINGW_RAPTOR_DLL)"\"
.ENDIF
.IF "$(MINGW_RASQAL_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_RASQAL_DLL -DMINGW_RASQAL_DLL=\""$(MINGW_RASQAL_DLL)"\"
.ENDIF
.IF "$(MINGW_REDLAND_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_REDLAND_DLL -DMINGW_REDLAND_DLL=\""$(MINGW_REDLAND_DLL)"\"
.ENDIF
.IF "$(MINGW_SQLITE3_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_SQLITE3_DLL -DMINGW_SQLITE3_DLL=\""$(MINGW_SQLITE3_DLL)"\"
.ENDIF
.IF "$(MINGW_SSH2_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_SSH2_DLL -DMINGW_SSH2_DLL=\""$(MINGW_SSH2_DLL)"\"
.ENDIF
.IF "$(MINGW_SSL_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_SSL_DLL -DMINGW_SSL_DLL=\""$(MINGW_SSL_DLL)"\"
.ENDIF
.IF "$(MINGW_SSL3_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_SSL3_DLL -DMINGW_SSL3_DLL=\""$(MINGW_SSL3_DLL)"\"
.ENDIF
.IF "$(MINGW_TASN1_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_TASN1_DLL -DMINGW_TASN1_DLL=\""$(MINGW_TASN1_DLL)"\"
.ENDIF
.IF "$(MINGW_ZLIB_DLL)" != ""
SCPDEFS += -DNEEDS_MINGW_ZLIB_DLL -DMINGW_ZLIB_DLL=\""$(MINGW_ZLIB_DLL)"\"
.ENDIF
.IF "$(SYSTEM_GDKPIXBUF)" == "YES" .IF "$(SYSTEM_GDKPIXBUF)" == "YES"
SCPDEFS+=-DSYSTEM_GDKPIXBUF SCPDEFS+=-DSYSTEM_GDKPIXBUF
.ENDIF .ENDIF
......
...@@ -37,92 +37,175 @@ ...@@ -37,92 +37,175 @@
Styles = (PACKED); \ Styles = (PACKED); \
End End
#define MINGW_DLL_COND(cond,id,name) \
#ifdef SYSTEM_EXPAT #ifdef SYSTEM_EXPAT
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libexpat, libexpat-1.dll ) #ifdef NEEDS_MINGW_EXPAT_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libexpat, MINGW_EXPAT_DLL )
#endif
#endif #endif
#ifdef SYSTEM_LIBXSLT #ifdef SYSTEM_LIBXSLT
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libxslt, libxslt-1.dll ) #ifdef NEEDS_MINGW_LIBXSLT_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libxslt, MINGW_LIBXSLT_DLL )
#endif
#endif #endif
#ifdef SYSTEM_LIBXML #ifdef SYSTEM_LIBXML
MINGW_DLL( gid_Brand_File_Lib_Mingw_Zlib, zlib1.dll ) #ifdef NEEDS_MINGW_ZLIB_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libxml2, libxml2-2.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Zlib, MINGW_ZLIB_DLL )
#endif
#ifdef NEEDS_MINGW_LIBXML_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libxml2, MINGW_LIBXML_DLL )
#endif
#endif #endif
#ifdef SYSTEM_DB #ifdef SYSTEM_DB
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libdb, libdb-4.8.dll ) #ifdef NEEDS_MINGW_DB_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libdb, MINGW_DB_DLL )
#endif
#endif #endif
#ifdef SYSTEM_CURL #ifdef SYSTEM_CURL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libintl, libintl-8.dll ) #ifdef NEEDS_MINGW_INTL_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libdn, libidn-11.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Libintl, MINGW_INTL_DLL )
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libnspr, libnspr4.dll ) #endif
MINGW_DLL( gid_Brand_File_Lib_Mingw_Nssutil, nssutil3.dll ) #ifdef NEEDS_MINGW_IDN_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libplc, libplc4.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Libdn, MINGW_IDN_DLL )
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libplds, libplds4.dll ) #endif
MINGW_DLL( gid_Brand_File_Lib_Mingw_nss, nss3.dll ) #ifdef NEEDS_MINGW_NSPR4_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_ssl, ssl3.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Libnspr, MINGW_NSPR4_DLL )
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libgpgerror, libgpg-error-0.dll ) #endif
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libgcrypt, libgcrypt-11.dll ) #ifdef NEEDS_MINGW_NSSUTIL3_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libssh, libssh2-1.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Nssutil, MINGW_NSSUTIL3_DLL )
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libcurl, libcurl-4.dll ) #endif
#ifdef NEEDS_MINGW_PLC4_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libplc, MINGW_PLC4_DLL )
#endif
#ifdef NEEDS_MINGW_PLDS4_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libplds, MINGW_PLDS4_DLL )
#endif
#ifdef NEEDS_MINGW_NSS3_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_nss, MINGW_NSS3_DLL )
#endif
#ifdef NEEDS_MINGW_SSL3_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_ssl, MINGW_SSL3_DLL )
#endif
#ifdef NEEDS_MINGW_GPG_ERROR_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libgpgerror, MINGW_GPG_ERROR_DLL )
#endif
#ifdef NEEDS_MINGW_GCRYPT_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libgcrypt, MINGW_GCRYPT_DLL )
#endif
#ifdef NEEDS_MINGW_SSH2_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libssh, MINGW_SSH2_DLL )
#endif
#ifdef NEEDS_MINGW_CURL_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libcurl, MINGW_CURL_DLL )
#endif
#endif #endif
#ifdef SYSTEM_ICU #ifdef SYSTEM_ICU
MINGW_DLL( gid_Brand_File_Lib_Mingw_Icui18n, STRING(CONCAT4(icui18n,ICU_MAJOR,ICU_MINOR,.dll)) ) #ifdef NEEDS_MINGW_ICUI18N_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Icuuc, STRING(CONCAT4(icuuc,ICU_MAJOR,ICU_MINOR,.dll)) ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Icui18n, MINGW_ICUI18N_DLL )
MINGW_DLL( gid_Brand_File_Lib_Mingw_Icudata, STRING(CONCAT4(icudata,ICU_MAJOR,ICU_MINOR,.dll)) ) #endif
#ifdef NEEDS_MINGW_ICUUC_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Icuuc, MINGW_ICUUC_DLL )
#endif
#ifdef NEEDS_MINGW_ICUDATA_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Icudata, MINGW_ICUDATA_DLL )
#endif
#endif #endif
#ifdef SYSTEM_GRAPHITE #ifdef SYSTEM_GRAPHITE
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libgrahpite, libgraphite2.dll ) #ifdef NEEDS_MINGW_GRAPHITE2_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libgrahpite, MINGW_GRAPHITE2_DLL )
#endif
#endif #endif
#ifdef SYSTEM_NEON #ifdef SYSTEM_NEON
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libtasn, libtasn1-3.dll ) #ifdef NEEDS_MINGW_TASN1_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libgnutls, libgnutls-26.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Libtasn, MINGW_TASN1_DLL )
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libneon, libneon-27.dll ) #endif
#ifdef NEEDS_MINGW_GNUTLS_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libgnutls, MINGW_GNUTLS_DLL )
#endif
#ifdef NEEDS_MINGW_NEON_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libneon, MINGW_NEON_DLL )
#endif
#endif #endif
#ifdef SYSTEM_OPENSSL #ifdef SYSTEM_OPENSSL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libssl, libssl-8.dll ) #ifdef NEEDS_MINGW_SSL_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libcrypto, libcrypto-8.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Libssl, MINGW_SSL_DLL )
#endif
#ifdef NEEDS_MINGW_CRYPTO_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libcrypto, MINGW_CRYPTO_DLL )
#endif
#endif #endif
#ifdef SYSTEM_REDLAND #ifdef SYSTEM_REDLAND
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libraptor, libraptor-1.dll ) #ifdef NEEDS_MINGW_RAPTOR_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Librasqal, librasqal-2.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Libraptor, MINGW_RAPTOR_DLL )
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libqslite, libsqlite3-0.dll ) #endif
MINGW_DLL( gid_Brand_File_Lib_Mingw_Librdf, librdf-0.dll ) #ifdef NEEDS_MINGW_RASQAL_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Librasqal, MINGW_RASQAL_DLL )
#endif
#ifdef NEEDS_MINGW_SQLITE3_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libqslite, MINGW_SQLITE3_DLL )
#endif
#ifdef NEEDS_MINGW_REDLAND_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Librdf, MINGW_REDLAND_DLL )
#endif
#endif #endif
#ifdef SYSTEM_HUNSPELL #ifdef SYSTEM_HUNSPELL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libhunspell, libhunspell-1.3-0.dll ) #ifdef NEEDS_MINGW_HUNSPELL_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libhunspell, MINGW_HUNSPELL_DLL )
#endif
#endif #endif
#ifdef SYSTEM_HYPH #ifdef SYSTEM_HYPH
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libhyphen, libhyphen-0.dll ) #ifdef NEEDS_MINGW_HYPHEN_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libhyphen, MINGW_HYPHEN_DLL )
#endif
#endif #endif
#ifdef SYSTEM_MYTHES #ifdef SYSTEM_MYTHES
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libmythes, libmythes-1.2-0.dll ) #ifdef NEEDS_MINGW_MYTHES_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libmythes, MINGW_MYTHES_DLL )
#endif
#endif #endif
#ifdef SYSTEM_LPSOLVE #ifdef SYSTEM_LPSOLVE
MINGW_DLL( gid_Brand_File_Lib_Mingw_Lpsolve, lpsolve55.dll ) #ifdef NEEDS_MINGW_LPSOLVE_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Lpsolve, MINGW_LPSOLVE_DLL )
#endif
#endif #endif
#ifdef SYSTEM_CAIRO #ifdef SYSTEM_CAIRO
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libfontconfig, libfontconfig-1.dll ) #ifdef NEEDS_MINGW_FONTCONFIG_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libfreetype, libfreetype-6.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Libfontconfig, MINGW_FONTCONFIG_DLL )
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libpixman, libpixman-1-0.dll ) #endif
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libpng, libpng15-15.dll ) #ifdef NEEDS_MINGW_FREETYPE_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libcairo, libcairo-2.dll ) MINGW_DLL( gid_Brand_File_Lib_Mingw_Libfreetype, MINGW_FREETYPE_DLL )
#endif
#ifdef NEEDS_MINGW_PIXMAN_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libpixman, MINGW_PIXMAN_DLL )
#endif
#ifdef NEEDS_MINGW_PNG15_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libpng, MINGW_PNG15_DLL )
#endif
#ifdef NEEDS_MINGW_CAIRO_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Libcairo, MINGW_CAIRO_DLL )
#endif
#endif #endif
#ifdef SYSTEM_LCMS2 #ifdef SYSTEM_LCMS2
MINGW_DLL( gid_Brand_File_Lib_Mingw_Liblcms2, liblcms2-2.dll ) #ifdef NEEDS_MINGW_LCMS2_DLL
MINGW_DLL( gid_Brand_File_Lib_Mingw_Liblcms2, MINGW_LCMS2_DLL )
#endif
#endif #endif
#if defined(MINGW_GCCDLL) #if defined(MINGW_GCCDLL)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment