QtBuildSubDir="qt-${QtVersion}-build${QtAPI}"
QtConfigureOptions=${QtConfigureOptions:-"-release"}
-GettextVersion=${GettextVersion:-"0.18.2"}
-GettextSource="gettext-${GettextVersion}"
-GettextLibrary="libintl.8.dylib"
+LibMagicVersion=${LibMagicVersion:-"5.19"}
+LibMagicSource="file-${LibMagicVersion}"
+LibMagicLibrary="libmagic.1.dylib"
ASpellVersion=${ASpellVersion:-"0.60.6.1"}
ASpellSource="aspell-${ASpellVersion}"
HunSpellSource="hunspell-${HunSpellVersion}"
HunSpellLibrary="libhunspell-1.3.0.dylib"
-LyXUtilitiesDir=${LyXUtilitiesDir:-"${LyxBuildDir}"/utilities}
-
unset DYLD_LIBRARY_PATH LD_LIBRARY_PATH
# Prerequisite:
# - aspell: the dictionary files of macports (in /opt/local/share/aspell and /opt/local/lib/aspell-0.60)
# - hunspell: the dictionary files in the sibling directory dictionaries/dicts
# - mythes: the data and idx files in the sibling directory dictionaries/thes
+# * for magic file type detection support:
+# the libmagic sources placed in a sibling directory (variable LibMagicSource)
LyXConfigureOptions="--enable-warnings --enable-optimization=-Os --with-x=no"
LyXConfigureOptions="${LyXConfigureOptions} --disable-stdlib-debug"
AspellConfigureOptions="--enable-warnings --enable-optimization=-O0 --enable-debug --disable-nls --enable-compile-in-filters --disable-pspell-compatibility"
HunspellConfigureOptions="--with-warnings --disable-nls --disable-static"
-QtConfigureOptions="${QtConfigureOptions} -opensource -silent -shared -fast -no-exceptions"
-QtConfigureOptions="${QtConfigureOptions} -no-webkit -no-qt3support -no-javascript-jit -no-dbus"
-QtConfigureOptions="${QtConfigureOptions} -nomake examples -nomake demos -nomake docs -nomake tools"
-QtMajorVersion=qt4
+QtMajorVersion=qt4
+QtConfigureOptions="${QtConfigureOptions} -opensource -silent -shared -confirm-license"
# stupid special case...
case "${QtVersion}:${QtAPI}" in
4.6*:-carbon)
+ QtConfigureOptions="${QtConfigureOptions} -fast -no-exceptions"
+ QtConfigureOptions="${QtConfigureOptions} -no-webkit -no-qt3support -no-javascript-jit -no-dbus"
+ QtConfigureOptions="${QtConfigureOptions} -nomake examples -nomake demos -nomake docs -nomake tools"
;;
5.0*)
- QtConfigureOptions="${QtConfigureOptions} -opensource -silent -shared -fast -no-strip"
+ QtConfigureOptions="${QtConfigureOptions} -fast -no-strip"
QtConfigureOptions="${QtConfigureOptions} -no-javascript-jit -no-pkg-config"
QtConfigureOptions="${QtConfigureOptions} -nomake examples -nomake demos -nomake docs -nomake tools"
QtMajorVersion=qt5
;;
5.*)
+ QtConfigureOptions="${QtConfigureOptions} -no-strip"
+ QtConfigureOptions="${QtConfigureOptions} -no-kms -no-pkg-config"
+ QtConfigureOptions="${QtConfigureOptions} -nomake examples -nomake tools"
+ QtConfigureOptions="${QtConfigureOptions} -skip qtquick1 -skip qtwebkit -skip qtconnectivity -skip qtscript"
+ QtConfigureOptions="${QtConfigureOptions} -skip qtquickcontrols -skip qtdeclarative"
QtMajorVersion=qt5
;;
*)
+ QtConfigureOptions="${QtConfigureOptions} -fast -no-exceptions"
+ QtConfigureOptions="${QtConfigureOptions} -no-webkit -no-qt3support -no-javascript-jit -no-dbus"
+ QtConfigureOptions="${QtConfigureOptions} -nomake examples -nomake demos -nomake docs -nomake tools"
QtConfigureOptions="${QtConfigureOptions} ${QtAPI}"
;;
esac
aspell_dictionaries="no"
hunspell_dictionaries="yes"
-gettext_deployment="no"
+libmagic_deployment="yes"
aspell_deployment="yes"
hunspell_deployment="yes"
thesaurus_deployment="yes"
export OBJC=gcc-4.0
export CXX=g++-4.0
;;
- 10.5|10.6|10.7|10.8)
+ 10.5|10.6|10.7|10.8|10.9|10.10)
SDKROOT="${DEVELOPER_SDKS}/MacOSX${SDKROOT}.sdk"
;;
*)
esac
shift
;;
- --gettext-deployment=*)
- gettext_deployment=$(echo ${1}|cut -d= -f2)
+ --libmagic-deployment=*)
+ libmagic_deployment=$(echo ${1}|cut -d= -f2)
shift
;;
--aspell-deployment=*)
LyxBuildDir=${LyxBuildDir:-$(dirname "${LyxSourceDir}")/lyx-build}
DMGLocation=${DMGLocation:-"${LyxBuildDir}"}
-GettextSourceDir=${GETTEXTDIR:-$(dirname "${LyxSourceDir}")/${GettextSource}}
-GettextBuildDir="${LyxBuildDir}"/"${GettextSource}"
-GettextInstallDir=${GettextInstallDir:-"${LyXUtilitiesDir}"}
-GettextInstallHdr="${GettextInstallDir}/include/libintl.h"
+LyXUtilitiesDir=${LyXUtilitiesDir:-"${LyxBuildDir}"/utilities}
+
+LibMagicSourceDir=${LIBMAGICDIR:-$(dirname "${LyxSourceDir}")/${LibMagicSource}}
+LibMagicBuildDir="${LyxBuildDir}"/"${LibMagicSource}"
+LibMagicInstallDir=${LibMagicInstallDir:-"${LyXUtilitiesDir}"}
+LibMagicInstallHdr="${LibMagicInstallDir}/include/magic.h"
ASpellSourceDir=${ASPELLDIR:-$(dirname "${LyxSourceDir}")/${ASpellSource}}
ASpellBuildDir="${ASpellSourceDir}"
LyXVersion=$(grep AC_INIT "${LyxSourceDir}"/configure.ac | cut -d, -f2 | tr -d " ()")
fi
LyXVersionSuffix=${LyXVersionSuffix:-$(echo "${LyXVersion}" | cut -d. -f1-2)}
+case "${LyXVersion}" in
+*dev*)
+ LyXGitCommitHash=$(cd "${LyxSourceDir}" ; git log -1 --pretty=format:%h)
+ ;;
+esac
LyxName="LyX"
LyxBase="${LyxName}-${LyXVersion}"
;;
esac
-DMGNAME="${LyxBase}"
+DMGNAME="${LyxBase}${LyXGitCommitHash:+-}${LyXGitCommitHash}"
DMGSIZE="550m"
# Check for existing SDKs
esac
MYCFLAGS="-mmacosx-version-min=${MACOSX_DEPLOYMENT_TARGET}"
-# pkg-config is not usable with this script
-export PKG_CONFIG=""
-
-# These variables define the identifiers of the
-# system (both Intel and PowerPC) to compile for.
-# (Note: darwin8 is 10.4; darwin9 is 10.5.)
-# Only change these if necessary
-
-HostSystem_i386="i686-apple-darwin8"
-HostSystem_ppc="powerpc-apple-darwin8"
-
if [ "${configure_qt_frameworks}" != "yes" -a -d "${QtSourceDir}" -a ! \( -d "${QtBuildDir}" -a -d "${QtInstallDir}" \) ]; then
echo Build Qt library ${QtSourceDir}
if [ "${QtInstallDir}" = "${QtBuildDir}" ]; then
done
echo configure options:
echo ${QtConfigureOptions} ${ARCHS} -prefix "${QtInstallDir}"
- echo yes | "${QtSourceDir}"/configure ${QtConfigureOptions} ${ARCHS} -prefix "${QtInstallDir}"
+ "${QtSourceDir}"/configure ${QtConfigureOptions} ${ARCHS} -prefix "${QtInstallDir}"
make ${MAKEJOBS} && make install
)
cd "${QtInstallDir}" && (
)
fi
-if [ -d "${GettextSourceDir}" -a ! -f "${GettextInstallHdr}" ]; then
- # we have a private Gettext source tree at hand...
+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 "${GettextVersion}" ]; then
- GettextVersion=$(grep AC_INIT "${GettextSourceDir}"/configure.ac | cut -d, -f2|tr -d " ()")
+ if [ -z "${LibMagicVersion}" ]; then
+ LibMagicVersion=$(grep AC_INIT "${LibMagicSourceDir}"/configure.ac | cut -d, -f2|tr -d " ()")
fi
- GettextName="Gettext"
- GettextBase="${GettextName}-${GettextVersion}"
+ LibMagicName="LibMagic"
+ LibMagicBase="${LibMagicName}-${LibMagicVersion}"
- echo Build gettext library ${GettextBase}
+ echo Build libmagic library ${LibMagicBase}
echo configure options:
- echo --prefix="${GettextInstallDir}" ${GettextConfigureOptions}
+ echo --prefix="${LibMagicInstallDir}" ${LibMagicConfigureOptions}
- mkdir -p "${GettextBuildDir}" && cd "${GettextBuildDir}"
+ mkdir -p "${LibMagicBuildDir}" && cd "${LibMagicBuildDir}"
# ----------------------------------------
- # Build Gettext for different architectures
+ # Build LibMagic for different architectures
# ----------------------------------------
- FILE_LIST="${GettextLibrary}"
+ FILE_LIST="${LibMagicLibrary}"
for arch in ${ARCH_LIST} ; do
CPPFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"; export CPPFLAGS
LDFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"; export LDFLAGS
- HOSTSYSTEM=$(eval "echo \\$HostSystem_$arch")
- "${GettextSourceDir}/configure"\
- --prefix="${GettextInstallDir}"\
- ${GettextConfigureOptions}
+ "${LibMagicSourceDir}/configure"\
+ --prefix="${LibMagicInstallDir}"\
+ ${LibMagicConfigureOptions}
make && make install${strip}
for file in ${FILE_LIST} ; do
- if [ -f "${GettextInstallDir}"/lib/${file} ]; then
- mv "${GettextInstallDir}"/lib/${file}\
- "${GettextInstallDir}"/lib/${file}-${arch}
+ if [ -f "${LibMagicInstallDir}"/lib/${file} ]; then
+ mv "${LibMagicInstallDir}"/lib/${file}\
+ "${LibMagicInstallDir}"/lib/${file}-${arch}
else
- echo Cannot build and install Gettext for ${arch}.
+ echo Cannot build and install LibMagic for ${arch}.
exit 1
fi
done
OBJ_LIST="${OBJ_LIST} lib/${file}-${arch}"
done
(
- cd "${GettextInstallDir}"
+ 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 "${GettextInstallDir}"/lib/*-${arch}
+ rm -f "${LibMagicInstallDir}"/lib/*-${arch}
done
fi
make distclean
CPPFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"; export CPPFLAGS
LDFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"; export LDFLAGS
- HOSTSYSTEM=$(eval "echo \\$HostSystem_$arch")
"${HunSpellSourceDir}/configure"\
--prefix="${HunSpellInstallDir}"\
${HunspellConfigureOptions}
make distclean
CPPFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"; export CPPFLAGS
LDFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"; export LDFLAGS
- HOSTSYSTEM=$(eval "echo \\$HostSystem_$arch")
CXXFLAGS=-g "${ASpellSourceDir}/configure"\
--prefix="${ASpellInstallDir}"\
${AspellConfigureOptions}
CPPFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"
LDFLAGS="${SDKROOT:+-isysroot ${SDKROOT}} -arch ${arch} ${MYCFLAGS}"
- HOSTSYSTEM=$(eval "echo \\$HostSystem_$arch")
if [ "$configure_qt_frameworks" = "yes" ]; then
export QT_CORE_CFLAGS="-FQtCore"
if [ -n "${OBJ_LIST}" ]; then
lipo -create ${OBJ_LIST} -o "${BUNDLE_PATH}/${file}"
fi
- if [ -f "${GettextInstallDir}/lib/${GettextLibrary}" -a "yes" = "${gettext_deployment}" ]; then
- private_framework Gettext "${GettextInstallDir}/lib/${GettextLibrary}" "${LYX_BUNDLE_PATH}/${file}"
+ if [ -f "${LibMagicInstallDir}/lib/${LibMagicLibrary}" -a "yes" = "${libmagic_deployment}" ]; then
+ private_framework LibMagic "${LibMagicInstallDir}/lib/${LibMagicLibrary}" "${LYX_BUNDLE_PATH}/${file}"
fi
if [ -f "${ASpellInstallDir}/lib/${ASpellLibrary}" -a "yes" = "${aspell_deployment}" ]; then
private_framework Aspell "${ASpellInstallDir}/lib/${ASpellLibrary}" "${LYX_BUNDLE_PATH}/${file}"
hdiutil create -type SPARSE -size ${DMGSIZE:-"250m"} -fs HFS+ -volname "${LyxBase}" "${DMGNAME}"
# Unmount currently mounted disk image
- test -d /Volumes/"${LyxBase}" && umount /Volumes/"${LyxBase}"
+ mount | grep "${LyxBase}" && umount /Volumes/"${LyxBase}"
+ test -d /Volumes/"${LyxBase}" && rmdir /Volumes/"${LyxBase}"
# Mount the disk image
hdiutil attach "${DMGNAME}.sparseimage"