My build of nnn with minor changes
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

71 lines
1.6 KiB

  1. VERSION = 2.6
  2. PREFIX ?= /usr/local
  3. MANPREFIX ?= $(PREFIX)/share/man
  4. STRIP ?= strip
  5. PKG_CONFIG ?= pkg-config
  6. INSTALL ?= install
  7. CP ?= cp
  8. CFLAGS_OPTIMIZATION ?= -O3
  9. ifeq ($(shell $(PKG_CONFIG) ncursesw && echo 1),1)
  10. CFLAGS_CURSES ?= $(shell $(PKG_CONFIG) --cflags ncursesw)
  11. LDLIBS_CURSES ?= $(shell $(PKG_CONFIG) --libs ncursesw)
  12. else ifeq ($(shell $(PKG_CONFIG) ncurses && echo 1),1)
  13. CFLAGS_CURSES ?= $(shell $(PKG_CONFIG) --cflags ncurses)
  14. LDLIBS_CURSES ?= $(shell $(PKG_CONFIG) --libs ncurses)
  15. else
  16. LDLIBS_CURSES ?= -lncurses
  17. endif
  18. CFLAGS += -Wall -Wextra -Wno-unused-parameter
  19. CFLAGS += $(CFLAGS_OPTIMIZATION)
  20. CFLAGS += $(CFLAGS_CURSES)
  21. LDLIBS += $(LDLIBS_CURSES)
  22. DISTFILES = src nnn.1 Makefile README.md LICENSE
  23. SRC = src/nnn.c
  24. BIN = nnn
  25. all: $(BIN)
  26. $(SRC): src/nnn.h
  27. $(BIN): $(SRC)
  28. $(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(LDLIBS) -lreadline
  29. debug: $(SRC)
  30. $(CC) -DDBGMODE -g $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $(BIN) $^ $(LDLIBS) -lreadline -lrt
  31. norl: $(SRC)
  32. $(CC) -DNORL $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $(BIN) $^ $(LDLIBS)
  33. install: all
  34. $(INSTALL) -m 0755 -d $(DESTDIR)$(PREFIX)/bin
  35. $(INSTALL) -m 0755 $(BIN) $(DESTDIR)$(PREFIX)/bin
  36. $(INSTALL) -m 0755 -d $(DESTDIR)$(MANPREFIX)/man1
  37. $(INSTALL) -m 0644 $(BIN).1 $(DESTDIR)$(MANPREFIX)/man1
  38. uninstall:
  39. $(RM) $(DESTDIR)$(PREFIX)/bin/$(BIN)
  40. $(RM) $(DESTDIR)$(MANPREFIX)/man1/$(BIN).1
  41. strip: $(BIN)
  42. $(STRIP) $^
  43. dist:
  44. mkdir -p nnn-$(VERSION)
  45. $(CP) -r $(DISTFILES) nnn-$(VERSION)
  46. tar -cf nnn-$(VERSION).tar nnn-$(VERSION)
  47. gzip nnn-$(VERSION).tar
  48. $(RM) -r nnn-$(VERSION)
  49. clean:
  50. $(RM) -f $(BIN) nnn-$(VERSION).tar.gz
  51. skip: ;
  52. .PHONY: all debug install uninstall strip dist clean