Fri, 15 Mar 2024 00:06:59 +0100
add camera and render groups
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 #
26 include ../config.mk
28 BUILD_DIR=../build/lib
30 SRC = context.c error.c window.c files.c shader.c font.c text.c \
31 scene.c camera.c primitives.c
33 OBJ = $(SRC:%.c=$(BUILD_DIR)/%.o)
35 all: $(BUILD_DIR)/libascension.a FORCE
36 @echo "You have successfully ascended."
38 $(BUILD_DIR)/libascension.a: $(OBJ)
39 @echo "Creating library..."
40 $(AR) $(ARFLAGS) $@ $^
42 FORCE:
44 $(BUILD_DIR)/camera.o: camera.c ascension/camera.h ascension/datatypes.h
45 @echo "Compiling $<"
46 $(CC) -o $@ $(CFLAGS) -c $<
48 $(BUILD_DIR)/context.o: context.c ascension/context.h \
49 ascension/datatypes.h ascension/window.h ascension/primitives.h \
50 ascension/mesh.h ascension/scene.h ascension/transform.h \
51 ascension/camera.h ascension/font.h ascension/error.h ascension/utils.h \
52 ascension/shader.h
53 @echo "Compiling $<"
54 $(CC) -o $@ $(CFLAGS) -c $<
56 $(BUILD_DIR)/error.o: error.c ascension/context.h ascension/datatypes.h \
57 ascension/window.h ascension/primitives.h ascension/mesh.h \
58 ascension/scene.h ascension/transform.h ascension/camera.h \
59 ascension/font.h ascension/error.h ascension/utils.h
60 @echo "Compiling $<"
61 $(CC) -o $@ $(CFLAGS) -c $<
63 $(BUILD_DIR)/files.o: files.c ascension/files.h ascension/error.h
64 @echo "Compiling $<"
65 $(CC) -o $@ $(CFLAGS) -c $<
67 $(BUILD_DIR)/font.o: font.c ascension/font.h ascension/context.h \
68 ascension/datatypes.h ascension/window.h ascension/primitives.h \
69 ascension/mesh.h ascension/scene.h ascension/transform.h \
70 ascension/camera.h ascension/font.h ascension/error.h
71 @echo "Compiling $<"
72 $(CC) -o $@ $(CFLAGS) -c $<
74 $(BUILD_DIR)/primitives.o: primitives.c ascension/primitives.h \
75 ascension/mesh.h ascension/error.h ascension/context.h \
76 ascension/datatypes.h ascension/window.h ascension/primitives.h \
77 ascension/scene.h ascension/transform.h ascension/camera.h \
78 ascension/font.h
79 @echo "Compiling $<"
80 $(CC) -o $@ $(CFLAGS) -c $<
82 $(BUILD_DIR)/scene.o: scene.c ascension/scene.h ascension/datatypes.h \
83 ascension/transform.h ascension/camera.h ascension/error.h \
84 ascension/context.h ascension/window.h ascension/primitives.h \
85 ascension/mesh.h ascension/scene.h ascension/font.h ascension/shader.h
86 @echo "Compiling $<"
87 $(CC) -o $@ $(CFLAGS) -c $<
89 $(BUILD_DIR)/shader.o: shader.c ascension/shader.h ascension/files.h \
90 ascension/error.h
91 @echo "Compiling $<"
92 $(CC) -o $@ $(CFLAGS) -c $<
94 $(BUILD_DIR)/text.o: text.c ascension/text.h ascension/font.h \
95 ascension/scene.h ascension/datatypes.h ascension/transform.h \
96 ascension/camera.h ascension/context.h ascension/window.h \
97 ascension/primitives.h ascension/mesh.h ascension/error.h \
98 ascension/shader.h
99 @echo "Compiling $<"
100 $(CC) -o $@ $(CFLAGS) -c $<
102 $(BUILD_DIR)/window.o: window.c ascension/window.h ascension/datatypes.h \
103 ascension/primitives.h ascension/mesh.h ascension/scene.h \
104 ascension/transform.h ascension/camera.h ascension/context.h \
105 ascension/window.h ascension/font.h ascension/error.h ascension/utils.h
106 @echo "Compiling $<"
107 $(CC) -o $@ $(CFLAGS) -c $<