This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Patch: FYI: libgcj_bc library


On Wed, Aug 16, 2006 at 06:43:48PM -0600, Tom Tromey wrote:
> Index: libjava/Makefile.am
> ===================================================================
> --- libjava/Makefile.am	(revision 116169)
> +++ libjava/Makefile.am	(working copy)
> @@ -36,6 +36,10 @@
> +if USE_LIBGCJ_BC
> +## Install libgcj_bc dummy lib in the target directory. We also need to delete
> +## libtool's .la file, this prevents libtool resetting the lib again 
> +## later.
> +install-exec-hook: install-toolexeclibLTLIBRARIES
> +	@echo Installing dummy lib libgcj_bc.so.1.0.0; \
> +	rm $(toolexeclibdir)/libgcj_bc.so; \
> +	mv $(toolexeclibdir)/libgcj_bc.so.1.0.0 $(toolexeclibdir)/libgcj_bc.so; \
> +	$(libgcj_bc_dummy_LINK) -xc /dev/null -Wl,-soname,libgcj_bc.so.1 \
> +	-o $(toolexeclibdir)/libgcj_bc.so.1.0.0 -lgcj || exit; \
> +	rm $(toolexeclibdir)/libgcj_bc.so.1; \
> +	$(LN_S) libgcj_bc.so.1.0.0 $(toolexeclibdir)/libgcj_bc.so.1; \
> +	rm $(toolexeclibdir)/libgcj_bc.la;
> +endif
> +
>  ## Install the headers.  It is fairly ugly that we have to do this by
>  ## hand.
>  install-data-local:

I don't believe this make rule will work with "make install DESTDIR=...".
This patch on top of it seems to work for me.


H.J.
----
2006-08-16  H.J. Lu  <hongjiu.lu@intel.com>

	* Makefile.am (install-exec-hook): Support $(DESTDIR).
	* Makefile.in: Regenerated.

--- libjava/Makefile.am.dest	2006-08-09 14:47:45.000000000 -0700
+++ libjava/Makefile.am	2006-08-16 18:04:25.000000000 -0700
@@ -562,13 +562,14 @@ if USE_LIBGCJ_BC
 ## later.
 install-exec-hook: install-toolexeclibLTLIBRARIES
 	@echo Installing dummy lib libgcj_bc.so.1.0.0; \
-	rm $(toolexeclibdir)/libgcj_bc.so; \
-	mv $(toolexeclibdir)/libgcj_bc.so.1.0.0 $(toolexeclibdir)/libgcj_bc.so; \
+	cd $(DESTDIR)$(toolexeclibdir); \
+	rm libgcj_bc.so; \
+	mv libgcj_bc.so.1.0.0 libgcj_bc.so; \
 	$(libgcj_bc_dummy_LINK) -xc /dev/null -Wl,-soname,libgcj_bc.so.1 \
-	-o $(toolexeclibdir)/libgcj_bc.so.1.0.0 -lgcj || exit; \
-	rm $(toolexeclibdir)/libgcj_bc.so.1; \
-	$(LN_S) libgcj_bc.so.1.0.0 $(toolexeclibdir)/libgcj_bc.so.1; \
-	rm $(toolexeclibdir)/libgcj_bc.la;
+	-o libgcj_bc.so.1.0.0 -lgcj || exit; \
+	rm libgcj_bc.so.1; \
+	$(LN_S) libgcj_bc.so.1.0.0 libgcj_bc.so.1; \
+	rm libgcj_bc.la
 endif
 
 ## Install the headers.  It is fairly ugly that we have to do this by
--- libjava/Makefile.in.dest	2006-08-09 14:47:45.000000000 -0700
+++ libjava/Makefile.in	2006-08-16 18:05:09.000000000 -0700
@@ -11328,13 +11328,14 @@ $(extra_headers) $(srcdir)/java/lang/Obj
 
 @USE_LIBGCJ_BC_TRUE@install-exec-hook: install-toolexeclibLTLIBRARIES
 @USE_LIBGCJ_BC_TRUE@	@echo Installing dummy lib libgcj_bc.so.1.0.0; \
-@USE_LIBGCJ_BC_TRUE@	rm $(toolexeclibdir)/libgcj_bc.so; \
-@USE_LIBGCJ_BC_TRUE@	mv $(toolexeclibdir)/libgcj_bc.so.1.0.0 $(toolexeclibdir)/libgcj_bc.so; \
+@USE_LIBGCJ_BC_TRUE@	cd $(DESTDIR)$(toolexeclibdir); \
+@USE_LIBGCJ_BC_TRUE@	rm libgcj_bc.so; \
+@USE_LIBGCJ_BC_TRUE@	mv libgcj_bc.so.1.0.0 libgcj_bc.so; \
 @USE_LIBGCJ_BC_TRUE@	$(libgcj_bc_dummy_LINK) -xc /dev/null -Wl,-soname,libgcj_bc.so.1 \
-@USE_LIBGCJ_BC_TRUE@	-o $(toolexeclibdir)/libgcj_bc.so.1.0.0 -lgcj || exit; \
-@USE_LIBGCJ_BC_TRUE@	rm $(toolexeclibdir)/libgcj_bc.so.1; \
-@USE_LIBGCJ_BC_TRUE@	$(LN_S) libgcj_bc.so.1.0.0 $(toolexeclibdir)/libgcj_bc.so.1; \
-@USE_LIBGCJ_BC_TRUE@	rm $(toolexeclibdir)/libgcj_bc.la;
+@USE_LIBGCJ_BC_TRUE@	-o libgcj_bc.so.1.0.0 -lgcj || exit; \
+@USE_LIBGCJ_BC_TRUE@	rm libgcj_bc.so.1; \
+@USE_LIBGCJ_BC_TRUE@	$(LN_S) libgcj_bc.so.1.0.0 libgcj_bc.so.1; \
+@USE_LIBGCJ_BC_TRUE@	rm libgcj_bc.la
 
 install-data-local:
 	$(PRE_INSTALL)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]