pike7.8 (7.8.352-dfsg-3) module-layout

Summary

 lib/master.pike.in                                 |    4 ++++
 lib/modules/Tools.pmod/Standalone.pmod/module.pike |   13 ++++++++-----
 src/modules/dynamic_module_makefile.in             |    6 +++---
 3 files changed, 15 insertions(+), 8 deletions(-)

    
download this patch

Patch contents

#! /bin/sh /usr/share/dpatch/dpatch-run
## 01_master.in.dpatch by  <magnus@kibibyte.se>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Add local site-pike directories to master.pike.in

@DPATCH@
diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' trunk~/lib/master.pike.in trunk/lib/master.pike.in
--- trunk~/lib/master.pike.in	2009-09-19 12:08:35.000000000 +0200
+++ trunk/lib/master.pike.in	2010-04-11 21:02:58.000000000 +0200
@@ -2094,6 +2094,10 @@
   add_module_path("#lib_prefix#/modules");
 #endif
 
+  // Debian paths
+  add_include_path("/usr/local/lib/pike"+__REAL_VERSION__+"/include");
+  add_module_path("/usr/local/lib/pike"+__REAL_VERSION__+"/modules");
+
 #if "#cflags# "[0]!='#'
   cflags = "#cflags#";
 #endif
diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' trunk~/lib/modules/Tools.pmod/Standalone.pmod/module.pike trunk/lib/modules/Tools.pmod/Standalone.pmod/module.pike
--- trunk~/lib/modules/Tools.pmod/Standalone.pmod/module.pike	2008-07-08 14:59:17.000000000 +0200
+++ trunk/lib/modules/Tools.pmod/Standalone.pmod/module.pike	2010-04-11 21:35:20.000000000 +0200
@@ -25,9 +25,8 @@
 // this is not the ideal location for all systems, but it's a start.
 string local_module_path=combine_path(getenv("HOME")||"","lib/pike/modules");
 bool old_style_module = false;
-// we prefer the last element, because if there are more than one
-// master() puts the lib/modules path last.
-string system_module_path=master()->system_module_path[-1];
+
+string system_module_path="/usr/local/lib/pike"+__REAL_VERSION__+"/modules";
 
 // where do we install the documentation?
 string system_doc_path = master()->doc_prefix;
@@ -183,7 +182,7 @@
     extra_args = ({
       "PIKE="+run_pike,
       "SRCDIR="+fix("$src"),
-      "MODULE_INSTALL_DIR="+combine_path(__FILE__,"../../.."),
+      "MODULE_INSTALL_DIR="+system_module_path,
       "LOCAL_MODULE_PATH=" + lmp,
     });
   }
@@ -240,6 +239,7 @@
     ({"all",Getopt.NO_ARG,({"--all"}) }),
     ({"make",Getopt.NO_ARG,({"--make"}) }),
     ({"auto",Getopt.NO_ARG,({"--auto"}) }),
+    ({"debian",Getopt.NO_ARG,({"--debian"}) }),
     ({"source",Getopt.HAS_ARG,({"--source"}) }),
     ({"query",Getopt.HAS_ARG,({"--query"}) }),
     ({"config_args",Getopt.HAS_ARG,({"--configure-args"}) }),
@@ -276,6 +276,9 @@
 	case "auto":
 	  run->depend=run->autoheader=run->autoconf=run->configure=run->make=AUTO;
 	  break;
+
+	case "debian":
+	  system_module_path=master()->system_module_path[-1];
       }
     }
 
@@ -405,7 +408,7 @@
 	  run_or_fail( ([ "env":getenv()|
 			  ([
 			    "PIKE":run_pike,
-			    "MODULE_INSTALL_DIR":combine_path(__FILE__,"../../.."),
+			    "MODULE_INSTALL_DIR":system_module_path,
 			    "LOCAL_MODULE_PATH":local_module_path,
 			  ])
 		       ]),
diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' trunk~/src/modules/dynamic_module_makefile.in trunk/src/modules/dynamic_module_makefile.in
--- trunk~/src/modules/dynamic_module_makefile.in	2008-01-11 01:22:27.000000000 +0100
+++ trunk/src/modules/dynamic_module_makefile.in	2010-04-11 22:37:28.000000000 +0200
@@ -90,13 +90,13 @@
 #
 install: $(MODULE_INSTALL)
 	@if test "x$(OBJS)" != "x" ; then \
-	  $(TMP_BINDIR)/install_module module.so $(SYSTEM_MODULE_PATH)/$(MODDIR)$(MODULE_WRAPPER_PREFIX)$(MODNAME).so && \
+	  $(TMP_BINDIR)/install_module module.so $(DESTDIR)$(SYSTEM_MODULE_PATH)/$(MODDIR)$(MODULE_WRAPPER_PREFIX)$(MODNAME).so && \
 	  if [ -f $(MODNAME).pdb ]; then \
-	    cp $(MODNAME).pdb $(SYSTEM_MODULE_PATH)/$(MODDIR)$(MODULE_WRAPPER_PREFIX); \
+	    cp $(MODNAME).pdb $(DESTDIR)$(SYSTEM_MODULE_PATH)/$(MODDIR)$(MODULE_WRAPPER_PREFIX); \
 	  else :; fi; \
 	fi; \
 	if test "x$(MODULE_PMOD_IN)" != "x"; then \
-	  $(TMP_BINDIR)/install_module module.pmod $(SYSTEM_MODULE_PATH)/$(MODDIR)$(MODNAME).pmod ;\
+	  $(TMP_BINDIR)/install_module module.pmod $(DESTDIR)$(SYSTEM_MODULE_PATH)/$(MODDIR)$(MODNAME).pmod ;\
 	fi;
 
 #