X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginsh%2FMakefile.am;h=b0dfd69cff3df6e3d80f351f1718bf4884d05c42;hp=6789fc4429e22898e52b91fee95551418668484d;hb=HEAD;hpb=46e10827e1cb1888ab5419b16d3381d29161daa5 diff --git a/ginsh/Makefile.am b/ginsh/Makefile.am index 6789fc44..b0dfd69c 100644 --- a/ginsh/Makefile.am +++ b/ginsh/Makefile.am @@ -1,22 +1,27 @@ ## Process this file with automake to produce Makefile.in bin_PROGRAMS = ginsh -ginsh_SOURCES = ginsh_parser.yy ginsh_lexer.ll ginsh.h ginsh_extensions.h +BUILT_SOURCES = ginsh_parser.cpp ginsh_lexer.cpp ginsh_parser.hpp +ginsh_SOURCES = ginsh_parser.cpp ginsh_parser.hpp ginsh_lexer.lpp ginsh.h ginsh_extensions.h ginsh_LDADD = ../ginac/libginac.la $(GINSH_LIBS) -INCLUDES = -I$(srcdir)/../ginac -I../ginac -DIN_GINAC -AM_YFLAGS = -d +AM_CPPFLAGS = -I$(srcdir)/../ginac -I../ginac -DIN_GINAC man_MANS = ginsh.1 CLEANFILES = ginsh_fcn_help.h ginsh_op_help.h -EXTRA_DIST = ginsh_parser.h ginsh_fcn_help.sed ginsh_op_help.sed +EXTRA_DIST = ginsh_parser.ypp ginsh_fcn_help.py ginsh_op_help.py CMakeLists.txt # files created by sed scripts -ginsh_fcn_help.h: ginsh.1 $(srcdir)/ginsh_fcn_help.sed - sed -n -f $(srcdir)/ginsh_fcn_help.sed <$< >$@ +ginsh_fcn_help.h: ginsh.1.in $(srcdir)/ginsh_fcn_help.py + $(PYTHON) $(srcdir)/ginsh_fcn_help.py -o $@ $< -ginsh_op_help.h: ginsh.1 $(srcdir)/ginsh_op_help.sed - sed -n -f $(srcdir)/ginsh_op_help.sed <$< >$@ +ginsh_op_help.h: ginsh.1 $(srcdir)/ginsh_op_help.py + $(PYTHON) $(srcdir)/ginsh_op_help.py -o $@ $< -ginsh_parser.o: ginsh_fcn_help.h ginsh_op_help.h ginsh_parser.h +# automake <=1.11 and automake >=1.12 have different conventions for naming C++ header files +# made by yacc. To work with both, we write our own rule rather than using automake's. +ginsh_parser.cpp ginsh_parser.hpp: ginsh_parser.ypp + $(YACC) $(YFLAGS) -o ginsh_parser.cpp --defines=ginsh_parser.hpp $< + +ginsh_parser.o: ginsh_fcn_help.h ginsh_op_help.h ginsh_parser.hpp