diff --git a/master/platforms.py b/master/platforms.py index e9aa04c..3ceb6f3 100644 --- a/master/platforms.py +++ b/master/platforms.py @@ -356,10 +356,15 @@ def macosx(): platform.env["CXX"] = "ccache x86_64-apple-darwin19-c++" # Put back worker CXXFLAGS platform.env["CXXFLAGS"] += "${CXXFLAGS}" + # configure script doesn't compile discord check with proper flags + platform.env["DISCORD_LIBS"] = "-framework AppKit" + platform.configureargs.append("--host=x86_64-apple-darwin19") platform.buildconfigureargs = { - builds.ScummVMBuild: [ "--enable-static", "--with-staticlib-prefix=${DESTDIR}/${PREFIX}", - "--disable-osx-dock-plugin"], + builds.ScummVMBuild: [ "--enable-static", + "--with-staticlib-prefix=${DESTDIR}/${PREFIX}", + "--with-sparkle-prefix=${DESTDIR}/${PREFIX}/Library/Frameworks", + "--disable-osx-dock-plugin", "--enable-updates"], } platform.packaging_cmd = { builds.ScummVMBuild: "bundle", diff --git a/toolchains/common/packages/discord-rpc/build.sh b/toolchains/common/packages/discord-rpc/build.sh new file mode 100755 index 0000000..704cb4d --- /dev/null +++ b/toolchains/common/packages/discord-rpc/build.sh @@ -0,0 +1,20 @@ +#! /bin/sh + +DISCORD_RPC_VERSION=3.4.0 + +PACKAGE_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd) +HELPERS_DIR=$PACKAGE_DIR/../.. +. $HELPERS_DIR/functions.sh + +do_make_bdir + +do_http_fetch discord-rpc \ + "https://github.com/discord/discord-rpc/archive/v${DISCORD_RPC_VERSION}.tar.gz" 'tar xzf' + +# -DCMAKE_SYSTEM_NAME=Darwin for MacOS X + +do_cmake "$@" +do_make +do_make install + +do_clean_bdir diff --git a/toolchains/m4/macosx.m4 b/toolchains/m4/macosx.m4 index 51995f0..e9eb10f 100644 --- a/toolchains/m4/macosx.m4 +++ b/toolchains/m4/macosx.m4 @@ -130,9 +130,13 @@ helpers_package(freetype) ports_package(fribidi) +ports_package(glew) + # This is a shim package which uses ports but fixes paths in sdl2-config common_package(libsdl2) ports_package(libsdl2_net) helpers_package(fluidsynth, -DCMAKE_SYSTEM_NAME=Darwin -DLIB_SUFFIX=) + +# Toolchain specific packages will go in the dedicated file now diff --git a/toolchains/macosx-common/packages/sparkle/build.sh b/toolchains/macosx-common/packages/sparkle/build.sh new file mode 100755 index 0000000..5f3160a --- /dev/null +++ b/toolchains/macosx-common/packages/sparkle/build.sh @@ -0,0 +1,19 @@ +#! /bin/sh + +SPARKLE_VERSION=1.24.0 + +PACKAGE_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd) +HELPERS_DIR=$PACKAGE_DIR/../.. +. $HELPERS_DIR/functions.sh + +do_make_bdir + +do_http_fetch Sparkle "https://github.com/sparkle-project/Sparkle/releases/download/${SPARKLE_VERSION}/Sparkle-${SPARKLE_VERSION}.tar.xz" 'tar --one-top-level -xJf' + +mkdir -p "${DESTDIR}/${PREFIX}/Library/Frameworks" + +mv Sparkle.framework "${DESTDIR}/${PREFIX}/Library/Frameworks" + +# Don't copy bin dir as we won't be able to run it + +do_clean_bdir diff --git a/toolchains/macosx/Dockerfile.m4 b/toolchains/macosx/Dockerfile.m4 index 93652ec..bc800c6 100644 --- a/toolchains/macosx/Dockerfile.m4 +++ b/toolchains/macosx/Dockerfile.m4 @@ -6,3 +6,10 @@ m4_define(`MACOSX_DEPLOYMENT_TARGET',10.9)m4_dnl m4_define(`MACOSX_ARCHITECTURES',`x86_64')m4_dnl m4_define(`MACOSX_PORTS_ARCH_ARG',`')m4_dnl m4_include(`macosx.m4')m4_dnl + +# This package isn't available on older MacOS X +helpers_package(discord-rpc, -DCMAKE_SYSTEM_NAME=Darwin) + +# This package isn't available for i386 so put it here +# It's in macosx-common for any ARM toolchain +common_package(sparkle)