[m-rev.] diff: fix installation of mdbcomp, ssdb and browser libraries

Peter Ross pro at missioncriticalit.com
Tue May 4 12:08:58 AEST 2010


Hi,

I could no longer compile in the grade hlc.gc.ssdebug because of missing
.int and .mih files in the installation.o

I tested by installing a compiler with the following libgrades
asm_fast.gc, hlc.gc and hlc.gc.ssdebug and ensuring that all three
grades could compile a test program.


===================================================================


Estimated hours taken: 5
Branches: main, 10.04

Use the Mmake.rules targets to install the browser, mdbcomp and ssdb
directories so that the inteface and header files are all installed
correctly.

This replaces the previous ad-hoc method of just calling some of
Mmake.rules targets.

browser/Mmakefile:
mdbcomp/Mmakefile:
ssdb/Mmakefile:
	Make the install_library call the underlying install_library
	install_hdrs and install_ints targets.
	These targets come from the rule lib%.install, we can't use target
	because it calls install_grades, which we don't want to do.

	This implies removing the install_ints, install_hdrs and install_dirs
	targets as these are no longer needed.


Index: browser/Mmakefile
===================================================================
RCS file: /home/mercury1/repository/mercury/browser/Mmakefile,v
retrieving revision 1.58
diff -u -r1.58 Mmakefile
--- browser/Mmakefile	20 Oct 2009 04:07:24 -0000	1.58
+++ browser/Mmakefile	4 May 2010 02:00:01 -0000
@@ -252,53 +252,24 @@
 .PHONY: install
 install: install_library
 
-.PHONY: install_dirs
-install_dirs:
-	[ -d $(INSTALL_MODULE_DIR) ] || mkdir -p $(INSTALL_MODULE_DIR)
-	[ -d $(INSTALL_GRADE_MODULE_DIR) ] || \
-		mkdir -p $(INSTALL_GRADE_MODULE_DIR)
-	[ -d $(INSTALL_MERC_LIB_DIR) ] || mkdir -p $(INSTALL_MERC_LIB_DIR)
-
 ifneq ("$(filter il% erlang%,$(GRADE))","")
 
 # there is no browser in the .NET or Erlang backends
 
-.PHONY: install_ints
-install_ints:
-
-.PHONY: install_init
-install_init: 
-
 .PHONY: install_library
 install_library:
 
 else ifneq (,$(findstring java,$(GRADE)))
 
-.PHONY: install_ints
-install_ints:
-
-.PHONY: install_init
-install_init: 
-
 .PHONY: install_library
 install_library: lib$(BROWSER_LIB_NAME).install
 
 else 
 
-.PHONY: install_ints
-install_ints:
-
-.PHONY: install_init
-install_init: $(BROWSER_LIB_NAME).init install_dirs
-	cp `vpath_find $(BROWSER_LIB_NAME).init` $(INSTALL_GRADE_MODULE_DIR)
-
 .PHONY: install_library
-install_library: lib$(BROWSER_LIB_NAME) \
-		install_init \
-		install_dirs
-	cp `vpath_find lib$(BROWSER_LIB_NAME).$A \
-		lib$(BROWSER_LIB_NAME).$(EXT_FOR_SHARED_LIB)` \
-		$(INSTALL_MERC_LIB_DIR)
-	$(RANLIB) $(INSTALL_MERC_LIB_DIR)/lib$(BROWSER_LIB_NAME).$A
+install_library:				\
+	lib$(BROWSER_LIB_NAME).install_library	\
+	lib$(BROWSER_LIB_NAME).install_ints	\
+	lib$(BROWSER_LIB_NAME).install_hdrs
 
 endif
Index: mdbcomp/Mmakefile
===================================================================
RCS file: /home/mercury1/repository/mercury/mdbcomp/Mmakefile,v
retrieving revision 1.16
diff -u -r1.16 Mmakefile
--- mdbcomp/Mmakefile	20 Oct 2009 04:07:25 -0000	1.16
+++ mdbcomp/Mmakefile	4 May 2010 02:00:06 -0000
@@ -211,53 +211,24 @@
 .PHONY: install
 install: install_library
 
-.PHONY: install_dirs
-install_dirs:
-	[ -d $(INSTALL_MODULE_DIR) ] || mkdir -p $(INSTALL_MODULE_DIR)
-	[ -d $(INSTALL_GRADE_MODULE_DIR) ] || \
-		mkdir -p $(INSTALL_GRADE_MODULE_DIR)
-	[ -d $(INSTALL_MERC_LIB_DIR) ] || mkdir -p $(INSTALL_MERC_LIB_DIR)
-
 ifneq ("$(filter il% erlang%,$(GRADE))","")
 
 # there is no debugger in the .NET or Erlang backends
 
-.PHONY: install_ints
-install_ints: 
-
-.PHONY: install_init
-install_init: 
-
 .PHONY: install_library
 install_library:
 
 else ifneq (,$(findstring java,$(GRADE)))
 
-.PHONY: install_ints
-install_ints:
-
-.PHONY: install_init
-install_init: 
-
 .PHONY: install_library
 install_library: lib$(MDBCOMP_LIB_NAME).install
 
 else
 
-.PHONY: install_ints
-install_ints: 
-
-.PHONY: install_init
-install_init: $(MDBCOMP_LIB_NAME).init install_dirs
-	cp `vpath_find $(MDBCOMP_LIB_NAME).init` $(INSTALL_GRADE_MODULE_DIR)
-
 .PHONY: install_library
-install_library: lib$(MDBCOMP_LIB_NAME) \
-		install_init \
-		all-ints install_dirs
-	cp `vpath_find lib$(MDBCOMP_LIB_NAME).$A \
-		lib$(MDBCOMP_LIB_NAME).$(EXT_FOR_SHARED_LIB)` \
-		$(INSTALL_MERC_LIB_DIR)
-	$(RANLIB) $(INSTALL_MERC_LIB_DIR)/lib$(MDBCOMP_LIB_NAME).$A
+install_library:				\
+	lib$(MDBCOMP_LIB_NAME).install_library	\
+	lib$(MDBCOMP_LIB_NAME).install_ints	\
+	lib$(MDBCOMP_LIB_NAME).install_hdrs
 
 endif
Index: ssdb/Mmakefile
===================================================================
RCS file: /home/mercury1/repository/mercury/ssdb/Mmakefile,v
retrieving revision 1.7
diff -u -r1.7 Mmakefile
--- ssdb/Mmakefile	20 Oct 2009 04:07:25 -0000	1.7
+++ ssdb/Mmakefile	4 May 2010 02:00:07 -0000
@@ -244,64 +244,26 @@
 # Installation targets
 
 .PHONY: install
-install: install_library install_ints install_hdrs 
-
-.PHONY: install_dirs
-install_dirs:
-	[ -d $(INSTALL_MODULE_DIR) ] || mkdir -p $(INSTALL_MODULE_DIR)
-	[ -d $(INSTALL_GRADE_MODULE_DIR) ] || \
-		mkdir -p $(INSTALL_GRADE_MODULE_DIR)
-	[ -d $(INSTALL_MERC_LIB_DIR) ] || mkdir -p $(INSTALL_MERC_LIB_DIR)
+install: install_library
 
 ifneq ("$(filter il% erlang%,$(GRADE))","")
 
 # there is no ssdb in the .NET or Erlang backends
 
-.PHONY: install_ints
-install_ints:
-
-.PHONY: install_hdrs
-install_hdrs:
-
-.PHONY: install_init
-install_init: 
-
 .PHONY: install_library
 install_library:
 
 else ifneq (,$(findstring java,$(GRADE)))
 
-.PHONY: install_ints
-install_ints:
-
-.PHONY: install_init
-install_init: 
-
-.PHONY: install_hdrs
-install_hdrs: 
-
 .PHONY: install_library
 install_library: lib$(SSDB_LIB_NAME).install
 
 else 
 
-.PHONY: install_ints
-install_ints: lib$(SSDB_LIB_NAME).install_ints
-
-.PHONY: install_hdrs
-install_hdrs: lib$(SSDB_LIB_NAME).install_hdrs
-
-.PHONY: install_init
-install_init: $(SSDB_LIB_NAME).init install_dirs
-	cp `vpath_find $(SSDB_LIB_NAME).init` $(INSTALL_GRADE_MODULE_DIR)
-
 .PHONY: install_library
-install_library: lib$(SSDB_LIB_NAME) \
-		install_init \
-		install_dirs
-	cp `vpath_find lib$(SSDB_LIB_NAME).$A \
-		lib$(SSDB_LIB_NAME).$(EXT_FOR_SHARED_LIB)` \
-		$(INSTALL_MERC_LIB_DIR)
-	$(RANLIB) $(INSTALL_MERC_LIB_DIR)/lib$(SSDB_LIB_NAME).$A
+install_library:				\
+	lib$(SSDB_LIB_NAME).install_library	\
+	lib$(SSDB_LIB_NAME).install_ints	\
+	lib$(SSDB_LIB_NAME).install_hdrs
 
 endif

--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list