| OLD | NEW |
| 1 OS := $(shell uname) | 1 OS := $(shell uname) |
| 2 | 2 |
| 3 CPPFLAGS = -I./brotli/dec/ -I./brotli/enc/ -I./src | 3 CPPFLAGS = -I./brotli/include/ -I./src |
| 4 | 4 |
| 5 AR ?= ar |
| 5 CC ?= gcc | 6 CC ?= gcc |
| 6 CXX ?= g++ | 7 CXX ?= g++ |
| 7 | 8 |
| 8 COMMON_FLAGS = -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION
_BIN -D __STDC_FORMAT_MACROS | 9 # It's helpful to be able to turn these off for fuzzing |
| 10 CANONICAL_PREFIXES ?= -no-canonical-prefixes |
| 11 NOISY_LOGGING ?= -DFONT_COMPRESSION_BIN |
| 12 COMMON_FLAGS = -fno-omit-frame-pointer $(CANONICAL_PREFIXES) $(NOISY_LOGGING) -D
__STDC_FORMAT_MACROS |
| 9 | 13 |
| 10 ifeq ($(OS), Darwin) | 14 ifeq ($(OS), Darwin) |
| 11 CPPFLAGS += -DOS_MACOSX | 15 CPPFLAGS += -DOS_MACOSX |
| 12 else | 16 else |
| 13 COMMON_FLAGS += -fno-tree-vrp | 17 COMMON_FLAGS += -fno-tree-vrp |
| 14 endif | 18 endif |
| 15 | 19 |
| 20 ARFLAGS = crf |
| 16 CFLAGS += $(COMMON_FLAGS) | 21 CFLAGS += $(COMMON_FLAGS) |
| 17 CXXFLAGS += $(COMMON_FLAGS) -std=c++11 | 22 CXXFLAGS += $(COMMON_FLAGS) -std=c++11 |
| 18 | 23 |
| 19 SRCDIR = src | 24 SRCDIR = src |
| 20 | 25 |
| 21 OUROBJ = font.o glyph.o normalize.o table_tags.o transform.o \ | 26 OUROBJ = font.o glyph.o normalize.o table_tags.o transform.o \ |
| 22 woff2_dec.o woff2_enc.o woff2_common.o woff2_out.o \ | 27 woff2_dec.o woff2_enc.o woff2_common.o woff2_out.o \ |
| 23 variable_length.o | 28 variable_length.o |
| 24 | 29 |
| 25 BROTLI = brotli | 30 BROTLI = brotli |
| 26 ENCOBJ = $(BROTLI)/enc/*.o | 31 BROTLIOBJ = $(BROTLI)/bin/obj |
| 27 DECOBJ = $(BROTLI)/dec/*.o | 32 ENCOBJ = $(BROTLIOBJ)/enc/*.o |
| 33 DECOBJ = $(BROTLIOBJ)/dec/*.o |
| 34 COMMONOBJ = $(BROTLIOBJ)/common/*.o |
| 28 | 35 |
| 29 OBJS = $(patsubst %, $(SRCDIR)/%, $(OUROBJ)) | 36 OBJS = $(patsubst %, $(SRCDIR)/%, $(OUROBJ)) |
| 30 EXECUTABLES=woff2_compress woff2_decompress | 37 EXECUTABLES=woff2_compress woff2_decompress |
| 31 | |
| 32 EXE_OBJS=$(patsubst %, $(SRCDIR)/%.o, $(EXECUTABLES)) | 38 EXE_OBJS=$(patsubst %, $(SRCDIR)/%.o, $(EXECUTABLES)) |
| 39 ARCHIVES=convert_woff2ttf_fuzzer convert_woff2ttf_fuzzer_new_entry |
| 40 ARCHIVE_OBJS=$(patsubst %, $(SRCDIR)/%.o, $(ARCHIVES)) |
| 33 | 41 |
| 34 ifeq (,$(wildcard $(BROTLI)/*)) | 42 ifeq (,$(wildcard $(BROTLI)/*)) |
| 35 $(error Brotli dependency not found : you must initialize the Git submodule) | 43 $(error Brotli dependency not found : you must initialize the Git submodule) |
| 36 endif | 44 endif |
| 37 | 45 |
| 38 all : $(OBJS) $(EXECUTABLES) | 46 all : $(OBJS) $(EXECUTABLES) $(ARCHIVES) |
| 47 |
| 48 $(ARCHIVES) : $(ARCHIVE_OBJS) $(OBJS) deps |
| 49 » $(AR) $(ARFLAGS) $(SRCDIR)/$@.a $(OBJS) \ |
| 50 » $(COMMONOBJ) $(ENCOBJ) $(DECOBJ) $(SRCDIR)/$@.o |
| 39 | 51 |
| 40 $(EXECUTABLES) : $(EXE_OBJS) deps | 52 $(EXECUTABLES) : $(EXE_OBJS) deps |
| 41 » $(CXX) $(LFLAGS) $(OBJS) $(ENCOBJ) $(DECOBJ) $(SRCDIR)/$@.o -o $@ | 53 » $(CXX) $(LFLAGS) $(OBJS) $(COMMONOBJ) $(ENCOBJ) $(DECOBJ) $(SRCDIR)/$@.o
-o $@ |
| 42 | 54 |
| 43 deps : | 55 deps : |
| 44 » $(MAKE) -C $(BROTLI)/dec | 56 » $(MAKE) -C $(BROTLI) lib |
| 45 » $(MAKE) -C $(BROTLI)/enc | |
| 46 | 57 |
| 47 clean : | 58 clean : |
| 48 rm -f $(OBJS) $(EXE_OBJS) $(EXECUTABLES) | 59 rm -f $(OBJS) $(EXE_OBJS) $(EXECUTABLES) |
| 49 » $(MAKE) -C $(BROTLI)/dec clean | 60 » $(MAKE) -C $(BROTLI) clean |
| 50 » $(MAKE) -C $(BROTLI)/enc clean | |
| OLD | NEW |