X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=Makefile;h=f922b7edd11ae99d33cbe2d68b84a1c02d708003;hb=bc3a373a2926e34352018677bfb5ed2eacede2a8;hp=d3185636f5a9d2aa285760d135cd9c87520f4dc7;hpb=71843db5886f60d3959d966a5e062a516c24798e;p=smdp.git diff --git a/Makefile b/Makefile index d318563..f922b7e 100644 --- a/Makefile +++ b/Makefile @@ -1,25 +1,60 @@ -# set some compiler flags -CFLAGS=-lncurses - -# find *.c in the current directory -SOURCES=$(wildcard *.c) -TESTS=$(wildcard test/*.c) - -# define the output objects by replacing .c with .o -TARGETS=$(SOURCES:.c=) -TEST_TARGETS=$(TESTS:.c=) - -# this will make all objects -all: $(TEST_TARGETS) $(TARGETS) -test: $(TEST_TARGETS) - -# each objects will be build by a *.c file -#%.o: %.c -%: %.c - cc $(CFLAGS) -o $@ $^ - -# this will delete all objects -# if not all objects are there, they will be compiled first -clean: $(TARGETS) $(TEST_TARGETS) - rm -f $^ +# +# Makefile +# Copyright (C) 2014 Michael Goehler +# +# This file is part of mdp. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# + +OSTYPE := $(shell uname -o) +CURSES = ncursesw +ifeq (Windows_NT, $(OS)) +ifneq (Cygwin, $(OSTYPE)) +CURSES := pdcurses +endif +endif + +LDFLAGS = -s +LDLIBS = -l$(CURSES) +SOURCES = $(wildcard src/*.c) +OBJECTS = $(SOURCES:.c=.o) +TARGET = mdp +DESTDIR = /usr/bin + +ifeq ($(DEBUG),1) +LDFLAGS := +endif + +all: $(TARGET) + +$(TARGET): src + $(CC) $(OBJECTS) $(LDLIBS) $(LDFLAGS) -o $(TARGET) + +src: + $(MAKE) $(MFLAGS) -C src + +clean: + $(MAKE) -C src clean + $(RM) $(TARGET) + +install: + install -d $(PREFIX)$(DESTDIR) + install -m 755 mdp $(PREFIX)$(DESTDIR)/$(TARGET) + +uninstall: + $(RM) $(PREFIX)$(DESTDIR)/$(TARGET) + +.PHONY: all clean install src uninstall