diff -ru bzip2-1.0.2/Makefile bzip2-1.0.2-patched/Makefile --- bzip2-1.0.2/Makefile Sat Jan 26 00:34:53 2002 +++ bzip2-1.0.2-patched/Makefile Sun Mar 31 00:15:27 2002 @@ -1,15 +1,18 @@ +# This Makefile builds a shared version of the library, +# libbz2.1.0.2.dylib, with install_name .../libbz2.1.dylib, +# on Darwin and Mac OS X. SHELL=/bin/sh # To assist in cross-compiling -CC=gcc +CC=cc AR=ar RANLIB=ranlib LDFLAGS= # Suitably paranoid flags to avoid bugs in gcc-2.7 BIGFILES=-D_FILE_OFFSET_BITS=64 -CFLAGS=-Wall -Winline -O2 -fomit-frame-pointer -fno-strength-reduce $(BIGFILES) +CFLAGS=-fno-common -Wall -Winline -O2 -fomit-frame-pointer -fno-strength-reduce $(BIGFILES) # Where you want it installed when you do 'make install' PREFIX=/usr @@ -23,32 +26,29 @@ decompress.o \ bzlib.o -all: libbz2.a bzip2 bzip2recover test +all: libbz2.dylib bzip2 bzip2recover test -bzip2: libbz2.a bzip2.o +bzip2: libbz2.dylib 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) cq 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 +libbz2.dylib: $(OBJS) + rm -f libbz2.dylib libbz2.*.dylib + $(CC) -dynamiclib -o libbz2.1.0.2.dylib $(OBJS) -install_name $(PREFIX)/lib/libbz2.1.dylib -compatibility_version 1.0.1 -current_version 1.0.2 + ln -s libbz2.1.0.2.dylib libbz2.1.dylib + ln -s libbz2.1.0.2.dylib libbz2.dylib check: test test: bzip2 @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 + DYLD_LIBRARY_PATH=. ./bzip2 -1 < sample1.ref > sample1.rb2 + DYLD_LIBRARY_PATH=. ./bzip2 -2 < sample2.ref > sample2.rb2 + DYLD_LIBRARY_PATH=. ./bzip2 -3 < sample3.ref > sample3.rb2 + DYLD_LIBRARY_PATH=. ./bzip2 -d < sample1.bz2 > sample1.tst + DYLD_LIBRARY_PATH=. ./bzip2 -d < sample2.bz2 > sample2.tst + DYLD_LIBRARY_PATH=. ./bzip2 -ds < sample3.bz2 > sample3.tst cmp sample1.bz2 sample1.rb2 cmp sample2.bz2 sample2.rb2 cmp sample3.bz2 sample3.rb2 @@ -60,8 +60,9 @@ 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)/share ) ; then mkdir -p $(PREFIX)/share ; fi + if ( test ! -d $(PREFIX)/share/man ) ; then mkdir -p $(PREFIX)/share/man ; fi + if ( test ! -d $(PREFIX)/share/man/man1 ) ; then mkdir -p $(PREFIX)/share/man/man1 ; fi if ( test ! -d $(PREFIX)/include ) ; then mkdir -p $(PREFIX)/include ; fi cp -f bzip2 $(PREFIX)/bin/bzip2 cp -f bzip2 $(PREFIX)/bin/bunzip2 @@ -71,12 +72,14 @@ chmod a+x $(PREFIX)/bin/bunzip2 chmod a+x $(PREFIX)/bin/bzcat chmod a+x $(PREFIX)/bin/bzip2recover - cp -f bzip2.1 $(PREFIX)/man/man1 - chmod a+r $(PREFIX)/man/man1/bzip2.1 + cp -f bzip2.1 $(PREFIX)/share/man/man1 + chmod a+r $(PREFIX)/share/man/man1/bzip2.1 cp -f bzlib.h $(PREFIX)/include chmod a+r $(PREFIX)/include/bzlib.h - cp -f libbz2.a $(PREFIX)/lib - chmod a+r $(PREFIX)/lib/libbz2.a + cp -f libbz2.1.0.2.dylib $(PREFIX)/lib + chmod a+rx $(PREFIX)/lib/libbz2.1.0.2.dylib + (cd $(PREFIX)/lib && rm -f libbz2.1.dylib && ln -s libbz2.1.0.2.dylib libbz2.1.dylib) + (cd $(PREFIX)/lib && rm -f libbz2.dylib && ln -s libbz2.1.0.2.dylib libbz2.dylib) cp -f bzgrep $(PREFIX)/bin/bzgrep ln $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzegrep ln $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzfgrep @@ -87,18 +90,18 @@ cp -f bzdiff $(PREFIX)/bin/bzdiff ln $(PREFIX)/bin/bzdiff $(PREFIX)/bin/bzcmp chmod a+x $(PREFIX)/bin/bzdiff - cp -f 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 + cp -f bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX)/share/man/man1 + chmod a+r $(PREFIX)/share/man/man1/bzgrep.1 + chmod a+r $(PREFIX)/share/man/man1/bzmore.1 + chmod a+r $(PREFIX)/share/man/man1/bzdiff.1 + echo ".so man1/bzgrep.1" > $(PREFIX)/share/man/man1/bzegrep.1 + echo ".so man1/bzgrep.1" > $(PREFIX)/share/man/man1/bzfgrep.1 + echo ".so man1/bzmore.1" > $(PREFIX)/share/man/man1/bzless.1 + echo ".so man1/bzdiff.1" > $(PREFIX)/share/man/man1/bzcmp.1 distclean: clean clean: - rm -f *.o libbz2.a bzip2 bzip2recover \ + rm -f *.o libbz2.dylib bzip2 bzip2recover \ sample1.rb2 sample2.rb2 sample3.rb2 \ sample1.tst sample2.tst sample3.tst