--- /dev/null
+XSLTPROC = xsltproc --timing
+FORMAT = xmllint --format
+SUBST = ./subst.pl
+METASTYLESHEET = meta_cic2mathml.xsl
+TMP1 = .tmpfile1
+TMP2 = .tmpfile2
+
+all: algebra.xsl arith.xsl basic.xsl reals.xsl set.xsl
+
+clean:
+ rm -f algebra.xsl arith.xsl basic.xsl reals.xsl set.xsl
+
+algebra.xsl: algebra.xml $(METASTYLESHEET)
+ @echo "**** PROCESSING algebra.xml ****"
+ @$(XSLTPROC) $(METASTYLESHEET) algebra.xml > $(TMP1)
+ @$(FORMAT) $(TMP1) > $(TMP2)
+ @mv $(TMP2) algebra.xsl
+ @rm $(TMP1)
+ @$(SUBST) oxsl: xsl: algebra.xsl
+ @$(SUBST) xmlns:oxsl xmlns:xsl algebra.xsl
+
+arith.xsl: arith.xml $(METASTYLESHEET)
+ @echo "**** PROCESSING arith.xml ****"
+ @$(XSLTPROC) $(METASTYLESHEET) arith.xml > $(TMP1)
+ @$(FORMAT) $(TMP1) > $(TMP2)
+ @mv $(TMP2) arith.xsl
+ @rm $(TMP1)
+ @$(SUBST) oxsl: xsl: arith.xsl
+ @$(SUBST) xmlns:oxsl xmlns:xsl arith.xsl
+
+basic.xsl: basic.xml $(METASTYLESHEET)
+ @echo "**** PROCESSING basic.xml ****"
+ @$(XSLTPROC) $(METASTYLESHEET) basic.xml > $(TMP1)
+ @$(FORMAT) $(TMP1) > $(TMP2)
+ @mv $(TMP2) basic.xsl
+ @rm $(TMP1)
+ @$(SUBST) oxsl: xsl: basic.xsl
+ @$(SUBST) xmlns:oxsl xmlns:xsl basic.xsl
+
+reals.xsl: reals.xml $(METASTYLESHEET)
+ @echo "**** PROCESSING reals.xml ****"
+ @$(XSLTPROC) $(METASTYLESHEET) reals.xml > $(TMP1)
+ @$(FORMAT) $(TMP1) > $(TMP2)
+ @mv $(TMP2) reals.xsl
+ @rm $(TMP1)
+ @$(SUBST) oxsl: xsl: reals.xsl
+ @$(SUBST) xmlns:oxsl xmlns:xsl reals.xsl
+
+set.xsl: set.xml $(METASTYLESHEET)
+ @echo "**** PROCESSING set.xml ****"
+ @$(XSLTPROC) $(METASTYLESHEET) set.xml > $(TMP1)
+ @$(FORMAT) $(TMP1) > $(TMP2)
+ @mv $(TMP2) set.xsl
+ @rm $(TMP1)
+ @$(SUBST) oxsl: xsl: set.xsl
+ @$(SUBST) xmlns:oxsl xmlns:xsl set.xsl