test/snake/Makefile

changeset 267
92fdd53de74f
parent 266
a73674e99e62
child 268
d8c05102b017
equal deleted inserted replaced
266:a73674e99e62 267:92fdd53de74f
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/snake
29 LIB_ASCENSION=$(srcdir)/build/lib/libascension.a
30 CFLAGS += -I$(srcdir)/src $(CPPFLAGS)
31
32 all: $(BUILD_DIR) $(BUILD_DIR)/snake FORCE
33 @echo "Demo game 'snake' successfully built."
34 @cp -Ruf $(srcdir)/shader $(BUILD_DIR)/
35 @cp -Ruf $(srcdir)/fonts $(BUILD_DIR)/
36 @cp -Ruf textures $(BUILD_DIR)/
37 @cp -Ruf shader $(BUILD_DIR)/
38 @echo "Assets for demo game 'snake' successfully copied."
39
40 $(BUILD_DIR):
41 mkdir -p $@
42
43 $(BUILD_DIR)/snake: $(BUILD_DIR)/snake.o $(LIB_ASCENSION)
44 @echo "Linking snake..."
45 $(CC) $(LDFLAGS) -o $@ $^
46
47 $(LIB_ASCENSION):
48 test -f "$@"
49
50 FORCE:
51
52 $(BUILD_DIR)/snake.o: snake.c ../../src/ascension/core.h \
53 ../../src/ascension/error.h ../../src/ascension/context.h \
54 ../../src/ascension/datatypes.h ../../src/ascension/window.h \
55 ../../src/ascension/glcontext.h ../../src/ascension/scene.h \
56 ../../src/ascension/scene_node.h ../../src/ascension/transform.h \
57 ../../src/ascension/camera.h ../../src/ascension/input.h \
58 ../../src/ascension/behavior.h ../../src/ascension/ui.h \
59 ../../src/ascension/text.h ../../src/ascension/font.h \
60 ../../src/ascension/mesh.h ../../src/ascension/texture.h \
61 ../../src/ascension/sprite.h ../../src/ascension/2d.h \
62 ../../src/ascension/shader.h
63 @echo "Compiling $<"
64 $(CC) -o $@ $(CFLAGS) -c $<
65

mercurial