CC = clang CFLAGS = -g -O3 -Iraylib/include -Iwapp/src LDFLAGS = '-Wl,-rpath,$$ORIGIN/raylib/lib' -Lraylib/lib -lraylib -lm BASEDIR = $(shell realpath ./) RL_SRCDIR = ${BASEDIR}/raylib-src/src RL_BUILDDIR = ${BASEDIR}/raylib-build RL_DESTDIR = ${BASEDIR}/raylib RL_LIBDIR = ${RL_DESTDIR}/lib RL_INCLUDEDIR = ${RL_DESTDIR}/include PLATFORM = $(shell uname) .PHONY: all raylib wapp no_dod dod clean all: no_dod dod raylib: ifeq ($(PLATFORM), Linux) cmake -S raylib-src -B raylib-build -DCMAKE_INSTALL_PREFIX=raylib -DCMAKE_CONFIGURATION_TYPES=Release -DBUILD_SHARED_LIBS=ON -G "Ninja Multi-Config" cmake --build raylib-build --config=Release cmake --install raylib-build --config=Release else mkdir -p ${RL_BUILDDIR} ${RL_LIBDIR} ${RL_INCLUDEDIR} cd ${RL_SRCDIR} && \ make PLATFORM=PLATFORM_DESKTOP RAYLIB_RELEASE_PATH=${RL_BUILDDIR} RAYLIB_LIBTYPE=SHARED && \ cp ${RL_BUILDDIR}/* ${RL_LIBDIR} && \ cp ${RL_SRCDIR}/*.h ${RL_INCLUDEDIR} endif wapp: cd wapp && python3 -m codegen no_dod: raylib wapp $(CC) $(CFLAGS) $(LDFLAGS) no_dod.c wapp/src/wapp.c -o no_dod dod: raylib wapp $(CC) $(CFLAGS) $(LDFLAGS) dod.c wapp/src/wapp.c -o dod clean: rm -rf ${RL_BUILDDIR} ${RL_DESTDIR}