Blame Makefile

Packit 71fd91
# ------------------------------------------------------------------
Packit 71fd91
# This file is part of bzip2/libbzip2, a program and library for
Packit 71fd91
# lossless, block-sorting data compression.
Packit 71fd91
#
Packit 71fd91
# bzip2/libbzip2 version 1.0.6 of 6 September 2010
Packit 71fd91
# Copyright (C) 1996-2010 Julian Seward <jseward@bzip.org>
Packit 71fd91
#
Packit 71fd91
# Please read the WARNING, DISCLAIMER and PATENTS sections in the 
Packit 71fd91
# README file.
Packit 71fd91
#
Packit 71fd91
# This program is released under the terms of the license contained
Packit 71fd91
# in the file LICENSE.
Packit 71fd91
# ------------------------------------------------------------------
Packit 71fd91
Packit 71fd91
SHELL=/bin/sh
Packit 71fd91
Packit 71fd91
# To assist in cross-compiling
Packit 71fd91
CC=gcc
Packit 71fd91
AR=ar
Packit 71fd91
RANLIB=ranlib
Packit 71fd91
LDFLAGS=
Packit 71fd91
Packit 71fd91
BIGFILES=-D_FILE_OFFSET_BITS=64
Packit 71fd91
CFLAGS=-Wall -Winline -O2 -g $(BIGFILES)
Packit 71fd91
Packit 71fd91
# Where you want it installed when you do 'make install'
Packit 71fd91
PREFIX=/usr/local
Packit 71fd91
Packit 71fd91
Packit 71fd91
OBJS= blocksort.o  \
Packit 71fd91
      huffman.o    \
Packit 71fd91
      crctable.o   \
Packit 71fd91
      randtable.o  \
Packit 71fd91
      compress.o   \
Packit 71fd91
      decompress.o \
Packit 71fd91
      bzlib.o
Packit 71fd91
Packit 71fd91
all: libbz2.a bzip2 bzip2recover test
Packit 71fd91
Packit 71fd91
bzip2: libbz2.a bzip2.o
Packit 71fd91
	$(CC) $(CFLAGS) $(LDFLAGS) -o bzip2 bzip2.o -L. -lbz2
Packit 71fd91
Packit 71fd91
bzip2recover: bzip2recover.o
Packit 71fd91
	$(CC) $(CFLAGS) $(LDFLAGS) -o bzip2recover bzip2recover.o
Packit 71fd91
Packit 71fd91
libbz2.a: $(OBJS)
Packit 71fd91
	rm -f libbz2.a
Packit 71fd91
	$(AR) cq libbz2.a $(OBJS)
Packit 71fd91
	@if ( test -f $(RANLIB) -o -f /usr/bin/ranlib -o \
Packit 71fd91
		-f /bin/ranlib -o -f /usr/ccs/bin/ranlib ) ; then \
Packit 71fd91
		echo $(RANLIB) libbz2.a ; \
Packit 71fd91
		$(RANLIB) libbz2.a ; \
Packit 71fd91
	fi
Packit 71fd91
Packit 71fd91
check: test
Packit 71fd91
test: bzip2
Packit 71fd91
	@cat words1
Packit 71fd91
	./bzip2 -1  < sample1.ref > sample1.rb2
Packit 71fd91
	./bzip2 -2  < sample2.ref > sample2.rb2
Packit 71fd91
	./bzip2 -3  < sample3.ref > sample3.rb2
Packit 71fd91
	./bzip2 -d  < sample1.bz2 > sample1.tst
Packit 71fd91
	./bzip2 -d  < sample2.bz2 > sample2.tst
Packit 71fd91
	./bzip2 -ds < sample3.bz2 > sample3.tst
Packit 71fd91
	cmp sample1.bz2 sample1.rb2 
Packit 71fd91
	cmp sample2.bz2 sample2.rb2
Packit 71fd91
	cmp sample3.bz2 sample3.rb2
Packit 71fd91
	cmp sample1.tst sample1.ref
Packit 71fd91
	cmp sample2.tst sample2.ref
Packit 71fd91
	cmp sample3.tst sample3.ref
Packit 71fd91
	@cat words3
Packit 71fd91
Packit 71fd91
install: bzip2 bzip2recover
Packit 71fd91
	if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
Packit 71fd91
	if ( test ! -d $(PREFIX)/lib ) ; then mkdir -p $(PREFIX)/lib ; fi
Packit 71fd91
	if ( test ! -d $(PREFIX)/man ) ; then mkdir -p $(PREFIX)/man ; fi
Packit 71fd91
	if ( test ! -d $(PREFIX)/man/man1 ) ; then mkdir -p $(PREFIX)/man/man1 ; fi
Packit 71fd91
	if ( test ! -d $(PREFIX)/include ) ; then mkdir -p $(PREFIX)/include ; fi
Packit 71fd91
	cp -f bzip2 $(PREFIX)/bin/bzip2
Packit 71fd91
	cp -f bzip2 $(PREFIX)/bin/bunzip2
Packit 71fd91
	cp -f bzip2 $(PREFIX)/bin/bzcat
Packit 71fd91
	cp -f bzip2recover $(PREFIX)/bin/bzip2recover
Packit 71fd91
	chmod a+x $(PREFIX)/bin/bzip2
Packit 71fd91
	chmod a+x $(PREFIX)/bin/bunzip2
Packit 71fd91
	chmod a+x $(PREFIX)/bin/bzcat
Packit 71fd91
	chmod a+x $(PREFIX)/bin/bzip2recover
Packit 71fd91
	cp -f bzip2.1 $(PREFIX)/man/man1
Packit 71fd91
	chmod a+r $(PREFIX)/man/man1/bzip2.1
Packit 71fd91
	cp -f bzlib.h $(PREFIX)/include
Packit 71fd91
	chmod a+r $(PREFIX)/include/bzlib.h
Packit 71fd91
	cp -f libbz2.a $(PREFIX)/lib
Packit 71fd91
	chmod a+r $(PREFIX)/lib/libbz2.a
Packit 71fd91
	cp -f bzgrep $(PREFIX)/bin/bzgrep
Packit 71fd91
	ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzegrep
Packit 71fd91
	ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzfgrep
Packit 71fd91
	chmod a+x $(PREFIX)/bin/bzgrep
Packit 71fd91
	cp -f bzmore $(PREFIX)/bin/bzmore
Packit 71fd91
	ln -s -f $(PREFIX)/bin/bzmore $(PREFIX)/bin/bzless
Packit 71fd91
	chmod a+x $(PREFIX)/bin/bzmore
Packit 71fd91
	cp -f bzdiff $(PREFIX)/bin/bzdiff
Packit 71fd91
	ln -s -f $(PREFIX)/bin/bzdiff $(PREFIX)/bin/bzcmp
Packit 71fd91
	chmod a+x $(PREFIX)/bin/bzdiff
Packit 71fd91
	cp -f bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX)/man/man1
Packit 71fd91
	chmod a+r $(PREFIX)/man/man1/bzgrep.1
Packit 71fd91
	chmod a+r $(PREFIX)/man/man1/bzmore.1
Packit 71fd91
	chmod a+r $(PREFIX)/man/man1/bzdiff.1
Packit 71fd91
	echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzegrep.1
Packit 71fd91
	echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzfgrep.1
Packit 71fd91
	echo ".so man1/bzmore.1" > $(PREFIX)/man/man1/bzless.1
Packit 71fd91
	echo ".so man1/bzdiff.1" > $(PREFIX)/man/man1/bzcmp.1
Packit 71fd91
Packit 71fd91
clean: 
Packit 71fd91
	rm -f *.o libbz2.a bzip2 bzip2recover \
Packit 71fd91
	sample1.rb2 sample2.rb2 sample3.rb2 \
Packit 71fd91
	sample1.tst sample2.tst sample3.tst
Packit 71fd91
Packit 71fd91
blocksort.o: blocksort.c
Packit 71fd91
	@cat words0
Packit 71fd91
	$(CC) $(CFLAGS) -c blocksort.c
Packit 71fd91
huffman.o: huffman.c
Packit 71fd91
	$(CC) $(CFLAGS) -c huffman.c
Packit 71fd91
crctable.o: crctable.c
Packit 71fd91
	$(CC) $(CFLAGS) -c crctable.c
Packit 71fd91
randtable.o: randtable.c
Packit 71fd91
	$(CC) $(CFLAGS) -c randtable.c
Packit 71fd91
compress.o: compress.c
Packit 71fd91
	$(CC) $(CFLAGS) -c compress.c
Packit 71fd91
decompress.o: decompress.c
Packit 71fd91
	$(CC) $(CFLAGS) -c decompress.c
Packit 71fd91
bzlib.o: bzlib.c
Packit 71fd91
	$(CC) $(CFLAGS) -c bzlib.c
Packit 71fd91
bzip2.o: bzip2.c
Packit 71fd91
	$(CC) $(CFLAGS) -c bzip2.c
Packit 71fd91
bzip2recover.o: bzip2recover.c
Packit 71fd91
	$(CC) $(CFLAGS) -c bzip2recover.c
Packit 71fd91
Packit 71fd91
Packit 71fd91
distclean: clean
Packit 71fd91
	rm -f manual.ps manual.html manual.pdf
Packit 71fd91
Packit 71fd91
DISTNAME=bzip2-1.0.6
Packit 71fd91
dist: check manual
Packit 71fd91
	rm -f $(DISTNAME)
Packit 71fd91
	ln -s -f . $(DISTNAME)
Packit 71fd91
	tar cvf $(DISTNAME).tar \
Packit 71fd91
	   $(DISTNAME)/blocksort.c \
Packit 71fd91
	   $(DISTNAME)/huffman.c \
Packit 71fd91
	   $(DISTNAME)/crctable.c \
Packit 71fd91
	   $(DISTNAME)/randtable.c \
Packit 71fd91
	   $(DISTNAME)/compress.c \
Packit 71fd91
	   $(DISTNAME)/decompress.c \
Packit 71fd91
	   $(DISTNAME)/bzlib.c \
Packit 71fd91
	   $(DISTNAME)/bzip2.c \
Packit 71fd91
	   $(DISTNAME)/bzip2recover.c \
Packit 71fd91
	   $(DISTNAME)/bzlib.h \
Packit 71fd91
	   $(DISTNAME)/bzlib_private.h \
Packit 71fd91
	   $(DISTNAME)/Makefile \
Packit 71fd91
	   $(DISTNAME)/LICENSE \
Packit 71fd91
	   $(DISTNAME)/bzip2.1 \
Packit 71fd91
	   $(DISTNAME)/bzip2.1.preformatted \
Packit 71fd91
	   $(DISTNAME)/bzip2.txt \
Packit 71fd91
	   $(DISTNAME)/words0 \
Packit 71fd91
	   $(DISTNAME)/words1 \
Packit 71fd91
	   $(DISTNAME)/words2 \
Packit 71fd91
	   $(DISTNAME)/words3 \
Packit 71fd91
	   $(DISTNAME)/sample1.ref \
Packit 71fd91
	   $(DISTNAME)/sample2.ref \
Packit 71fd91
	   $(DISTNAME)/sample3.ref \
Packit 71fd91
	   $(DISTNAME)/sample1.bz2 \
Packit 71fd91
	   $(DISTNAME)/sample2.bz2 \
Packit 71fd91
	   $(DISTNAME)/sample3.bz2 \
Packit 71fd91
	   $(DISTNAME)/dlltest.c \
Packit 71fd91
	   $(DISTNAME)/manual.html \
Packit 71fd91
	   $(DISTNAME)/manual.pdf \
Packit 71fd91
	   $(DISTNAME)/manual.ps \
Packit 71fd91
	   $(DISTNAME)/README \
Packit 71fd91
	   $(DISTNAME)/README.COMPILATION.PROBLEMS \
Packit 71fd91
	   $(DISTNAME)/README.XML.STUFF \
Packit 71fd91
	   $(DISTNAME)/CHANGES \
Packit 71fd91
	   $(DISTNAME)/libbz2.def \
Packit 71fd91
	   $(DISTNAME)/libbz2.dsp \
Packit 71fd91
	   $(DISTNAME)/dlltest.dsp \
Packit 71fd91
	   $(DISTNAME)/makefile.msc \
Packit 71fd91
	   $(DISTNAME)/unzcrash.c \
Packit 71fd91
	   $(DISTNAME)/spewG.c \
Packit 71fd91
	   $(DISTNAME)/mk251.c \
Packit 71fd91
	   $(DISTNAME)/bzdiff \
Packit 71fd91
	   $(DISTNAME)/bzdiff.1 \
Packit 71fd91
	   $(DISTNAME)/bzmore \
Packit 71fd91
	   $(DISTNAME)/bzmore.1 \
Packit 71fd91
	   $(DISTNAME)/bzgrep \
Packit 71fd91
	   $(DISTNAME)/bzgrep.1 \
Packit 71fd91
	   $(DISTNAME)/Makefile-libbz2_so \
Packit 71fd91
	   $(DISTNAME)/bz-common.xsl \
Packit 71fd91
	   $(DISTNAME)/bz-fo.xsl \
Packit 71fd91
	   $(DISTNAME)/bz-html.xsl \
Packit 71fd91
	   $(DISTNAME)/bzip.css \
Packit 71fd91
	   $(DISTNAME)/entities.xml \
Packit 71fd91
	   $(DISTNAME)/manual.xml \
Packit 71fd91
	   $(DISTNAME)/format.pl \
Packit 71fd91
	   $(DISTNAME)/xmlproc.sh
Packit 71fd91
	gzip -v $(DISTNAME).tar
Packit 71fd91
Packit 71fd91
# For rebuilding the manual from sources on my SuSE 9.1 box
Packit 71fd91
Packit 71fd91
MANUAL_SRCS= 	bz-common.xsl bz-fo.xsl bz-html.xsl bzip.css \
Packit 71fd91
		entities.xml manual.xml 
Packit 71fd91
Packit 71fd91
manual: manual.html manual.ps manual.pdf
Packit 71fd91
Packit 71fd91
manual.ps: $(MANUAL_SRCS)
Packit 71fd91
	./xmlproc.sh -ps manual.xml
Packit 71fd91
Packit 71fd91
manual.pdf: $(MANUAL_SRCS)
Packit 71fd91
	./xmlproc.sh -pdf manual.xml
Packit 71fd91
Packit 71fd91
manual.html: $(MANUAL_SRCS)
Packit 71fd91
	./xmlproc.sh -html manual.xml