summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJ08nY2018-03-03 22:12:55 +0100
committerJ08nY2018-03-03 22:12:55 +0100
commit10f068d3ea96d6f89de6dd1a26b0fd78136eb041 (patch)
treecc01b19db685dcc1e4c180371483d94180e42e99
parent5a283c6e24682f706a5209a3f785980813fb0c3b (diff)
downloadecgen-10f068d3ea96d6f89de6dd1a26b0fd78136eb041.tar.gz
ecgen-10f068d3ea96d6f89de6dd1a26b0fd78136eb041.tar.zst
ecgen-10f068d3ea96d6f89de6dd1a26b0fd78136eb041.zip
-rw-r--r--lib/Makefile20
-rw-r--r--lib/parson/Makefile9
-rw-r--r--lib/sha1/Makefile9
-rw-r--r--src/Makefile13
4 files changed, 36 insertions, 15 deletions
diff --git a/lib/Makefile b/lib/Makefile
index a38034d..29a4002 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -1,3 +1,23 @@
+CC ?= gcc
+
+CFLAGS = -Wall
+DEBUG ?= 0
+TEST ?= 0
+FAST ?= 0
+ifeq ($(DEBUG), 1)
+ CFLAGS += -DDEBUG -g -Og -Werror -pedantic
+else ifeq ($(TEST), 1)
+ CFLAGS += -DNDEBUG --coverage -g -O0
+else ifeq ($(FAST), 1)
+ ifeq ($(CC), gcc)
+ CFLAGS += -DNDEBUG -O3 -march=native -pipe
+ else
+ CFLAGS += -DNDEBUG -O3
+ endif
+else
+ CFLAGS += -DNDEBUG -O2
+endif
+export
all:
$(MAKE) -C parson libparson.a
diff --git a/lib/parson/Makefile b/lib/parson/Makefile
index d20adc6..08e41dd 100644
--- a/lib/parson/Makefile
+++ b/lib/parson/Makefile
@@ -1,5 +1,5 @@
CC ?= gcc
-CCFLAGS = -Wall
+CCFLAGS ?= -Wall
LDFLAGS =
SOURCES = $(wildcard *.c)
@@ -11,16 +11,13 @@ A = libparson.a
all: $(TARGET)
$(TARGET): $(OBJECTS)
- $(CC) -o $@ $^ $(LDFLAGS)
+ $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
$(A): $(OBJECTS)
ar rcs $(A) $(OBJECTS)
-%.o: %.c %.h
- $(CC) $(CCFLAGS) -c $<
-
%.o: %.c
- $(CC) $(CCFLAGS) -c $<
+ $(CC) $(CFLAGS) -c $<
clean:
rm -f *.o *.a $(TARGET)
diff --git a/lib/sha1/Makefile b/lib/sha1/Makefile
index 4659042..7c7a1ed 100644
--- a/lib/sha1/Makefile
+++ b/lib/sha1/Makefile
@@ -1,5 +1,5 @@
CC ?= gcc
-CCFLAGS = -Wall
+CFLAGS ?= -Wall
LDFLAGS =
SOURCES = $(wildcard *.c)
@@ -11,16 +11,13 @@ A = libsha1.a
all: $(TARGET)
$(TARGET): $(OBJECTS)
- $(CC) -o $@ $^ $(LDFLAGS)
+ $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
$(A): $(OBJECTS)
ar rcs $(A) $(OBJECTS)
-%.o: %.c %.h
- $(CC) $(CCFLAGS) -c $<
-
%.o: %.c
- $(CC) $(CCFLAGS) -c $<
+ $(CC) $(CFLAGS) -c $<
clean:
rm -f *.o *.a $(TARGET)
diff --git a/src/Makefile b/src/Makefile
index 06d3642..6451d3a 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -10,12 +10,19 @@ CC ?= gcc
CFLAGS = -Wall
DEBUG ?= 0
TEST ?= 0
+FAST ?= 0
ifeq ($(DEBUG), 1)
- CFLAGS += -DDEBUG -g -Werror -pedantic
+ CFLAGS += -DDEBUG -g -Og -Werror -pedantic
else ifeq ($(TEST), 1)
- CFLAGS += --coverage -g -O0
+ CFLAGS += -DNDEBUG --coverage -g -O0
+else ifeq ($(FAST), 1)
+ ifeq ($(CC), gcc)
+ CFLAGS += -DNDEBUG -O3 -march=native -pipe
+ else
+ CFLAGS += -DNDEBUG -O3
+ endif
else
- CFLAGS += -DNDEBUG -O3
+ CFLAGS += -DNDEBUG -O2
endif
LDFLAGS = -L../lib/parson -L../lib/sha1 -L../lib/pari