# Makefile for ZipArchive library # Copyright (C) 2000 - 2007 Artpol Software - Tadeusz Dracz # For conditions of distribution and use, see copyright notice in License.txt # To install to /usr/lib and /usr/include, type: # make install # to install to a different directory change prefix #Define this variable to use the bzip2 library provided with the ZipArchive Library #otherwise, the system's bzip2 library will be used #INTERNAL_BZIP2 = 1 CC=g++ CCC=cc #CCC=gcc CFLAGS = -D ZIP_ARCHIVE_LNX #CFLAGS = ifdef INTERNAL_BZIP2 CFLAGS += -D ZIP_ARCHIVE_BZIP2_INTERNAL endif ZIPARCHLIB = libziparch.a ZIPPIELOCATION = ../Zippie/ ZLIBLOCATION = zlib/ ifdef INTERNAL_BZIP2 BZIP2LOCATION = bzip2/ endif INCLUDES = -I. -Izlib ifdef INTERNAL_BZIP2 INCLUDES += -Ibzip2 endif prefix = /usr #prefix = libdir = ${prefix}/lib includedir = ${prefix}/include zipardir = $(includedir)/ziparchive zlibdir = $(zipardir)/zlib ifdef INTERNAL_BZIP2 bzip2dir = $(zipardir)/bzip2 endif AR=ar rc RANLIB=ranlib .SUFFIXES: .c .cpp .c.o: $(CCC) $(CFLAGS) $(INCLUDES) -c -o $*.o $< .cpp.o: $(CC) $(CFLAGS) $(INCLUDES) -c $< OBJS = $(ZLIBLOCATION)adler32.o $(ZLIBLOCATION)compress.o $(ZLIBLOCATION)crc32.o $(ZLIBLOCATION)uncompr.o $(ZLIBLOCATION)deflate.o $(ZLIBLOCATION)trees.o \ $(ZLIBLOCATION)zutil.o $(ZLIBLOCATION)inflate.o $(ZLIBLOCATION)infback.o $(ZLIBLOCATION)inftrees.o $(ZLIBLOCATION)inffast.o\ ZipArchive.o ZipAutoBuffer.o ZipCentralDir.o \ ZipCompressor.o BaseLibCompressor.o Bzip2Compressor.o DeflateCompressor.o ZipCompatibility.o ZipException.o ZipFile_stl.o ZipFileHeader.o \ ZipMemFile.o ZipPlatformComm.o \ ZipStorage.o ZipString.o ZipExtraData.o ZipExtraField.o \ DirEnumerator.o FileFilter.o Wildcard.o \ ZipCryptograph.o ZipCrc32Cryptograph.o \ Aes.o Hmac.o RandomPool.o ZipAesCryptograph.o Sha1.o ifdef INTERNAL_BZIP2 OBJS += $(BZIP2LOCATION)bzlib.o $(BZIP2LOCATION)blocksort.o $(BZIP2LOCATION)bzcompress.o $(BZIP2LOCATION)crctable.o\ $(BZIP2LOCATION)decompress.o $(BZIP2LOCATION)huffman.o $(BZIP2LOCATION)randtable.o endif OBJP = ZipPathComponent_lnx.o ZipPlatform_lnx.o #OBJP = ZipPathComponent_win.o ZipPlatform_win.o $(ZIPARCHLIB): $(OBJS) $(OBJP) $(AR) $@ $(OBJS) $(OBJP) -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 adler32.o: zlib.h zconf.h compress.o: zlib.h zconf.h crc32.o: crc32.h zlib.h zconf.h deflate.o: deflate.h zutil.h zlib.h zconf.h inffast.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h inflate.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h infback.o: zutil.h zlib.h zconf.h inftrees.h inflate.h inffast.h inftrees.o: zutil.h zlib.h zconf.h inftrees.h trees.o: deflate.h zutil.h zlib.h zconf.h trees.h uncompr.o: zlib.h zconf.h zutil.o: zutil.h zlib.h zconf.h ifdef INTERNAL_BZIP2 bzlib.o: bzlib.h bzlib_private.h blocksort.o: bzlib_private.h bzcompress.o: bzlib_private.h crctable.o: bzlib_private.h decompress.o: bzlib_private.h huffman.o: bzlib_private.h randtable.o: bzlib_private.h endif ZipArchive.o: ZipArchive.h ZipAutoBuffer.o: ZipAutoBuffer.h ZipCentralDir.o: ZipCentralDir.h ZipCompressor.o: ZipCompressor.h BaseLibCompressor.o: BaseLibCompressor.h Bzip2Compressor.o: Bzip2Compressor.h DeflateCompressor.o: DeflateCompressor.h ZipCompatibility.o: ZipCompatibility.h ZipException.o: ZipException.h ZipFile_stl.o: ZipFile.h ZipFileHeader.o: ZipFileHeader.h ZipMemFile.o: ZipMemFile.h ZipStorage.o: ZipStorage.h ZipString.o: ZipString.h ZipExtraData.o: ZipExtraData.h ZipExtraField.o: ZipExtraField.h DirEnumerator.o: DirEnumerator.cpp FileFilter.o: FileFilter.cpp Wildcard.o: Wildcard.cpp ZipCryptograph.o: ZipCryptograph.h ZipCrc32Cryptograph.o: ZipCrc32Cryptograph.h Aes.o: Aes.h Hmac.o: Hmac.h RandomPool.o: RandomPool.h ZipAesCryptograph.o: ZipAesCryptograph.h Sha1.o: Sha1.h ZipPathComponent_lnx.o: ZipPathComponent.h #ZipPathComponent_win.o: ZipPathComponent.h ZipPlatform_lnx.o: ZipPlatform.h #ZipPlatform_win.o: ZipPlatform.h LIBS = -lstdc++ -lziparch ifndef INTERNAL_BZIP2 LIBS += -lbz2 endif clean: -rm -f *.o *~ $(ZIPARCHLIB) $(ZLIBLOCATION)*.o $(ZLIBLOCATION)*~ $(BZIP2LOCATION)*.o $(BZIP2LOCATION)*~ zippie: $(CC) -I$(zipardir) $(CFLAGS) -o zippie $(ZIPPIELOCATION)zippie.cpp $(ZIPPIELOCATION)CmdLine.cpp $(LIBS) #$(CC) -I$(zipardir) -L$(libdir) $(CFLAGS) -o zippie $(ZIPPIELOCATION)zippie.cpp $(ZIPPIELOCATION)CmdLine.cpp $(LIBS) cleanzippie: -rm -f zippie #-rm -f zippie.exe install: -@if [ ! -d $(includedir) ]; then mkdir $(includedir); fi -@if [ ! -d $(libdir) ]; then mkdir $(libdir); fi -@if [ ! -d $(zipardir) ]; then mkdir $(zipardir); fi -@if [ ! -d $(zlibdir) ]; then mkdir $(zlibdir); fi cp libziparch.a $(libdir) chmod 755 $(libdir)/$(ZIPARCHLIB) cp *.h $(zipardir) chmod 644 $(zipardir)/*h cp $(ZLIBLOCATION)*.h $(zlibdir) chmod 644 $(zlibdir)/*h ifdef INTERNAL_BZIP2 -@if [ ! -d $(bzip2dir) ]; then mkdir $(bzip2dir); fi cp $(BZIP2LOCATION)*.h $(bzip2dir) chmod 644 $(bzip2dir)/*h endif uninstall: rm -f $(zlibdir)/*h rm -f $(zipardir)/*h rm -f $(libdir)/$(ZIPARCHLIB) rmdir $(zlibdir) ifdef INTERNAL_BZIP2 rm -f $(bzip2dir)/*h rmdir $(bzip2dir) endif rmdir $(zipardir)