From e1d18aad1250fd66b389306329b8e02c3fdeac03 Mon Sep 17 00:00:00 2001 From: hasufell Date: Sat, 10 May 2014 23:51:45 +0200 Subject: [PATCH] Restructure Makefiles Use common.mk for basic toolchain settings and installation variables. --- Makefile | 2 ++ common.mk | 24 ++++++++++++++++++++++++ src/Makefile | 25 +------------------------ src/test/Makefile | 25 +------------------------ 4 files changed, 28 insertions(+), 48 deletions(-) create mode 100644 common.mk diff --git a/Makefile b/Makefile index 8d46141..153da83 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,5 @@ +include common.mk + all: $(MAKE) -C src all diff --git a/common.mk b/common.mk new file mode 100644 index 0000000..f212d55 --- /dev/null +++ b/common.mk @@ -0,0 +1,24 @@ +# compiler, tools +CC = clang +PKG_CONFIG ?= pkg-config + +# flags +CFLAGS ?= -march=native -O2 -pipe +CFLAGS += -std=c99 -pedantic -Wall -Wextra -Werror -Wno-unused-variable -Wno-unused-parameter -Wno-unused-function +ifeq ($(shell $(CC) -v 2>&1 | grep 'gcc version' &>/dev/null && echo 1),1) +CFLAGS += -Wno-unused-but-set-variable +endif +LDFLAGS ?= -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu + +ifndef NODEBUG +CFLAGS += -O0 -g3 +endif + +# install variables +INSTALL = install +INSTALL_BIN = install -m755 +INSTALL_DIR = install -d +PREFIX = /usr/local +LIBDIR = lib64 +INSTALL_BINDIR = $(PREFIX)/bin +INSTALL_LIBDIR = $(PREFIX)/$(LIBDIR) diff --git a/src/Makefile b/src/Makefile index 1a252af..9789f65 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,18 +1,4 @@ -# compiler, tools -CC = clang -PKG_CONFIG ?= pkg-config - -# flags -CFLAGS ?= -march=native -O2 -pipe -CFLAGS += -std=c99 -pedantic -Wall -Wextra -Werror -Wno-unused-variable -Wno-unused-parameter -Wno-unused-function -ifeq ($(shell $(CC) -v 2>&1 | grep 'gcc version' &>/dev/null && echo 1),1) -CFLAGS += -Wno-unused-but-set-variable -endif -LDFLAGS ?= -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu - -ifndef NODEBUG -CFLAGS += -O0 -g3 -endif +include ../common.mk TARGET = drow-engine HEADERS = err.h common.h print.h filereader.h gl_draw.h vector.h half_edge.h @@ -23,15 +9,6 @@ CFLAGS += $(shell $(PKG_CONFIG) --cflags gl glu glib-2.0) LIBS = $(shell $(PKG_CONFIG) --libs gl glu glib-2.0) -lglut -lm CPPFLAGS += -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -D_GNU_SOURCE -# install variables -INSTALL = install -INSTALL_BIN = install -m755 -INSTALL_DIR = install -d -PREFIX = /usr/local -LIBDIR = lib64 -INSTALL_BINDIR = $(PREFIX)/bin -INSTALL_LIBDIR = $(PREFIX)/$(LIBDIR) - %.o: %.c $(CC) $(CFLAGS) $(CPPFLAGS) $(INCS) -c $*.c diff --git a/src/test/Makefile b/src/test/Makefile index 5b9339d..d5843bf 100644 --- a/src/test/Makefile +++ b/src/test/Makefile @@ -1,18 +1,4 @@ -# compiler, tools -CC = clang -PKG_CONFIG ?= pkg-config - -# flags -CFLAGS ?= -march=native -O2 -pipe -CFLAGS += -std=c99 -pedantic -Wall -Wextra -Werror -Wno-unused-variable -Wno-unused-parameter -Wno-unused-function -ifeq ($(shell $(CC) -v 2>&1 | grep 'gcc version' &>/dev/null && echo 1),1) -CFLAGS += -Wno-unused-but-set-variable -endif -LDFLAGS ?= -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu - -ifndef NODEBUG -CFLAGS += -O0 -g3 -endif +include ../../common.mk TARGET = test HEADERS = cunit.h @@ -23,15 +9,6 @@ CFLAGS += $(shell $(PKG_CONFIG) --cflags gl glu glib-2.0) LIBS = $(shell $(PKG_CONFIG) --libs gl glu glib-2.0) -lglut -lm -lcunit CPPFLAGS += -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -D_GNU_SOURCE -# install variables -INSTALL = install -INSTALL_BIN = install -m755 -INSTALL_DIR = install -d -PREFIX = /usr/local -LIBDIR = lib64 -INSTALL_BINDIR = $(PREFIX)/bin -INSTALL_LIBDIR = $(PREFIX)/$(LIBDIR) - %.o: %.c $(CC) $(CFLAGS) $(CPPFLAGS) $(INCS) -c $*.c