fencer/Makefile
2023-09-24 00:23:49 +02:00

35 lines
818 B
Makefile

project = fencer
source = $(shell find src/ -type f -name *.c)
libraries = -lSDL2 -lSDL2_image $(shell xml2-config --cflags --libs)
includes = -Iinclude -Isrc
args_debug = -Wall -g3
args_package = -g0
# build from source
build:
cc $(source) $(args_debug) -o bin/$(project) $(libraries) $(includes)
b: build
# build and run using debugger
run: build
ugdb -xrun.gdb -- bin/$(project)
r: run
# same as run, but giving you a chance to configure the debugger/set breakpoints before running
debug: build
ugdb -- bin/$(project)
d: debug
# package project for release
package: clean
mkdir $(project)
cp -r resources/ $(project)/resources/
cc $(source) -o $(project)/$(project) $(args_package) $(libraries) $(includes)
p: package
# clean up build directories
clean:
rm -rf $(project)
rm -f bin/$(project)
c: clean