aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile21
1 files changed, 15 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index 3e12ff4..1dc0167 100644
--- a/Makefile
+++ b/Makefile
@@ -5,33 +5,42 @@ BINDIR ?= $(PREFIX)/bin
MANDIR ?= $(PREFIX)/share/man/man1
DOCDIR ?= $(PREFIX)/share/doc/sfm
+CXX ?= g++
+CXXFLAGS ?= -std=c++17 -O2 -Wall -Wextra
+LDFLAGS ?= -lncursesw
+
INSTALL ?= install
RM ?= rm -f
.PHONY: all install uninstall clean
-all:
- @echo "sfm is a shell script — nothing to build."
- @echo "Run 'make install' to install."
+all: sfm
+
+sfm: sfm.cpp
+ $(CXX) $(CXXFLAGS) -o $@ $< $(LDFLAGS)
-install:
+install: all
@echo "Installing sfm to $(DESTDIR)$(BINDIR)/sfm ..."
$(INSTALL) -d $(DESTDIR)$(BINDIR)
$(INSTALL) -m 755 sfm $(DESTDIR)$(BINDIR)/sfm
+ @echo "Installing sfm.sh to $(DESTDIR)$(BINDIR)/sfm.sh ..."
+ $(INSTALL) -m 755 sfm.sh $(DESTDIR)$(BINDIR)/sfm.sh
@echo "Installing man page to $(DESTDIR)$(MANDIR)/sfm.1 ..."
$(INSTALL) -d $(DESTDIR)$(MANDIR)
$(INSTALL) -m 644 sfm.1 $(DESTDIR)$(MANDIR)/sfm.1
@echo "Installing README to $(DESTDIR)$(DOCDIR)/README ..."
$(INSTALL) -d $(DESTDIR)$(DOCDIR)
$(INSTALL) -m 644 README $(DESTDIR)$(DOCDIR)/README
- @echo "Done. Run 'sfm' to start, or 'man sfm' for help."
+ @echo "Done."
uninstall:
@echo "Removing sfm ..."
$(RM) $(DESTDIR)$(BINDIR)/sfm
+ $(RM) $(DESTDIR)$(BINDIR)/sfm.sh
$(RM) $(DESTDIR)$(MANDIR)/sfm.1
$(RM) -r $(DESTDIR)$(DOCDIR)
@echo "Done."
clean:
- @echo "Nothing to clean."
+ $(RM) sfm
+ @echo "Cleaned."