File: Makefile.convert

package info (click to toggle)
khronos-opengl-man4 1.0~svn31251-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 6,368 kB
  • ctags: 267
  • sloc: xml: 93,382; makefile: 730; python: 627; sh: 50; php: 4
file content (65 lines) | stat: -rw-r--r-- 2,536 bytes parent folder | download | duplicates (4)
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
default: convert

# Where to find Docbook 4 man page sources
OLDAPIMAN  = /home/tree/khronos/ogl/trunk/ecosystem/public/sdk/docs/man4
OLDGLSLMAN = /home/tree/khronos/ogl/trunk/ecosystem/public/sdk/docs/manglsl

# Converting Docbook 4 -> Docbook 5 - now use local (up to date) copy
#DB4UPGRADE = /usr/share/xml/docbook/stylesheet/docbook5/db4-upgrade.xsl
DB4UPGRADE = db4-upgrade.xsl
DOCBOOK5CONV = xsltproc $(DB4UPGRADE)

# FOR API

# Files to copy from API parent directory (not legal Docbook 4)
COPYAPIFILES = baseformattable.xml compressedformattable.xml internalformattable.xml texboformattable.xml

# Must edit XIncludes to declare Docbook namespace, which DB4 doesn't allow
# This works on either <table> or <informaltable> root elements
$(COPYAPIFILES): $@
	cp $(OLDAPIMAN)/$@ $@
	sed -i \
	    -e 's#<table>#<table xmlns="http://docbook.org/ns/docbook" version="5.0">#g' \
	    -e 's#<informaltable>#<informaltable xmlns="http://docbook.org/ns/docbook" version="5.0">#g' \
	    $@

SRCAPIXML = $(wildcard $(OLDAPIMAN)/gl[A-Z]*.xml $(OLDAPIMAN)/removedTypes.xml)
APIXML = $(filter-out $(COPYAPIFILES),$(patsubst $(OLDAPIMAN)/%.xml,%.xml,$(SRCAPIXML)))

$(APIXML): %.xml: $(OLDAPIMAN)/%.xml DOCTYPE.txt $(DB4UPGRADE)
	cp DOCTYPE.txt $@
	sed -e 's/&/AMPER/g' < $< | \
	    $(DOCBOOK5CONV) - | \
	    sed -e 's/AMPER/\&/g' >> $@

# FOR GLSL
# Files to copy from parent directory (not legal Docbook 4)
COPYGLSLFILES = funchead.xml varhead.xml version.xml

# Must edit XIncludes to declare Docbook namespace, which DB4 doesn't allow
# This works on all root elements of XIncluded files
$(COPYGLSLFILES): $@
	cp $(OLDGLSLMAN)/$@ $@
	sed -i \
	    -e 's#<funchead>#<funchead xmlns="http://docbook.org/ns/docbook" version="5.0">#g' \
	    -e 's#<varhead>#<varhead xmlns="http://docbook.org/ns/docbook" version="5.0">#g' \
	    -e 's#<root>#<root xmlns="http://docbook.org/ns/docbook" version="5.0">#g' \
	    $@

SRCGLSLXML = $(wildcard $(OLDGLSLMAN)/*.xml)
GLSLXML = $(filter-out $(COPYGLSLFILES),$(patsubst $(OLDGLSLMAN)/%.xml,%.xml,$(SRCGLSLXML)))

$(GLSLXML): %.xml: $(OLDGLSLMAN)/%.xml DOCTYPE.txt $(DB4UPGRADE)
	cp DOCTYPE.txt $@
	sed -e 's/&/AMPER/g' < $< | \
	    $(DOCBOOK5CONV) - | \
	    sed -e 's/AMPER/\&/g' >> $@

# Actually convert API and GLSL pages from Docbook4 -> Docbook 5
convert: $(APIXML) $(COPYAPIFILES) $(GLSLXML) $(COPYGLSLFILES)
	mv packUnorm2x16.xml packUnorm.xml
	mv unpackUnorm2x16.xml unpackUnorm.xml

# Remove generated targets
clean clobber:
	-rm -f $(APIXML) $(GLSLXML) $(COPYAPIFILES) $(COPYGLSLFILES)