.POSIX: target = sc includes = -I../cfg -I../qstd -Iglslang cflags = $(includes) -Wall -Wextra -pedantic -std=c++20 $(DEBUG_COMPILE_FLAG) lflags = \ $(DEBUG_LINK_FLAG) \ -Lglslang/build/glslang \ -Lglslang/build/SPIRV \ -Lglslang/build/glslang/OSDependent/Unix \ -Lglslang/build/External/spirv-tools/source \ -Lglslang/build/External/spirv-tools/source/link \ -Lglslang/build/External/spirv-tools/source/opt \ -L../qstd \ -L../cfg \ -lcfg \ -lqstd \ -lglslang \ -lglslang-default-resource-limits \ -lSPIRV \ -lMachineIndependent \ -lSPVRemapper \ -lOSDependent \ -lGenericCodeGen \ -lSPIRV-Tools-link \ -lSPIRV-Tools-opt \ -lSPIRV-Tools objects = sc.o includer.o .PHONY: all clean all: $(target) sc.o: sc.cpp includer.hpp $(CXX) -c $(cflags) sc.cpp -o sc.o includer.o: includer.cpp includer.hpp $(CXX) -c $(cflags) includer.cpp -o includer.o $(target): $(objects) ../qstd/libqstd.a ../cfg/libcfg.a $(CXX) $(objects) $(lflags) -o $(target) ../qstd/libqstd.a: $(MAKE) -C ../qstd ../cfg/libcfg.a: $(MAKE) -C ../cfg clean: rm -f $(target) rm -f $(objects)