1
SCHEMA=OpenDocument-schema-v1.0-os.rng
2
STRICTSCHEMA=OpenDocument-strict-schema-v1.0-os.rng
3
MANIFESTSCHEMA=OpenDocument-manifest-schema-v1.0-os.rng
4
5
clean:
6
	rm -rf *.odp
7
8
%.odp: %/content.xml %/styles.xml %/mimetype %/META-INF/manifest.xml
9
	cd $* && zip -0 -j ../$(@F) mimetype
10
	cd $* && zip -ru ../$(@F) .
11
	cd $* && unzip -lv ../$(@F)
12
13
%/content.xml: %.xml xmltocontent.xsl
14
	mkdir -p $*
15
	xsltproc -o $*/c xmltocontent.xsl $<
16
	xmlstarlet val -e -r $(SCHEMA) $*/c
17
	xmlstarlet val -e -r $(STRICTSCHEMA) $*/c
18
	mv $*/c $*/content.xml
19
20
%/styles.xml: %.xml xmltostyles.xsl
21
	mkdir -p $*
22
	xsltproc -o $*/s xmltostyles.xsl $<
23
	xmlstarlet val -e -r $(SCHEMA) $*/s
24
	xmlstarlet val -e -r $(STRICTSCHEMA) $*/s
25
	mv $*/s $*/styles.xml
26
27
%/META-INF/manifest.xml: %.xml xmltomanifest.xsl
28
	mkdir -p $*/META-INF
29
	xsltproc -o $*/META-INF/m xmltomanifest.xsl $<
30
	xmlstarlet val -e -r $(MANIFESTSCHEMA) $*/META-INF/m
31
	mv $*/META-INF/m $*/META-INF/manifest.xml
32
33
%/mimetype: %.xml
34
	mkdir -p $*
35
	echo -n "application/vnd.oasis.opendocument.presentation" > $*/mimetype