diff options
author | Elliott Hughes <enh@google.com> | 2021-06-14 22:42:07 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-06-14 22:42:07 +0000 |
commit | a361033957ea96c3cff2e571c49c234903629548 (patch) | |
tree | 0fbe2ca650c7361b7d2d5ee8e5341aa93b8d35c2 /Makefile | |
parent | 8637d0c2c9bad61506e1633cb221a418421c9f02 (diff) | |
parent | 23e37b1188fbdedf73d705f66342f5ca58ae61ff (diff) | |
download | zopfli-a361033957ea96c3cff2e571c49c234903629548.tar.gz |
Upgrade zopfli to 831773bc28e318b91a3255fa12c9fcde1606058b am: a7aca0225b am: eb419370f4 am: 23e37b1188
Original change: https://android-review.googlesource.com/c/platform/external/zopfli/+/1736801
Change-Id: Iac41f3f015a7fe51e9af3cfdf1a135b3f0bde6a8
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 58 |
1 files changed, 43 insertions, 15 deletions
@@ -1,8 +1,8 @@ -CC = gcc -CXX = g++ +CC ?= gcc +CXX ?= g++ -CFLAGS = -W -Wall -Wextra -ansi -pedantic -lm -O2 -CXXFLAGS = -W -Wall -Wextra -ansi -pedantic -O2 +override CFLAGS := -W -Wall -Wextra -ansi -pedantic -lm -O3 -Wno-unused-function -fPIC $(CFLAGS) +override CXXFLAGS := -W -Wall -Wextra -ansi -pedantic -O3 -fPIC $(CXXFLAGS) ZOPFLILIB_SRC = src/zopfli/blocksplitter.c src/zopfli/cache.c\ src/zopfli/deflate.c src/zopfli/gzip_container.c\ @@ -10,28 +10,56 @@ ZOPFLILIB_SRC = src/zopfli/blocksplitter.c src/zopfli/cache.c\ src/zopfli/lz77.c src/zopfli/squeeze.c\ src/zopfli/tree.c src/zopfli/util.c\ src/zopfli/zlib_container.c src/zopfli/zopfli_lib.c -ZOPFLILIB_OBJ := $(patsubst src/zopfli/%.c,%.o,$(ZOPFLILIB_SRC)) +ZOPFLILIB_OBJ := $(patsubst %.c,obj/%.o,$(ZOPFLILIB_SRC)) ZOPFLIBIN_SRC := src/zopfli/zopfli_bin.c +ZOPFLIBIN_OBJ := $(patsubst %.c,obj/%.o,$(ZOPFLIBIN_SRC)) LODEPNG_SRC := src/zopflipng/lodepng/lodepng.cpp src/zopflipng/lodepng/lodepng_util.cpp +LODEPNG_OBJ := $(patsubst %.cpp,obj/%.o,$(LODEPNG_SRC)) ZOPFLIPNGLIB_SRC := src/zopflipng/zopflipng_lib.cc +ZOPFLIPNGLIB_OBJ := $(patsubst %.cc,obj/%.o,$(ZOPFLIPNGLIB_SRC)) ZOPFLIPNGBIN_SRC := src/zopflipng/zopflipng_bin.cc +ZOPFLIPNGBIN_OBJ := $(patsubst %.cc,obj/%.o,$(ZOPFLIPNGBIN_SRC)) -.PHONY: zopfli zopflipng +.PHONY: all libzopfli libzopflipng + +all: zopfli libzopfli libzopfli.a zopflipng libzopflipng libzopflipng.a + +obj/%.o: %.c + @mkdir -p `dirname $@` + $(CC) $(CFLAGS) -c $< -o $@ + +obj/%.o: %.cc + @mkdir -p `dirname $@` + $(CXX) $(CXXFLAGS) -c $< -o $@ + +obj/%.o: %.cpp + @mkdir -p `dirname $@` + $(CXX) $(CXXFLAGS) -c $< -o $@ # Zopfli binary -zopfli: - $(CC) $(ZOPFLILIB_SRC) $(ZOPFLIBIN_SRC) $(CFLAGS) -o zopfli +zopfli: $(ZOPFLILIB_OBJ) $(ZOPFLIBIN_OBJ) + $(CC) $^ $(CFLAGS) -o $@ $(LDFLAGS) # 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.1 +libzopfli: $(ZOPFLILIB_OBJ) + $(CC) $^ $(CFLAGS) -shared -Wl,-soname,libzopfli.so.1 -o libzopfli.so.1.0.3 $(LDFLAGS) + +# Zopfli static library +libzopfli.a: $(ZOPFLILIB_OBJ) + ar rcs $@ $^ # ZopfliPNG binary -zopflipng: - $(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -c - $(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGLIB_SRC) $(ZOPFLIPNGBIN_SRC) $(CFLAGS) -o zopflipng +zopflipng: $(ZOPFLILIB_OBJ) $(LODEPNG_OBJ) $(ZOPFLIPNGLIB_OBJ) $(ZOPFLIPNGBIN_OBJ) + $(CXX) $^ $(CFLAGS) -o $@ $(LDFLAGS) + +# ZopfliPNG shared library +libzopflipng: $(ZOPFLILIB_OBJ) $(LODEPNG_OBJ) $(ZOPFLIPNGLIB_OBJ) + $(CXX) $^ $(CFLAGS) --shared -Wl,-soname,libzopflipng.so.1 -o libzopflipng.so.1.0.3 $(LDFLAGS) + +# ZopfliPNG static library +libzopflipng.a: $(LODEPNG_OBJ) $(ZOPFLIPNGLIB_OBJ) + ar rcs $@ $^ # Remove all libraries and binaries clean: - rm -f zopflipng zopfli $(ZOPFLILIB_OBJ) libzopfli* + rm -f zopflipng zopfli $(ZOPFLILIB_OBJ) $(ZOPFLIBIN_OBJ) $(LODEPNG_OBJ) $(ZOPFLIPNGLIB_OBJ) $(ZOPFLIPNGBIN_OBJ) libzopfli* |