My build of nnn with minor changes
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 
 
 
 

67 lignes
1.5 KiB

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