summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--sysdeps/s390/s390-64/Makefile12
2 files changed, 17 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 6ac3ae0b89..8ad847a6d9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-06-21  Andreas Jaeger  <aj@suse.de>
+
+	* sysdeps/s390/s390-64/Makefile ($(inst_gconvdir)/gconv-modules):
+	Copy rule from iconvdata/Makefile.
+
 2011-07-06  Ulrich Drepper  <drepper@gmail.com>
 
 	[BZ #12922]
diff --git a/sysdeps/s390/s390-64/Makefile b/sysdeps/s390/s390-64/Makefile
index 1814f37abd..1dd3acf732 100644
--- a/sysdeps/s390/s390-64/Makefile
+++ b/sysdeps/s390/s390-64/Makefile
@@ -74,5 +74,17 @@ $(objpfx)gconv-modules-s390: gconv-modules $(+force)
 
 $(inst_gconvdir)/gconv-modules: $(objpfx)gconv-modules-s390 $(+force)
 	$(do-install)
+ifeq (no,$(cross-compiling))
+# Update the $(prefix)/lib/gconv/gconv-modules.cache file. This is necessary
+# if this libc has more gconv modules than the previously installed one.
+	if test -f "$(inst_gconvdir)/gconv-modules.cache"; then \
+	   LC_ALL=C LANGUAGE=C \
+	   $(common-objpfx)elf/ld.so --library-path $(rpath-link) \
+	   $(common-objpfx)iconv/iconvconfig \
+	     $(addprefix --prefix=,$(install_root)); \
+	fi
+else
+	@echo '*@*@*@ You should recreate $(inst_gconvdir)/gconv-modules.cache'
+endif
 
 endif