From 3db07f2f9c05a604aa01b731a5e8ec4433a639d9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Wed, 28 May 2003 18:45:46 +0200
Subject: [PATCH] Improved dependencies for rebuilding of module.pmod.

Rev: src/aclocal.m4:1.77
Rev: src/make_variables.in:1.14
Rev: src/modules/Java/configure.in:1.39
Rev: src/modules/common_module_makefile.in:1.5
---
 src/aclocal.m4                        | 11 +++++++++--
 src/make_variables.in                 |  3 ++-
 src/modules/Java/configure.in         |  2 ++
 src/modules/common_module_makefile.in | 26 +++++++++++++-------------
 4 files changed, 26 insertions(+), 16 deletions(-)

diff --git a/src/aclocal.m4 b/src/aclocal.m4
index 51094559a7..9ca5b0b4a1 100644
--- a/src/aclocal.m4
+++ b/src/aclocal.m4
@@ -1,4 +1,4 @@
-dnl $Id: aclocal.m4,v 1.76 2003/05/06 14:12:43 grubba Exp $
+dnl $Id: aclocal.m4,v 1.77 2003/05/28 16:45:46 grubba Exp $
 
 dnl Some compatibility with Autoconf 2.50+. Not complete.
 dnl newer Autoconf calls substr m4_substr
@@ -320,7 +320,7 @@ define(PIKE_FEATURE_OK,[
 
 define([AC_LOW_MODULE_INIT],
 [
-  # $Id: aclocal.m4,v 1.76 2003/05/06 14:12:43 grubba Exp $
+  # $Id: aclocal.m4,v 1.77 2003/05/28 16:45:46 grubba Exp $
 
   MY_AC_PROG_CC
 
@@ -405,6 +405,13 @@ define([AC_MODULE_INIT],
   AC_LOW_MODULE_INIT()
   PIKE_FEATURE_CLEAR()
 
+  if test -f "$srcdir/module.pmod.in"; then
+    MODULE_PMOD_IN="$srcdir/module.pmod.in"
+  else
+    MODULE_PMOD_IN=""
+  fi
+  AC_SUBST(MODULE_PMOD_IN)
+
   if test -d $BUILD_BASE/modules/. ; then
     dynamic_module_makefile=$BUILD_BASE/modules/dynamic_module_makefile
     static_module_makefile=$BUILD_BASE/modules/static_module_makefile
diff --git a/src/make_variables.in b/src/make_variables.in
index 21f3761f6f..4ae75da04e 100644
--- a/src/make_variables.in
+++ b/src/make_variables.in
@@ -1,6 +1,6 @@
 # -*- Makefile -*-
 #
-# $Id: make_variables.in,v 1.13 2003/05/07 10:46:20 grubba Exp $
+# $Id: make_variables.in,v 1.14 2003/05/28 16:45:46 grubba Exp $
 #
 # Note: This template is actually used only for make_variables in the
 # subdirectories; the one created in the build base dir is just an
@@ -32,6 +32,7 @@ AR=@AR@
 SRCDIR=@srcdir@
 PMOD_TARGETS=@PMOD_TARGETS@
 make_variables_in=@make_variables_in@
+MODULE_PMOD_IN=@MODULE_PMOD_IN@
 
 MODNAME=@MODULE_NAME@
 MODPATH=@MODULE_PATH@
diff --git a/src/modules/Java/configure.in b/src/modules/Java/configure.in
index b870dccf06..aa7f00951b 100644
--- a/src/modules/Java/configure.in
+++ b/src/modules/Java/configure.in
@@ -3,6 +3,8 @@ AC_CONFIG_HEADER(config.h)
 
 AC_MODULE_INIT()
 
+MODULE_PMOD_IN=module.pmod.in
+
 OLD_LIBS=$LIBS
 OLD_LDFLAGS=$LDFLAGS
 OLD_CPPFLAGS=$CPPFLAGS
diff --git a/src/modules/common_module_makefile.in b/src/modules/common_module_makefile.in
index fbd7b0669d..15b8125840 100644
--- a/src/modules/common_module_makefile.in
+++ b/src/modules/common_module_makefile.in
@@ -1,5 +1,5 @@
 #
-# $Id: common_module_makefile.in,v 1.4 2003/05/15 13:25:43 grubba Exp $
+# $Id: common_module_makefile.in,v 1.5 2003/05/28 16:45:46 grubba Exp $
 #
 # Contains stuff common to both dynamic_module_makefile and
 # static_module_makefile.
@@ -105,22 +105,22 @@ $(SRCDIR)/configure: $(SRCDIR)/configure.in $(PIKE_SRC_DIR)/aclocal.m4
 config.status: $(SRCDIR)/configure
 	AR="$(AR)" CFLAGS="$(REAL_CFLAGS)" LDFLAGS="$(REAL_LDFLAGS)" LDSHARED="$(REAL_LDSHARED)" CPPFLAGS="$(REAL_CPPFLAGS)" BUILDDIR="$(TMP_BUILDDIR)" BINDIR="$(TMP_BINDIR)" PIKE_SRC_DIR="$(PIKE_SRC_DIR)" BUILD_BASE="$(BUILD_BASE)" ./config.status --recheck
 
-module.pmod: Makefile
+module.pmod: Makefile $(MODULE_PMOD_IN)
 	@echo "Making module.pmod" ; \
-	if [ -f $(SRCDIR)/module.pmod.in ]; then \
-	  sed -e "s/@module@/$(MODULE_PROGRAM)/" \
-	    <$(SRCDIR)/module.pmod.in >module.pmod; \
+	if [ "x$(MODULE_PMOD_IN)" = "x" ]; then \
+	  echo >module.pmod  '// Generated automatically by'; \
+	  echo >>module.pmod '// $$Id: common_module_makefile.in,v 1.5 2003/05/28 16:45:46 grubba Exp $$'; \
+	  echo >>module.pmod '#pike __REAL_VERSION__'; \
+	  echo >>module.pmod '#if constant($(MODULE_PROGRAM))'; \
+	  echo >>module.pmod 'inherit $(MODULE_PROGRAM);'; \
+	  echo >>module.pmod '#endif'; \
 	else \
-	  if [ -f ./module.pmod.in ]; then \
+	  if [ -f "$(MODULE_PMOD_IN)" ]; then \
 	    sed -e "s/@module@/$(MODULE_PROGRAM)/" \
-	      <./module.pmod.in >module.pmod; \
+	      <"$(MODULE_PMOD_IN)" >module.pmod; \
 	  else \
-	    echo >module.pmod  '// Generated automatically by'; \
-	    echo >>module.pmod '// $$Id: common_module_makefile.in,v 1.4 2003/05/15 13:25:43 grubba Exp $$'; \
-	    echo >>module.pmod '#pike __REAL_VERSION__'; \
-	    echo >>module.pmod '#if constant($(MODULE_PROGRAM))'; \
-	    echo >>module.pmod 'inherit $(MODULE_PROGRAM);'; \
-	    echo >>module.pmod '#endif'; \
+	    echo 'Missing source for module.pmod "$(MODULE_PMOD_IN)".' >&2; \
+	    exit 1; \
 	  fi ;\
 	fi
 
-- 
GitLab