You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/app-arch/zopfli/files/zopfli-1.0.2-makefile.patch

71 lines
2.4 KiB

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