Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions dummy-port/portfile.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
set(VCPKG_POLICY_EMPTY_PACKAGE enabled)
17 changes: 17 additions & 0 deletions macos_build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/bin/zsh

easy_install --user pyyaml

git clone -q https://github.com/Microsoft/vcpkg.git
git -C vcpkg apply ../vcpkg_fixup_pkgconfig.cmake.diff

vcpkg/bootstrap-vcpkg.sh

TRIPLET="--overlay-triplets=. --triplet=x64-osx-openrct2"
LIBRARIES="duktape freetype[core,zlib,bzip2,png] libpng libzip[core] nlohmann-json openssl sdl2 speexdsp discord-rpc"
vcpkg/vcpkg install ${=TRIPLET} ${=LIBRARIES}

(
cd vcpkg/installed/x64-osx-openrct2 &&
zip -rXy ../../../openrct2-libs-v${version}-x64-macos-dylibs.zip * -x '*/.*'
)
12 changes: 12 additions & 0 deletions macos_pkgconfig/bzip2.pc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
prefix=/usr

exec_prefix=${prefix}
libdir=${prefix}/lib
includedir=${prefix}/include

Name: bzip2
Description: bzip2
Version: 1.0.5
Requires:
Libs: -L${libdir} -lbz2
Cflags: -I${includedir}
14 changes: 14 additions & 0 deletions macos_pkgconfig/zlib.pc
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
prefix=/usr

exec_prefix=${prefix}
libdir=${prefix}/lib
sharedlibdir=${prefix}/lib
includedir=${prefix}/include

Name: zlib
Description: zlib compression library
Version: 1.2.11

Requires:
Libs: -L${libdir} -L${sharedlibdir} -lz
Cflags: -I${includedir}
28 changes: 28 additions & 0 deletions vcpkg_fixup_pkgconfig.cmake.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
diff --git a/scripts/cmake/vcpkg_fixup_pkgconfig.cmake b/scripts/cmake/vcpkg_fixup_pkgconfig.cmake
index baccef100..7f0dc464d 100644
--- a/scripts/cmake/vcpkg_fixup_pkgconfig.cmake
+++ b/scripts/cmake/vcpkg_fixup_pkgconfig.cmake
@@ -50,8 +50,8 @@ function(vcpkg_fixup_pkgconfig_check_files pkg_cfg_cmd _file _config _system_lib
set(PKGCONFIG_PACKAGES_DIR "${_VCPKG_PACKAGES_PKGCONF}${PATH_SUFFIX_${_config}}/lib/pkgconfig")
set(PKGCONFIG_PACKAGES_SHARE_DIR "${_VCPKG_PACKAGES_PKGCONF}/share/pkgconfig")

- if(ENV{PKG_CONFIG_PATH})
- set(BACKUP_ENV_PKG_CONFIG_PATH_${_config} $ENV{PKG_CONFIG_PATH})
+ if(DEFINED ENV{PKG_CONFIG_PATH})
+ set(BACKUP_ENV_PKG_CONFIG_PATH_${_config} "$ENV{PKG_CONFIG_PATH}")
set(ENV{PKG_CONFIG_PATH} "${PKGCONFIG_INSTALLED_DIR}${VCPKG_HOST_PATH_SEPARATOR}${PKGCONFIG_INSTALLED_SHARE_DIR}${VCPKG_HOST_PATH_SEPARATOR}${PKGCONFIG_PACKAGES_DIR}${VCPKG_HOST_PATH_SEPARATOR}${PKGCONFIG_PACKAGES_SHARE_DIR}${VCPKG_HOST_PATH_SEPARATOR}$ENV{PKG_CONFIG_PATH}")
else()
set(ENV{PKG_CONFIG_PATH} "${PKGCONFIG_INSTALLED_DIR}${VCPKG_HOST_PATH_SEPARATOR}${PKGCONFIG_INSTALLED_SHARE_DIR}${VCPKG_HOST_PATH_SEPARATOR}${PKGCONFIG_PACKAGES_DIR}${VCPKG_HOST_PATH_SEPARATOR}${PKGCONFIG_PACKAGES_SHARE_DIR}")
@@ -237,6 +237,12 @@ function(vcpkg_fixup_pkgconfig_check_files pkg_cfg_cmd _file _config _system_lib
endforeach()

set(CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES_BACKUP})
+ if(DEFINED BACKUP_ENV_PKG_CONFIG_PATH_${_config})
+ set(ENV{PKG_CONFIG_PATH} "${BACKUP_ENV_PKG_CONFIG_PATH_${_config}}")
+ unset(BACKUP_ENV_PKG_CONFIG_PATH_${_config})
+ else()
+ unset(ENV{PKG_CONFIG_PATH})
+ endif()
endfunction()

function(vcpkg_fixup_pkgconfig)
21 changes: 21 additions & 0 deletions x64-osx-openrct2.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
cmake_policy(SET CMP0057 NEW)

set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)

set(VCPKG_CMAKE_SYSTEM_NAME Darwin)
set(VCPKG_OSX_DEPLOYMENT_TARGET "10.13")
set(VCPKG_BUILD_TYPE release)

if(DEFINED ENV{PKG_CONFIG_PATH})
set(ENV{PKG_CONFIG_PATH} "${CMAKE_CURRENT_LIST_DIR}/macos_pkgconfig:$ENV{PKG_CONFIG_PATH}")
else()
set(ENV{PKG_CONFIG_PATH} "${CMAKE_CURRENT_LIST_DIR}/macos_pkgconfig")
endif()

list(APPEND VCPKG_SYSTEM_LIBRARIES "z" "bz2")
set(OPENRCT2_SYSTEM_PACKAGES "zlib" "bzip2")
if(PORT IN_LIST OPENRCT2_SYSTEM_PACKAGES)
set(CURRENT_PORT_DIR "${CMAKE_CURRENT_LIST_DIR}/dummy-port")
endif()