216 lines
6 KiB
Makefile
216 lines
6 KiB
Makefile
|
|
SHELL=/bin/sh
|
|
|
|
# To assist in cross-compiling
|
|
CC=exec cc
|
|
AR=ar
|
|
ARFLAGS=cr
|
|
RANLIB=ranlib
|
|
LDFLAGS=
|
|
|
|
BIGFILES=#-D_FILE_OFFSET_BITS=64
|
|
CFLAGS=-Wall -Winline -O -g $(BIGFILES) -Dlstat=stat -D_POSIX_SOURCE=1
|
|
|
|
# Where you want it installed when you do 'make install'
|
|
PREFIX=/usr/local
|
|
PREFIX_BIN=$(PREFIX)/bin
|
|
PREFIX_LIB=$(PREFIX)/lib
|
|
PREFIX_MAN=$(PREFIX)/man
|
|
PREFIX_INC=$(PREFIX)/include
|
|
|
|
|
|
OBJS= blocksort.o \
|
|
huffman.o \
|
|
crctable.o \
|
|
randtable.o \
|
|
compress.o \
|
|
decompress.o \
|
|
bzlib.o
|
|
|
|
all: all_notest
|
|
|
|
all_notest: libbz2.a bzip2 bzip2recover
|
|
chmem =8000000 bzip2
|
|
|
|
bzip2: libbz2.a bzip2.o
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o bzip2 bzip2.o -L. -lbz2
|
|
|
|
bzip2recover: bzip2recover.o
|
|
$(CC) $(CFLAGS) $(LDFLAGS) -o bzip2recover bzip2recover.o
|
|
|
|
libbz2.a: $(OBJS)
|
|
rm -f libbz2.a
|
|
$(AR) $(ARFLAGS) libbz2.a $(OBJS)
|
|
@if ( test -f $(RANLIB) -o -f /usr/bin/ranlib -o \
|
|
-f /bin/ranlib -o -f /usr/ccs/bin/ranlib ) ; then \
|
|
echo $(RANLIB) libbz2.a ; \
|
|
$(RANLIB) libbz2.a ; \
|
|
fi
|
|
|
|
check: test
|
|
test: bzip2 test_nodep
|
|
|
|
test_nodep:
|
|
@cat words1
|
|
./bzip2 -1 < sample1.ref > sample1.rb2
|
|
./bzip2 -2 < sample2.ref > sample2.rb2
|
|
./bzip2 -3 < sample3.ref > sample3.rb2
|
|
./bzip2 -d < sample1.bz2 > sample1.tst
|
|
./bzip2 -d < sample2.bz2 > sample2.tst
|
|
./bzip2 -ds < sample3.bz2 > sample3.tst
|
|
cmp sample1.bz2 sample1.rb2
|
|
cmp sample2.bz2 sample2.rb2
|
|
cmp sample3.bz2 sample3.rb2
|
|
cmp sample1.tst sample1.ref
|
|
cmp sample2.tst sample2.ref
|
|
cmp sample3.tst sample3.ref
|
|
@cat words3
|
|
|
|
install: bzip2 bzip2recover
|
|
if ( test ! -d $(PREFIX_BIN) ) ; then mkdir -p $(PREFIX_BIN) ; fi
|
|
if ( test ! -d $(PREFIX_LIB) ) ; then mkdir -p $(PREFIX_LIB) ; fi
|
|
if ( test ! -d $(PREFIX_MAN) ) ; then mkdir -p $(PREFIX_MAN) ; fi
|
|
if ( test ! -d $(PREFIX_MAN)/man1 ) ; then mkdir -p $(PREFIX_MAN)/man1 ; fi
|
|
if ( test ! -d $(PREFIX_INC) ) ; then mkdir -p $(PREFIX_INC) ; fi
|
|
install -S 8M -o bin bzip2 $(PREFIX_BIN)/bzip2
|
|
install -S 4M -o bin bzip2 $(PREFIX_BIN)/bunzip2
|
|
install -S 2450k -o bin bzip2 $(PREFIX_BIN)/smallbunzip2
|
|
install -o bin bzip2 $(PREFIX_BIN)/bzcat
|
|
install -o bin bzip2recover $(PREFIX_BIN)/bzip2recover
|
|
chmod a+x $(PREFIX_BIN)/bzip2
|
|
chmod a+x $(PREFIX_BIN)/bunzip2
|
|
chmod a+x $(PREFIX_BIN)/bzcat
|
|
chmod a+x $(PREFIX_BIN)/bzip2recover
|
|
install -o bin bzip2.1 $(PREFIX_MAN)/man1
|
|
chmod a+r $(PREFIX_MAN)/man1/bzip2.1
|
|
install -o bin bzlib.h $(PREFIX_INC)
|
|
chmod a+r $(PREFIX_INC)/bzlib.h
|
|
install -o bin libbz2.a $(PREFIX_LIB)
|
|
chmod a+r $(PREFIX_LIB)/libbz2.a
|
|
install -o bin bzgrep $(PREFIX_BIN)/bzgrep
|
|
ln -f $(PREFIX_BIN)/bzgrep $(PREFIX_BIN)/bzegrep
|
|
ln -f $(PREFIX_BIN)/bzgrep $(PREFIX_BIN)/bzfgrep
|
|
chmod a+x $(PREFIX_BIN)/bzgrep
|
|
install -o bin bzmore $(PREFIX_BIN)/bzmore
|
|
ln -f $(PREFIX_BIN)/bzmore $(PREFIX_BIN)/bzless
|
|
chmod a+x $(PREFIX_BIN)/bzmore
|
|
install -o bin bzdiff $(PREFIX_BIN)/bzdiff
|
|
ln -f $(PREFIX_BIN)/bzdiff $(PREFIX_BIN)/bzcmp
|
|
chmod a+x $(PREFIX_BIN)/bzdiff
|
|
install -o bin bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX_MAN)/man1
|
|
chmod a+r $(PREFIX_MAN)/man1/bzgrep.1
|
|
chmod a+r $(PREFIX_MAN)/man1/bzmore.1
|
|
chmod a+r $(PREFIX_MAN)/man1/bzdiff.1
|
|
echo ".so man1/bzgrep.1" > $(PREFIX_MAN)/man1/bzegrep.1
|
|
echo ".so man1/bzgrep.1" > $(PREFIX_MAN)/man1/bzfgrep.1
|
|
echo ".so man1/bzmore.1" > $(PREFIX_MAN)/man1/bzless.1
|
|
echo ".so man1/bzdiff.1" > $(PREFIX_MAN)/man1/bzcmp.1
|
|
|
|
clean:
|
|
rm -f *.o libbz2.a bzip2 bzip2recover \
|
|
sample1.rb2 sample2.rb2 sample3.rb2 \
|
|
sample1.tst sample2.tst sample3.tst
|
|
|
|
blocksort.o: blocksort.c
|
|
@cat words0
|
|
$(CC) $(CFLAGS) -c blocksort.c
|
|
huffman.o: huffman.c
|
|
$(CC) $(CFLAGS) -c huffman.c
|
|
crctable.o: crctable.c
|
|
$(CC) $(CFLAGS) -c crctable.c
|
|
randtable.o: randtable.c
|
|
$(CC) $(CFLAGS) -c randtable.c
|
|
compress.o: compress.c
|
|
$(CC) $(CFLAGS) -c compress.c
|
|
decompress.o: decompress.c
|
|
$(CC) $(CFLAGS) -c decompress.c
|
|
bzlib.o: bzlib.c
|
|
$(CC) $(CFLAGS) -c bzlib.c
|
|
bzip2.o: bzip2.c
|
|
$(CC) $(CFLAGS) -c bzip2.c
|
|
bzip2recover.o: bzip2recover.c
|
|
$(CC) $(CFLAGS) -c bzip2recover.c
|
|
|
|
|
|
distclean: clean
|
|
rm -f manual.ps manual.html manual.pdf
|
|
|
|
DISTNAME=bzip2-1.0.3
|
|
dist: check manual
|
|
rm -f $(DISTNAME)
|
|
ln -sf . $(DISTNAME)
|
|
tar cvf $(DISTNAME).tar \
|
|
$(DISTNAME)/blocksort.c \
|
|
$(DISTNAME)/huffman.c \
|
|
$(DISTNAME)/crctable.c \
|
|
$(DISTNAME)/randtable.c \
|
|
$(DISTNAME)/compress.c \
|
|
$(DISTNAME)/decompress.c \
|
|
$(DISTNAME)/bzlib.c \
|
|
$(DISTNAME)/bzip2.c \
|
|
$(DISTNAME)/bzip2recover.c \
|
|
$(DISTNAME)/bzlib.h \
|
|
$(DISTNAME)/bzlib_private.h \
|
|
$(DISTNAME)/Makefile \
|
|
$(DISTNAME)/LICENSE \
|
|
$(DISTNAME)/bzip2.1 \
|
|
$(DISTNAME)/bzip2.1.preformatted \
|
|
$(DISTNAME)/bzip2.txt \
|
|
$(DISTNAME)/words0 \
|
|
$(DISTNAME)/words1 \
|
|
$(DISTNAME)/words2 \
|
|
$(DISTNAME)/words3 \
|
|
$(DISTNAME)/sample1.ref \
|
|
$(DISTNAME)/sample2.ref \
|
|
$(DISTNAME)/sample3.ref \
|
|
$(DISTNAME)/sample1.bz2 \
|
|
$(DISTNAME)/sample2.bz2 \
|
|
$(DISTNAME)/sample3.bz2 \
|
|
$(DISTNAME)/dlltest.c \
|
|
$(DISTNAME)/manual.html \
|
|
$(DISTNAME)/manual.pdf \
|
|
$(DISTNAME)/manual.ps \
|
|
$(DISTNAME)/README \
|
|
$(DISTNAME)/README.COMPILATION.PROBLEMS \
|
|
$(DISTNAME)/README.XML.STUFF \
|
|
$(DISTNAME)/CHANGES \
|
|
$(DISTNAME)/libbz2.def \
|
|
$(DISTNAME)/libbz2.dsp \
|
|
$(DISTNAME)/dlltest.dsp \
|
|
$(DISTNAME)/makefile.msc \
|
|
$(DISTNAME)/Y2K_INFO \
|
|
$(DISTNAME)/unzcrash.c \
|
|
$(DISTNAME)/spewG.c \
|
|
$(DISTNAME)/mk251.c \
|
|
$(DISTNAME)/bzdiff \
|
|
$(DISTNAME)/bzdiff.1 \
|
|
$(DISTNAME)/bzmore \
|
|
$(DISTNAME)/bzmore.1 \
|
|
$(DISTNAME)/bzgrep \
|
|
$(DISTNAME)/bzgrep.1 \
|
|
$(DISTNAME)/Makefile-libbz2_so \
|
|
$(DISTNAME)/bz-common.xsl \
|
|
$(DISTNAME)/bz-fo.xsl \
|
|
$(DISTNAME)/bz-html.xsl \
|
|
$(DISTNAME)/bzip.css \
|
|
$(DISTNAME)/entities.xml \
|
|
$(DISTNAME)/manual.xml \
|
|
$(DISTNAME)/format.pl \
|
|
$(DISTNAME)/xmlproc.sh
|
|
gzip -v $(DISTNAME).tar
|
|
|
|
# For rebuilding the manual from sources on my SuSE 9.1 box
|
|
|
|
MANUAL_SRCS= bz-common.xsl bz-fo.xsl bz-html.xsl bzip.css \
|
|
entities.xml manual.xml
|
|
|
|
manual: manual.html manual.ps manual.pdf
|
|
|
|
manual.ps: $(MANUAL_SRCS)
|
|
./xmlproc.sh -ps manual.xml
|
|
|
|
manual.pdf: $(MANUAL_SRCS)
|
|
./xmlproc.sh -pdf manual.xml
|
|
|
|
manual.html: $(MANUAL_SRCS)
|
|
./xmlproc.sh -html manual.xml
|