mirror of
https://github.com/zebrajr/SamRewritten.git
synced 2025-12-06 00:19:47 +01:00
52 lines
2.0 KiB
Makefile
52 lines
2.0 KiB
Makefile
CXXFLAGS+=-std=c++17
|
|
OBJDIR=obj
|
|
LIBDIR?=lib
|
|
PREFIX=/usr
|
|
HFILES:=$(shell find src/ -type f -iname *.h -print)
|
|
CXXFILES:=$(shell find src/ -type f -iname *.cpp -print)
|
|
PKG_CONFIG?=pkg-config
|
|
GTKFLAGS:=$(shell $(PKG_CONFIG) gtkmm-3.0 --cflags)
|
|
GTKLIBS:=$(shell $(PKG_CONFIG) gtkmm-3.0 --libs)
|
|
# For now, leave it to the distro to provide preferred extra flags
|
|
CXXFLAGS+=$(GTKFLAGS) -Wall
|
|
LDLIBS+=$(GTKLIBS) -lsteam_api -lcurl -lyajl -ldl
|
|
LDFLAGS+=-L${CURDIR}/bin
|
|
OBJS=$(addprefix ${OBJDIR}/,$(subst .cpp,.o,${CXXFILES}))
|
|
|
|
all: ${CURDIR}/bin/samrewritten
|
|
@printf "==== %b\n" \
|
|
"Use '\033[1mmake dev\033[0m' to keep debug symbols" \
|
|
"Use '\033[1mmake clean\033[0m' to remove object files" \
|
|
"Nothing left to do."
|
|
|
|
dev: CXXFLAGS += -g -DDEBUG_CERR
|
|
dev: ${CURDIR}/bin/samrewritten
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -rf ${OBJDIR}
|
|
|
|
.PHONY: install
|
|
install: bin/launch.sh bin/samrewritten bin/libsteam_api.so
|
|
mkdir -p ${DESTDIR}${PREFIX}/${LIBDIR}/SamRewritten/bin
|
|
mkdir -p ${DESTDIR}${PREFIX}/${LIBDIR}/SamRewritten/glade
|
|
mkdir -p ${DESTDIR}${PREFIX}/${LIBDIR}/SamRewritten/assets
|
|
mkdir -p ${DESTDIR}${PREFIX}/share/icons/hicolor/64x64/apps
|
|
mkdir -p ${DESTDIR}${PREFIX}/share/icons/hicolor/256x256/apps
|
|
mkdir -p ${DESTDIR}${PREFIX}/share/applications
|
|
mkdir -p ${DESTDIR}${PREFIX}/bin
|
|
cp $^ ${DESTDIR}${PREFIX}/${LIBDIR}/SamRewritten/bin/
|
|
ln -s ${PREFIX}/${LIBDIR}/SamRewritten/bin/launch.sh ${DESTDIR}${PREFIX}/bin/samrewritten
|
|
cp glade/main_window.glade ${DESTDIR}${PREFIX}/${LIBDIR}/SamRewritten/glade/main_window.glade
|
|
cp assets/icon_64.png ${DESTDIR}${PREFIX}/share/icons/hicolor/64x64/apps/samrewritten.png
|
|
cp assets/icon_256.png ${DESTDIR}${PREFIX}/share/icons/hicolor/256x256/apps/samrewritten.png
|
|
cp assets/icon_256.png ${DESTDIR}${PREFIX}/${LIBDIR}/SamRewritten/assets/
|
|
cp package/samrewritten.desktop ${DESTDIR}${PREFIX}/share/applications/
|
|
|
|
${CURDIR}/bin/samrewritten: $(OBJS)
|
|
${CXX} -o ${CURDIR}/bin/samrewritten $(OBJS) ${LDFLAGS} ${CXXFLAGS} ${LDLIBS}
|
|
|
|
${OBJDIR}/%.o: %.cpp $(HFILES)
|
|
@mkdir -p $(@D)
|
|
$(CXX) -c -o $@ $< ${CXXFLAGS}
|