--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/demo/snake/Makefile Tue Aug 19 18:05:35 2025 +0200 @@ -0,0 +1,65 @@ +# Copyright 2023 Mike Becker. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE +# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# + +include ../../config.mk + +BUILD_DIR=$(srcdir)/build/snake +LIB_ASCENSION=$(srcdir)/build/lib/libascension.a +CFLAGS += -I$(srcdir)/src $(CPPFLAGS) + +all: $(BUILD_DIR) $(BUILD_DIR)/snake FORCE + @echo "Demo game 'snake' successfully built." + @cp -Ruf $(srcdir)/shader $(BUILD_DIR)/ + @cp -Ruf $(srcdir)/fonts $(BUILD_DIR)/ + @cp -Ruf textures $(BUILD_DIR)/ + @cp -Ruf shader $(BUILD_DIR)/ + @echo "Assets for demo game 'snake' successfully copied." + +$(BUILD_DIR): + mkdir -p $@ + +$(BUILD_DIR)/snake: $(BUILD_DIR)/snake.o $(LIB_ASCENSION) + @echo "Linking snake..." + $(CC) $(LDFLAGS) -o $@ $^ + +$(LIB_ASCENSION): + test -f "$@" + +FORCE: + +$(BUILD_DIR)/snake.o: snake.c ../../src/ascension/core.h \ + ../../src/ascension/error.h ../../src/ascension/context.h \ + ../../src/ascension/datatypes.h ../../src/ascension/window.h \ + ../../src/ascension/glcontext.h ../../src/ascension/scene.h \ + ../../src/ascension/scene_node.h ../../src/ascension/transform.h \ + ../../src/ascension/camera.h ../../src/ascension/input.h \ + ../../src/ascension/behavior.h ../../src/ascension/ui.h \ + ../../src/ascension/text.h ../../src/ascension/font.h \ + ../../src/ascension/mesh.h ../../src/ascension/texture.h \ + ../../src/ascension/sprite.h ../../src/ascension/2d.h \ + ../../src/ascension/shader.h + @echo "Compiling $<" + $(CC) -o $@ $(CFLAGS) -c $< +