mirror of
https://github.com/ciphervance/supercell-wx.git
synced 2025-10-30 03:40:05 +00:00
Additional macOS configuration with llvm@18
This commit is contained in:
parent
ac4521483d
commit
337406971a
6 changed files with 197 additions and 13 deletions
|
|
@ -210,6 +210,81 @@
|
|||
"CC": "gcc-11",
|
||||
"CXX": "g++-11"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-base",
|
||||
"inherits": "base",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CMAKE_PREFIX_PATH": "$env{HOME}/Qt/6.8.3/macos"
|
||||
},
|
||||
"condition": {
|
||||
"type": "equals",
|
||||
"lhs": "${hostSystemName}",
|
||||
"rhs": "Darwin"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-base",
|
||||
"inherits": "macos-base",
|
||||
"hidden": true,
|
||||
"environment": {
|
||||
"CC": "/opt/homebrew/opt/llvm@18/bin/clang",
|
||||
"CXX": "/opt/homebrew/opt/llvm@18/bin/clang++",
|
||||
"PATH": "/opt/homebrew/opt/llvm@18/bin:$penv{PATH}",
|
||||
"CPPFLAGS": "-I/opt/homebrew/opt/llvm@18/include",
|
||||
"LDFLAGS": "-L/opt/homebrew/opt/llvm@18/lib -L/opt/homebrew/opt/llvm@18/lib/c++"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-x64-base",
|
||||
"inherits": "macos-clang18-base",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CONAN_HOST_PROFILE": "scwx-macos_clang-18",
|
||||
"CONAN_BUILD_PROFILE": "scwx-macos_clang-18"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-arm64-base",
|
||||
"inherits": "macos-clang18-base",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CONAN_HOST_PROFILE": "scwx-macos_clang-18_armv8",
|
||||
"CONAN_BUILD_PROFILE": "scwx-macos_clang-18_armv8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-x64-debug",
|
||||
"inherits": "macos-clang18-x64-base",
|
||||
"displayName": "macOS Clang 18 x64 Debug",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Debug"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-x64-release",
|
||||
"inherits": "macos-clang18-x64-base",
|
||||
"displayName": "macOS Clang 18 x64 Release",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Release"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-arm64-debug",
|
||||
"inherits": "macos-clang18-arm64-base",
|
||||
"displayName": "macOS Clang 18 Arm64 Debug",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Debug"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-arm64-release",
|
||||
"inherits": "macos-clang18-arm64-base",
|
||||
"displayName": "macOS Clang 18 Arm64 Release",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Release"
|
||||
}
|
||||
}
|
||||
],
|
||||
"buildPresets": [
|
||||
|
|
@ -236,6 +311,30 @@
|
|||
"configurePreset": "linux-gcc-release",
|
||||
"displayName": "Linux GCC Release",
|
||||
"configuration": "Release"
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-x64-debug",
|
||||
"configurePreset": "macos-clang18-x64-debug",
|
||||
"displayName": "macOS Clang 18 x64 Debug",
|
||||
"configuration": "Debug"
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-x64-release",
|
||||
"configurePreset": "macos-clang18-x64-release",
|
||||
"displayName": "macOS Clang 18 x64 Release",
|
||||
"configuration": "Release"
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-arm64-debug",
|
||||
"configurePreset": "macos-clang18-arm64-debug",
|
||||
"displayName": "macOS Clang 18 Arm64 Debug",
|
||||
"configuration": "Debug"
|
||||
},
|
||||
{
|
||||
"name": "macos-clang18-arm64-release",
|
||||
"configurePreset": "macos-clang18-arm64-release",
|
||||
"displayName": "macOS Clang 18 Arm64 Release",
|
||||
"configuration": "Release"
|
||||
}
|
||||
],
|
||||
"testPresets": [
|
||||
|
|
|
|||
8
tools/conan/profiles/scwx-macos_clang-18
Normal file
8
tools/conan/profiles/scwx-macos_clang-18
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
[settings]
|
||||
arch=x86_64
|
||||
build_type=Release
|
||||
compiler=clang
|
||||
compiler.cppstd=20
|
||||
compiler.libcxx=libc++
|
||||
compiler.version=18
|
||||
os=Macos
|
||||
8
tools/conan/profiles/scwx-macos_clang-18_armv8
Normal file
8
tools/conan/profiles/scwx-macos_clang-18_armv8
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
[settings]
|
||||
arch=armv8
|
||||
build_type=Release
|
||||
compiler=clang
|
||||
compiler.cppstd=20
|
||||
compiler.libcxx=libc++
|
||||
compiler.version=18
|
||||
os=Macos
|
||||
|
|
@ -45,20 +45,29 @@ python3 -m pip install ${PIP_FLAGS} -r "${script_dir}/../requirements.txt"
|
|||
conan profile detect -e
|
||||
|
||||
# Conan profiles
|
||||
conan_profiles=(
|
||||
"scwx-linux_clang-17"
|
||||
"scwx-linux_clang-17_armv8"
|
||||
"scwx-linux_clang-18"
|
||||
"scwx-linux_clang-18_armv8"
|
||||
"scwx-linux_gcc-11"
|
||||
"scwx-linux_gcc-11_armv8"
|
||||
"scwx-linux_gcc-12"
|
||||
"scwx-linux_gcc-12_armv8"
|
||||
"scwx-linux_gcc-13"
|
||||
"scwx-linux_gcc-13_armv8"
|
||||
"scwx-linux_gcc-14"
|
||||
"scwx-linux_gcc-14_armv8"
|
||||
if [[ "$(uname)" == "Darwin" ]]; then
|
||||
# macOS profiles
|
||||
conan_profiles=(
|
||||
"scwx-macos_clang-18"
|
||||
"scwx-macos_clang-18_armv8"
|
||||
)
|
||||
else
|
||||
# Linux profiles
|
||||
conan_profiles=(
|
||||
"scwx-linux_clang-17"
|
||||
"scwx-linux_clang-17_armv8"
|
||||
"scwx-linux_clang-18"
|
||||
"scwx-linux_clang-18_armv8"
|
||||
"scwx-linux_gcc-11"
|
||||
"scwx-linux_gcc-11_armv8"
|
||||
"scwx-linux_gcc-12"
|
||||
"scwx-linux_gcc-12_armv8"
|
||||
"scwx-linux_gcc-13"
|
||||
"scwx-linux_gcc-13_armv8"
|
||||
"scwx-linux_gcc-14"
|
||||
"scwx-linux_gcc-14_armv8"
|
||||
)
|
||||
fi
|
||||
|
||||
# Install Conan profiles
|
||||
for profile_name in "${conan_profiles[@]}"; do
|
||||
|
|
|
|||
30
tools/setup-macos-debug.sh
Executable file
30
tools/setup-macos-debug.sh
Executable file
|
|
@ -0,0 +1,30 @@
|
|||
#!/bin/bash
|
||||
script_source="${BASH_SOURCE[0]:-$0}"
|
||||
script_dir="$(cd "$(dirname "${script_source}")" && pwd)"
|
||||
|
||||
export build_dir="$(python3 -c 'import os,sys;print(os.path.realpath(sys.argv[1]))' "${1:-${script_dir}/../build-debug}")"
|
||||
export build_type=Debug
|
||||
export conan_profile=${2:-scwx-macos_clang-18_armv8}
|
||||
export generator=Ninja
|
||||
export qt_base="/Users/${USER}/Qt"
|
||||
export qt_arch=macos
|
||||
export address_sanitizer=${4:-disabled}
|
||||
|
||||
# Set explicit compiler paths
|
||||
export CC=/opt/homebrew/opt/llvm@18/bin/clang
|
||||
export CXX=/opt/homebrew/opt/llvm@18/bin/clang++
|
||||
export PATH="/opt/homebrew/opt/llvm@18/bin:$PATH"
|
||||
|
||||
export LDFLAGS="-L/opt/homebrew/opt/llvm@18/lib -L/opt/homebrew/opt/llvm@18/lib/c++"
|
||||
export CPPFLAGS="-I/opt/homebrew/opt/llvm@18/include"
|
||||
|
||||
# Assign user-specified Python Virtual Environment
|
||||
if [ "${3:-}" = "none" ]; then
|
||||
unset venv_path
|
||||
else
|
||||
# macOS does not have 'readlink -f', use python for realpath
|
||||
export venv_path="$(python3 -c 'import os,sys;print(os.path.realpath(sys.argv[1]))' "${3:-${script_dir}/../.venv}")"
|
||||
fi
|
||||
|
||||
# Perform common setup
|
||||
"${script_dir}/lib/setup-common.sh"
|
||||
30
tools/setup-macos-release.sh
Executable file
30
tools/setup-macos-release.sh
Executable file
|
|
@ -0,0 +1,30 @@
|
|||
#!/bin/bash
|
||||
script_source="${BASH_SOURCE[0]:-$0}"
|
||||
script_dir="$(cd "$(dirname "${script_source}")" && pwd)"
|
||||
|
||||
export build_dir="$(python3 -c 'import os,sys;print(os.path.realpath(sys.argv[1]))' "${1:-${script_dir}/../build-release}")"
|
||||
export build_type=Release
|
||||
export conan_profile=${2:-scwx-macos_clang-18_armv8}
|
||||
export generator=Ninja
|
||||
export qt_base="/Users/${USER}/Qt"
|
||||
export qt_arch=macos
|
||||
export address_sanitizer=${4:-disabled}
|
||||
|
||||
# Set explicit compiler paths
|
||||
export CC=/opt/homebrew/opt/llvm@18/bin/clang
|
||||
export CXX=/opt/homebrew/opt/llvm@18/bin/clang++
|
||||
export PATH="/opt/homebrew/opt/llvm@18/bin:$PATH"
|
||||
|
||||
export LDFLAGS="-L/opt/homebrew/opt/llvm@18/lib -L/opt/homebrew/opt/llvm@18/lib/c++"
|
||||
export CPPFLAGS="-I/opt/homebrew/opt/llvm@18/include"
|
||||
|
||||
# Assign user-specified Python Virtual Environment
|
||||
if [ "${3:-}" = "none" ]; then
|
||||
unset venv_path
|
||||
else
|
||||
# macOS does not have 'readlink -f', use python for realpath
|
||||
export venv_path="$(python3 -c 'import os,sys;print(os.path.realpath(sys.argv[1]))' "${3:-${script_dir}/../.venv}")"
|
||||
fi
|
||||
|
||||
# Perform common setup
|
||||
"${script_dir}/lib/setup-common.sh"
|
||||
Loading…
Add table
Add a link
Reference in a new issue