# ########################################################################## # Copyright (c) 2016-present, Yann Collet, Facebook, Inc. # All rights reserved. # # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. An additional grant # of patent rights can be found in the PATENTS file in the same directory. # ########################################################################## VOID := /dev/null ZSTDDIR := ../include LIBDIR := ../static DLLDIR := ../dll CFLAGS ?= -O3 # can select custom flags. For example : CFLAGS="-O2 -g" make CFLAGS += -Wall -Wextra -Wundef -Wcast-qual -Wcast-align -Wshadow -Wswitch-enum \ -Wdeclaration-after-statement -Wstrict-prototypes \ -Wpointer-arith -Wstrict-aliasing=1 CFLAGS += $(MOREFLAGS) CPPFLAGS:= -I$(ZSTDDIR) -DXXH_NAMESPACE=ZSTD_ FLAGS := $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) # Define *.exe as extension for Windows systems ifneq (,$(filter Windows%,$(OS))) EXT =.exe else EXT = endif .PHONY: default fullbench-dll fullbench-lib default: all all: fullbench-dll fullbench-lib fullbench-lib: fullbench.c datagen.c $(CC) $(FLAGS) $^ -o $@$(EXT) $(LIBDIR)/libzstd_static.lib fullbench-dll: fullbench.c datagen.c $(CC) $(FLAGS) $^ -o $@$(EXT) -DZSTD_DLL_IMPORT=1 $(DLLDIR)/libzstd.dll clean: @$(RM) fullbench-dll$(EXT) fullbench-lib$(EXT) \ @echo Cleaning completed