expressions: Rewrite code generator in Python.
[pspp] / src / language / expressions / automake.mk
index ad6b684821955859a890c482d2f293cf71e629a9..0ff62645c6d9b8e12984e634221e36614fea13e6 100644 (file)
@@ -1,3 +1,19 @@
+# PSPP - a program for statistical analysis.
+# Copyright (C) 2017 Free Software Foundation, Inc.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
 ## Process this file with automake to produce Makefile.in  -*- makefile -*-
 
 language_expressions_sources = \
@@ -9,7 +25,7 @@ language_expressions_sources = \
        src/language/expressions/private.h \
        src/language/expressions/public.h
 
-expressions_built_sources= \
+expressions_built_sources = \
        src/language/expressions/evaluate.h \
        src/language/expressions/evaluate.inc \
        src/language/expressions/operations.h \
@@ -19,25 +35,19 @@ expressions_built_sources= \
 BUILT_SOURCES += $(expressions_built_sources)
 CLEANFILES += $(expressions_built_sources)
 
-helpers = src/language/expressions/generate.pl \
+helpers = src/language/expressions/generate.py \
        src/language/expressions/operations.def
+EXTRA_DIST += $(helpers)
 
 $(expressions_built_sources): $(helpers)
-EXTRA_DIST += $(helpers) $(expressions_built_sources:=pl)
-AM_CPPFLAGS += -I$(top_builddir)/src/language/expressions \
-       -I$(top_srcdir)/src/language/expressions
+       $(AV_V_GEN)$(MKDIR_P) `dirname $@` && \
+       $(PYTHON3) $< -o $@ -i $(top_srcdir)/src/language/expressions/operations.def
 
-SUFFIXES += .h .hpl .inc .incpl
+AM_CPPFLAGS += -I"$(abs_top_builddir)/src/language/expressions" \
+       -I"$(top_srcdir)/src/language/expressions"
 
-generate_from_pl = $(MKDIR_P) `dirname $@` && \
-       $(PERL) -I $(top_srcdir)/src/language/expressions $< -o $@ -i $(top_srcdir)/src/language/expressions/operations.def
+EXTRA_DIST += src/language/expressions/TODO
 
-.hpl.h:
-       $(generate_from_pl)
-
-.incpl.inc:
-       $(generate_from_pl)
-
-EXTRA_DIST += \
-       src/language/expressions/OChangeLog \
-       src/language/expressions/TODO
+# This seems to be necessary in order to prevent issues building the native
+# build when cross compiling
+src/language/expressions/evaluate.lo: $(expressions_built_sources)