Files
SDLRousku/Makefile
2025-08-13 23:33:28 +03:00

45 lines
1.2 KiB
Makefile

CXX=g++
# needs "override" because x86_64-w64-mingw32-make sets these as cmdline parameters
override CXXFLAGS += -c -Wall -g
override LDFLAGS += $(shell pkg-config --libs sdl3 sdl3-ttf sdl3-image)
NEW_DIALOG_OBJECTS = Dialog Item Button Checkbox DropDownList Scrollbar Listbox Frame DlgDropDownList DlgMainMenu
OBJECTS=main Animal Sound $(addprefix NewDialogs/,$(NEW_DIALOG_OBJECTS))
EXECUTABLE=Rousku
all: embed_data.h menu_png.h $(EXECUTABLE)
$(EXECUTABLE): $(OBJECTS:%=%.o)
$(CXX) $^ $(LDFLAGS) -o $@
# pull in dependency info for *existing* .o files
-include $(OBJECTS:%=%.d)
%.o: %.cpp
$(CXX) $(CXXFLAGS) $< -o $@
$(CXX) -MM $(CXXFLAGS) $*.cpp > $*.d
embed_data.h:
@echo "Generating embed_data.h..."
@{ \
find skin -name "*.png"; \
find skin -name "*.wav"; \
find skin -name "*.tsk"; \
} | while read n; do \
xxd -i "$$n"; \
done > embed_data.h
menu_png.h:
xxd -i menu.png > menu_png.h
.PHONY: clean
clean:
rm `find . -name "*.o"` `find . -name "*.d"` embed_data.h menu_png.h $(EXECUTABLE)
install:
mkdir -p $(DESTDIR)/usr/bin/
cp $(EXECUTABLE) $(DESTDIR)/usr/bin/$(EXECUTABLE)
mkdir -p $(DESTDIR)/usr/share/icons/
cp skin/Tavallinen/paikka/1.png $(DESTDIR)/usr/share/icons/rousku.png