+MYCFLAGS="-mmacosx-version-min=${MACOSX_DEPLOYMENT_TARGET}"
+MYLDFLAGS="-mmacosx-version-min=${MACOSX_DEPLOYMENT_TARGET}"
+
+case "${EnableCXXMode}" in
+--enable-cxx11|--enable-cxx-mode=11)
+ export CC=cc
+ export CXX="c++ -stdlib=libc++"
+ export CXXFLAGS=-std=c++11
+ ;;
+--enable-cxx-mode=17)
+ export CC=cc
+ export CXX="c++ -stdlib=libc++"
+ export CXXFLAGS=-std=c++17
+ ;;
+esac
+
+build_qt() {
+ echo Build Qt library ${QtSourceDir}
+ if [ "${QtInstallDir}" = "${QtBuildDir}" ]; then
+ echo Bad install directory for Qt.
+ echo Must be different from build directory "${QtBuildDir}".
+ exit 1
+ fi
+ (
+ mkdir -p "${QtBuildDir}" && cd "${QtBuildDir}"
+ echo configure options:
+ echo ${QtConfigureOptions} ${QTARCHS} -prefix "${QtInstallDir}"
+ "${QtSourceDir}"/configure ${QtConfigureOptions} ${QTARCHS} -prefix "${QtInstallDir}"
+ make -j1 && make -j1 install
+ )
+}
+
+case ${QtOnlyPackage:-"no"} in
+y*)
+ build_qt
+ exit 0
+ ;;
+*)
+ if [ "${configure_qt_frameworks}" != "yes" -a -d "${QtSourceDir}" -a ! \( -d "${QtBuildDir}" -a -d "${QtInstallDir}" \) ]; then
+ build_qt
+ fi
+ ;;
+esac
+
+if [ -d "${LibMagicSourceDir}" -a ! -f "${LibMagicInstallHdr}" ]; then
+ # we have a private libmagic (file(1)) source tree at hand...
+ # so let's build and install it
+ if [ -z "${LibMagicVersion}" ]; then
+ LibMagicVersion=$(grep AC_INIT "${LibMagicSourceDir}"/configure.ac | cut -d, -f2|tr -d " []()")
+ fi
+
+ LibMagicName="LibMagic"
+ LibMagicBase="${LibMagicName}-${LibMagicVersion}"
+
+ echo Build libmagic library ${LibMagicBase}
+ echo configure options:
+ echo --prefix="${LibMagicInstallDir}" ${LibMagicConfigureOptions}
+
+ mkdir -p "${LibMagicBuildDir}" && cd "${LibMagicBuildDir}"
+
+ # ----------------------------------------
+ # Build LibMagic for different architectures
+ # ----------------------------------------
+ FILE_LIST="${LibMagicLibrary}"
+
+ for arch in ${ARCH_LIST} ; do
+ CPPFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"; export CPPFLAGS
+ LDFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYLDFLAGS}"; export LDFLAGS
+ "${LibMagicSourceDir}/configure"\
+ --prefix="${LibMagicInstallDir}"\
+ ${LibMagicConfigureOptions}
+ make && make install${strip}
+ for file in ${FILE_LIST} ; do
+ if [ -f "${LibMagicInstallDir}"/lib/${file} ]; then
+ mv "${LibMagicInstallDir}"/lib/${file}\
+ "${LibMagicInstallDir}"/lib/${file}-${arch}
+ else
+ echo Cannot build and install LibMagic for ${arch}.
+ exit 1
+ fi
+ done
+ done
+ # -------------------------
+ # Create universal binaries
+ # -------------------------
+ for file in ${FILE_LIST} ; do
+ OBJ_LIST=
+ for arch in ${ARCH_LIST} ; do
+ OBJ_LIST="${OBJ_LIST} lib/${file}-${arch}"
+ done
+ (
+ cd "${LibMagicInstallDir}"
+ lipo -create ${OBJ_LIST} -o lib/${file}
+ # check for the "missing link"...
+ test -f lib/libmagic.dylib || (cd lib ; ln -s "${LibMagicLibrary}" libmagic.dylib)
+ )
+ done
+ # --------
+ # Clean up
+ # --------
+ for arch in ${ARCH_LIST} ; do
+ rm -f "${LibMagicInstallDir}"/lib/*-${arch}
+ done
+fi
+
+if [ -d "${HunSpellSourceDir}" -a ! -f "${HunSpellInstallHdr}" ]; then
+ # we have a private HunSpell source tree at hand...
+ # so let's build and install it
+ if [ -z "${HunSpellVersion}" ]; then
+ HunSpellVersion=$(grep AC_INIT "${HunSpellSourceDir}"/configure.ac | cut -d, -f2|tr -d " []()")
+ fi
+
+ HunSpellName="Hunspell"
+ HunSpellBase="${HunSpellName}-${HunSpellVersion}"
+
+ echo Build hunspell library ${HunSpellBase}
+ echo configure options:
+ echo --prefix="${HunSpellInstallDir}" ${HunspellConfigureOptions}
+
+ mkdir -p "${HunSpellBuildDir}" && cd "${HunSpellBuildDir}"