summaryrefslogtreecommitdiff
path: root/graphics/apngasm/files/patch-Makefile
blob: 4d61901e20d527e8f06fd8ebadfc1a6da726447f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
--- Makefile.orig	2016-12-31 16:31:37 UTC
+++ Makefile
@@ -1,10 +1,18 @@
 PACKAGE    = apngasm
-CC         = gcc
-SRC_DIRS   = . 7z zopfli
-CFLAGS     = -Wall -pedantic -DFEATURE_7ZIP -DFEATURE_ZOPFLI
-CFLAGS_OPT = -O2
-CFLAGS_7Z  = -Wno-sign-compare -Wno-reorder -Wno-maybe-uninitialized -Wno-parentheses
-LIBS       = -lstdc++ -lm -lpng -lz
+CC        ?= cc
+CXX       ?= c++
+SRC_DIRS   = . 7z
+CFLAGS    += -Wall -pedantic -DFEATURE_7ZIP -DFEATURE_ZOPFLI
+CXXFLAGS  += -Wall -pedantic -DFEATURE_7ZIP -DFEATURE_ZOPFLI
+CPPFLAGS  += $(shell libpng-config --cflags)
+CFLAGS_7Z  = -Wno-sign-compare -Wno-reorder -Wno-parentheses
+ifeq ($(strip $(STATIC)),)
+LIBS       = $(shell libpng-config --ldflags)
+else
+SRC_DIRS  += zopfli
+LIBS       = $(shell libpng-config --static --ldflags)
+LDFLAGS   += -static
+endif
 
 INCUDE_DIRS := $(addprefix -I./, $(SRC_DIRS))
 OBJ_DIRS := $(addprefix obj/, $(SRC_DIRS))
@@ -16,19 +24,19 @@ OBJECTS := $(OBJECTS:.cpp=.o)
 all : $(PACKAGE)
 
 $(PACKAGE) : objdirs $(OBJECTS)
-	$(CC) -o $@ $(OBJECTS) -s $(LIBS)
+	$(CXX) -o $@ $(OBJECTS) $(LIBS) $(LDFLAGS)
 
 objdirs :
 	mkdir -p $(OBJ_DIRS)
 
 obj/%.o : %.cpp
-	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CFLAGS) $(CFLAGS_OPT)
+	$(CXX) -o $@ -c $< $(INCUDE_DIRS) $(CXXFLAGS) $(CPPFLAGS)
 
 obj/%.o : %.c
-	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CFLAGS) $(CFLAGS_OPT)
+	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CFLAGS) $(CPPFLAGS)
 
 obj/%.o : %.cc
-	$(CC) -o $@ -c $< $(INCUDE_DIRS) $(CFLAGS) $(CFLAGS_OPT) $(CFLAGS_7Z)
+	$(CXX) -o $@ -c $< $(INCUDE_DIRS) $(CXXFLAGS) $(CPPFLAGS) $(CFLAGS_7Z)
 
 .PHONY : clean