X-Git-Url: https://git.danieliu.xyz/?p=smdp.git;a=blobdiff_plain;f=Makefile;h=1d47fa0c086e38569b66444877bd8235b8851503;hp=46ed432bd48bc76a0d0b2a5714ebd190bcf2481d;hb=HEAD;hpb=3abe61887adc463e2d00c000012d1e2cff15f56f diff --git a/Makefile b/Makefile index 46ed432..1d47fa0 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ # # Makefile -# Copyright (C) 2014 Michael Goehler +# Copyright (C) 2018 Michael Goehler # # This file is part of mdp. # @@ -18,40 +18,54 @@ # along with this program. If not, see . # -CFLAGS = -O3 -Wall +UNAME_S := $(shell uname -s 2>/dev/null || echo not) -ifeq ($(DEBUG),1) -CFLAGS := -O0 -Wall -g -LDFLAGS := +SOURCES = $(sort $(wildcard src/*.c)) +OBJECTS = $(SOURCES:.c=.o) +TARGET = smdp +DESTDIR = +PREFIX ?= /usr/local + +CURSES = ncursesw +LDFLAGS ?= -s + +ifeq (Windows_NT,$(OS)) + ifeq (,$(findstring CYGWIN,$(UNAME_S))) + CURSES := pdcurses + endif endif -OSTYPE := $(shell uname -o) -CURSES = ncursesw -ifeq (Windows_NT, $(OS)) -ifneq (Cygwin, $(OSTYPE)) -CURSES := pdcurses -CFLAGS += -DWIN32=1 +ifeq ($(UNAME_S),Darwin) + CURSES := ncurses + LDFLAGS := endif + +ifeq ($(DEBUG),1) + LDFLAGS := endif -LDFLAGS = -s LDLIBS = -l$(CURSES) -OBJECTS = cstring.o cstack.o markdown.o parser.o viewer.o mdp.o -DESTDIR = /usr/bin -all: mdp +all: $(TARGET) + +$(TARGET): src + $(CC) $(OBJECTS) $(LDLIBS) $(LDFLAGS) -o $(TARGET) -mdp: $(OBJECTS) +src: + $(MAKE) $(MFLAGS) -C src clean: - $(RM) $(OBJECTS) mdp + $(MAKE) -C src clean + $(RM) $(TARGET) -install: mdp - install -d $(PREFIX)$(DESTDIR) - install -m 755 mdp $(PREFIX)$(DESTDIR)/mdp +install: + install -d $(DESTDIR)$(PREFIX)/bin + install -m 755 $(TARGET) $(DESTDIR)$(PREFIX)/bin/$(TARGET) + install -d $(DESTDIR)$(PREFIX)/share/man/man1 + install -m 644 smdp.1 $(DESTDIR)$(PREFIX)/share/man/man1/$(TARGET).1 uninstall: - $(RM) $(PREFIX)$(DESTDIR)/mdp - -.PHONY: all clean install uninstall + $(RM) $(DESTDIR)$(PREFIX)/bin/$(TARGET) + $(RM) $(DESTDIR)$(PREFIX)/share/man/man1/$(TARGET).1 +.PHONY: all clean install src uninstall