#!/usr/bin/make

KVERSION=$(shell uname -r)
KERNEL_DIR=/lib/modules/$(KVERSION)/build

DESTDIR=/usr/local
#INSTALL_MOD_PATH:=/tmp

# Add compressloop when it has been fixed
APPS=create_compressed_fs extract_compressed_fs

all: utils module
install: install-utils install-module

utils: $(APPS)

install-utils: utils
	mkdir -p $(DESTDIR)/bin
	install -m0755 $(APPS) $(DESTDIR)/bin

create_compressed_fs: advancecomp-1.15/advfs
	ln -f $< $@

advancecomp-1.15/advfs: advancecomp-1.15/config.status advfs.cc
	$(MAKE) -C advancecomp-1.15 advfs

advancecomp-1.15/config.status:
	cd advancecomp-1.15 && ./configure

advancecomp-1.15:
	@test -e advancecomp-1.15 || (echo advancecomp-1.15 missing, maybe you wanted to run \"make module\"? ; exit 1)
#	bzcat advancecomp-1.15.tar.bz2 | tar -f - -x
#	cd advancecomp-1.15 && bzcat ../advfs-1.15.diff.bz2 | patch -p1

clean:
	-$(MAKE) -C advancecomp-1.15 distclean
	#-$(MAKE) clean -C $(KERNEL_DIR) M=$(CURDIR)
	rm -rf create_compressed_fs extract_compressed_fs zoom *.o *.ko *.mod.c .*cmd .tmp* *symvers
	rm -f */config.status */config.log tmp

extract_compressed_fs: extract_compressed_fs.o
	$(CC) -o $@ $< -lz

dist: clean
	cd .. ; \
	tar -cf - cloop/{Makefile,*.[ch],CHANGELOG,README} | \
	bzip2 -9 > $(HOME)/redhat/SOURCES/cloop.tar.bz2

# to build packages for Knoppix
packages:
	fakeroot debian/rules binary
	cp -a . ../tmp-cloop-modbuild
	cd ../tmp-cloop-modbuild && fakeroot debian/rules binary-modules && rm -rf ../tmp-cloop-modbuild
	
#EXTRA_CFLAGS := -I $(KERNEL_DIR)/include/asm/mach-default 

obj-m := cloop.o
cloop-objs := compressed_loop.o

module: compressed_loop.h compressed_loop.c
	$(MAKE) modules -C $(KERNEL_DIR) M=$(CURDIR)

install-module: module
	$(MAKE) modules_install -C $(KERNEL_DIR) M=$(CURDIR) KERNELRELEASE=$(KVERSION)

