|
1 # Copyright 2023 Mike Becker. All rights reserved. |
|
2 # |
|
3 # Redistribution and use in source and binary forms, with or without |
|
4 # modification, are permitted provided that the following conditions are met: |
|
5 # |
|
6 # 1. Redistributions of source code must retain the above copyright |
|
7 # notice, this list of conditions and the following disclaimer. |
|
8 # |
|
9 # 2. Redistributions in binary form must reproduce the above copyright |
|
10 # notice, this list of conditions and the following disclaimer in the |
|
11 # documentation and/or other materials provided with the distribution. |
|
12 # |
|
13 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
|
14 # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
|
15 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
|
16 # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
|
17 # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
|
18 # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
|
19 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
|
20 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
|
21 # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
|
22 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
|
23 # POSSIBILITY OF SUCH DAMAGE. |
|
24 # |
|
25 |
|
26 include ../../config.mk |
|
27 |
|
28 BUILD_DIR=$(srcdir)/build/test |
|
29 LIB_ASCENSION=$(srcdir)/build/lib/libascension.a |
|
30 CFLAGS += -I$(srcdir)/src |
|
31 |
|
32 all: $(BUILD_DIR) $(BUILD_DIR)/snake FORCE |
|
33 @echo "Demo game 'snake' successfully built." |
|
34 |
|
35 $(BUILD_DIR): |
|
36 mkdir -p $@ |
|
37 |
|
38 $(BUILD_DIR)/snake: $(BUILD_DIR)/snake.o $(LIB_ASCENSION) |
|
39 @echo "Linking snake..." |
|
40 $(CC) $(LDFLAGS) -o $@ $^ |
|
41 |
|
42 $(LIB_ASCENSION): |
|
43 test -f "$@" |
|
44 |
|
45 FORCE: |
|
46 |
|
47 $(BUILD_DIR)/snake.o: snake.c \ |
|
48 /home/mike/workspace/c/ascension/src/ascension/core.h \ |
|
49 /home/mike/workspace/c/ascension/src/ascension/error.h \ |
|
50 /home/mike/workspace/c/ascension/src/ascension/context.h \ |
|
51 /home/mike/workspace/c/ascension/src/ascension/datatypes.h \ |
|
52 /home/mike/workspace/c/ascension/src/ascension/window.h \ |
|
53 /home/mike/workspace/c/ascension/src/ascension/glcontext.h \ |
|
54 /home/mike/workspace/c/ascension/src/ascension/primitives.h \ |
|
55 /home/mike/workspace/c/ascension/src/ascension/mesh.h \ |
|
56 /home/mike/workspace/c/ascension/src/ascension/shader.h \ |
|
57 /home/mike/workspace/c/ascension/src/ascension/scene.h \ |
|
58 /home/mike/workspace/c/ascension/src/ascension/scene_node.h \ |
|
59 /home/mike/workspace/c/ascension/src/ascension/transform.h \ |
|
60 /home/mike/workspace/c/ascension/src/ascension/camera.h \ |
|
61 /home/mike/workspace/c/ascension/src/ascension/input.h \ |
|
62 /home/mike/workspace/c/ascension/src/ascension/ui/font.h \ |
|
63 /home/mike/workspace/c/ascension/src/ascension/ui.h \ |
|
64 /home/mike/workspace/c/ascension/src/ascension/ui/text.h \ |
|
65 /home/mike/workspace/c/ascension/src/ascension/ui/font.h \ |
|
66 /home/mike/workspace/c/ascension/src/ascension/ui/../2d/sprite.h \ |
|
67 /home/mike/workspace/c/ascension/src/ascension/ui/../2d/../scene_node.h \ |
|
68 /home/mike/workspace/c/ascension/src/ascension/ui/../2d/../texture.h \ |
|
69 /home/mike/workspace/c/ascension/src/ascension/ui/../utils.h |
|
70 @echo "Compiling $<" |
|
71 $(CC) -o $@ $(CFLAGS) -c $< |
|
72 |