srcdir ?= src
prefix ?= /usr
libdir ?= ${prefix}/lib
datadir ?= ${prefix}/share
pkglibdir ?= ${libdir}/memstrack
sysconfdir ?= ${prefix}/etc
bindir ?= ${prefix}/bin
mandir ?= ${prefix}/share/man
dracutlibdir ?= ${prefix}/lib/dracut
CC = gcc
CFLAGS := -Os -g -std=c11 -fPIC $(CFLAGS)
LDFLAGS := $(LDFLAGS)
LIBS := -lncurses -ltinfo -ldl
include src/Makefile
all: memstrack
.PHONY: clean install uninstall dracut-module-install dracut-module-uninstall test
clean:
rm -f $(DEP_FILES:.o=.d)
rm -f $(OBJ_FILES)
rm -f $(OUT_FILES)
rm -f memstrack
install: all
mkdir -p $(DESTDIR)$(bindir)
mkdir -p $(DESTDIR)$(sysconfdir)
mkdir -p $(DESTDIR)$(pkglibdir)/modules.d
mkdir -p $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man7 $(DESTDIR)$(mandir)/man8
install -m 0755 memstrack $(DESTDIR)$(bindir)/memstrack
uninstall:
rm $(DESTDIR)$(bindir)/memstrack
dracut-module-install: install
mkdir -p $(DESTDIR)$(dracutlibdir)/modules.d/99memstrack
cp misc/99memstrack/module-setup.sh $(DESTDIR)$(dracutlibdir)/modules.d/99memstrack/module-setup.sh
cp misc/99memstrack/memstrack.service $(DESTDIR)$(dracutlibdir)/modules.d/99memstrack/memstrack.service
cp misc/99memstrack/memstrack-start.sh $(DESTDIR)$(dracutlibdir)/modules.d/99memstrack/memstrack-start.sh
cp misc/99memstrack/memstrack-report.sh $(DESTDIR)$(dracutlibdir)/modules.d/99memstrack/memstrack-report.sh
dracut-module-uninstall:
rm -rf $(DESTDIR)$(dracutlibdir)/modules.d/99memstrack
test: unittests-run memstrack
sudo misc/selftest.sh