File: Makerules

package info (click to toggle)
liboptparse-ruby 0.8.4-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 428 kB
  • ctags: 644
  • sloc: ruby: 1,819; makefile: 47
file content (109 lines) | stat: -rw-r--r-- 2,907 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
# -*- makefile -*-
# $Copyleft: (c) 2001 Nobuyoshi Nakada <nobu.nokada@softhome.net> $
# $Id: Makerules,v 1.5 2001/04/13 06:40:58 nobu Exp $

RD2 = rd2
RMI2HTML = rmi2html
RD2RDO = rd2rdo
RD2HTML = rd2html
RD2MAN = rd2man
RD2RMI = rd2rmi
RD2RDOFLAGS =
CSS = rd.css
PARTS = example:rb
RD2FLAGS = $($*-RD2FLAGS)
RD2HTMLFLAGS = $(filter-out %=,--with-css=$(CSS) --with-part=$(PARTS) \
	--html-charset=$(CHARSET) --out-code=$(CHARSET)) \
	$($(basename $*)-RD2HTMLFLAGS) \
	$(if $(suffix $*),$($(suffix $*)-RD2HTMLFLAGS))
RD2MANFLAGS = $(filter-out %=,--out-code=$(CHARSET)) $($*-RD2MANFLAGS)
CHARSET = $(CHARSET-$(subst .,,$(suffix $*)))
RLOG2RDFLAGS = $(if $(wildcard $<,v $(<D)/RCS/$(<F),v),-zLT,--cvs) -2 -h='= ChangeLog of $<'
MANIFESTFLAG = -m $(firstword $(wildcard MANIFEST) $<)
REVISIONFLAG = -f $<
MKTARFLAGS = $(MANIFESTFLAG) $(REVISIONFLAG)
ARCHIVE = $(HOME)/public_html/archive

SRCS = $(PKG:=.rb)
DOCS = $(SRCS) $(wildcard $(SRCS:.rb=.*.rd))
RMIS = $(SRCS:.rb=.rmi)

CHARSET-ja_JP.ujis = euc-jp
CHARSET-ja_JP.sjis = shift_jis
CHARSET-ja_JP = $(CHARSET-ja_JP.ujis)
CHARSET-ja = $(CHARSET-ja_JP)
.ja-RD2HTMLFLAGS = -rrd/jfold

all: help

clean::
	rm -f *.rdo *.rmi
	rm -f $(subst .rb,.html,$(DOCS:.rd=.html))
	rm -f $(subst .rb,.1,$(DOCS:.rd=.1))
ifdef CHANGELOG
	rm -f $(CHANGELOG:=.*)
endif
ifdef RMI
	rm -f $(RMI:=.*)
endif

doc: html man
html: $(DOCS:.rb=.html) $(DOCS:.rd=.html)
ifdef CHANGELOG
html: $(CHANGELOG:=.html)
endif
ifdef RMI
html: $(RMI:=.html)
endif
man: $(DOCS:.rb=.1) $(DOCS:.rd=.1)
dist: $(PKG).tarball
install::
	ruby -rftools -rrbconfig -e 'ARGV.each{|f|File.install(f,Config::CONFIG["sitedir"])}' $(SRCS)

help::
	@echo 'Available targets:'
	@echo '  clean: 	clean work files.'
	@echo '  doc: 		format documents.'
	@echo '  +-html: 	HTML format only.'
	@echo '  +-man: 	MAN format only.'
	@echo '  dist:		make tarball.'
	@echo '  install: 	install file.'

%.tarball: %.rb %.rlog
	mktarball $(MKTARFLAGS) -o $(ARCHIVE) $(<:.rb=) $< $(<:.rb=.rlog)

%.rdo: %.rd
	$(RD2RDO) $(RD2FLAGS) $(RD2RDOFLAGS) -o $* $<
%.rmi: %.rb
	$(RD2RMI) $(RD2FLAGS) -o $* $<
%.html: %.rdo
	$(RD2HTML) $(RD2FLAGS) $(RD2HTMLFLAGS) --from-rdo -o $* $<
%.1: %.rdo
	$(RD2MAN) $(RD2FLAGS) $(RD2MANFLAGS) --from-rdo -o $* $<
%.html: %.rd
	$(RD2HTML) $(RD2FLAGS) $(RD2HTMLFLAGS) -o $* $<
%.1: %.rd
	$(RD2MAN) $(RD2FLAGS) $(RD2MANFLAGS) -o $* $<
%.html: %.rb
	$(RD2HTML) $(RD2FLAGS) $(RD2HTMLFLAGS) -o $* $<
%.1: %.rb
	$(RD2MAN) $(RD2FLAGS) $(RD2MANFLAGS) -o $* $<
%.rlog: %.rb
	rlog2rd $(RLOG2RDFLAGS) $< > $@

ifdef RMI
$(RMI:=.html): $(RMIS)
	$(RMI2HTML) $(RMIS) > $@
endif
ifdef CHANGELOG
$(CHANGELOG:=.html): $(SRCS:.rb=.rlog) $(RMIS)
	$(RD2HTML) $(RD2FLAGS) $(RD2HTMLFLAGS) $(addprefix --with-rmi=,$(RMIS)) -o $(@:.html=) $<
else
%.rd: %.rb
	{ sed -n -e '/^=begin/,/^=end/p' $<; rlog2rd $<;} > $@
endif

%.rd.en: %.rb
	sed -n -e '1i\' -e '# -*- rd -*-' -e '/^=begin/,/^=end/p' $< > $@

.DELETE_ON_ERROR: