summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac488
1 files changed, 212 insertions, 276 deletions
diff --git a/configure.ac b/configure.ac
index 93319018fa4d..d7fc37217fb7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,7 +9,7 @@ dnl in order to create a configure script.
# several non-alphanumeric characters, those are split off and used only for the
# ABOUTBOXPRODUCTVERSIONSUFFIX in openoffice.lst. Why that is necessary, no idea.
-AC_INIT([Collabora Office],[22.05.2.1],[],[],[https://collaboraoffice.com/])
+AC_INIT([Collabora Office],[22.05.23.1],[],[],[https://collaboraoffice.com/])
dnl libnumbertext needs autoconf 2.68, but that can pick up autoconf268 just fine if it is installed
dnl whereas aclocal (as run by autogen.sh) insists on using autoconf and fails hard
@@ -46,19 +46,31 @@ FilterLibs()
# Return value: $filteredlibs
filteredlibs=
- for f in $1; do
- case "$f" in
- # let's start with Fedora's paths for now
- -L/lib|-L/lib/|-L/lib64|-L/lib64/|-L/usr/lib|-L/usr/lib/|-L/usr/lib64|-L/usr/lib64/)
- # ignore it: on UNIXoids it is searched by default anyway
- # but if it's given explicitly then it may override other paths
- # (on macOS it would be an error to use it instead of SDK)
- ;;
- *)
+ if test "$COM" = "MSC"; then
+ for f in $1; do
+ if test "x$f" != "x${f#-L}"; then
+ filteredlibs="$filteredlibs -LIBPATH:${f:2}"
+ elif test "x$f" != "x${f#-l}"; then
+ filteredlibs="$filteredlibs ${f:2}.lib"
+ else
filteredlibs="$filteredlibs $f"
- ;;
- esac
- done
+ fi
+ done
+ else
+ for f in $1; do
+ case "$f" in
+ # let's start with Fedora's paths for now
+ -L/lib|-L/lib/|-L/lib64|-L/lib64/|-L/usr/lib|-L/usr/lib/|-L/usr/lib64|-L/usr/lib64/)
+ # ignore it: on UNIXoids it is searched by default anyway
+ # but if it's given explicitly then it may override other paths
+ # (on macOS it would be an error to use it instead of SDK)
+ ;;
+ *)
+ filteredlibs="$filteredlibs $f"
+ ;;
+ esac
+ done
+ fi
}
PathFormat()
@@ -463,6 +475,8 @@ AC_DEFINE_UNQUOTED(LIBO_VERSION_PATCH,$LIBO_VERSION_PATCH)
LIBO_THIS_YEAR=`date +%Y`
AC_DEFINE_UNQUOTED(LIBO_THIS_YEAR,$LIBO_THIS_YEAR)
+AC_DEFINE_UNQUOTED([BUILDCONFIG],[["$ac_configure_args"]],[Options passed to configure script])
+
dnl ===================================================================
dnl Product version
dnl ===================================================================
@@ -1171,6 +1185,9 @@ if test "$using_freetype_fontconfig" = yes; then
AC_DEFINE(ENABLE_HEADLESS)
ENABLE_HEADLESS=TRUE
fi
+else
+ test_fontconfig=no
+ test_freetype=no
fi
AC_SUBST(ENABLE_HEADLESS)
@@ -1843,6 +1860,11 @@ AC_ARG_WITH(macosx-bundle-identifier,
org.libreoffice.script ("script", huh?).]),
,with_macosx_bundle_identifier=org.libreoffice.script)
+AC_ARG_WITH(macosx-provisioning-profile,
+ AS_HELP_STRING([--with-macosx-provisioning-profile=/path/to/mac.provisionprofile],
+ [Specify the path to a provisioning profile to use]),
+,)
+
AC_ARG_WITH(product-name,
AS_HELP_STRING([--with-product-name='My Own Office Suite'],
[Define the product name. Default is AC_PACKAGE_NAME.]),
@@ -2371,11 +2393,6 @@ AC_ARG_WITH(system-boost,
[Use boost already on system.]),,
[with_system_boost="$with_system_headers"])
-AC_ARG_WITH(system-cuckoo,
- AS_HELP_STRING([--with-system-cuckoo],
- [Use libcuckoo already on system.]),,
- [with_system_cuckoo="$with_system_headers"])
-
AC_ARG_WITH(system-glm,
AS_HELP_STRING([--with-system-glm],
[Use glm already on system.]),,
@@ -2620,6 +2637,11 @@ libo_FUZZ_ARG_WITH(latest-c++,
published standard.]),,
[with_latest_c__=no])
+AC_ARG_WITH(gtk3-build,
+ AS_HELP_STRING([--with-gtk3-build=<absolute path to GTK3 build>],
+ [(Windows-only) In order to build GtkTiledViewer on Windows, pass the path
+ to a GTK3 build, like '--with-gtk3-build=C:/gtk-build/gtk/x64/release'.]))
+
dnl ===================================================================
dnl Branding
dnl ===================================================================
@@ -2812,14 +2834,6 @@ AC_ARG_WITH(macosx-version-min-required,
],
,)
-AC_ARG_WITH(macosx-version-max-allowed,
- AS_HELP_STRING([--with-macosx-version-max-allowed=<version>],
- [set the maximum allowed OS version the LibreOffice compilation can use APIs from])
- [
- e. g.: --with-macosx-version-max-allowed=11.0
- ],
-,)
-
dnl ===================================================================
dnl options for stuff used during cross-compilation build
@@ -3280,60 +3294,34 @@ if test $_os = Darwin; then
# The SDK in the currently selected Xcode should be found.
AC_MSG_CHECKING([what macOS SDK to use])
- for macosx_sdk in 12.3 12.1 12.0 11.3 11.1 11.0 10.15 10.14 10.13; do
- MACOSX_SDK_PATH=`xcrun --sdk macosx${macosx_sdk} --show-sdk-path 2> /dev/null`
- if test -d "$MACOSX_SDK_PATH"; then
- break
- else
- MACOSX_SDK_PATH="`xcode-select -print-path`/Platforms/MacOSX.platform/Developer/SDKs/MacOSX${macosx_sdk}.sdk"
- if test -d "$MACOSX_SDK_PATH"; then
- break
- fi
- fi
- done
+ # XCode only ships with a single SDK for a while now, and using older SDKs alongside is not
+ # really supported anymore, instead you'd use different copies of Xcode, each with their own
+ # SDK, and thus xcrun will pick the SDK that matches the currently selected Xcode version
+ # also restricting the SDK version to "known good" versions doesn't seem necessary anyomre, the
+ # problems that existed in the PPC days with target versions not being respected or random
+ # failures seems to be a thing of the past or rather: limiting either the Xcode version or the
+ # SDK version is enough, no need to do both...
+ MACOSX_SDK_PATH=`xcrun --sdk macosx --show-sdk-path 2> /dev/null`
if test ! -d "$MACOSX_SDK_PATH"; then
AC_MSG_ERROR([Could not find an appropriate macOS SDK])
fi
-
- AC_MSG_RESULT([macOS SDK $macosx_sdk at $MACOSX_SDK_PATH])
-
- case $macosx_sdk in
- 10.13)
- MACOSX_SDK_VERSION=101300
- ;;
- 10.14)
- MACOSX_SDK_VERSION=101400
- ;;
- 10.15)
- MACOSX_SDK_VERSION=101500
- ;;
- 11.0)
- MACOSX_SDK_VERSION=110000
- ;;
- 11.1)
- MACOSX_SDK_VERSION=110100
- ;;
- 11.3)
- MACOSX_SDK_VERSION=110300
- ;;
- 12.0)
- MACOSX_SDK_VERSION=120000
- ;;
- 12.1)
- MACOSX_SDK_VERSION=120100
- ;;
- 12.3)
- MACOSX_SDK_VERSION=120300
- ;;
- *)
- AC_MSG_ERROR([macOS SDK $macosx_sdk is not supported])
- ;;
- esac
-
+ macosx_sdk=`xcodebuild -version -sdk "$MACOSX_SDK_PATH" SDKVersion`
+ MACOSX_SDK_BUILD_VERSION=$(xcodebuild -version -sdk "$MACOSX_SDK_PATH" ProductBuildVersion)
+ # format changed between 10.9 and 10.10 - up to 10.9 it was just four digits (1090), starting
+ # with macOS 10.10 it was switched to account for x.y.z with six digits, 10.10 is 101000,
+ # 10.10.2 is 101002
+ # we don't target the lower versions anymore, so it doesn't matter that we don't generate the
+ # correct version in case such an old SDK is specified, it will be rejected later anyway
+ MACOSX_SDK_VERSION=$(echo $macosx_sdk | $AWK -F. '{ print $1*10000+$2*100+$3 }')
+ if test $MACOSX_SDK_VERSION -lt 101400; then
+ AC_MSG_ERROR([macOS SDK $macosx_sdk is not supported, lowest supported version is 10.14])
+ fi
if test "$host_cpu" = arm64 -a $MACOSX_SDK_VERSION -lt 110000; then
- AC_MSG_ERROR([macOS SDK $macosx_sdk is not supported for Apple Silicon])
+ AC_MSG_ERROR([macOS SDK $macosx_sdk is not supported for Apple Silicon (need at least 11.0)])
fi
+ AC_MSG_RESULT([macOS SDK $macosx_sdk at $MACOSX_SDK_PATH])
+ AC_MSG_CHECKING([what minimum version of macOS to require])
if test "$with_macosx_version_min_required" = "" ; then
if test "$host_cpu" = x86_64; then
with_macosx_version_min_required="10.12";
@@ -3341,9 +3329,18 @@ if test $_os = Darwin; then
with_macosx_version_min_required="11.0";
fi
fi
+ # see same notes about MACOSX_SDK_VERSION above
+ MAC_OS_X_VERSION_MIN_REQUIRED=$(echo $with_macosx_version_min_required | $AWK -F. '{ print $1*10000+$2*100+$3 }')
+ if test $MAC_OS_X_VERSION_MIN_REQUIRED -lt 101200; then
+ AC_MSG_ERROR([with-macosx-version-min-required $with_macosx_version_min_required is not a supported value, minimum supported version is 10.12])
+ fi
+ AC_MSG_RESULT([$with_macosx_version_min_required])
- if test "$with_macosx_version_max_allowed" = "" ; then
- with_macosx_version_max_allowed="$macosx_sdk"
+ AC_MSG_CHECKING([that macosx-version-min-required is coherent with macos-with-sdk])
+ if test $MAC_OS_X_VERSION_MIN_REQUIRED -gt $MACOSX_SDK_VERSION; then
+ AC_MSG_ERROR([the version minimum required ($with_macosx_version_min_required) cannot be greater than the sdk level ($macosx_sdk)])
+ else
+ AC_MSG_RESULT([yes])
fi
# export this so that "xcrun" invocations later return matching values
@@ -3363,44 +3360,8 @@ if test $_os = Darwin; then
AC_MSG_ERROR(["$my_xcode_ver1" is too old or unrecognized, must be at least Xcode 11.3])
fi
- case "$with_macosx_version_min_required" in
- 10.12)
- MAC_OS_X_VERSION_MIN_REQUIRED="101200"
- ;;
- 10.13)
- MAC_OS_X_VERSION_MIN_REQUIRED="101300"
- ;;
- 10.14)
- MAC_OS_X_VERSION_MIN_REQUIRED="101400"
- ;;
- 10.15)
- MAC_OS_X_VERSION_MIN_REQUIRED="101500"
- ;;
- 10.16)
- MAC_OS_X_VERSION_MIN_REQUIRED="101600"
- ;;
- 11.0)
- MAC_OS_X_VERSION_MIN_REQUIRED="110000"
- ;;
- 11.1)
- MAC_OS_X_VERSION_MIN_REQUIRED="110100"
- ;;
- 11.3)
- MAC_OS_X_VERSION_MIN_REQUIRED="110300"
- ;;
- 12.0)
- MAC_OS_X_VERSION_MIN_REQUIRED="120000"
- ;;
- 12.1)
- MAC_OS_X_VERSION_MIN_REQUIRED="120100"
- ;;
- 12.3)
- MAC_OS_X_VERSION_MIN_REQUIRED="120300"
- ;;
- *)
- AC_MSG_ERROR([with-macosx-version-min-required $with_macosx_version_min_required is not a supported value, supported values are 10.12--12.3])
- ;;
- esac
+ my_xcode_ver1=$(xcrun xcodebuild -version | tail -n 1)
+ MACOSX_XCODE_BUILD_VERSION=${my_xcode_ver1#Build version }
LIBTOOL=/usr/bin/libtool
INSTALL_NAME_TOOL=install_name_tool
@@ -3437,70 +3398,24 @@ if test $_os = Darwin; then
RANLIB=`xcrun -find ranlib`
fi
- case "$with_macosx_version_max_allowed" in
- 10.12)
- MAC_OS_X_VERSION_MAX_ALLOWED="101200"
- ;;
- 10.13)
- MAC_OS_X_VERSION_MAX_ALLOWED="101300"
- ;;
- 10.14)
- MAC_OS_X_VERSION_MAX_ALLOWED="101400"
- ;;
- 10.15)
- MAC_OS_X_VERSION_MAX_ALLOWED="101500"
- ;;
- 11.0)
- MAC_OS_X_VERSION_MAX_ALLOWED="110000"
- ;;
- 11.1)
- MAC_OS_X_VERSION_MAX_ALLOWED="110100"
- ;;
- 11.3)
- MAC_OS_X_VERSION_MAX_ALLOWED="110300"
- ;;
- 12.0)
- MAC_OS_X_VERSION_MAX_ALLOWED="120000"
- ;;
- 12.1)
- MAC_OS_X_VERSION_MAX_ALLOWED="120100"
- ;;
- 12.3)
- MAC_OS_X_VERSION_MAX_ALLOWED="120300"
- ;;
- *)
- AC_MSG_ERROR([with-macosx-version-max-allowed $with_macosx_version_max_allowed is not a supported value, supported values are 10.12--12.3])
- ;;
- esac
-
- AC_MSG_CHECKING([that macosx-version-min-required is coherent with macosx-version-max-allowed])
- if test $MAC_OS_X_VERSION_MIN_REQUIRED -gt $MAC_OS_X_VERSION_MAX_ALLOWED; then
- AC_MSG_ERROR([the version minimum required, $MAC_OS_X_VERSION_MIN_REQUIRED, must be <= the version maximum allowed, $MAC_OS_X_VERSION_MAX_ALLOWED])
- else
- AC_MSG_RESULT([ok])
- fi
-
- AC_MSG_CHECKING([that macosx-version-max-allowed is coherent with macos-with-sdk])
- if test $MAC_OS_X_VERSION_MAX_ALLOWED -gt $MACOSX_SDK_VERSION; then
- AC_MSG_ERROR([the version maximum allowed cannot be greater than the sdk level])
- else
- AC_MSG_RESULT([ok])
- fi
- AC_MSG_NOTICE([MAC_OS_X_VERSION_MIN_REQUIRED=$MAC_OS_X_VERSION_MIN_REQUIRED])
- AC_MSG_NOTICE([MAC_OS_X_VERSION_MAX_ALLOWED=$MAC_OS_X_VERSION_MAX_ALLOWED])
-
AC_MSG_CHECKING([whether to do code signing])
- if test "$enable_macosx_code_signing" = yes; then
- # By default use the first suitable certificate (?).
-
- # http://stackoverflow.com/questions/13196291/difference-between-mac-developer-and-3rd-party-mac-developer-application
- # says that the "Mac Developer" certificate is useful just for self-testing. For distribution
- # outside the Mac App Store, use the "Developer ID Application" one, and for distribution in
- # the App Store, the "3rd Party Mac Developer" one. I think it works best to the
- # "Developer ID Application" one.
+ if test -z "$enable_macosx_code_signing" -o "$enable_macosx_code_signing" == "no" ; then
+ AC_MSG_RESULT([no])
+ else
+ if test "$enable_macosx_code_signing" = yes; then
+ # By default use the first suitable certificate (?).
- identity=`security find-identity -p codesigning -v 2>/dev/null | grep 'Developer ID Application:' | $AWK '{print $2}' |head -1`
+ # http://stackoverflow.com/questions/13196291/difference-between-mac-developer-and-3rd-party-mac-developer-application
+ # says that the "Mac Developer" certificate is useful just for self-testing. For distribution
+ # outside the Mac App Store, use the "Developer ID Application" one, and for distribution in
+ # the App Store, the "3rd Party Mac Developer" one. I think it works best to the
+ # "Developer ID Application" one.
+ identity="Developer ID Application:"
+ else
+ identity=$enable_macosx_code_signing
+ fi
+ identity=`security find-identity -p codesigning -v 2>/dev/null | $AWK "/$identity/{print \\$2; exit}"`
if test -n "$identity"; then
MACOSX_CODESIGNING_IDENTITY=$identity
pretty_name=`security find-identity -p codesigning -v | grep "$MACOSX_CODESIGNING_IDENTITY" | sed -e 's/^[[^"]]*"//' -e 's/"//'`
@@ -3508,12 +3423,6 @@ if test $_os = Darwin; then
else
AC_MSG_ERROR([cannot determine identity to use])
fi
- elif test -n "$enable_macosx_code_signing" -a "$enable_macosx_code_signing" != no ; then
- MACOSX_CODESIGNING_IDENTITY=$enable_macosx_code_signing
- pretty_name=`security find-identity -p codesigning -v | grep "$MACOSX_CODESIGNING_IDENTITY" | sed -e 's/^[[^"]]*"//' -e 's/"//'`
- AC_MSG_RESULT([yes, using the identity $MACOSX_CODESIGNING_IDENTITY for $pretty_name])
- else
- AC_MSG_RESULT([no])
fi
AC_MSG_CHECKING([whether to create a Mac App Store package])
@@ -3522,11 +3431,15 @@ if test $_os = Darwin; then
AC_MSG_RESULT([no])
elif test -z "$MACOSX_CODESIGNING_IDENTITY"; then
AC_MSG_ERROR([You forgot --enable-macosx-code-signing])
- elif test "$enable_macosx_package_signing" = yes; then
- # By default use the first suitable certificate.
- # It should be a "3rd Party Mac Developer Installer" one
-
- identity=`security find-identity -v 2>/dev/null | grep '3rd Party Mac Developer Installer:' | awk '{print $2}' |head -1`
+ else
+ if test "$enable_macosx_package_signing" = yes; then
+ # By default use the first suitable certificate.
+ # It should be a "3rd Party Mac Developer Installer" one
+ identity="3rd Party Mac Developer Installer:"
+ else
+ identity=$enable_macosx_package_signing
+ fi
+ identity=`security find-identity -v 2>/dev/null | $AWK "/$identity/ {print \\$2; exit}"`
if test -n "$identity"; then
MACOSX_PACKAGE_SIGNING_IDENTITY=$identity
pretty_name=`security find-identity -v | grep "$MACOSX_PACKAGE_SIGNING_IDENTITY" | sed -e 's/^[[^"]]*"//' -e 's/"//'`
@@ -3534,10 +3447,6 @@ if test $_os = Darwin; then
else
AC_MSG_ERROR([Could not find any suitable '3rd Party Mac Developer Installer' certificate])
fi
- else
- MACOSX_PACKAGE_SIGNING_IDENTITY=$enable_macosx_package_signing
- pretty_name=`security find-identity -v | grep "$MACOSX_PACKAGE_SIGNING_IDENTITY" | sed -e 's/^[[^"]]*"//' -e 's/"//'`
- AC_MSG_RESULT([yes, using the identity $MACOSX_PACKAGE_SIGNING_IDENTITY for $pretty_name])
fi
if test -n "$MACOSX_CODESIGNING_IDENTITY" -a -n "$MACOSX_PACKAGE_SIGNING_IDENTITY" -a "$MACOSX_CODESIGNING_IDENTITY" = "$MACOSX_PACKAGE_SIGNING_IDENTITY"; then
@@ -3559,17 +3468,32 @@ if test $_os = Darwin; then
AC_MSG_CHECKING([what macOS app bundle identifier to use])
MACOSX_BUNDLE_IDENTIFIER=$with_macosx_bundle_identifier
AC_MSG_RESULT([$MACOSX_BUNDLE_IDENTIFIER])
+
+ if test -n "$with_macosx_provisioning_profile" ; then
+ if test ! -f "$with_macosx_provisioning_profile"; then
+ AC_MSG_ERROR([provisioning profile not found at $with_macosx_provisioning_profile])
+ else
+ MACOSX_PROVISIONING_PROFILE=$with_macosx_provisioning_profile
+ MACOSX_PROVISIONING_INFO=$([security cms -D -i "$MACOSX_PROVISIONING_PROFILE" | \
+ xmllint --xpath "//key[.='com.apple.application-identifier' or .='com.apple.developer.team-identifier'] \
+ | //key[.='com.apple.application-identifier' or .='com.apple.developer.team-identifier']/following-sibling::string[1]" - | \
+ sed -e 's#><#>\n\t<#g' -e 's#^#\t#'])
+ fi
+ fi
fi
AC_SUBST(MACOSX_SDK_PATH)
AC_SUBST(MACOSX_DEPLOYMENT_TARGET)
AC_SUBST(MAC_OS_X_VERSION_MIN_REQUIRED)
-AC_SUBST(MAC_OS_X_VERSION_MAX_ALLOWED)
AC_SUBST(INSTALL_NAME_TOOL)
AC_SUBST(LIBTOOL) # Note that the macOS libtool command is unrelated to GNU libtool
AC_SUBST(MACOSX_CODESIGNING_IDENTITY)
AC_SUBST(MACOSX_PACKAGE_SIGNING_IDENTITY)
AC_SUBST(ENABLE_MACOSX_SANDBOX)
AC_SUBST(MACOSX_BUNDLE_IDENTIFIER)
+AC_SUBST(MACOSX_PROVISIONING_INFO)
+AC_SUBST(MACOSX_PROVISIONING_PROFILE)
+AC_SUBST(MACOSX_SDK_BUILD_VERSION)
+AC_SUBST(MACOSX_XCODE_BUILD_VERSION)
dnl ===================================================================
dnl Check iOS SDK and compiler
@@ -3577,14 +3501,14 @@ dnl ===================================================================
if test $_os = iOS; then
AC_MSG_CHECKING([what iOS SDK to use])
- current_sdk_ver=15.4
- older_sdk_vers="15.2 15.0"
+ current_sdk_ver=16.5
+ older_sdk_vers="16.4 16.3 16.2 16.1 16.0 15.6 15.5 15.4 15.2 15.0"
if test "$enable_ios_simulator" = "yes"; then
platform=iPhoneSimulator
- versionmin=-mios-simulator-version-min=13.6
+ versionmin=-mios-simulator-version-min=14.5
else
platform=iPhoneOS
- versionmin=-miphoneos-version-min=13.6
+ versionmin=-miphoneos-version-min=14.5
fi
xcode_developer=`xcode-select -print-path`
@@ -4459,6 +4383,18 @@ if test -n "$enable_dbgutil" -a "$enable_dbgutil" != "no"; then
AC_MSG_ERROR([--with-system-graphite conflicts with --enable-dbgutil])
else
with_system_graphite=no
+ if test -z "$with_system_harfbuzz"; then
+ with_system_harfbuzz=no
+ fi
+ if test -z "$with_system_cairo"; then
+ with_system_cairo=no
+ fi
+ if test -z "$with_system_fontconfig"; then
+ with_system_fontconfig=no
+ fi
+ if test -z "$with_system_freetype"; then
+ with_system_freetype=no
+ fi
fi
if test "$with_system_orcus" = "yes"; then
AC_MSG_ERROR([--with-system-orcus conflicts with --enable-dbgutil])
@@ -5501,6 +5437,7 @@ if test "$cross_compiling" = "yes"; then
config_host.mk.in \
config_host_lang.mk.in \
Makefile.in \
+ lo.xcent.in \
bin/bffvalidator.sh.in \
bin/odfvalidator.sh.in \
bin/officeotron.sh.in \
@@ -5602,7 +5539,6 @@ if test "$cross_compiling" = "yes"; then
BOOST
CAIRO
CLUCENE
- CUCKOO
CURL
DBCONNECTIVITY
DESKTOP
@@ -5620,6 +5556,7 @@ if test "$cross_compiling" = "yes"; then
LibO
LIBFFI
LIBPN
+ LIBTIFF
LIBXML2
LIBXSLT
MDDS
@@ -5849,23 +5786,7 @@ fi
AC_SUBST(ENABLE_CUPS)
-# fontconfig checks
-if test "$using_freetype_fontconfig" = yes; then
- AC_MSG_CHECKING([which fontconfig to use])
-fi
-if test "$using_freetype_fontconfig" = yes -a "$test_system_fontconfig" != no; then
- AC_MSG_RESULT([external])
- PKG_CHECK_MODULES([FONTCONFIG], [fontconfig >= 2.4.1])
- SYSTEM_FONTCONFIG=TRUE
- FilterLibs "${FONTCONFIG_LIBS}"
- FONTCONFIG_LIBS="${filteredlibs}"
-elif test "$using_freetype_fontconfig" = yes; then
- AC_MSG_RESULT([internal])
- BUILD_TYPE="$BUILD_TYPE FONTCONFIG"
-fi
-AC_SUBST(FONTCONFIG_CFLAGS)
-AC_SUBST(FONTCONFIG_LIBS)
-AC_SUBST([SYSTEM_FONTCONFIG])
+libo_CHECK_SYSTEM_MODULE([fontconfig],[FONTCONFIG],[fontconfig >= 2.4.1],,,TRUE)
dnl whether to find & fetch external tarballs?
dnl ===================================================================
@@ -9497,38 +9418,25 @@ fi
dnl ===================================================================
dnl Check whether freetype is available
+dnl
+dnl FreeType has 3 different kinds of versions
+dnl * release, like 2.4.10
+dnl * libtool, like 13.0.7 (this what pkg-config returns)
+dnl * soname
+dnl FreeType's docs/VERSION.DLL provides a table mapping between the three
+dnl
+dnl 9.9.3 is 2.2.0
+dnl When the minimal version is at least 2.8.1, remove Skia's check down below.
dnl ===================================================================
-if test "$using_freetype_fontconfig" = yes; then
- AC_MSG_CHECKING([which freetype to use])
-fi
-if test "$using_freetype_fontconfig" = yes -a "$test_system_freetype" != no; then
- AC_MSG_RESULT([external])
- # FreeType has 3 different kinds of versions
- # * release, like 2.4.10
- # * libtool, like 13.0.7 (this what pkg-config returns)
- # * soname
- # FreeType's docs/VERSION.DLL provides a table mapping between the three
- #
- # 9.9.3 is 2.2.0
- # When the minimal version is at least 2.8.1, remove Skia's check down below.
- PKG_CHECK_MODULES(FREETYPE, freetype2 >= 9.9.3)
- FREETYPE_CFLAGS=$(printf '%s' "$FREETYPE_CFLAGS" | sed -e "s/-I/${ISYSTEM?}/g")
- FilterLibs "${FREETYPE_LIBS}"
- FREETYPE_LIBS="${filteredlibs}"
- SYSTEM_FREETYPE=TRUE
-elif test "$using_freetype_fontconfig" = yes; then
- AC_MSG_RESULT([internal])
- FREETYPE_CFLAGS="${ISYSTEM}${WORKDIR}/UnpackedTarball/freetype/include"
+if test "$test_freetype" != no; then
if test "x$ac_config_site_64bit_host" = xYES; then
- FREETYPE_LIBS="-L${WORKDIR}/UnpackedTarball/freetype/instdir/lib64 -lfreetype"
+ FREETYPE_LIBS_INTERNAL="-L${WORKDIR}/UnpackedTarball/freetype/instdir/lib64 -lfreetype"
else
- FREETYPE_LIBS="-L${WORKDIR}/UnpackedTarball/freetype/instdir/lib -lfreetype"
+ FREETYPE_LIBS_INTERNAL="-L${WORKDIR}/UnpackedTarball/freetype/instdir/lib -lfreetype"
fi
- BUILD_TYPE="$BUILD_TYPE FREETYPE"
fi
-AC_SUBST(FREETYPE_CFLAGS)
-AC_SUBST(FREETYPE_LIBS)
-AC_SUBST([SYSTEM_FREETYPE])
+libo_CHECK_SYSTEM_MODULE([freetype],[FREETYPE],[freetype2 >= 9.9.3],
+ ["${ISYSTEM}${WORKDIR}/UnpackedTarball/freetype/include"],["$FREETYPE_LIBS_INTERNAL"],TRUE)
# ===================================================================
# Check for system libxslt
@@ -9637,7 +9545,7 @@ else
LIBXML_LIBS="${WORKDIR}/UnpackedTarball/libxml2/win32/bin.msvc/libxml2.lib"
else
LIBXML_LIBS="-L${WORKDIR}/UnpackedTarball/libxml2/.libs -lxml2"
- if test "$_os" = Android; then
+ if test "$DISABLE_DYNLOADING" = TRUE; then
LIBXML_LIBS="$LIBXML_LIBS -lm"
fi
fi
@@ -9867,7 +9775,7 @@ internal)
SYSTEM_PYTHON=
PYTHON_VERSION_MAJOR=3
PYTHON_VERSION_MINOR=8
- PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.10
+ PYTHON_VERSION=${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.19
if ! grep -q -i python.*${PYTHON_VERSION} ${SRC_ROOT}/download.lst; then
AC_MSG_ERROR([PYTHON_VERSION ${PYTHON_VERSION} but no matching file in download.lst])
fi
@@ -10438,26 +10346,6 @@ dnl ===================================================================
libo_CHECK_SYSTEM_MODULE([mdds], [MDDS], [mdds-2.0 >= 2.0.0], ["-I${WORKDIR}/UnpackedTarball/mdds/include"])
dnl ===================================================================
-dnl Check for system cuckoo
-dnl ===================================================================
-AC_MSG_CHECKING([which cuckoo to use])
-if test "$with_system_cuckoo" = "yes"; then
- AC_MSG_RESULT([external])
- SYSTEM_CUCKOO=TRUE
- AC_LANG_PUSH([C++])
- AC_CHECK_HEADER([libcuckoo/cuckoohash_map.hh], [],
- [AC_MSG_ERROR([libcuckoo/cuckoohash_map.hh not found. install cuckoo])], [])
- AC_LANG_POP([C++])
-else
- AC_MSG_RESULT([internal])
- BUILD_TYPE="$BUILD_TYPE CUCKOO"
- SYSTEM_CUCKOO=
- CUCKOO_CFLAGS="${ISYSTEM}${WORKDIR}/UnpackedTarball/cuckoo"
-fi
-AC_SUBST([CUCKOO_CFLAGS])
-AC_SUBST([SYSTEM_CUCKOO])
-
-dnl ===================================================================
dnl Check for system glm
dnl ===================================================================
AC_MSG_CHECKING([which glm to use])
@@ -10511,15 +10399,14 @@ dnl ===================================================================
dnl Check for system NSS
dnl ===================================================================
if test "$enable_fuzzers" != "yes" -a "$enable_nss" = "yes"; then
- libo_CHECK_SYSTEM_MODULE([nss],[NSS],[nss >= 3.9.3 nspr >= 4.8],,,[
- case "$_os" in
- Linux)
- with_system_nss=yes
- ;;
- *)
- with_system_nss=no
- ;;
- esac])
+ case "$_os" in
+ Linux)
+ libo_CHECK_SYSTEM_MODULE([nss],[NSS],[nss >= 3.9.3 nspr >= 4.8],,,TRUE)
+ ;;
+ *)
+ libo_CHECK_SYSTEM_MODULE([nss],[NSS],[nss >= 3.9.3 nspr >= 4.8])
+ ;;
+ esac
AC_DEFINE(HAVE_FEATURE_NSS)
ENABLE_NSS=TRUE
elif test $_os != iOS ; then
@@ -10806,13 +10693,27 @@ AC_SUBST(SYSTEM_LIBORCUS)
dnl ===================================================================
dnl HarfBuzz
dnl ===================================================================
-libo_CHECK_SYSTEM_MODULE([graphite],[GRAPHITE],[graphite2 >= 0.9.3],
+case "$_os" in
+ Linux)
+ libo_CHECK_SYSTEM_MODULE([graphite],[GRAPHITE],[graphite2 >= 0.9.3],
+ ["-I${WORKDIR}/UnpackedTarball/graphite/include -DGRAPHITE2_STATIC"],
+ ["-L${WORKDIR}/LinkTarget/StaticLibrary -lgraphite"],
+ TRUE)
+ libo_CHECK_SYSTEM_MODULE([harfbuzz],[HARFBUZZ],[harfbuzz-icu >= 0.9.42],
+ ["-I${WORKDIR}/UnpackedTarball/harfbuzz/src"],
+ ["-L${WORKDIR}/UnpackedTarball/harfbuzz/src/.libs -lharfbuzz"],
+ TRUE)
+ ;;
+ *)
+ libo_CHECK_SYSTEM_MODULE([graphite],[GRAPHITE],[graphite2 >= 0.9.3],
["-I${WORKDIR}/UnpackedTarball/graphite/include -DGRAPHITE2_STATIC"],
["-L${WORKDIR}/LinkTarget/StaticLibrary -lgraphite"])
+ libo_CHECK_SYSTEM_MODULE([harfbuzz],[HARFBUZZ],[harfbuzz-icu >= 0.9.42],
+ ["-I${WORKDIR}/UnpackedTarball/harfbuzz/src"],
+ ["-L${WORKDIR}/UnpackedTarball/harfbuzz/src/.libs -lharfbuzz"])
+ ;;
+esac
-libo_CHECK_SYSTEM_MODULE([harfbuzz],[HARFBUZZ],[harfbuzz-icu >= 0.9.42],
- ["-I${WORKDIR}/UnpackedTarball/harfbuzz/src"],
- ["-L${WORKDIR}/UnpackedTarball/harfbuzz/src/.libs -lharfbuzz"])
if test "$COM" = "MSC"; then # override the above
GRAPHITE_LIBS="${WORKDIR}/LinkTarget/StaticLibrary/graphite.lib"
@@ -11522,7 +11423,12 @@ if test "$_os" = "SunOS" -o "$_os" = "Darwin" -o "$_os" = "FreeBSD"; then
if $GNUPATCH --version | grep "Free Software Foundation" >/dev/null 2>/dev/null; then
AC_MSG_RESULT([yes])
else
- AC_MSG_ERROR([no, GNU patch needed. install or specify with --with-gnu-patch=/path/to/it])
+ if $GNUPATCH --version | grep "2\.0-.*-Apple" >/dev/null 2>/dev/null; then
+ AC_MSG_RESULT([no, but accepted (Apple patch)])
+ add_warning "patch utility is not GNU patch. Apple's patch should work OK, but it might experience issues where GNU patch doesn't."
+ else
+ AC_MSG_ERROR([no, GNU patch needed. install or specify with --with-gnu-patch=/path/to/it])
+ fi
fi
else
GNUPATCH=$PATCH
@@ -11734,6 +11640,7 @@ dnl ===================================================================
GTK3_CFLAGS=""
GTK3_LIBS=""
+ENABLE_GTKTILEDVIEWER=""
if test "$test_gtk3" = yes -a "x$enable_gtk3" = "xyes" -o "x$enable_gtk3_kde5" = "xyes"; then
if test "$with_system_cairo" = no; then
add_warning 'Non-system cairo combined with gtk3 is assumed to cause trouble; proceed at your own risk.'
@@ -11751,9 +11658,23 @@ if test "$test_gtk3" = yes -a "x$enable_gtk3" = "xyes" -o "x$enable_gtk3_kde5" =
AC_CHECK_HEADER(EGL/eglplatform.h, [],
[AC_MSG_ERROR(EGL headers not found. install mesa-libEGL-devel)], [])
fi
+elif test -n "$with_gtk3_build" -a "$OS" = "WNT"; then
+ PathFormat "${with_gtk3_build}/lib/pkgconfig"
+ if test "$build_os" = "cygwin"; then
+ dnl cygwin's pkg-config does not recognize "C:/..."-style paths, only "/cygdrive/c/..."
+ formatted_path_unix=`cygpath -au "$formatted_path_unix"`
+ fi
+
+ PKG_CONFIG_PATH="$formatted_path_unix"; export PKG_CONFIG_PATH
+ PKG_CHECK_MODULES(GTK3, cairo gdk-3.0 gio-2.0 glib-2.0 gobject-2.0 gtk+-3.0)
+ GTK3_CFLAGS="$GTK3_CFLAGS -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED"
+ FilterLibs "${GTK3_LIBS}"
+ GTK3_LIBS="${filteredlibs}"
+ ENABLE_GTKTILEDVIEWER="yes"
fi
AC_SUBST(GTK3_LIBS)
AC_SUBST(GTK3_CFLAGS)
+AC_SUBST(ENABLE_GTKTILEDVIEWER)
GTK4_CFLAGS=""
GTK4_LIBS=""
@@ -11834,6 +11755,8 @@ AC_MSG_CHECKING([whether to enable Impress remote control])
if test -n "$enable_sdremote" -a "$enable_sdremote" != "no"; then
AC_MSG_RESULT([yes])
ENABLE_SDREMOTE=TRUE
+ SDREMOTE_ENTITLEMENT=" <key>com.apple.security.network.server</key>
+ <true/>"
AC_MSG_CHECKING([whether to enable Bluetooth support in Impress remote control])
if test $OS = MACOSX && test "$MACOSX_SDK_VERSION" -ge 101500; then
@@ -11841,6 +11764,7 @@ if test -n "$enable_sdremote" -a "$enable_sdremote" != "no"; then
if test "$enable_sdremote_bluetooth" = yes; then
AC_MSG_ERROR([macOS SDK $macosx_sdk does not currently support --enable-sdremote-bluetooth])
fi
+ add_warning "not building the bluetooth part of the sdremote - used api was removed from macOS SDK 10.15"
enable_sdremote_bluetooth=no
fi
# If not explicitly enabled or disabled, default
@@ -11885,6 +11809,9 @@ if test -n "$enable_sdremote" -a "$enable_sdremote" != "no"; then
AC_MSG_RESULT([yes])
ENABLE_SDREMOTE_BLUETOOTH=TRUE
SYSTEM_BLUEZ=
+ SDREMOTE_ENTITLEMENT="$SDREMOTE_ENTITLEMENT
+ <key>com.apple.security.device.bluetooth</key>
+ <true/>"
fi
else
AC_MSG_RESULT([no])
@@ -11898,6 +11825,7 @@ else
fi
AC_SUBST(ENABLE_SDREMOTE)
AC_SUBST(ENABLE_SDREMOTE_BLUETOOTH)
+AC_SUBST(SDREMOTE_ENTITLEMENT)
AC_SUBST(SYSTEM_BLUEZ)
dnl ===================================================================
@@ -13594,6 +13522,12 @@ dnl ===================================================================
libo_CHECK_SYSTEM_MODULE([libpng],[LIBPNG],[libpng],["-I${WORKDIR}/UnpackedTarball/libpng"],["-L${WORKDIR}/LinkTarget/StaticLibrary -llibpng"])
dnl ===================================================================
+dnl Test whether to build libtiff or rely on the system version
+dnl ===================================================================
+
+libo_CHECK_SYSTEM_MODULE([libtiff],[LIBTIFF],[libtiff-4])
+
+dnl ===================================================================
dnl Test whether to build libwebp or rely on the system version
dnl ===================================================================
@@ -14724,6 +14658,7 @@ AC_CONFIG_LINKS([include:include])
AC_CONFIG_FILES([config_host.mk
config_host_lang.mk
Makefile
+ lo.xcent
bin/bffvalidator.sh
bin/odfvalidator.sh
bin/officeotron.sh
@@ -14731,6 +14666,7 @@ AC_CONFIG_FILES([config_host.mk
instsetoo_native/util/openoffice.lst
sysui/desktop/macosx/Info.plist
vs-code-template.code-workspace:.vscode/vs-code-template.code-workspace.in])
+AC_CONFIG_HEADERS([config_host/config_buildconfig.h])
AC_CONFIG_HEADERS([config_host/config_buildid.h])
AC_CONFIG_HEADERS([config_host/config_box2d.h])
AC_CONFIG_HEADERS([config_host/config_clang.h])