1# 2# Makefile 3# Copyright (C) 2018 Michael Goehler 4# 5# This file is part of mdp. 6# 7# This program is free software: you can redistribute it and/or modify 8# it under the terms of the GNU General Public License as published by 9# the Free Software Foundation, either version 3 of the License, or 10# (at your option) any later version. 11# 12# This program is distributed in the hope that it will be useful, 13# but WITHOUT ANY WARRANTY; without even the implied warranty of 14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15# GNU General Public License for more details. 16# 17# You should have received a copy of the GNU General Public License 18# along with this program. If not, see <http://www.gnu.org/licenses/>. 19# 20 21UNAME_S := $(shell uname -s 2>/dev/null || echo not) 22 23SOURCES = $(sort $(wildcard src/*.c)) 24OBJECTS = $(SOURCES:.c=.o) 25TARGET = mdp 26DESTDIR = 27PREFIX ?= /usr/local 28 29CURSES = ncursesw 30LDFLAGS ?= -s 31 32ifeq (Windows_NT,$(OS)) 33 ifeq (,$(findstring CYGWIN,$(UNAME_S))) 34 CURSES := pdcurses 35 endif 36endif 37 38ifeq ($(UNAME_S),Darwin) 39 CURSES := ncurses 40 LDFLAGS := 41endif 42 43ifeq ($(DEBUG),1) 44 LDFLAGS := 45endif 46 47LDLIBS = -l$(CURSES) 48 49all: $(TARGET) 50 51$(TARGET): src 52 $(CC) $(OBJECTS) $(LDLIBS) $(LDFLAGS) -o $(TARGET) 53 54src: 55 $(MAKE) $(MFLAGS) -C src 56 57clean: 58 $(MAKE) -C src clean 59 $(RM) $(TARGET) 60 61install: 62 install -d $(DESTDIR)$(PREFIX)/bin 63 install -m 755 $(TARGET) $(DESTDIR)$(PREFIX)/bin/$(TARGET) 64 install -d $(DESTDIR)$(PREFIX)/share/man/man1 65 install -m 644 mdp.1 $(DESTDIR)$(PREFIX)/share/man/man1/$(TARGET).1 66 67uninstall: 68 $(RM) $(DESTDIR)$(PREFIX)/$(TARGET) 69 70.PHONY: all clean install src uninstall 71