#
# Make SANDBOXED=1 to build MAS-compatible binaries with embedded entitlements
#

.PHONY: install

ARCHIVE_NAME = sources

TAR_FLAGS = --exclude .DS_Store --exclude _CodeSignature --exclude *.o --exclude gkermit --exclude *.a --exclude lrz --exclude lsz --exclude gwart --exclude gproto.c
TAR_NEW_FLAGS = $(TAR_FLAGS) -cvf $(ARCHIVE_NAME).tar
TAR_ADD_FLAGS = $(TAR_FLAGS) -rvf $(ARCHIVE_NAME).tar

install:
	$(MAKE) -C kermit
	$(MAKE) -C lrzsz
	if [ -f $(ARCHIVE_NAME).tar ]; then rm $(ARCHIVE_NAME).tar; fi;
	if [ -f $(ARCHIVE_NAME).tar.bz2 ]; then rm $(ARCHIVE_NAME).tar.bz2; fi;
	
	tar $(TAR_NEW_FLAGS) README.txt
	tar $(TAR_ADD_FLAGS) Makefile
	tar $(TAR_ADD_FLAGS) make.sh make_mas.sh
	tar $(TAR_ADD_FLAGS) glue kermit lrzsz
	tar $(TAR_ADD_FLAGS) --exclude libssh.build --exclude libssh-*/build --exclude libssh-*/.cache --exclude build/dist --exclude build/lib -C ../StreamHelpers/SerialSSHv2StreamHelper/libssh libssh-0.9.7
	tar --list -f $(ARCHIVE_NAME).tar > sources-manifest.txt
	bzip2 -9 $(ARCHIVE_NAME).tar

ifdef SANDBOXED
	./sign.sh
endif

clean:
	$(MAKE) -C kermit clean
	$(MAKE) -C lrzsz clean
	if [ -f $(ARCHIVE_NAME).tar ]; then rm $(ARCHIVE_NAME).tar; fi;
	if [ -f $(ARCHIVE_NAME).tar.bz2 ]; then rm $(ARCHIVE_NAME).tar.bz2; fi;
