diff options
-rw-r--r-- | .github/workflows/ci.yml | 14 | ||||
-rw-r--r-- | .gitignore | 2 | ||||
m--------- | 3rdparty/winapi/utf8 | 0 | ||||
-rw-r--r-- | CMakeLists.txt | 2 | ||||
-rw-r--r-- | Makefile | 23 | ||||
-rw-r--r-- | README.md | 2 | ||||
m--------- | cmake | 0 |
7 files changed, 16 insertions, 27 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8d51d0b..a1af45e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -50,7 +50,7 @@ jobs: - name: Cache Boost uses: actions/cache@v3 with: - path: '${{ runner.workspace }}/build/boost_*.tar.gz' + path: './build/boost_*.tar.gz' key: 'boost_${{ env.BOOST_VERSION }}' - name: Set up Python uses: actions/setup-python@v4 @@ -69,7 +69,7 @@ jobs: uses: actions/upload-artifact@v3 with: name: 'winapi-common-${{ matrix.toolset }}-${{ matrix.platform }}-${{ matrix.configuration }}' - path: '${{ runner.workspace }}/build/install/' + path: './build/install/' if-no-files-found: error - name: Test run: make test @@ -79,8 +79,8 @@ jobs: with: name: 'test_logs-${{ matrix.toolset }}-${{ matrix.platform }}-${{ matrix.configuration }}' path: | - ${{ runner.workspace }}/build/**/*_tests.log - ${{ runner.workspace }}/build/**/*_report.txt + ./build/**/*_tests.log + ./build/**/*_report.txt if-no-files-found: error if: always() && runner.os == 'Windows' @@ -91,8 +91,6 @@ jobs: if: github.ref == 'refs/heads/master' env: TOOLSET: mingw - PLATFORM: auto - CONFIGURATION: Debug BOOST_VERSION: 1.81.0 CMAKE_FLAGS: -D WINAPI_COMMON_TESTS=OFF steps: @@ -107,7 +105,7 @@ jobs: - name: Cache Boost uses: actions/cache@v3 with: - path: '${{ runner.workspace }}/build/boost_*.tar.gz' + path: './build/boost_*.tar.gz' key: 'boost_${{ env.BOOST_VERSION }}' - name: Set up Python uses: actions/setup-python@v4 @@ -129,5 +127,5 @@ jobs: uses: JamesIves/github-pages-deploy-action@v4 with: branch: gh-pages - folder: ../build/cmake/html + folder: ./build/cmake/html single-commit: true @@ -1 +1 @@ -/.build/ +/build/ diff --git a/3rdparty/winapi/utf8 b/3rdparty/winapi/utf8 -Subproject 8f6ebdcc8655f5a568a4ff12a4858556e315abb +Subproject 37b61e89d98fd3c149bc622fa7cfd39164583b4 diff --git a/CMakeLists.txt b/CMakeLists.txt index 393dfeb..5db8df5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) # for Boost::* imported targets +cmake_minimum_required(VERSION 3.8) project(winapi_common CXX) enable_testing() @@ -1,6 +1,7 @@ include prelude.mk TOOLSET ?= mingw +PLATFORM ?= auto CONFIGURATION ?= Debug BOOST_VERSION ?= 1.65.0 BOOST_LIBRARIES := --with-test @@ -8,16 +9,13 @@ CMAKE_FLAGS ?= -D WINAPI_COMMON_TESTS=ON this_dir := $(dir $(realpath $(firstword $(MAKEFILE_LIST)))) src_dir := $(this_dir) -ifdef CI -build_dir := $(this_dir)../build -else -build_dir := $(this_dir).build -endif +build_dir := $(this_dir)build boost_dir := $(build_dir)/boost cmake_dir := $(build_dir)/cmake DESTDIR ?= $(build_dir)/install $(eval $(call noexpand,TOOLSET)) +$(eval $(call noexpand,PLATFORM)) $(eval $(call noexpand,CONFIGURATION)) $(eval $(call noexpand,BOOST_VERSION)) $(eval $(call noexpand,CMAKE_FLAGS)) @@ -38,34 +36,27 @@ $(boost_dir)/: '$(call escape,$(boost_dir))' .PHONY: deps -ifdef CI -deps: - cd cmake && python3 -m project.ci.boost -- $(BOOST_LIBRARIES) -else deps: $(boost_dir)/ cd cmake && python3 -m project.boost.build \ --toolset '$(call escape,$(TOOLSET))' \ + --platform '$(call escape,$(PLATFORM))' \ --configuration '$(call escape,$(CONFIGURATION))' \ -- \ '$(call escape,$(boost_dir))' \ $(BOOST_LIBRARIES) -endif .PHONY: build build: -ifdef CI - cd cmake && python3 -m project.ci.cmake --install -- $(CMAKE_FLAGS) -else - cd cmake && python3 -m project.cmake.build \ + cd cmake && python3 -m project.build \ --toolset '$(call escape,$(TOOLSET))' \ + --platform '$(call escape,$(PLATFORM))' \ --configuration '$(call escape,$(CONFIGURATION))' \ - --build '$(call escape,$(cmake_dir))' \ --install '$(call escape,$(DESTDIR))' \ --boost '$(call escape,$(boost_dir))' \ -- \ '$(call escape,$(src_dir))' \ + '$(call escape,$(cmake_dir))' \ $(CMAKE_FLAGS) -endif .PHONY: install install: build @@ -14,7 +14,7 @@ Depends on Boost.Test and Python 3 for running the tests. The project is Windows-only, so building with either MSVC or MinGW-w64 is required. -There's a Makefile with useful shortcuts to build the project in the .build/ +There's a Makefile with useful shortcuts to build the project in the build/ directory (defaults to building with MinGW-w64): make deps diff --git a/cmake b/cmake -Subproject b230fffce638cdac8837ba9d9d343d9a93cef2e +Subproject 23a96df0cedd7236fbd70087c8e3ee12b222040 |