63dab8eed9
The upcoming geom_compress module (a read-only gzip/ulzma translation layer, similar to what geom_uzip does) will leverage parts of this.
49 lines
1.4 KiB
Makefile
49 lines
1.4 KiB
Makefile
#
|
|
# Makefile
|
|
#
|
|
# Author: Lasse Collin <lasse.collin@tukaani.org>
|
|
#
|
|
# This file has been put into the public domain.
|
|
# You can do whatever you want with this file.
|
|
#
|
|
|
|
CC = gcc -std=gnu89
|
|
BCJ_CPPFLAGS = -DXZ_DEC_X86 -DXZ_DEC_POWERPC -DXZ_DEC_IA64 \
|
|
-DXZ_DEC_ARM -DXZ_DEC_ARMTHUMB -DXZ_DEC_SPARC
|
|
CPPFLAGS = -DXZ_DEC_ANY_CHECK
|
|
CFLAGS = -ggdb3 -O2 -pedantic -Wall -Wextra
|
|
RM = rm -f
|
|
VPATH = ../linux/include/linux ../linux/lib/xz
|
|
COMMON_SRCS = xz_crc32.c xz_dec_stream.c xz_dec_lzma2.c xz_dec_bcj.c
|
|
COMMON_OBJS = $(COMMON_SRCS:.c=.o)
|
|
XZMINIDEC_OBJS = xzminidec.o
|
|
BYTETEST_OBJS = bytetest.o
|
|
BUFTEST_OBJS = buftest.o
|
|
BOOTTEST_OBJS = boottest.o
|
|
XZ_HEADERS = xz.h xz_private.h xz_stream.h xz_lzma2.h xz_config.h
|
|
PROGRAMS = xzminidec bytetest buftest boottest
|
|
|
|
ALL_CPPFLAGS = -I../linux/include/linux -I. $(BCJ_CPPFLAGS) $(CPPFLAGS)
|
|
|
|
all: $(PROGRAMS)
|
|
|
|
%.o: %.c $(XZ_HEADERS)
|
|
$(CC) $(ALL_CPPFLAGS) $(CFLAGS) -c -o $@ $<
|
|
|
|
xzminidec: $(COMMON_OBJS) $(XZMINIDEC_OBJS)
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(COMMON_OBJS) $(XZMINIDEC_OBJS)
|
|
|
|
bytetest: $(COMMON_OBJS) $(BYTETEST_OBJS)
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(COMMON_OBJS) $(BYTETEST_OBJS)
|
|
|
|
buftest: $(COMMON_OBJS) $(BUFTEST_OBJS)
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(COMMON_OBJS) $(BUFTEST_OBJS)
|
|
|
|
boottest: $(BOOTTEST_OBJS) $(COMMON_SRCS)
|
|
$(CC) $(ALL_CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(BOOTTEST_OBJS)
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
-$(RM) $(COMMON_OBJS) $(XZMINIDEC_OBJS) $(BUFTEST_OBJS) \
|
|
$(BOOTTEST_OBJS) $(PROGRAMS)
|