Home | History | Annotate | Download | only in zopfli
      1 CC = gcc
      2 CXX = g++
      3 
      4 CFLAGS = -W -Wall -Wextra -ansi -pedantic -lm -O2
      5 CXXFLAGS = -W -Wall -Wextra -ansi -pedantic -O2
      6 
      7 ZOPFLILIB_SRC = src/zopfli/blocksplitter.c src/zopfli/cache.c\
      8                 src/zopfli/deflate.c src/zopfli/gzip_container.c\
      9                 src/zopfli/hash.c src/zopfli/katajainen.c\
     10                 src/zopfli/lz77.c src/zopfli/squeeze.c\
     11                 src/zopfli/tree.c src/zopfli/util.c\
     12                 src/zopfli/zlib_container.c src/zopfli/zopfli_lib.c
     13 ZOPFLILIB_OBJ := $(patsubst src/zopfli/%.c,%.o,$(ZOPFLILIB_SRC))
     14 ZOPFLIBIN_SRC := src/zopfli/zopfli_bin.c
     15 LODEPNG_SRC := src/zopflipng/lodepng/lodepng.cpp src/zopflipng/lodepng/lodepng_util.cpp
     16 ZOPFLIPNGLIB_SRC := src/zopflipng/zopflipng_lib.cc
     17 ZOPFLIPNGBIN_SRC := src/zopflipng/zopflipng_bin.cc
     18 
     19 .PHONY: zopfli zopflipng
     20 
     21 # Zopfli binary
     22 zopfli:
     23 	$(CC) $(ZOPFLILIB_SRC) $(ZOPFLIBIN_SRC) $(CFLAGS) -o zopfli
     24 
     25 # Zopfli shared library
     26 libzopfli:
     27 	$(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -fPIC -c
     28 	$(CC) $(ZOPFLILIB_OBJ) $(CFLAGS) -shared -Wl,-soname,libzopfli.so.1 -o libzopfli.so.1.0.1
     29 
     30 # ZopfliPNG binary
     31 zopflipng:
     32 	$(CC) $(ZOPFLILIB_SRC) $(CFLAGS) -c
     33 	$(CXX) $(ZOPFLILIB_OBJ) $(LODEPNG_SRC) $(ZOPFLIPNGLIB_SRC) $(ZOPFLIPNGBIN_SRC) $(CFLAGS) -o zopflipng
     34 
     35 # Remove all libraries and binaries
     36 clean:
     37 	rm -f zopflipng zopfli $(ZOPFLILIB_OBJ) libzopfli*
     38