File: Jamrules-funnelweb

package info (click to toggle)
ftjam 2.5.2-1.1
  • links: PTS
  • area: main
  • in suites: bullseye, buster, jessie, jessie-kfreebsd, lenny, squeeze, stretch, wheezy
  • size: 1,216 kB
  • ctags: 1,237
  • sloc: ansic: 7,226; sh: 2,751; yacc: 443; makefile: 121
file content (67 lines) | stat: -rw-r--r-- 1,208 bytes parent folder | download | duplicates (7)
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
# Jam rules for Funnelweb

# Usage:

# include "Jamrules-funnelweb" ;
# FwebProducts main.c util.c : foo.fw ;


#  Ideally we should not have to explicitely to use the *Products rules,
# but I don't know yet how to autocompute files to be produced.  Could this
# be a Jam limitation ?
#  For now the *Products rules are used to trigger the weave process.  They
# should be invoked by the same wrappers that should invoke *Products.

NOTFILE tex html ;

#  note: we attempt to emulate standard UN*X behaviour by using the .lis
# output file, which we do not leave behind.

rule FunnelwebProducts
{
	Depends $(<) : $(>) ;
	Depends all : $(<) ;
	Clean clean : $(<) ;

	# weave
	FunnelwebTex $(>:S=.tex) : $(>) ;
	FunnelwebHtml $(>:S=.html) : $(>) ;
	Depends tex : $(>:S=.tex) ;
	Depends html : $(>:S=.html) ;
}

actions FunnelwebProducts
{
	# tangle
	fw +L $(>)
	cat $(>:S=.lis)
	rm -f $(>:S=.lis)
}

rule FunnelwebTex
{
	Depends $(<) : $(>) ;
	Clean clean : $(<) ;

	Tex $(<) ;
}

actions FunnelwebTex
{
	fw +L -O +T $(>)
	cat $(>:S=.lis)
	rm -f $(>:S=.lis)
}

rule FunnelwebHtml
{
	Depends $(<) : $(>) ;
	Clean clean : $(<) ;
}

actions FunnelwebHtml
{
	fw +L -O +U $(>)
	cat $(>:S=.lis)
	rm -f $(>:S=.lis)
}