annotate Makefile @ 29:da922b506570

add: corret make dependencies
author Sam <sam@basx.dev>
date Sat, 14 Jan 2023 14:08:23 +0700
parents 8cb2d96ac28e
children 94c38e4b5782
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
5daf3f236d87 add: initial version
Sam <sam@basx.dev>
parents:
diff changeset
1 SOURCES := $(shell find src -name '*.nim')
15
dde536a70483 add: windows builds
Sam <sam@basx.dev>
parents: 13
diff changeset
2
25
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
3 # compilation requirements
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
4 examples/glslangValidator: thirdparty/bin/linux/glslangValidator
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
5 cp $< examples
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
6 examples/glslangValidator.exe: thirdparty/bin/windows/glslangValidator.exe
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
7 cp $< examples
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
8
13
a571db114152 add: vector/matrix modules, tests, nim config script
Sam <sam@basx.dev>
parents: 12
diff changeset
9 # build hello_triangle
29
da922b506570 add: corret make dependencies
Sam <sam@basx.dev>
parents: 27
diff changeset
10 build/debug/linux/hello_triangle: ${SOURCES} examples/hello_triangle.nim examples/glslangValidator
21
316923e9247c add: clean examples, update build configs
Sam <sam@basx.dev>
parents: 18
diff changeset
11 nim build_linux_debug -o:$@ examples/hello_triangle.nim
29
da922b506570 add: corret make dependencies
Sam <sam@basx.dev>
parents: 27
diff changeset
12 build/release/linux/hello_triangle: ${SOURCES} examples/hello_triangle.nim examples/glslangValidator
21
316923e9247c add: clean examples, update build configs
Sam <sam@basx.dev>
parents: 18
diff changeset
13 nim build_linux_release -o:$@ examples/hello_triangle.nim
29
da922b506570 add: corret make dependencies
Sam <sam@basx.dev>
parents: 27
diff changeset
14 build/debug/windows/hello_triangle.exe: ${SOURCES} examples/hello_triangle.nim examples/glslangValidator.exe
22
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
15 nim build_windows_debug -o:$@ examples/hello_triangle.nim
29
da922b506570 add: corret make dependencies
Sam <sam@basx.dev>
parents: 27
diff changeset
16 build/release/windows/hello_triangle.exe: ${SOURCES} examples/hello_triangle.nim examples/glslangValidator.exe
22
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
17 nim build_windows_release -o:$@ examples/hello_triangle.nim
21
316923e9247c add: clean examples, update build configs
Sam <sam@basx.dev>
parents: 18
diff changeset
18
22
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
19 build_all_linux_hello_triangle: build/debug/linux/hello_triangle build/release/linux/hello_triangle
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
20 build_all_windows_hello_triangle: build/debug/windows/hello_triangle.exe build/release/windows/hello_triangle.exe
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
21 build_all_hello_triangle: build_all_linux_hello_triangle build_all_windows_hello_triangle
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
22
24
71bbe11d8de8 did: change shader compilation to run during program compilation, maybe add dynamic version later
Sam <sam@basx.dev>
parents: 22
diff changeset
23 # build alotof_triangles
29
da922b506570 add: corret make dependencies
Sam <sam@basx.dev>
parents: 27
diff changeset
24 build/debug/linux/alotof_triangles: ${SOURCES} examples/alotof_triangles.nim examples/glslangValidator
24
71bbe11d8de8 did: change shader compilation to run during program compilation, maybe add dynamic version later
Sam <sam@basx.dev>
parents: 22
diff changeset
25 nim build_linux_debug -o:$@ examples/alotof_triangles.nim
29
da922b506570 add: corret make dependencies
Sam <sam@basx.dev>
parents: 27
diff changeset
26 build/release/linux/alotof_triangles: ${SOURCES} examples/alotof_triangles.nim examples/glslangValidator
24
71bbe11d8de8 did: change shader compilation to run during program compilation, maybe add dynamic version later
Sam <sam@basx.dev>
parents: 22
diff changeset
27 nim build_linux_release -o:$@ examples/alotof_triangles.nim
29
da922b506570 add: corret make dependencies
Sam <sam@basx.dev>
parents: 27
diff changeset
28 build/debug/windows/alotof_triangles.exe: ${SOURCES} examples/alotof_triangles.nim examples/glslangValidator.exe
24
71bbe11d8de8 did: change shader compilation to run during program compilation, maybe add dynamic version later
Sam <sam@basx.dev>
parents: 22
diff changeset
29 nim build_windows_debug -o:$@ examples/alotof_triangles.nim
29
da922b506570 add: corret make dependencies
Sam <sam@basx.dev>
parents: 27
diff changeset
30 build/release/windows/alotof_triangles.exe: ${SOURCES} examples/alotof_triangles.nim examples/glslangValidator.exe
24
71bbe11d8de8 did: change shader compilation to run during program compilation, maybe add dynamic version later
Sam <sam@basx.dev>
parents: 22
diff changeset
31 nim build_windows_release -o:$@ examples/alotof_triangles.nim
71bbe11d8de8 did: change shader compilation to run during program compilation, maybe add dynamic version later
Sam <sam@basx.dev>
parents: 22
diff changeset
32
22
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
33 build_all_linux_alotof_triangles: build/debug/linux/alotof_triangles build/release/linux/alotof_triangles
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
34 build_all_windows_alotof_triangles: build/debug/windows/alotof_triangles.exe build/release/windows/alotof_triangles.exe
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
35 build_all_alotof_triangles: build_all_linux_alotof_triangles build_all_windows_alotof_triangles
8
1134f41a49e9 add: a few missing changes
Sam <sam@basx.dev>
parents: 5
diff changeset
36
15
dde536a70483 add: windows builds
Sam <sam@basx.dev>
parents: 13
diff changeset
37 # clean
12
9e5fe647ff91 did: cleanup up a bit
Sam <sam@basx.dev>
parents: 10
diff changeset
38 clean:
9e5fe647ff91 did: cleanup up a bit
Sam <sam@basx.dev>
parents: 10
diff changeset
39 rm -rf build
22
b45a5d338cd0 did: improve alotof_triangles example, remove glslang lib, use only binary, easier cross-compilation
Sam <sam@basx.dev>
parents: 21
diff changeset
40 rm -rf thirdparty
12
9e5fe647ff91 did: cleanup up a bit
Sam <sam@basx.dev>
parents: 10
diff changeset
41
27
8cb2d96ac28e did: simplify publishing mechanism
Sam <sam@basx.dev>
parents: 25
diff changeset
42 # tests
16
617c6dcddbe2 add: matrix multiplications, tests
Sam <sam@basx.dev>
parents: 15
diff changeset
43 .PHONY: tests
13
a571db114152 add: vector/matrix modules, tests, nim config script
Sam <sam@basx.dev>
parents: 12
diff changeset
44 tests:
a571db114152 add: vector/matrix modules, tests, nim config script
Sam <sam@basx.dev>
parents: 12
diff changeset
45 testament p tests/
a571db114152 add: vector/matrix modules, tests, nim config script
Sam <sam@basx.dev>
parents: 12
diff changeset
46
5
4ed9cb098315 add: structure code for crossplatform, add some input handling + bugfixes
Sam <sam@basx.dev>
parents: 3
diff changeset
47 # publish
27
8cb2d96ac28e did: simplify publishing mechanism
Sam <sam@basx.dev>
parents: 25
diff changeset
48 publish:
8cb2d96ac28e did: simplify publishing mechanism
Sam <sam@basx.dev>
parents: 25
diff changeset
49 rsync -rv build/ basx.dev:/var/www/public.basx.dev/zamikongine
5
4ed9cb098315 add: structure code for crossplatform, add some input handling + bugfixes
Sam <sam@basx.dev>
parents: 3
diff changeset
50
4ed9cb098315 add: structure code for crossplatform, add some input handling + bugfixes
Sam <sam@basx.dev>
parents: 3
diff changeset
51 # download thirdparty-libraries
2
213fdf8d31dd did: hello world triangle, a bit of code organization
Sam <sam@basx.dev>
parents: 1
diff changeset
52
25
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
53 thirdparty/bin/linux/glslangValidator:
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
54 mkdir -p $$( dirname $@ )
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
55 cd $$( dirname $@ ) && wget https://github.com/KhronosGroup/glslang/releases/download/master-tot/glslang-master-linux-Release.zip
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
56 cd $$( dirname $@ ) && unzip *.zip
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
57 cd $$( dirname $@ ) && mv bin/* .
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
58 cd $$( dirname $@ ) && rm -rf *.zip bin lib include
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
59 thirdparty/bin/windows/glslangValidator.exe:
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
60 mkdir -p $$( dirname $@ )
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
61 cd $$( dirname $@ ) && wget https://github.com/KhronosGroup/glslang/releases/download/master-tot/glslang-master-windows-x64-Release.zip
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
62 cd $$( dirname $@ ) && unzip *.zip
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
63 cd $$( dirname $@ ) && mv bin/* .
8f290112718a fix: build from scratch not working, remove temp shader files from compilation
Sam <sam@basx.dev>
parents: 24
diff changeset
64 cd $$( dirname $@ ) && rm -rf *.zip bin lib include