70 lines
2.4 KiB
Diff
70 lines
2.4 KiB
Diff
From 90221a4d79dcbf44239b9b07cb7c3ec7c090a4a3 Mon Sep 17 00:00:00 2001
|
|
From: Sebastian Pipping <sebastian@pipping.org>
|
|
Date: Fri, 18 May 2018 20:43:23 +0200
|
|
Subject: [PATCH] Respect env CC/CXX, split LDFLAGS, use libraries
|
|
|
|
This is a port of files/zopfli-1.0.1-makefile.patch to 1.0.2.
|
|
---
|
|
Makefile | 32 +++++++++++++++++++-------------
|
|
1 file changed, 19 insertions(+), 13 deletions(-)
|
|
|
|
diff --git a/Makefile b/Makefile
|
|
index 30b931e..bf063df 100644
|
|
--- a/Makefile
|
|
+++ b/Makefile
|
|
@@ -1,8 +1,10 @@
|
|
-CC = gcc
|
|
-CXX = g++
|
|
+CC ?= gcc
|
|
+CXX ?= g++
|
|
|
|
-CFLAGS = -W -Wall -Wextra -ansi -pedantic -lm -O2 -Wno-unused-function
|
|
-CXXFLAGS = -W -Wall -Wextra -ansi -pedantic -O2
|
|
+CFLAGS += -W -Wall -Wextra -ansi -pedantic
|
|
+CXXFLAGS += -W -Wall -Wextra -ansi -pedantic
|
|
+LDFLAGS += -L. -Wno-unused-function
|
|
+LIBS = -lm
|
|
|
|
ZOPFLILIB_SRC = src/zopfli/blocksplitter.c src/zopfli/cache.c\
|
|
src/zopfli/deflate.c src/zopfli/gzip_container.c\
|
|
@@ -18,24 +20,28 @@ ZOPFLIPNGBIN_SRC := src/zopflipng/zopflipng_bin.cc
|
|
|
|
.PHONY: zopfli zopflipng
|
|
|
|
+all: zopfli zopflipng
|
|
+
|
|
# Zopfli binary
|
|
-zopfli:
|
|
- $(CC) $(ZOPFLILIB_SRC) $(ZOPFLIBIN_SRC) $(CFLAGS) -o zopfli
|
|
+zopfli: libzopfli
|
|
+ $(CC) $(ZOPFLIBIN_SRC) $(CFLAGS) $(LDFLAGS) $(LIBS) -lzopfli -o zopfli
|
|
|
|
# Zopfli shared library
|
|
libzopfli:
|
|
$(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -fPIC -c
|
|
- $(CC) $(ZOPFLILIB_OBJ) $(CFLAGS) -shared -Wl,-soname,libzopfli.so.1 -o libzopfli.so.1.0.2
|
|
+ $(CC) $(ZOPFLILIB_OBJ) $(CFLAGS) $(LDFLAGS) $(LIBS) -shared -Wl,-soname,libzopfli.so.1 -o libzopfli.so.1.0.2
|
|
+ @ln -s libzopfli.so.1.0.2 libzopfli.so.1
|
|
+ @ln -s libzopfli.so.1.0.2 libzopfli.so
|
|
|
|
# ZopfliPNG binary
|
|
-zopflipng:
|
|
- $(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -c
|
|
- $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGLIB_SRC) $(ZOPFLIPNGBIN_SRC) $(CFLAGS) -o zopflipng
|
|
+zopflipng: libzopflipng
|
|
+ $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGBIN_SRC) $(CXXFLAGS) $(LDFLAGS) $(LIBS) -lzopflipng -o zopflipng
|
|
|
|
# ZopfliPNG shared library
|
|
-libzopflipng:
|
|
- $(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -fPIC -c
|
|
- $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGLIB_SRC) $(CFLAGS) -fPIC --shared -Wl,-soname,libzopflipng.so.1 -o libzopflipng.so.1.0.2
|
|
+libzopflipng: libzopfli
|
|
+ $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGLIB_SRC) $(CXXFLAGS) $(LDFLAGS) $(LIBS) -fPIC --shared -Wl,-soname,libzopflipng.so.1 -o libzopflipng.so.1.0.2
|
|
+ @ln -s libzopflipng.so.1.0.2 libzopflipng.so.1
|
|
+ @ln -s libzopflipng.so.1.0.2 libzopflipng.so
|
|
|
|
# Remove all libraries and binaries
|
|
clean:
|
|
--
|
|
2.17.0
|
|
|