changeset 9913:5cd48568ec59

src/Makefile.am: generate output in mkdefs script, not Makefile
author John W. Eaton <jwe@octave.org>
date Fri, 04 Dec 2009 12:55:41 -0500
parents e9fe12c1b0c0
children e76d8c767584
files src/ChangeLog src/Makefile.am src/mkdefs
diffstat 3 files changed, 30 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Fri Dec 04 09:45:15 2009 -0800
+++ b/src/ChangeLog	Fri Dec 04 12:55:41 2009 -0500
@@ -1,3 +1,9 @@
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (mkdefs): New arguments, srcdir and file.
+	Generate output here.
+	(.cc.df): Not here.
+
 2009-12-04  John W. Eaton  <jwe@octave.org>
 
 	* Makefile.am (BUILT_SOURCES): Include graphics-props.cc in the list.
--- a/src/Makefile.am	Fri Dec 04 09:45:15 2009 -0800
+++ b/src/Makefile.am	Fri Dec 04 12:55:41 2009 -0500
@@ -92,16 +92,9 @@
 DLL_CXXDEFS = @OCTINTERP_DLL_DEFS@
 
 .cc.df:	
-	(echo "// DO NOT EDIT!  Generated automatically by mkdefs." ; \
-	  case "$<" in \
-	    $(srcdir)/*) xsrcdir="`echo $< | sed 's,^$(srcdir),src,'`" ;; \
-	    *) xsrcdir="src/$<" ;; \
-	  esac ; \
-	  echo " XDEFUN_FILE_NAME (\"$$xsrcdir\")" ; \
-	  egrep '^(///*|/\*) *PKG_ADD:' $< ; \
-	  $(CXXCPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-	    $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) \
-	    -DMAKE_BUILTINS $< | $(srcdir)/mkdefs) > $@-t
+	$(CXXCPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+	  $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) \
+	  -DMAKE_BUILTINS $< | $(srcdir)/mkdefs $(srcdir) $< > $@-t
 	mv $@-t $@
 
 OPT_HANDLERS = \
--- a/src/mkdefs	Fri Dec 04 09:45:15 2009 -0800
+++ b/src/mkdefs	Fri Dec 04 12:55:41 2009 -0500
@@ -1,6 +1,6 @@
 #! /bin/sh
 #
-# Copyright (C) 1996, 1999, 2000, 2003, 2006, 2007 John W. Eaton
+# Copyright (C) 1996, 1999, 2000, 2003, 2006, 2007, 2009 John W. Eaton
 #
 # This file is part of Octave.
 # 
@@ -20,6 +20,26 @@
 
 SED=${SED:-'sed'}
 
+if [ $# -ne 2 ]; then
+  echo "usage: mkdefs srcdir file < preprocessed-file-contents" 1>&2
+  exit 1
+fi
+
+srcdir="$1"
+file="$2";
+
+echo "// DO NOT EDIT!  Generated automatically by mkdefs."
+case "$file" in
+  $srcdir/*)
+    xsrcdir=`echo "$file" | sed "s,^$srcdir,src,"`
+  ;;
+  *)
+    xsrcdir="src/$file"
+  ;;
+esac
+echo " XDEFUN_FILE_NAME (\"$xsrcdir\")"
+egrep '^(///*|/\*) *PKG_ADD:' $file
+
 $SED -n -e '/^ *BEGIN_INSTALL_BUILTIN/{
   : loop
   s/BEGIN_INSTALL_BUILTIN//