core/squashfs-tools/Makefile
2010-05-21 21:51:58 +00:00

78 lines
2.0 KiB
Makefile

#
# Building LZMA support
# Download LZMA sdk (4.65 used in development, other versions may work),
# set LZMA_DIR to unpacked source, and uncomment next line
LZMA_SUPPORT = 1
LZMA_DIR = ../../
#Compression default.
COMP_DEFAULT = lzma
INCLUDEDIR = -I.
INSTALL_DIR = /usr/local/bin
MKSQUASHFS_OBJS = mksquashfs.o read_fs.o sort.o swap.o pseudo.o compressor.o \
gzip_wrapper.o
UNSQUASHFS_OBJS = unsquashfs.o unsquash-1.o unsquash-2.o unsquash-3.o \
unsquash-4.o swap.o compressor.o gzip_wrapper.o
CFLAGS = $(INCLUDEDIR) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \
-D_GNU_SOURCE -DCOMP_DEFAULT=\"$(COMP_DEFAULT)\" -O2 -Wall
ifdef LZMA_SUPPORT
LZMA_OBJS = $(LZMA_DIR)/C/Alloc.o $(LZMA_DIR)/C/LzFind.o \
$(LZMA_DIR)/C/LzmaDec.o $(LZMA_DIR)/C/LzmaEnc.o $(LZMA_DIR)/C/LzmaLib.o
INCLUDEDIR += -I$(LZMA_DIR)/C
CFLAGS += -DLZMA_SUPPORT
MKSQUASHFS_OBJS += lzma_wrapper.o $(LZMA_OBJS)
UNSQUASHFS_OBJS += lzma_wrapper.o $(LZMA_OBJS)
endif
.PHONY: all
all: mksquashfs unsquashfs
mksquashfs: $(MKSQUASHFS_OBJS)
$(CC) $(MKSQUASHFS_OBJS) -lz -lpthread -lm -o $@
mksquashfs.o: mksquashfs.c squashfs_fs.h mksquashfs.h global.h sort.h \
squashfs_swap.h
read_fs.o: read_fs.c squashfs_fs.h read_fs.h global.h squashfs_swap.h
sort.o: sort.c squashfs_fs.h global.h sort.h
swap.o: swap.c
pseudo.o: pseudo.c pseudo.h
compressor.o: compressor.c compressor.h
unsquashfs: $(UNSQUASHFS_OBJS)
$(CC) $(UNSQUASHFS_OBJS) -lz -lpthread -lm -o $@
unsquashfs.o: unsquashfs.h unsquashfs.c squashfs_fs.h squashfs_swap.h \
squashfs_compat.h global.h
unsquash-1.o: unsquashfs.h unsquash-1.c squashfs_fs.h squashfs_compat.h \
global.h
unsquash-2.o: unsquashfs.h unsquash-2.c unsquashfs.h squashfs_fs.h \
squashfs_compat.h global.h
unsquash-3.o: unsquashfs.h unsquash-3.c squashfs_fs.h squashfs_compat.h \
global.h
unsquash-4.o: unsquashfs.h unsquash-4.c squashfs_fs.h squashfs_swap.h \
global.h
.PHONY: clean
clean:
-rm -f *.o mksquashfs unsquashfs
.PHONY: install
install: mksquashfs unsquashfs
mkdir -p $(INSTALL_DIR)
cp mksquashfs $(INSTALL_DIR)
cp unsquashfs $(INSTALL_DIR)