-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
29 lines (22 loc) · 806 Bytes
/
Makefile
File metadata and controls
29 lines (22 loc) · 806 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
.PHONY: all init build test clean
DIR_ROOT := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
#CC := /usr/bin/clang-15
#CXX := /usr/bin/clang++-15
BUILD_TYPE := Release
BUILD_DIRECTORY := output
VCPKG_HOME := $(HOME)/go/src/github.com/microsoft/vcpkg
all: init build
init:
mkdir -p "$(BUILD_DIRECTORY)"
mkdir -p "$(BUILD_DIRECTORY)/install"
cmake --log-level=DEBUG -G "Unix Makefiles" -DCMAKE_BUILD_TYPE="$(BUILD_TYPE)" \
-DCMAKE_INSTALL_PREFIX="$(DIR_ROOT)$(BUILD_DIRECTORY)/install" \
-DCMAKE_TOOLCHAIN_FILE=$(VCPKG_HOME)/scripts/buildsystems/vcpkg.cmake \
-S . \
-B "$(BUILD_DIRECTORY)"
build:
cmake --build "$(BUILD_DIRECTORY)" --config "$(BUILD_TYPE)" -j8
test:
cd "$(BUILD_DIRECTORY)" && ctest --config "$(BUILD_TYPE)" --tests-regex '_test' -j8
clean:
rm -rf "$(BUILD_DIRECTORY)"