home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ruby164.zip / rbemx164.zip / ruby / share / doc / optparse-0.8.2 / Makerules < prev    next >
Encoding:
Text File  |  2001-06-18  |  2.8 KB  |  110 lines

  1. # -*- makefile -*-
  2. # $Copyleft: (c) 2001 Nobuyoshi Nakada <nobu.nokada@softhome.net> $
  3. # $Id: Makerules,v 1.5 2001/04/13 06:40:58 nobu Exp $
  4.  
  5. RD2 = rd2
  6. RMI2HTML = rmi2html
  7. RD2RDO = rd2rdo
  8. RD2HTML = rd2html
  9. RD2MAN = rd2man
  10. RD2RMI = rd2rmi
  11. RD2RDOFLAGS =
  12. CSS = rd.css
  13. PARTS = example:rb
  14. RD2FLAGS = $($*-RD2FLAGS)
  15. RD2HTMLFLAGS = $(filter-out %=,--with-css=$(CSS) --with-part=$(PARTS) \
  16.     --html-charset=$(CHARSET) --out-code=$(CHARSET)) \
  17.     $($(basename $*)-RD2HTMLFLAGS) \
  18.     $(if $(suffix $*),$($(suffix $*)-RD2HTMLFLAGS))
  19. RD2MANFLAGS = $(filter-out %=,--out-code=$(CHARSET)) $($*-RD2MANFLAGS)
  20. CHARSET = $(CHARSET-$(subst .,,$(suffix $*)))
  21. RLOG2RDFLAGS = $(if $(wildcard $<,v $(<D)/RCS/$(<F),v),-zLT,--cvs) -2 -h='= ChangeLog of $<'
  22. MANIFESTFLAG = -m $(firstword $(wildcard MANIFEST) $<)
  23. REVISIONFLAG = -f $<
  24. MKTARFLAGS = $(MANIFESTFLAG) $(REVISIONFLAG)
  25. ARCHIVE = $(HOME)/public_html/archive
  26.  
  27. SRCS = $(PKG:=.rb)
  28. DOCS = $(SRCS) $(wildcard $(SRCS:.rb=.*.rd))
  29. RMIS = $(SRCS:.rb=.rmi)
  30.  
  31. CHARSET-ja_JP.ujis = euc-jp
  32. CHARSET-ja_JP.sjis = shift_jis
  33. CHARSET-ja_JP = $(CHARSET-ja_JP.ujis)
  34. CHARSET-ja = $(CHARSET-ja_JP)
  35. .ja-RD2HTMLFLAGS = -rrd/jfold
  36.  
  37. all: help
  38.  
  39. clean::
  40.     rm -f *.rdo *.rmi
  41.     rm -f $(subst .rb,.html,$(DOCS:.rd=.html))
  42.     rm -f $(subst .rb,.1,$(DOCS:.rd=.1))
  43. ifdef CHANGELOG
  44.     rm -f $(CHANGELOG:=.*)
  45. endif
  46. ifdef RMI
  47.     rm -f $(RMI:=.*)
  48. endif
  49.  
  50. doc: html man
  51. html: $(DOCS:.rb=.html) $(DOCS:.rd=.html)
  52. ifdef CHANGELOG
  53. html: $(CHANGELOG:=.html)
  54. endif
  55. ifdef RMI
  56. html: $(RMI:=.html)
  57. endif
  58. man: $(DOCS:.rb=.1) $(DOCS:.rd=.1)
  59. dist: $(PKG).tarball
  60. install::
  61.     ruby -rftools -rrbconfig -e 'ARGV.each{|f|File.install(f,Config::CONFIG["sitedir"])}' $(SRCS)
  62.  
  63. help::
  64.     @echo 'Available targets:'
  65.     @echo '  clean:     clean work files.'
  66.     @echo '  doc:         format documents.'
  67.     @echo '  +-html:     HTML format only.'
  68.     @echo '  +-man:     MAN format only.'
  69.     @echo '  dist:        make tarball.'
  70.     @echo '  install:     install file.'
  71.  
  72. %.tarball: %.rb %.rlog
  73.     mktarball $(MKTARFLAGS) -o $(ARCHIVE) $(<:.rb=) $< $(<:.rb=.rlog)
  74.  
  75. %.rdo: %.rd
  76.     $(RD2RDO) $(RD2FLAGS) $(RD2RDOFLAGS) -o $* $<
  77. %.rmi: %.rb
  78.     $(RD2RMI) $(RD2FLAGS) -o $* $<
  79. %.html: %.rdo
  80.     $(RD2HTML) $(RD2FLAGS) $(RD2HTMLFLAGS) --from-rdo -o $* $<
  81. %.1: %.rdo
  82.     $(RD2MAN) $(RD2FLAGS) $(RD2MANFLAGS) --from-rdo -o $* $<
  83. %.html: %.rd
  84.     $(RD2HTML) $(RD2FLAGS) $(RD2HTMLFLAGS) -o $* $<
  85. %.1: %.rd
  86.     $(RD2MAN) $(RD2FLAGS) $(RD2MANFLAGS) -o $* $<
  87. %.html: %.rb
  88.     $(RD2HTML) $(RD2FLAGS) $(RD2HTMLFLAGS) -o $* $<
  89. %.1: %.rb
  90.     $(RD2MAN) $(RD2FLAGS) $(RD2MANFLAGS) -o $* $<
  91. %.rlog: %.rb
  92.     rlog2rd $(RLOG2RDFLAGS) $< > $@
  93.  
  94. ifdef RMI
  95. $(RMI:=.html): $(RMIS)
  96.     $(RMI2HTML) $(RMIS) > $@
  97. endif
  98. ifdef CHANGELOG
  99. $(CHANGELOG:=.html): $(SRCS:.rb=.rlog) $(RMIS)
  100.     $(RD2HTML) $(RD2FLAGS) $(RD2HTMLFLAGS) $(addprefix --with-rmi=,$(RMIS)) -o $(@:.html=) $<
  101. else
  102. %.rd: %.rb
  103.     { sed -n -e '/^=begin/,/^=end/p' $<; rlog2rd $<;} > $@
  104. endif
  105.  
  106. %.rd.en: %.rb
  107.     sed -n -e '1i\' -e '# -*- rd -*-' -e '/^=begin/,/^=end/p' $< > $@
  108.  
  109. .DELETE_ON_ERROR:
  110.