diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 44 |
1 files changed, 14 insertions, 30 deletions
@@ -1,39 +1,23 @@ -CC=g++ LIBS=libconfuse opencv4 -CFLAGS=-c -Wall -fPIC -std=c++20 -Wno-deprecated-enum-enum-conversion -LDFLAGS= -SOURCES=src/annotator.cc src/labeller.cc src/playback.cc src/settings.cc src/ui.cc +override CXXFLAGS += -c -Wall -fPIC -std=c++20 -Wno-deprecated-enum-enum-conversion `pkg-config $(LIBS) --cflags` +override LDFLAGS += `pkg-config $(LIBS) --libs` +SOURCES=$(wildcard src/*.cc) OBJECTS=$(SOURCES:.cc=.o) -LIBRARY= +DEPS = $(OBJECTS:.o=.d) EXECUTABLE=annotator -ifeq ($(PREFIX),) - PREFIX := /usr -endif - -all: $(SOURCES) $(EXECUTABLE) - -install: $(EXECUTABLE) - install -d $(DESTDIR)$(PREFIX)/bin/ - install -m 755 $(EXECUTABLE) $(DESTDIR)$(PREFIX)/bin/ +prefix ?= /usr +exec_prefix ?= $(prefix) +bindir ?= $(exec_prefix)/bin $(EXECUTABLE): $(OBJECTS) - $(CC) $(OBJECTS) -o $@ $(LDFLAGS) `pkg-config $(LIBS) --libs` - + $(CXX) $(OBJECTS) -o $@ $(LDFLAGS) -src/annotator.o: src/annotator.cc src/playback.h src/ui.h src/labeller.h - $(CC) $(CFLAGS) $< -o $@ `pkg-config $(LIBS) --cflags` +-include $(DEPS) -src/labeller.o: src/labeller.cc src/labeller.h src/settings.h - $(CC) $(CFLAGS) $< -o $@ `pkg-config $(LIBS) --cflags` - -src/playback.o: src/playback.cc src/playback.h - $(CC) $(CFLAGS) $< -o $@ `pkg-config $(LIBS) --cflags` - -src/settings.o: src/settings.cc src/settings.h - $(CC) $(CFLAGS) $< -o $@ `pkg-config $(LIBS) --cflags` - -src/ui.o: src/ui.cc src/ui.h src/playback.h src/labeller.h - $(CC) $(CFLAGS) $< -o $@ `pkg-config $(LIBS) --cflags` +install: $(EXECUTABLE) + install -d $(DESTDIR)$(bindir) + install -m 755 $(EXECUTABLE) $(DESTDIR)$(bindir) +.PHONY: clean clean: - rm -f src/*.o $(LIBRARY) $(EXECUTABLE) + $(RM) $(OBJECTS) $(DEPS) $(EXECUTABLE) |