patch-Makefile 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. $OpenBSD: patch-Makefile,v 1.12 2016/03/10 21:58:51 naddy Exp $
  2. --- Makefile.orig Sat Sep 11 00:46:02 2010
  3. +++ Makefile Thu Mar 10 20:07:52 2016
  4. @@ -23,10 +23,9 @@ LDFLAGS=
  5. BIGFILES=-D_FILE_OFFSET_BITS=64
  6. CFLAGS=-Wall -Winline -O2 -g $(BIGFILES)
  7. -# Where you want it installed when you do 'make install'
  8. -PREFIX=/usr/local
  9. +PICFLAG= -fpic
  10. +SHLIB= libbz2.so.${LIBbz2_VERSION}
  11. -
  12. OBJS= blocksort.o \
  13. huffman.o \
  14. crctable.o \
  15. @@ -34,10 +33,12 @@ OBJS= blocksort.o \
  16. compress.o \
  17. decompress.o \
  18. bzlib.o
  19. +SHOBJS= $(OBJS:.o=.so)
  20. -all: libbz2.a bzip2 bzip2recover test
  21. +.SUFFIXES: .o .so
  22. -bzip2: libbz2.a bzip2.o
  23. +all: libbz2.a $(SHLIB) bzip2 bzip2recover
  24. +bzip2: libbz2.a $(SHLIB) bzip2.o
  25. $(CC) $(CFLAGS) $(LDFLAGS) -o bzip2 bzip2.o -L. -lbz2
  26. bzip2recover: bzip2recover.o
  27. @@ -52,66 +53,61 @@ libbz2.a: $(OBJS)
  28. $(RANLIB) libbz2.a ; \
  29. fi
  30. +$(SHLIB): $(SHOBJS)
  31. + rm -f $(SHLIB)
  32. + $(CC) -shared $(PICFLAG) -o $(SHLIB) $(SHOBJS)
  33. +
  34. check: test
  35. test: bzip2
  36. - @cat words1
  37. - ./bzip2 -1 < sample1.ref > sample1.rb2
  38. - ./bzip2 -2 < sample2.ref > sample2.rb2
  39. - ./bzip2 -3 < sample3.ref > sample3.rb2
  40. - ./bzip2 -d < sample1.bz2 > sample1.tst
  41. - ./bzip2 -d < sample2.bz2 > sample2.tst
  42. - ./bzip2 -ds < sample3.bz2 > sample3.tst
  43. - cmp sample1.bz2 sample1.rb2
  44. - cmp sample2.bz2 sample2.rb2
  45. - cmp sample3.bz2 sample3.rb2
  46. - cmp sample1.tst sample1.ref
  47. - cmp sample2.tst sample2.ref
  48. - cmp sample3.tst sample3.ref
  49. - @cat words3
  50. + ./bzip2 -1 < sample1.ref > sample1.rb2 || exit 1
  51. + ./bzip2 -2 < sample2.ref > sample2.rb2 || exit 1
  52. + ./bzip2 -3 < sample3.ref > sample3.rb2 || exit 1
  53. + ./bzip2 -d < sample1.bz2 > sample1.tst || exit 1
  54. + ./bzip2 -d < sample2.bz2 > sample2.tst || exit 1
  55. + ./bzip2 -ds < sample3.bz2 > sample3.tst || exit 1
  56. + cmp sample1.bz2 sample1.rb2 || exit 1
  57. + cmp sample2.bz2 sample2.rb2 || exit 1
  58. + cmp sample3.bz2 sample3.rb2 || exit 1
  59. + cmp sample1.tst sample1.ref || exit 1
  60. + cmp sample2.tst sample2.ref || exit 1
  61. + cmp sample3.tst sample3.ref || exit 1
  62. install: bzip2 bzip2recover
  63. - if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
  64. - if ( test ! -d $(PREFIX)/lib ) ; then mkdir -p $(PREFIX)/lib ; fi
  65. - if ( test ! -d $(PREFIX)/man ) ; then mkdir -p $(PREFIX)/man ; fi
  66. - if ( test ! -d $(PREFIX)/man/man1 ) ; then mkdir -p $(PREFIX)/man/man1 ; fi
  67. - if ( test ! -d $(PREFIX)/include ) ; then mkdir -p $(PREFIX)/include ; fi
  68. - cp -f bzip2 $(PREFIX)/bin/bzip2
  69. - cp -f bzip2 $(PREFIX)/bin/bunzip2
  70. - cp -f bzip2 $(PREFIX)/bin/bzcat
  71. - cp -f bzip2recover $(PREFIX)/bin/bzip2recover
  72. - chmod a+x $(PREFIX)/bin/bzip2
  73. - chmod a+x $(PREFIX)/bin/bunzip2
  74. - chmod a+x $(PREFIX)/bin/bzcat
  75. - chmod a+x $(PREFIX)/bin/bzip2recover
  76. - cp -f bzip2.1 $(PREFIX)/man/man1
  77. - chmod a+r $(PREFIX)/man/man1/bzip2.1
  78. - cp -f bzlib.h $(PREFIX)/include
  79. - chmod a+r $(PREFIX)/include/bzlib.h
  80. - cp -f libbz2.a $(PREFIX)/lib
  81. - chmod a+r $(PREFIX)/lib/libbz2.a
  82. - cp -f bzgrep $(PREFIX)/bin/bzgrep
  83. - ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzegrep
  84. - ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzfgrep
  85. - chmod a+x $(PREFIX)/bin/bzgrep
  86. - cp -f bzmore $(PREFIX)/bin/bzmore
  87. - ln -s -f $(PREFIX)/bin/bzmore $(PREFIX)/bin/bzless
  88. - chmod a+x $(PREFIX)/bin/bzmore
  89. - cp -f bzdiff $(PREFIX)/bin/bzdiff
  90. - ln -s -f $(PREFIX)/bin/bzdiff $(PREFIX)/bin/bzcmp
  91. - chmod a+x $(PREFIX)/bin/bzdiff
  92. - cp -f bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX)/man/man1
  93. - chmod a+r $(PREFIX)/man/man1/bzgrep.1
  94. - chmod a+r $(PREFIX)/man/man1/bzmore.1
  95. - chmod a+r $(PREFIX)/man/man1/bzdiff.1
  96. - echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzegrep.1
  97. - echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzfgrep.1
  98. - echo ".so man1/bzmore.1" > $(PREFIX)/man/man1/bzless.1
  99. - echo ".so man1/bzdiff.1" > $(PREFIX)/man/man1/bzcmp.1
  100. + if ( test ! -d $(DESTDIR)$(PREFIX)/bin ) ; then $(BSD_INSTALL_PROGRAM_DIR) $(DESTDIR)$(PREFIX)/bin ; fi
  101. + if ( test ! -d $(DESTDIR)$(PREFIX)/lib ) ; then $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(PREFIX)/lib ; fi
  102. + if ( test ! -d $(DESTDIR)$(PREFIX)/man ) ; then $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(PREFIX)/man ; fi
  103. + if ( test ! -d $(DESTDIR)$(PREFIX)/man/man1 ) ; then $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(PREFIX)/man/man1 ; fi
  104. + if ( test ! -d $(DESTDIR)$(PREFIX)/include ) ; then $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(PREFIX)/include ; fi
  105. + $(BSD_INSTALL_DATA) libbz2.a $(DESTDIR)$(PREFIX)/lib
  106. + @if [ -f $(SHLIB) ]; then \
  107. + $(BSD_INSTALL_DATA) $(SHLIB) $(DESTDIR)$(PREFIX)/lib; \
  108. + fi
  109. + $(BSD_INSTALL_DATA) bzlib.h $(DESTDIR)$(PREFIX)/include
  110. + $(BSD_INSTALL_PROGRAM) bzip2 bzip2recover $(DESTDIR)$(PREFIX)/bin
  111. + $(BSD_INSTALL_SCRIPT) bzgrep bzmore bzdiff $(DESTDIR)$(PREFIX)/bin
  112. + @cd $(DESTDIR)$(PREFIX)/bin; ln -fs bzip2 bunzip2; \
  113. + ln -fs bzip2 bzcat
  114. + @cd $(DESTDIR)$(PREFIX)/bin; ln -fs bzgrep bzegrep; \
  115. + ln -fs bzgrep bzfgrep
  116. + @cd $(DESTDIR)$(PREFIX)/bin; ln -fs bzmore bzless
  117. + @cd $(DESTDIR)$(PREFIX)/bin; ln -fs bzdiff bzcmp
  118. + $(BSD_INSTALL_MAN) bzip2.1 bzgrep.1 bzmore.1 bzdiff.1 \
  119. + $(DESTDIR)$(PREFIX)/man/man1
  120. + @cd $(DESTDIR)$(PREFIX)/man/man1; ln -fs bzip2.1 bunzip2.1; \
  121. + ln -fs bzip2.1 bzcat.1; \
  122. + ln -fs bzip2.1 bzip2recover.1
  123. + @cd $(DESTDIR)$(PREFIX)/man/man1; ln -fs bzgrep.1 bzegrep.1; \
  124. + ln -fs bzgrep.1 bzfgrep.1
  125. + @cd $(DESTDIR)$(PREFIX)/man/man1; ln -fs bzmore.1 bzless.1
  126. + @cd $(DESTDIR)$(PREFIX)/man/man1; ln -fs bzdiff.1 bzcmp.1
  127. clean:
  128. - rm -f *.o libbz2.a bzip2 bzip2recover \
  129. + rm -f *.o *.so libbz2.a $(SHLIB) bzip2 bzip2recover \
  130. sample1.rb2 sample2.rb2 sample3.rb2 \
  131. sample1.tst sample2.tst sample3.tst
  132. +
  133. +.c.so:
  134. + $(CC) $(CFLAGS) $(PICFLAG) -DPIC -c $? -o $@
  135. blocksort.o: blocksort.c
  136. @cat words0