diff --git a/.travis.yml b/.travis.yml index a0d39374..67b95851 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,7 +14,7 @@ matrix: - docker - os: osx env: BUILD_OFFICIAL=1 - osx_image: xcode8.3 + osx_image: xcode12.2 - os: linux compiler: clang env: @@ -72,14 +72,13 @@ before_install: sudo apt -y --install-recommends install libc6-dev-x32; fi - if [ "$TRAVIS_OS_NAME" = "osx" ]; then - pushd $HOME/Downloads && - curl -LO https://distfiles.macports.org/MacPorts/MacPorts-2.6.4-10.12-Sierra.pkg && - sudo installer -pkg MacPorts-2.6.4-10.12-Sierra.pkg -target / && - rm MacPorts-2.6.4-10.12-Sierra.pkg && + curl -LO https://distfiles.macports.org/MacPorts/MacPorts-2.6.4-10.15-Catalina.pkg && + sudo installer -pkg MacPorts-2.6.4-10.15-Catalina.pkg -target / && + rm MacPorts-2.6.4-10.15-Catalina.pkg && sudo /opt/local/bin/port -N install yasm md5sha1sum && export PATH=/opt/local/bin:$PATH && - popd && ln -fs /Applications/Xcode.app /Applications/Xcode83.app; + ln -fs /Applications/Xcode.app /Applications/Xcode122.app; fi - if [ "${BUILD_OFFICIAL:-}" != "" ]; then if [ "$TRAVIS_OS_NAME" = "linux" ]; then diff --git a/BUILDING.md b/BUILDING.md index bdd625b8..b5106eeb 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -642,17 +642,18 @@ are installed by default on OS X/macOS 10.7 and later. In order to create a Mac package/disk image that contains universal x86-64/Arm binaries, set the following CMake variable: -* `IOS_ARMV8_BUILD`: Directory containing an Armv8 (64-bit) iOS build of +* `ARMV8_BUILD`: Directory containing an Armv8 (64-bit) iOS or macOS build of libjpeg-turbo to include in the universal binaries You should first use CMake to configure an Armv8 sub-build of libjpeg-turbo -(see "Building libjpeg-turbo for iOS" above) in a build directory that matches -the one specified in the aforementioned CMake variable. Next, configure the -primary (x86-64) build of libjpeg-turbo as an out-of-tree build, specifying the -aforementioned CMake variable, and build it. Once the primary build has been -built, run `make dmg` from the build directory. The packaging system will -build the sub-build, use lipo to combine it with the primary build into a -single set of universal binaries, then package the universal binaries. +(see "Building libjpeg-turbo for iOS" above, if applicable) in a build +directory that matches the one specified in the aforementioned CMake variable. +Next, configure the primary (x86-64) build of libjpeg-turbo as an out-of-tree +build, specifying the aforementioned CMake variable, and build it. Once the +primary build has been built, run `make dmg` from the build directory. The +packaging system will build the sub-build, use lipo to combine it with the +primary build into a single set of universal binaries, then package the +universal binaries. Windows diff --git a/cmakescripts/BuildPackages.cmake b/cmakescripts/BuildPackages.cmake index 33746837..0c7ed11c 100644 --- a/cmakescripts/BuildPackages.cmake +++ b/cmakescripts/BuildPackages.cmake @@ -134,8 +134,8 @@ endif() # WIN32 if(APPLE) -set(IOS_ARMV8_BUILD "" CACHE PATH - "Directory containing Armv8 iOS build to include in universal binaries") +set(ARMV8_BUILD "" CACHE PATH + "Directory containing Armv8 iOS or macOS build to include in universal binaries") set(MACOS_APP_CERT_NAME "" CACHE STRING "Name of the Developer ID Application certificate (in the macOS keychain) that should be used to sign the libjpeg-turbo DMG. Leave this blank to generate an unsigned DMG.") diff --git a/release/makemacpkg.in b/release/makemacpkg.in index 32ea67d2..36505b91 100755 --- a/release/makemacpkg.in +++ b/release/makemacpkg.in @@ -51,7 +51,7 @@ PKGNAME=@PKGNAME@ VERSION=@VERSION@ BUILD=@BUILD@ SRCDIR=@CMAKE_CURRENT_SOURCE_DIR@ -BUILDDIRARMV8=@IOS_ARMV8_BUILD@ +BUILDDIRARMV8=@ARMV8_BUILD@ WITH_JAVA=@WITH_JAVA@ MACOS_APP_CERT_NAME="@MACOS_APP_CERT_NAME@" MACOS_INST_CERT_NAME="@MACOS_INST_CERT_NAME@" @@ -98,7 +98,7 @@ if [ "$PREFIX" = "@CMAKE_INSTALL_DEFAULT_PREFIX@" -a "$DOCDIR" = "@CMAKE_INSTALL ln -fs /Library/Documentation/$PKGNAME $PKGROOT$DOCDIR fi -install_ios() +install_subbuild() { BUILDDIR=$1 ARCHNAME=$2 @@ -160,7 +160,7 @@ install_ios() } if [ "$BUILDDIRARMV8" != "" ]; then - install_ios $BUILDDIRARMV8 Armv8 armv8 arm64 + install_subbuild $BUILDDIRARMV8 Armv8 armv8 arm64 fi install_name_tool -id $LIBDIR/$LIBJPEG_DSO_NAME $PKGROOT/$LIBDIR/$LIBJPEG_DSO_NAME