Skip to content

Commit b796a38

Browse files
committed
fix: set Ninja "Multi-Config" as default
1 parent f6bb564 commit b796a38

22 files changed

+43
-45
lines changed

Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ ENV TOOLCHAIN_FILE "$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake"
110110
# build script settings
111111
ENV TARGET "all"
112112
ENV BUILD_TYPE "Release"
113-
ENV CMAKE_GENERATOR "Ninja"
113+
ENV CMAKE_GENERATOR "Ninja Multi-Config"
114114
ENV CMAKE_ARGS ""
115115

116116
# setup project env

Dockerfile.android

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ARG vcpkg_target_triplet="arm-android"
99
ARG android_abi="armeabi-v7a"
1010

1111
ARG cmake="android-${android_abi}-cmake"
12-
ARG cmake_generator="Ninja"
12+
ARG cmake_generator="Ninja Multi-Config"
1313
ARG make="ninja"
1414
ARG cc="clang"
1515
ARG cxx="clang++"

Dockerfile.android-v

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ ARG android_target="30"
1111
ARG android_ndk_version=""
1212

1313
ARG cmake="android-${android_abi}-cmake"
14-
ARG cmake_generator="Ninja"
14+
ARG cmake_generator="Ninja Multi-Config"
1515
ARG make="ninja"
1616
ARG cc="clang"
1717
ARG cxx="clang++"

Dockerfile.ci

+1-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ ENV TOOLCHAIN_FILE "$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake"
112112
# build script settings
113113
ENV TARGET "all"
114114
ENV BUILD_TYPE "Release"
115-
ENV CMAKE_GENERATOR "Ninja"
115+
ENV CMAKE_GENERATOR "Ninja Multi-Config"
116116
ENV CMAKE_ARGS ""
117117

118118
# setup project env

Dockerfile.ci-setup-cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ ENV VCPKG_TOOLCHAIN_FILE "$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake"
130130
# build script settings
131131
ENV TARGET "all"
132132
ENV BUILD_TYPE "Release"
133-
ENV CMAKE_GENERATOR "Ninja"
133+
ENV CMAKE_GENERATOR "Ninja Multi-Config"
134134
ENV VCPKG_TOOLCHAIN_FILE "/root/vcpkg/scripts/buildsystems/vcpkg.cmake"
135135
ENV TOOLCHAIN_FILE "/root/vcpkg/scripts/buildsystems/vcpkg.cmake"
136136
ENV CMAKE_ARGS ""

Dockerfile.ci-windows

+1-1
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ ARG cc="x86_64-w64-mingw32-gcc"
9999
ARG cxx="x86_64-w64-mingw32-g++"
100100
ARG cmake="cmake"
101101
ARG make="ninja"
102-
ARG cmake_generator="Ninja"
102+
ARG cmake_generator="Ninja Multi-Config"
103103
ARG cmake_toolchain_file="/home/cmake/x86_64-w64-mingw32.toolchain.cmake"
104104
ARG cross_root "/usr/x86_64-w64-mingw32"
105105

Dockerfile.clang

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ ENV TOOLCHAIN_FILE "$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake"
3232
# build script settings
3333
ENV TARGET "all"
3434
ENV BUILD_TYPE "Release"
35-
ENV CMAKE_GENERATOR "Ninja"
35+
ENV CMAKE_GENERATOR "Ninja Multi-Config"
3636
ENV CMAKE_ARGS ""
3737

3838
# setup project env

Dockerfile.cross-rpi

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ ARG cross_cmake="${cross_triple}-cmake"
1919
ARG cross_make="${cross_triple}-make"
2020
ARG cross_root="/usr/$cross_triple"
2121
ARG cmake_toolchain_file
22-
ARG cmake_generator="Unix Makefiles"
22+
ARG cmake_generator="Ninja Multi-Config"
2323

2424
# e.g. mingw-w64-toolchain
2525
ARG install_toolchain="${cross_triple}-gcc"

Dockerfile.crosstool-ng

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ARG vcpkg_target_triplet
1010
ARG cross_triple
1111
ARG cmake="cmake"
1212
ARG make="ninja"
13-
ARG cmake_generator="Ninja"
13+
ARG cmake_generator="Ninja Multi-Config"
1414
ARG cmake_toolchain_file
1515

1616
# Install packages available from standard repos

Dockerfile.crosstool-ng-rpi

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ARG vcpkg_target_triplet="arm-linux"
1010
ARG cross_triple="armv8-rpi4-linux-gnueabihf"
1111
ARG cmake="cmake"
1212
ARG make="ninja"
13-
ARG cmake_generator="Ninja"
13+
ARG cmake_generator="Ninja Multi-Config"
1414
ARG cmake_toolchain_file="/home/cmake/rpi-toolchain.cmake"
1515

1616
# Install packages available from standard repos

Dockerfile.emscripten

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ ARG cross_make="emmake make"
1414
ARG cmake="cmake"
1515
ARG make="make"
1616
ARG cmake_toolchain_file="/usr/lib/emscripten/cmake/Modules/Platform/Emscripten.cmake"
17-
ARG cmake_generator="Unix Makefiles"
17+
ARG cmake_generator="Ninja Multi-Config"
1818

1919

2020
# Install packages available from standard repos

Dockerfile.gcc

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ ENV TOOLCHAIN_FILE "$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake"
4646
# build script settings
4747
ENV TARGET "all"
4848
ENV BUILD_TYPE "Release"
49-
ENV CMAKE_GENERATOR "Unix Makefiles"
49+
ENV CMAKE_GENERATOR "Ninja Multi-Config"
5050
ENV CMAKE_ARGS ""
5151

5252
# setup project env

Dockerfile.mxe

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ ARG cc="${cross_triplet}-gcc"
1313
ARG cxx="${cross_triplet}-g++"
1414
ARG cmake="${cross_triplet}-cmake"
1515
ARG make="make"
16-
ARG cmake_generator="Unix Makefiles"
16+
ARG cmake_generator="Ninja Multi-Config"
1717

1818
# Install packages available from standard repos
1919
RUN pacman-db-upgrade && \

Dockerfile.without-vcpkg

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ ENV MAKE "make"
2424
# build script settings
2525
ENV TARGET "all"
2626
ENV BUILD_TYPE "Release"
27-
ENV CMAKE_GENERATOR "Ninja"
27+
ENV CMAKE_GENERATOR "Ninja Multi-Config"
2828
ENV CMAKE_ARGS ""
2929

3030
# setup project env

taskfiles/TaskfileCross.yml

+2-3
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,10 @@ tasks:
3030
dir: '{{.PROJECT_DIR}}'
3131
cmds:
3232
- task: configure
33-
- cd build || exit
34-
- {{.CROSS_MAKE}} "{{.TARGET}}"
33+
- '{{.CROSS_CMAKE}} --build build --config {{.BUILD_TYPE}} --target "{{.TARGET}}"'
3534

3635
test:
3736
dir: '{{.PROJECT_DIR}}'
3837
cmds:
3938
- task: build
40-
- ctest --build-test
39+
- ctest --build-test --test-dir build -C {{.BUILD_TYPE}}

taskfiles/TaskfileDefault.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,10 @@ tasks:
3737
dir: '{{.PROJECT_DIR}}'
3838
cmds:
3939
- task: configure
40-
- '{{.CMAKE}} --build build --target "{{.TARGET}}"'
40+
- '{{.CMAKE}} --build build --config {{.BUILD_TYPE}} --target "{{.TARGET}}"'
4141

4242
test:
4343
dir: '{{.PROJECT_DIR}}'
4444
cmds:
4545
- task: build
46-
- ctest --build-test --test-dir build
46+
- ctest --build-test --test-dir build -C {{.BUILD_TYPE}}

taskfiles/TaskfileSetupCpp.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@ tasks:
2323
dir: '{{.PROJECT_DIR}}'
2424
cmds:
2525
- task: configure
26-
- '{{.CMAKE}} --build build --target "{{.TARGET}}"'
26+
- '{{.CMAKE}} --build build --config {{.BUILD_TYPE}} --target "{{.TARGET}}"'
2727

2828
test:
2929
dir: '{{.PROJECT_DIR}}'
3030
cmds:
3131
- task: build
32-
- ctest --build-test --test-dir build
32+
- ctest --build-test --test-dir build -C {{.BUILD_TYPE}}
3333

3434
coverage:
3535
dir: '{{.PROJECT_DIR}}'

taskfiles/TaskfileSetupCppCross.yml

+2-3
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,13 @@ tasks:
2727
dir: '{{.PROJECT_DIR}}'
2828
cmds:
2929
- task: configure
30-
- cd build || exit
31-
- {{.CROSS_MAKE}} "{{.TARGET}}"
30+
- '{{.CMAKE}} --build build --config {{.BUILD_TYPE}} --target "{{.TARGET}}"'
3231

3332
test:
3433
dir: '{{.PROJECT_DIR}}'
3534
cmds:
3635
- task: build
37-
- ctest --build-test --test-dir build
36+
- ctest --build-test --test-dir build -C {{.BUILD_TYPE}}
3837

3938
coverage:
4039
dir: '{{.PROJECT_DIR}}'

taskfiles/TaskfileWithoutVcpkgToolchain.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ tasks:
2121
dir: '{{.PROJECT_DIR}}'
2222
cmds:
2323
- task: configure
24-
- '{{.CMAKE}} --build build --target "{{.TARGET}}"'
24+
- '{{.CMAKE}} --build build --config {{.BUILD_TYPE}} --target "{{.TARGET}}"'
2525

2626
test:
2727
dir: '{{.PROJECT_DIR}}'
2828
cmds:
2929
- task: build
30-
- ctest --build-test --test-dir build
30+
- ctest --build-test --test-dir build -C {{.BUILD_TYPE}}

taskfiles/docker/Build.yml

+6-6
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ tasks:
3535
--build-arg cross_triple="x86_64-w64-mingw32" \
3636
--build-arg install_toolchain="mingw-w64-toolchain" \
3737
--build-arg install_extras_toolchain="mingw-w64-pkg-config mingw-w64-cmake mingw-w64-configure mingw-w64-make mingw-w64-environment powershell-bin" \
38-
--build-arg cmake_generator="Ninja" \
38+
--build-arg cmake_generator="Ninja Multi-Config" \
3939
--build-arg make="make" \
4040
--build-arg cmake="cmake" \
4141
--build-arg cross_make="x86_64-w64-mingw32-make" \
@@ -53,7 +53,7 @@ tasks:
5353
--build-arg cross_triple="i686-w64-mingw32" \
5454
--build-arg install_toolchain="mingw-w64-toolchain" \
5555
--build-arg install_extras_toolchain="mingw-w64-pkg-config mingw-w64-cmake mingw-w64-configure mingw-w64-make mingw-w64-environment powershell-bin" \
56-
--build-arg cmake_generator="Ninja" \
56+
--build-arg cmake_generator="Ninja Multi-Config" \
5757
--build-arg make="make" \
5858
--build-arg cmake="cmake" \
5959
--build-arg cross_make="i686-w64-mingw32-make" \
@@ -73,7 +73,7 @@ tasks:
7373
--build-arg vcpkg_target_triplet="arm64-linux" \
7474
--build-arg cross_triple="aarch64-linux-gnu" \
7575
--build-arg install_toolchain="aarch64-linux-gnu-gcc" \
76-
--build-arg cmake_generator="Ninja" \
76+
--build-arg cmake_generator="Ninja Multi-Config" \
7777
--build-arg make="ninja" \
7878
--build-arg cmake="cmake" \
7979
--build-arg cross_make="ninja" \
@@ -85,7 +85,7 @@ tasks:
8585
--build-arg vcpkg_target_triplet="arm-linux" \
8686
--build-arg cross_triple="arm-none-eabi" \
8787
--build-arg install_toolchain="arm-none-eabi-gcc" \
88-
--build-arg cmake_generator="Ninja" \
88+
--build-arg cmake_generator="Ninja Multi-Config" \
8989
--build-arg make="ninja" \
9090
--build-arg cmake="cmake" \
9191
--build-arg cross_make="ninja" \
@@ -98,7 +98,7 @@ tasks:
9898
# --build-arg vcpkg_target_triplet="arm-linux" \
9999
# --build-arg cross_triple="arm-linux-gnueabihf" \
100100
# --build-arg install_toolchain="arm-linux-gnueabihf-gcc-stage1 arm-linux-gnueabihf-gcc-stage2 arm-linux-gnueabihf-gcc" \
101-
# --build-arg cmake_generator="Ninja" \
101+
# --build-arg cmake_generator="Ninja Multi-Config" \
102102
# --build-arg make="ninja" \
103103
# --build-arg cmake="cmake" \
104104
# --build-arg cmake_toolchain_file="/home/cmake/arm.toolchain.cmake" \
@@ -137,7 +137,7 @@ tasks:
137137
--build-arg vcpkg_target_triplet="arm64-linux" \
138138
--build-arg cross_triple="aarch64-linux-gnu" \
139139
--build-arg install_toolchain="aarch64-linux-gnu-gcc" \
140-
--build-arg cmake_generator="Ninja" \
140+
--build-arg cmake_generator="Ninja Multi-Config" \
141141
--build-arg make="ninja" \
142142
--build-arg cmake="cmake" \
143143
--build-arg cross_make="ninja" \

taskfiles/docker/Test.yml

+9-9
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ tasks:
3737
- container-structure-test test --image abeimler/simple-cppbuilder:gcc-10 --config tests/gcc10-test.yaml
3838
- container-structure-test test --image abeimler/simple-cppbuilder:gcc-9 --config tests/gcc9-test.yaml
3939

40-
base:run:
40+
base:example:
4141
- docker-compose -f examples/example/docker-compose.yml up --build example-gcc-debug-build
4242
- docker-compose -f examples/example/docker-compose.yml up --build example-gcc-debug-build-make
4343
- docker-compose -f examples/example/docker-compose.yml up --build example-gcc-debug-test
@@ -47,22 +47,22 @@ tasks:
4747
- docker-compose -f examples/example/docker-compose.yml up --build example-gcc-debug-test-lcov
4848
- docker-compose -f examples/example/docker-compose.yml down --volumes --rmi local
4949

50-
clang:run:
50+
clang:example:
5151
- docker-compose -f examples/example/docker-compose.yml up --build example-clang-debug-build
5252
- docker-compose -f examples/example/docker-compose.yml up --build example-clang-debug-test
5353
- docker-compose -f examples/example/docker-compose.yml up --build example-clang-release-build
5454
- docker-compose -f examples/example/docker-compose.yml up --build example-clang-release-test
5555
- docker-compose -f examples/example/docker-compose.yml down --volumes --rmi local
5656

57-
cpp_starter_project:run:
57+
cpp_starter_project:example:
5858
- docker-compose -f examples/cpp_starter_project/docker-compose.yml up --build cpp_starter_project-gcc-debug-build cpp_starter_project-gcc-debug-test
5959
- docker-compose -f examples/cpp_starter_project/docker-compose.yml up --build cpp_starter_project-clang-debug-build cpp_starter_project-clang-release-build
6060
- docker-compose -f examples/cpp_starter_project/docker-compose.yml up --build cpp_starter_project-gcc-debug-test-cov
6161
- docker-compose -f examples/cpp_starter_project/docker-compose.yml up --build cpp_starter_project-fltk-clang-release-build
6262
- docker-compose -f examples/cpp_starter_project/docker-compose.yml up --build cpp_starter_project-gtkmm-clang-release-build
6363
- docker-compose -f examples/cpp_starter_project/docker-compose.yml down --volumes --rmi local
6464

65-
ci:run:
65+
ci:example:
6666
- docker-compose -f examples/example-ci/docker-compose.yml up --build example-gcc-build
6767
- docker-compose -f examples/example-ci/docker-compose.yml up --build example-gcc-test
6868
- docker-compose -f examples/example-ci/docker-compose.yml up --build example-gcc-test-cov
@@ -75,23 +75,23 @@ tasks:
7575
single:old-build-script:
7676
- docker run -it --rm --name my-cpp-project -v "$PWD/examples/single":/home/project -w /home/project abeimler/simple-cppbuilder ./docker-build.sh
7777

78-
emscripten:run-example:
78+
emscripten:example:
7979
- docker-compose -f examples/web-example/docker-compose.yml up --build
8080
- docker-compose -f examples/web-example/docker-compose.yml down --volumes --rmi local
8181

82-
mingw:run-example:
82+
mingw:example:
8383
- docker-compose -f examples/example/docker-compose.cross.yml up --build example-mingw-release-build
8484
- docker-compose -f examples/example/docker-compose.cross.yml down --volumes --rmi local
8585

86-
android:run-example:
86+
android:example:
8787
- docker-compose -f examples/android-example/docker-compose.yml up --build
8888
- docker-compose -f examples/android-example/docker-compose.yml down --volumes --rmi local
8989

90-
arm:rpi:run-example:
90+
arm:rpi:example:
9191
- docker-compose -f examples/example/docker-compose.cross.yml up --build example-arm64-release-build
9292
- docker-compose -f examples/example/docker-compose.cross.yml down --volumes --rmi local
9393

94-
rpi:run-example:
94+
rpi:example:
9595
- docker-compose -f examples/example/docker-compose.cross.yml up --build example-rpi4-release-build
9696
- docker-compose -f examples/example/docker-compose.cross.yml down --volumes --rmi local
9797

tests/base-test.yaml

+4-4
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@ schemaVersion: 2.0.0
22

33
commandTests:
44
- name: gcc compiler
5-
command: $CC
5+
command: gcc
66
args: ["--version"]
77
expectedOutput: [".*gcc.*GCC.*"]
88
- name: g++ compiler
9-
command: $CXX
9+
command: g++
1010
args: ["--version"]
1111
expectedOutput: [".*g\\+\\+.*GCC.*"]
1212
- name: cmake
13-
command: $CMAKE
13+
command: cmake
1414
args: ["--version"]
1515
expectedOutput: [".*cmake version.*"]
1616
- name: make
17-
command: $MAKE
17+
command: make
1818
args: ["--version"]
1919
expectedOutput: [".*GNU Make.*"]

0 commit comments

Comments
 (0)