[m-rev.] diff: fix MacOS ranlib problem

Fergus Henderson fjh at cs.mu.OZ.AU
Fri Oct 18 14:09:03 AEST 2002


Estimated hours taken: 0.75
Branches: main

scripts/Mmake.rules:
boehm_gc/Mmakefile:
runtime/Mmakefile:
library/Mmakefile:
trace/Mmakefile:
	Run $(RANLIB) on the installed libraries.
	This is needed on MacOS 10.1, where the linker checks the date
	stamp on the .a file, refusing to link if this date is greater
	than the date when ranlib was run.  Since installing the
	libraries with `cp' updates their timestamp, we need to rerun ranlib.

scripts/Mmake.rules:
	Change some hard-coded occurrences of `.a' to `.$A'.  This is
	probably needed to make things work properly when building with MSVC.

Workspace: /home/ceres/fjh/mercury
Index: boehm_gc/Mmakefile
===================================================================
RCS file: /home/mercury1/repository/mercury/boehm_gc/Mmakefile,v
retrieving revision 1.20
diff -u -d -r1.20 Mmakefile
--- boehm_gc/Mmakefile	5 Sep 2002 08:38:33 -0000	1.20
+++ boehm_gc/Mmakefile	18 Oct 2002 03:44:13 -0000
@@ -116,6 +116,7 @@
 install_lib: lib$(GC_GRADE).$A lib$(GC_GRADE).$(EXT_FOR_SHARED_LIB) install_dirs
 	cp `vpath_find lib$(GC_GRADE).$A lib$(GC_GRADE).$(EXT_FOR_SHARED_LIB)` \
 		$(INSTALL_MERC_GC_LIB_DIR)
+	$(RANLIB) $(INSTALL_MERC_GC_LIB_DIR)/lib$(GC_GRADE).$A
 
 .PHONY: install_dll
 install_dll:
Index: runtime/Mmakefile
===================================================================
RCS file: /home/mercury1/repository/mercury/runtime/Mmakefile,v
retrieving revision 1.95
diff -u -d -r1.95 Mmakefile
--- runtime/Mmakefile	24 Sep 2002 06:55:26 -0000	1.95
+++ runtime/Mmakefile	18 Oct 2002 03:46:06 -0000
@@ -372,6 +372,7 @@
 	cp `vpath_find lib$(RT_LIB_NAME).$A \
 		lib$(RT_LIB_NAME).$(EXT_FOR_SHARED_LIB)` \
 		$(INSTALL_MERC_LIB_DIR)
+	$(RANLIB) $(INSTALL_MERC_LIB_DIR)/lib$(RT_LIB_NAME).$A
 
 endif
 
Index: scripts/Mmake.rules
===================================================================
RCS file: /home/mercury1/repository/mercury/scripts/Mmake.rules,v
retrieving revision 1.135
diff -u -d -r1.135 Mmake.rules
--- scripts/Mmake.rules	15 Oct 2002 16:23:57 -0000	1.135
+++ scripts/Mmake.rules	18 Oct 2002 03:53:30 -0000
@@ -471,14 +471,16 @@
 	$(INSTALL) `vpath_find $*.init` $(INSTALL_MODULE_DIR)
 
 .PHONY: lib%.install_library
-lib%.install_library: lib%.a lib%.$(EXT_FOR_SHARED_LIB) \
+lib%.install_library: lib%.$A lib%.$(EXT_FOR_SHARED_LIB) \
 			install_grade_dirs lib%.install_grade_hdrs \
 			lib%.install_opts
-	$(INSTALL) `vpath_find lib$*.a lib$*.$(EXT_FOR_SHARED_LIB)` \
+	$(INSTALL) `vpath_find lib$*.$A lib$*.$(EXT_FOR_SHARED_LIB)` \
 			$(INSTALL_MERC_LIB_DIR)
+	$(RANLIB) $(INSTALL_MERC_LIB_DIR)/lib$*.$A
 
-lib%.install_split_library: %.split.a install_grade_dirs
-	$(INSTALL) `vpath_find $*.split.a` $(INSTALL_MERC_LIB_DIR)/lib$*.a
+lib%.install_split_library: %.split.$A install_grade_dirs
+	$(INSTALL) `vpath_find $*.split.$A` $(INSTALL_MERC_LIB_DIR)/lib$*.$A
+	$(RANLIB) $(INSTALL_MERC_LIB_DIR)/lib$*.$A
 
 # XXX grade_files only contains the files for the default grade, not the
 # current grade in each iteration of the loop over ALL_LIBGRADES below.
Index: trace/Mmakefile
===================================================================
RCS file: /home/mercury1/repository/mercury/trace/Mmakefile,v
retrieving revision 1.35
diff -u -d -r1.35 Mmakefile
--- trace/Mmakefile	24 Sep 2002 06:55:36 -0000	1.35
+++ trace/Mmakefile	18 Oct 2002 03:46:57 -0000
@@ -179,6 +179,7 @@
 	cp `vpath_find lib$(TRACE_LIB_NAME).$A \
 		lib$(TRACE_LIB_NAME).$(EXT_FOR_SHARED_LIB)` \
 		$(INSTALL_MERC_LIB_DIR)
+	$(RANLIB) $(INSTALL_MERC_LIB_DIR)/lib$(TRACE_LIB_NAME).$A
 
 endif
 

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list