-ginacinclude_HEADERS = ginac.h add.h basic.h clifford.h color.h coloridx.h \
- constant.h debugmsg.h ex.h expair.h expairseq.h exprseq.h fail.h flags.h \
- function.h idx.h indexed.h inifcns.h isospin.h lorentzidx.h lst.h matrix.h \
- mul.h ncmul.h normal.h numeric.h operators.h power.h relational.h series.h \
- simp_lor.h structure.h symbol.h tinfos.h
+ginacinclude_HEADERS = ginac.h add.h archive.h basic.h constant.h ex.h \
+ expair.h expairseq.h exprseq.h fail.h flags.h function.h inifcns.h \
+ lst.h matrix.h mul.h ncmul.h normal.h numeric.h operators.h power.h \
+ registrar.h relational.h pseries.h structure.h symbol.h tinfos.h assertion.h \
+ version.h idx.h indexed.h tensor.h color.h clifford.h wildcard.h print.h \
+ symmetry.h fderivative.h
+LFLAGS = -Pginac_yy -olex.yy.c
+YFLAGS = -p ginac_yy -d
+EXTRA_DIST = container.pl function.pl structure.pl input_parser.h version.h.in
+
+# Files which are generated by perl scripts
+$(srcdir)/function.h $(srcdir)/function.cpp: $(srcdir)/function.pl
+ cd $(srcdir) && perl -w function.pl
+
+$(srcdir)/lst.h $(srcdir)/lst.cpp: $(srcdir)/container.pl
+ cd $(srcdir) && perl -w container.pl lst
+
+$(srcdir)/exprseq.h $(srcdir)/exprseq.cpp: $(srcdir)/container.pl
+ cd $(srcdir) && perl -w container.pl exprseq
+
+# Force build of headers before compilation
+$(srcdir)/add.cpp: $(srcdir)/function.h $(srcdir)/lst.h $(srcdir)/exprseq.h