# # Makefile # # Environment: Debian # include common.mk DISTROS=base debian11 ubuntu2210 VERSION=$(shell dpkg-parsechangelog --show-field Version) INCLUDES=-I. HEADERS=config.h qrcode.h storage.h whiteboard.h compiledsql.h SOURCES=$(HEADERS:.h=.cpp) OBJECTS=$(HEADERS:.h=.o) TARGETS=whiteboard.fcgi build: $(TARGETS) all: build ./start.sh install: mkdir -p $(DESTDIR)/usr/lib/whiteboard cp whiteboard.fcgi $(DESTDIR)/usr/lib/whiteboard/ mkdir -p $(DESTDIR)/usr/lib/whiteboard/html cp -r html/* $(DESTDIR)/usr/lib/whiteboard/html/ uglifyjs html/whiteboard.js -m -c > $(DESTDIR)/usr/lib/whiteboard/html/whiteboard.js || cp html/whiteboard.js $(DESTDIR)/usr/lib/whiteboard/html/whiteboard.js htmlmin html/index.html $(DESTDIR)/usr/lib/whiteboard/html/index.html cleancss -o $(DESTDIR)/usr/lib/whiteboard/html/whiteboard.css html/whiteboard.css mkdir -p $(DESTDIR)/etc cp whiteboard.conf $(DESTDIR)/etc # link whiteboard.fcgi: $(OBJECTS) main.o $(CXX) $(LDFLAGS) $^ $(LDLIBS) $(LIBS) -o $@ # .cpp -> .o %.o: %.cpp $(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@ test: $(MAKE) -C tests clean: -rm -f *.o *.fcgi *.gcov $(MAKE) -C tests clean deb: dpkg-buildpackage deb-src: clean dh_clean dh_auto_clean dpkg-source -b -I.git -Iresult . $(DISTROS): deb-src sudo pbuilder build --basetgz /var/cache/pbuilder/$@.tgz --buildresult result/$@ ../whiteboard_$(VERSION).dsc debsign result/$@/whiteboard_$(VERSION)_amd64.changes debs: $(DISTROS) .PHONY: clean