Mercurial > games > semicongine
comparison Makefile @ 13:a571db114152
add: vector/matrix modules, tests, nim config script
author | Sam <sam@basx.dev> |
---|---|
date | Wed, 28 Dec 2022 11:42:21 +0700 |
parents | 9e5fe647ff91 |
children | dde536a70483 |
comparison
equal
deleted
inserted
replaced
12:9e5fe647ff91 | 13:a571db114152 |
---|---|
3 DEBUG_OPTIONS := --debugger:native --checks:on --assertions:on | 3 DEBUG_OPTIONS := --debugger:native --checks:on --assertions:on |
4 RELEASE_OPTIONS := -d:release --checks:off --assertions:off | 4 RELEASE_OPTIONS := -d:release --checks:off --assertions:off |
5 WINDOWS_DEBUG_OPTIONS := --cc:vcc --passC:'/MDd' --passL:'ucrtd.lib' | 5 WINDOWS_DEBUG_OPTIONS := --cc:vcc --passC:'/MDd' --passL:'ucrtd.lib' |
6 WINDOWS_RELEASE_OPTIONS := --cc:vcc --passC:'/MD' --passL:'ucrt.lib' | 6 WINDOWS_RELEASE_OPTIONS := --cc:vcc --passC:'/MD' --passL:'ucrt.lib' |
7 | 7 |
8 # build | 8 make_dirs: |
9 build/debug/linux/hello_triangle: ${SOURCES} | 9 mkdir -p build/debug/linux |
10 mkdir -p $$( dirname $@ ) | 10 mkdir -p build/release/linux |
11 mkdir -p build/debug/windows | |
12 mkdir -p build/release/windows | |
13 | |
14 # build hello_triangle | |
15 build/debug/linux/hello_triangle: ${SOURCES} make_dirs | |
11 nim c ${COMPILE_OPTIONS} ${DEBUG_OPTIONS} -o:$@ examples/hello_triangle.nim | 16 nim c ${COMPILE_OPTIONS} ${DEBUG_OPTIONS} -o:$@ examples/hello_triangle.nim |
12 build/release/linux/hello_triangle: ${SOURCES} | 17 build/release/linux/hello_triangle: ${SOURCES} make_dirs |
13 mkdir -p $$( dirname $@ ) | |
14 nim c ${COMPILE_OPTIONS} ${RELEASE_OPTIONS} -o:$@ examples/hello_triangle.nim | 18 nim c ${COMPILE_OPTIONS} ${RELEASE_OPTIONS} -o:$@ examples/hello_triangle.nim |
15 build/debug/windows/hello_triangle.exe: ${SOURCES} | 19 build/debug/windows/hello_triangle.exe: ${SOURCES} make_dirs |
16 mkdir -p $$( dirname $@ ) | |
17 nim c ${COMPILE_OPTIONS} ${DEBUG_OPTIONS} ${WINDOWS_DEBUG_OPTIONS} -o:$@ examples/hello_triangle.nim | 20 nim c ${COMPILE_OPTIONS} ${DEBUG_OPTIONS} ${WINDOWS_DEBUG_OPTIONS} -o:$@ examples/hello_triangle.nim |
18 build/release/windows/hello_triangle.exe: ${SOURCES} | 21 build/release/windows/hello_triangle.exe: ${SOURCES} make_dirs |
19 mkdir -p $$( dirname $@ ) | |
20 nim c ${COMPILE_OPTIONS} ${RELEASE_OPTIONS} ${WINDOWS_RELEASE_OPTIONS} -o:$@ examples/hello_triangle.nim | 22 nim c ${COMPILE_OPTIONS} ${RELEASE_OPTIONS} ${WINDOWS_RELEASE_OPTIONS} -o:$@ examples/hello_triangle.nim |
21 | 23 |
22 build_all_linux: build/debug/linux/hello_triangle build/release/linux/hello_triangle | 24 build_all_linux: build/debug/linux/hello_triangle build/release/linux/hello_triangle |
23 build_all_windows: build/debug/windows/hello_triangle.exe build/release/windows/hello_triangle.exe | 25 build_all_windows: build/debug/windows/hello_triangle.exe build/release/windows/hello_triangle.exe |
26 build_all: build_all_linux build_all_windows | |
24 | 27 |
25 build_all: build_all_linux build_all_windows | 28 # build maths (for testing) |
29 build/debug/linux/maths: ${SOURCES} make_dirs | |
30 nim c ${COMPILE_OPTIONS} ${DEBUG_OPTIONS} -o:$@ examples/maths.nim | |
31 build/release/linux/maths: ${SOURCES} make_dirs | |
32 nim c ${COMPILE_OPTIONS} ${RELEASE_OPTIONS} -o:$@ examples/maths.nim | |
33 build/debug/windows/maths.exe: ${SOURCES} make_dirs | |
34 nim c ${COMPILE_OPTIONS} ${DEBUG_OPTIONS} ${WINDOWS_DEBUG_OPTIONS} -o:$@ examples/maths.nim | |
35 build/release/windows/maths.exe: ${SOURCES} make_dirs | |
36 nim c ${COMPILE_OPTIONS} ${RELEASE_OPTIONS} ${WINDOWS_RELEASE_OPTIONS} -o:$@ examples/maths.nim | |
26 | 37 |
27 clean: | 38 clean: |
28 rm -rf build | 39 rm -rf build |
40 | |
41 tests: | |
42 testament p tests/ | |
29 | 43 |
30 # publish | 44 # publish |
31 publish_linux_debug: build/debug/linux/hello_triangle | 45 publish_linux_debug: build/debug/linux/hello_triangle |
32 scp $< basx.dev:/var/www/public.basx.dev/joni/linux/debug/ | 46 scp $< basx.dev:/var/www/public.basx.dev/joni/linux/debug/ |
33 publish_linux_release: build/release/linux/hello_triangle | 47 publish_linux_release: build/release/linux/hello_triangle |