| |
| ZSTDDIR = ../../lib |
| PRGDIR = ../../programs |
| ZSTDCOMMON_FILES := $(ZSTDDIR)/common/*.c |
| ZSTDCOMP_FILES := $(ZSTDDIR)/compress/*.c |
| ZSTDDECOMP_FILES := $(ZSTDDIR)/decompress/*.c |
| ZSTD_FILES := $(ZSTDDECOMP_FILES) $(ZSTDCOMMON_FILES) $(ZSTDCOMP_FILES) |
| |
| MULTITHREAD_LDFLAGS = -pthread |
| DEBUGFLAGS= -g -DZSTD_DEBUG=1 |
| CPPFLAGS += -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/compress \ |
| -I$(ZSTDDIR)/dictBuilder -I$(ZSTDDIR)/deprecated -I$(PRGDIR) |
| CFLAGS ?= -O3 |
| CFLAGS += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow \ |
| -Wstrict-aliasing=1 -Wswitch-enum -Wdeclaration-after-statement \ |
| -Wstrict-prototypes -Wundef -Wformat-security \ |
| -Wvla -Wformat=2 -Winit-self -Wfloat-equal -Wwrite-strings \ |
| -Wredundant-decls |
| CFLAGS += $(DEBUGFLAGS) |
| CFLAGS += $(MOREFLAGS) |
| FLAGS = $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(MULTITHREAD_LDFLAGS) |
| |
| all: adapt datagen |
| |
| adapt: $(ZSTD_FILES) adapt.c |
| $(CC) $(FLAGS) $^ -o $@ |
| |
| adapt-debug: $(ZSTD_FILES) adapt.c |
| $(CC) $(FLAGS) -DDEBUG_MODE=2 $^ -o adapt |
| |
| datagen : $(PRGDIR)/datagen.c datagencli.c |
| $(CC) $(FLAGS) $^ -o $@ |
| |
| test-adapt-correctness: datagen adapt |
| @./test-correctness.sh |
| @echo "test correctness complete" |
| |
| test-adapt-performance: datagen adapt |
| @./test-performance.sh |
| @echo "test performance complete" |
| |
| clean: |
| @$(RM) -f adapt datagen |
| @$(RM) -rf *.dSYM |
| @$(RM) -f tmp* |
| @$(RM) -f tests/*.zst |
| @$(RM) -f tests/tmp* |
| @echo "finished cleaning" |
| |
| #----------------------------------------------------------------------------- |
| # make install is validated only for Linux, OSX, BSD, Hurd and Solaris targets |
| #----------------------------------------------------------------------------- |
| ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU OpenBSD FreeBSD NetBSD DragonFly SunOS)) |
| |
| ifneq (,$(filter $(shell uname),SunOS)) |
| INSTALL ?= ginstall |
| else |
| INSTALL ?= install |
| endif |
| |
| PREFIX ?= /usr/local |
| DESTDIR ?= |
| BINDIR ?= $(PREFIX)/bin |
| |
| INSTALL_PROGRAM ?= $(INSTALL) -m 755 |
| |
| install: adapt |
| @echo Installing binaries |
| @$(INSTALL) -d -m 755 $(DESTDIR)$(BINDIR)/ |
| @$(INSTALL_PROGRAM) adapt $(DESTDIR)$(BINDIR)/zstd-adaptive |
| @echo zstd-adaptive installation completed |
| |
| uninstall: |
| @$(RM) $(DESTDIR)$(BINDIR)/zstd-adaptive |
| @echo zstd-adaptive programs successfully uninstalled |
| endif |