Skip to content

Commit

Permalink
Merge pull request #1287 from contour-terminal/improvement/cmake-qt-q…
Browse files Browse the repository at this point in the history
…ml-madness

WIP: Trying to get MacOS packaging fixed
  • Loading branch information
christianparpart authored Nov 20, 2023
2 parents aebfa71 + b8abf7e commit 6d670f6
Show file tree
Hide file tree
Showing 10 changed files with 219 additions and 125 deletions.
16 changes: 16 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -55,3 +55,19 @@ insert_final_newline = true
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true

[CMakeLists.txt]
indent_style = space
indent_size = 4
insert_final_newline = true
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true

[*.cmake]
indent_style = space
indent_size = 4
insert_final_newline = true
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
14 changes: 7 additions & 7 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ concurrency:

env:
CTEST_OUTPUT_ON_FAILURE: 1
SCCACHE_GHA_ENABLED: "true"

jobs:

Expand Down Expand Up @@ -257,20 +258,20 @@ jobs:
# {{{ OS/X
osx:
name: "OS/X"
runs-on: macos-latest
runs-on: macos-13
steps:
- uses: actions/checkout@v3
- name: set variables
id: set_vars
run: |
./scripts/ci-set-vars.sh
echo QTVER=5 >> "$GITHUB_OUTPUT"
echo QTVER=6 >> "$GITHUB_OUTPUT"
env:
REPOSITORY: ${{ github.event.repository.name }}
- name: ccache
uses: hendrikmuhs/[email protected]
with:
key: ccache-osx_qt${{ steps.set_vars.outputs.QTVER }}
key: ccache-osx_qt${{ steps.set_vars.outputs.QTVER }}-r1
max-size: 256M
- name: "Install dependencies"
# Sometimes, brew thinks it needs to install from source rather than binary.
Expand Down Expand Up @@ -309,9 +310,6 @@ jobs:
# find build/src/contour/contour.app -print
BASENAME="contour-${{ steps.set_vars.outputs.version }}-osx"
mv -vf "build/Contour-${{ steps.set_vars.outputs.VERSION_STRING }}-Darwin.dmg" "${BASENAME}.dmg"
mv -vf "build/Contour-${{ steps.set_vars.outputs.VERSION_STRING }}-Darwin.zip" "${BASENAME}.zip"
- name: "Show ZIP-package contents"
run: "unzip -l contour-${{ steps.set_vars.outputs.version }}-osx.zip"
- name: upload to artifact store (DMG)
uses: actions/upload-artifact@v2
with:
Expand All @@ -325,6 +323,8 @@ jobs:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Run sccache-cache
uses: mozilla-actions/[email protected]
- name: setup environment
shell: powershell
id: set_vars
Expand Down Expand Up @@ -356,7 +356,7 @@ jobs:
New-Item -ItemType Directory -Force -Path build
}
- name: "Generate build files"
run: cmake -DCMAKE_BUILD_TYPE=Release -DCONTOUR_TESTING=ON -DCONTOUR_QT_VERSION=6 -DLIBTERMINAL_BUILD_BENCH_HEADLESS=ON -DCMAKE_CXX_STANDARD=20 -DCMAKE_TOOLCHAIN_FILE="${{ runner.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DVCPKG_TARGET_TRIPLET=x64-windows -DLIBTERMINAL_TESTING=ON -DLIBUNICODE_TESTING=ON -B build .
run: cmake -DCMAKE_BUILD_TYPE=Release -DCONTOUR_TESTING=ON -DCONTOUR_QT_VERSION=6 -DLIBTERMINAL_BUILD_BENCH_HEADLESS=ON -DCMAKE_CXX_STANDARD=20 -DCMAKE_TOOLCHAIN_FILE="${{ runner.workspace }}/vcpkg/scripts/buildsystems/vcpkg.cmake" -DCMAKE_C_COMPILER_LAUNCHER=sccache -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -DVCPKG_TARGET_TRIPLET=x64-windows -DLIBTERMINAL_TESTING=ON -DLIBUNICODE_TESTING=ON -B build .
- name: "Build"
run: cmake --build build/ --config Release
- name: "test: crispy"
Expand Down
1 change: 1 addition & 0 deletions autogen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ case "$OSTYPE" in
darwin*)
if test v$QTVER = v6; then
EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -DQt6_DIR=$(brew --prefix qt6)/lib/cmake/Qt6"
#EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -DQt6_DIR=$HOME/Qt/6.5.3/macos/lib/cmake/Qt6"
else
EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -DQt5_DIR=$(brew --prefix qt5)/lib/cmake/Qt5"
fi
Expand Down
14 changes: 7 additions & 7 deletions cmake/CIncludeMe.cmake
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
add_subdirectory(${CMAKE_CURRENT_LIST_DIR}/cincludeme)

function(CIncludeMe INPUT_FILE OUTPUT_FILE SYMBOL_NAME NAMESPACE)
add_custom_command(
OUTPUT "${OUTPUT_FILE}"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
add_custom_command(
OUTPUT "${OUTPUT_FILE}"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
COMMAND cincludeme "${OUTPUT_FILE}" "${NAMESPACE}" "${INPUT_FILE}" "${SYMBOL_NAME}"
DEPENDS cincludeme "${INPUT_FILE}"
COMMENT "Generating ${OUTPUT_FILE} from ${INPUT_FILE}"
VERBATIM
)
set_source_files_properties("${OUTPUT_FILE}" PROPERTIES GENERATED TRUE)
COMMENT "Generating ${OUTPUT_FILE} from ${INPUT_FILE}"
VERBATIM
)
set_source_files_properties("${OUTPUT_FILE}" PROPERTIES GENERATED TRUE)
endfunction()
2 changes: 1 addition & 1 deletion cmake/ContourThirdParties.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -140,9 +140,9 @@ macro(ContourThirdPartiesSummary2)
message(STATUS "freetype ${THIRDPARTY_BUILTIN_freetype}")
message(STATUS "harfbuzz ${THIRDPARTY_BUILTIN_harfbuzz}")
message(STATUS "range-v3 ${THIRDPARTY_BUILTIN_range_v3}")
message(STATUS "yaml-cpp ${THIRDPARTY_BUILTIN_yaml_cpp}")
message(STATUS "termbench-pro ${THIRDPARTY_BUILTIN_termbench}")
message(STATUS "libunicode ${THIRDPARTY_BUILTIN_unicode_core}")
message(STATUS "yaml-cpp ${THIRDPARTY_BUILTIN_yaml_cpp}")
message(STATUS "boxed-cpp ${THIRDPARTY_BUILTIN_boxed_cpp}")
message(STATUS "------------------------------------------------------------------------------")
endmacro()
6 changes: 2 additions & 4 deletions scripts/install-deps.sh
Original file line number Diff line number Diff line change
Expand Up @@ -497,9 +497,6 @@ install_deps_fedora()

install_deps_darwin()
{
# NB: yaml-cpp is available on brew, but gives linker error on Github CI.
fetch_and_unpack_yaml_cpp

fetch_and_unpack_libunicode

[ x$PREPARE_ONLY_EMBEDS = xON ] && return
Expand All @@ -515,7 +512,8 @@ install_deps_darwin()
pkg-config \
qt$QTVER \
libssh2 \
range-v3
range-v3 \
yaml-cpp
}

main()
Expand Down
Loading

0 comments on commit 6d670f6

Please sign in to comment.