Newer
Older
tconfpy / makefile
@tundra tundra on 16 Jan 2005 1 KB Simplified version extraction.
  1. # Build a release of tconfpy using 'make'
  2. # $Id: makefile,v 1.105 2005/01/16 10:17:00 tundra Exp $
  3. # Requires a modern 'make' like GNU.
  4.  
  5.  
  6. PROGNAME=tconfpy
  7. TESTPROG=test-tc
  8.  
  9. VERSION = $(shell rlog -v ${PROGNAME}.py | cut -f 2 -d " ")
  10.  
  11. HEADER1 = "WHATSNEW For '${PROGNAME}' ${VERSION} (`date`)"
  12. HEADER2 = "----------------------------------------------------------------------"
  13.  
  14.  
  15. PREFIX = py-${PROGNAME}
  16. DIR = ${PREFIX}-${VERSION}
  17. TARBALL = ${DIR}.tar.gz
  18.  
  19. PROGFILES = ${PROGNAME}.py ${TESTPROG}.py
  20.  
  21. SUPPFILES = ${PROGNAME}-license.txt CHANGELOG.txt Makefile READ-1ST.txt WHATSNEW.txt setup.py example.cfg
  22.  
  23. DOCFILES = ${PROGNAME}.html ${PROGNAME}.pdf ${PROGNAME}.ps ${PROGNAME}.py.ps ${PROGNAME}.txt \
  24. ${TESTPROG}.html ${TESTPROG}.pdf ${TESTPROG}.ps ${TESTPROG}.py.ps ${TESTPROG}.txt \
  25. ${TESTPROG}.1.gz ${PROGNAME}.3.gz
  26.  
  27.  
  28. #####
  29. # Pattern Rules
  30. #####
  31.  
  32. %.html: %.1
  33. @manserver $< >$@
  34.  
  35. %.html: %.3
  36. @manserver $< >$@
  37.  
  38. %.pdf: %.ps
  39. @gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=$@ $<
  40.  
  41. %.ps: %.1
  42. @groff -man -Tps $< >$@
  43.  
  44. %.ps: %.3
  45. @groff -man -Tps $< >$@
  46.  
  47. %.py.ps: %.py
  48. @enscript -Epython -fCourier8 -i2 -L77 -C --mark-wrapped-lines=arrow -p$@ $<
  49.  
  50. %.txt: %.1
  51. @groff -man -Tascii $< | col -xb >$@
  52.  
  53. %.txt: %.3
  54. @groff -man -Tascii $< | col -xb >$@
  55.  
  56. %.1.gz: %.1
  57. @gzip $<
  58.  
  59. %.3.gz: %.3
  60. @gzip $<
  61.  
  62. #####
  63. # Actual Build Rules
  64. #####
  65.  
  66. clean:
  67. @rm -rf ${DOCFILES} ${PROGFILES} ${SUPPFILES} ${DIR} ${PREFIX}*
  68.  
  69. version:
  70. @echo ${VERSION}
  71.  
  72. CHANGELOG.txt:
  73. @rlog ${PROGNAME}.py >CHANGELOG.txt
  74.  
  75. docs: ${DOCFILES} ${SUPPFILES}
  76. @chmod 644 ${DOCFILES} ${SUPPFILES}
  77. @chmod 644 *.gz *.txt
  78. @flip -u *txt
  79.  
  80. progs: ${PROGFILES}
  81. chmod 755 ${PROGFILES}
  82.  
  83. release: docs progs
  84. @mkdir ${DIR}
  85. @mv ${DOCFILES} ${PROGFILES} ${SUPPFILES} ${DIR}
  86. @tar -czvf ${DIR}.tar.gz ${DIR}
  87. @rm -rf ${DIR}
  88. # @mv ${DIR}.tar.gz Releases
  89.  
  90.