1CC=gcc 2CFLAGS=-O3 -Wall -pthread 3LDFLAGS=-pthread 4BLOSC_LIB= $(wildcard ../blosc/*.c) 5 6# The list of executables 7# Generated PNG (intermediate) files 8SOURCES := $(wildcard *.c) 9EXECUTABLES := $(patsubst %.c, %.exe, $(SOURCES)) 10 11# Support for internal LZ4 and LZ4HC 12LZ4_DIR = ../internal-complibs/lz4-1.7.0 13CFLAGS += -I$(LZ4_DIR) 14BLOSC_LIB += $(wildcard $(LZ4_DIR)/*.c) 15 16# Support for external LZ4 and LZ4HC 17#LDFLAGS += -llz4 18 19# Support for external Zlib 20LDFLAGS += -DHAVE_ZLIB -lz 21 22# Support for internal Zlib 23#ZLIB_DIR = ../internal-complibs/zlib-1.2.8 24#CFLAGS += -DHAVE_ZLIB -I$(ZLIB_DIR) 25#BLOSC_LIB += $(wildcard $(ZLIB_DIR)/*.c) 26 27 28# Support for internal Zstd 29ZSTD_DIR = ../internal-complibs/zstd-1.2.0 30CFLAGS += -DHAVE_ZSTD -I$(ZSTD_DIR) -I$(ZSTD_DIR)/common 31BLOSC_LIB += $(wildcard $(ZSTD_DIR)/*/*.c) 32 33 34.PHONY: all 35all: $(EXECUTABLES) 36 37test: $(EXECUTABLES) 38 sh test_all.sh 39 40%.exe: %.c $(BLOSC_LIB) 41 $(CC) $(CFLAGS) $(LDFLAGS) "$<" $(BLOSC_LIB) -o "$@" 42 43clean: 44 rm -rf $(EXECUTABLES) 45