1 1.1 christos # ################################################################ 2 1.1 christos # Copyright (c) Meta Platforms, Inc. and affiliates. 3 1.1 christos # All rights reserved. 4 1.1 christos # 5 1.1 christos # This source code is licensed under both the BSD-style license (found in the 6 1.1 christos # LICENSE file in the root directory of this source tree) and the GPLv2 (found 7 1.1 christos # in the COPYING file in the root directory of this source tree). 8 1.1 christos # ################################################################ 9 1.1 christos 10 1.1 christos # This Makefile presumes libzstd is built, using `make` in / or /lib/ 11 1.1 christos 12 1.1 christos ZSTDLIB_PATH = ../../../lib 13 1.1 christos ZSTDLIB_NAME = libzstd.a 14 1.1 christos ZSTDLIB = $(ZSTDLIB_PATH)/$(ZSTDLIB_NAME) 15 1.1 christos 16 1.1 christos CPPFLAGS += -DXXH_NAMESPACE=ZSTD_ -I../ -I../../../lib -I../../../lib/common 17 1.1 christos 18 1.1 christos CFLAGS ?= -O3 19 1.1 christos CFLAGS += -g 20 1.1 christos 21 1.1 christos SEEKABLE_OBJS = ../zstdseek_compress.c ../zstdseek_decompress.c $(ZSTDLIB) 22 1.1 christos 23 1.1 christos .PHONY: default all clean test 24 1.1 christos 25 1.1 christos default: all 26 1.1 christos 27 1.1 christos all: seekable_compression seekable_decompression seekable_decompression_mem \ 28 1.1 christos parallel_processing 29 1.1 christos 30 1.1 christos $(ZSTDLIB): 31 1.1 christos make -C $(ZSTDLIB_PATH) $(ZSTDLIB_NAME) 32 1.1 christos 33 1.1 christos seekable_compression : seekable_compression.c $(SEEKABLE_OBJS) 34 1.1 christos $(CC) $(CPPFLAGS) $(CFLAGS) $^ $(LDFLAGS) -o $@ 35 1.1 christos 36 1.1 christos seekable_decompression : seekable_decompression.c $(SEEKABLE_OBJS) 37 1.1 christos $(CC) $(CPPFLAGS) $(CFLAGS) $^ $(LDFLAGS) -o $@ 38 1.1 christos 39 1.1 christos seekable_decompression_mem : seekable_decompression_mem.c $(SEEKABLE_OBJS) 40 1.1 christos $(CC) $(CPPFLAGS) $(CFLAGS) $^ $(LDFLAGS) -o $@ 41 1.1 christos 42 1.1 christos parallel_processing : parallel_processing.c $(SEEKABLE_OBJS) 43 1.1 christos $(CC) $(CPPFLAGS) $(CFLAGS) $^ $(LDFLAGS) -o $@ -pthread 44 1.1 christos 45 1.1 christos parallel_compression : parallel_compression.c $(SEEKABLE_OBJS) 46 1.1 christos $(CC) $(CPPFLAGS) $(CFLAGS) $^ $(LDFLAGS) -o $@ -pthread 47 1.1 christos 48 1.1 christos clean: 49 1.1 christos @rm -f core *.o tmp* result* *.zst \ 50 1.1 christos seekable_compression seekable_decompression \ 51 1.1 christos seekable_decompression_mem \ 52 1.1 christos parallel_processing parallel_compression 53 1.1 christos @echo Cleaning completed 54