-
Notifications
You must be signed in to change notification settings - Fork 83
Expand file tree
/
Copy pathMakefile.windows
More file actions
58 lines (45 loc) · 2.35 KB
/
Copy pathMakefile.windows
File metadata and controls
58 lines (45 loc) · 2.35 KB
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
POWERSHELL ?= powershell.exe
BUILD_SCRIPT := .\scripts\build_windows.ps1
BUILD_CMD := .\scripts\build_windows.cmd
THIS_MAKEFILE := $(lastword $(MAKEFILE_LIST))
PRESET ?= windows-cuda-release
TARGET ?= audiocpp_cli
JOBS ?=
VS_INSTALL ?=
NATIVE_CPU ?=
.PHONY: all build configure cpu cpu-release cuda cuda-debug cuda-release clean presets help
all: cuda
build:
$(POWERSHELL) -NoProfile -ExecutionPolicy Bypass -File "$(BUILD_SCRIPT)" -Preset "$(PRESET)" $(if $(TARGET),-Target "$(TARGET)",) $(if $(JOBS),-Jobs "$(JOBS)",) $(if $(NATIVE_CPU),-NativeCpu "$(NATIVE_CPU)",) $(if $(VS_INSTALL),-VsInstall "$(VS_INSTALL)",)
configure:
$(POWERSHELL) -NoProfile -ExecutionPolicy Bypass -File "$(BUILD_SCRIPT)" -Preset "$(PRESET)" -ConfigureOnly $(if $(NATIVE_CPU),-NativeCpu "$(NATIVE_CPU)",) $(if $(VS_INSTALL),-VsInstall "$(VS_INSTALL)",)
cpu:
$(MAKE) -f "$(THIS_MAKEFILE)" build PRESET=windows-cpu-release
cpu-release:
$(MAKE) -f "$(THIS_MAKEFILE)" build PRESET=windows-cpu-release
cuda:
$(MAKE) -f "$(THIS_MAKEFILE)" build PRESET=windows-cuda-release
cuda-debug:
$(MAKE) -f "$(THIS_MAKEFILE)" build PRESET=windows-cuda-debug
cuda-release:
$(MAKE) -f "$(THIS_MAKEFILE)" build PRESET=windows-cuda-release
clean:
$(POWERSHELL) -NoProfile -ExecutionPolicy Bypass -File "$(BUILD_SCRIPT)" -Preset "$(PRESET)" -Clean $(if $(VS_INSTALL),-VsInstall "$(VS_INSTALL)",)
presets:
cmake --list-presets
help:
@echo audio.cpp Windows build targets:
@echo make -f Makefile.windows CUDA Release build of audiocpp_cli
@echo make -f Makefile.windows cpu CPU Release build of audiocpp_cli
@echo make -f Makefile.windows cuda CUDA Release build of audiocpp_cli
@echo make -f Makefile.windows cuda-debug CUDA Debug build with /O2 /Zi
@echo make -f Makefile.windows build TARGET=name Build one target from the selected Windows preset
@echo make -f Makefile.windows presets List available CMake presets
@echo $(BUILD_CMD) Same build from cmd.exe without make
@echo.
@echo Examples:
@echo make -f Makefile.windows cpu JOBS=8
@echo make -f Makefile.windows cuda JOBS=8
@echo make -f Makefile.windows cuda NATIVE_CPU=OFF JOBS=8
@echo make -f Makefile.windows cuda-debug TARGET=audiocpp_cli JOBS=8
@echo make -f Makefile.windows cuda VS_INSTALL="C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools"