diff options
author | Jakub Jelinek <jakub@redhat.com> | 2004-10-29 12:51:16 +0000 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2004-10-29 12:51:16 +0000 |
commit | 38db6fac192849e74c181708dcf877da9ab88d5b (patch) | |
tree | 70557b5b31a153e4de6ce423b9b74840e8fc9763 | |
parent | 0ea67dec55491e0b4e09a26a0493717692ac57b5 (diff) |
* Makefile.am (libgcj-@gcc_version@.jar): Set timestamp of all files
and directories in the jar file to the youngest of gcc/ChangeLog,
gcc/java/ChangeLog and libjava/ChangeLog. Sort the file/directory
list before passing it to fastjar.
* Makefile.in: Rebuilt.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/gcc-3_3-rhl-branch@89838 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | libjava/ChangeLog | 8 | ||||
-rw-r--r-- | libjava/Makefile.am | 26 | ||||
-rw-r--r-- | libjava/Makefile.in | 26 |
3 files changed, 54 insertions, 6 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 8fd4e2f581a..1b1e0cbe22c 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,11 @@ +2004-08-12 Jakub Jelinek <jakub@redhat.com> + + * Makefile.am (libgcj-@gcc_version@.jar): Set timestamp of all files + and directories in the jar file to the youngest of gcc/ChangeLog, + gcc/java/ChangeLog and libjava/ChangeLog. Sort the file/directory + list before passing it to fastjar. + * Makefile.in: Rebuilt. + 2004-06-22 Bryce McKinlay <mckinlay@redhat.com> Fix PR libgcj/12475 diff --git a/libjava/Makefile.am b/libjava/Makefile.am index c07b7d769b5..889a0d400e1 100644 --- a/libjava/Makefile.am +++ b/libjava/Makefile.am @@ -224,9 +224,29 @@ all_java_class_files = $(all_java_source_files:.java=.class) libgcj-@gcc_version@.jar: $(all_java_class_files) -@rm -f libgcj-@gcc_version@.jar ## Note that we explicitly want to include directory information. - find java gnu javax org -type d -o -type f -name '*.class' | \ - sed -e '/\/\./d' -e '/\/xlib/d' | \ - $(ZIP) cfM0E@ $@ + # The following is an attempt to have libgcj-*.jar files + # from the same GCC version identical accross the architectures. + JARDIR=`mktemp -d ../$@.XXXXXX` || exit 1; \ + for d in `find java gnu javax org -type d \ + | sed -e '/\/\./d' -e '/\/xlib/d'`; do \ + mkdir -p $$JARDIR/$$d; \ + done; \ + touch -r $(srcdir)/../gcc/ChangeLog $$JARDIR.stamp; \ + [ $(srcdir)/../gcc/java/ChangeLog -nt $$JARDIR.stamp ] \ + && touch -r $(srcdir)/../gcc/java/ChangeLog $$JARDIR.stamp; \ + [ $(srcdir)/ChangeLog -nt $$JARDIR.stamp ] \ + && touch -r $(srcdir)/ChangeLog $$JARDIR.stamp; \ + for f in `find java gnu javax org -type f -name '*.class' \ + | sed -e '/\/\./d' -e '/\/xlib/d'`; do \ + cp $$f $$JARDIR/$$f; \ + touch -r $$JARDIR.stamp $$JARDIR/$$f; \ + done; \ + touch -r $$JARDIR.stamp `find $$JARDIR -type d`; \ + cd $$JARDIR; \ + find java gnu javax org -type d -o -type f | \ + LC_ALL=C sort | $(ZIP) cfM0E@ ../libjava/$@ || exit 1; \ + cd -; \ + rm -rf $$JARDIR $$JARDIR.stamp MOSTLYCLEANFILES = $(javao_files) $(nat_files) $(nat_headers) $(c_files) $(x_javao_files) $(x_nat_files) $(x_nat_headers) CLEANFILES = libgcj-@gcc_version@.jar diff --git a/libjava/Makefile.in b/libjava/Makefile.in index cdc5802d91c..7c8f6c3eab6 100644 --- a/libjava/Makefile.in +++ b/libjava/Makefile.in @@ -4353,9 +4353,29 @@ maintainer-clean-generic clean mostlyclean distclean maintainer-clean libgcj-@gcc_version@.jar: $(all_java_class_files) -@rm -f libgcj-@gcc_version@.jar - find java gnu javax org -type d -o -type f -name '*.class' | \ - sed -e '/\/\./d' -e '/\/xlib/d' | \ - $(ZIP) cfM0E@ $@ + # The following is an attempt to have libgcj-*.jar files + # from the same GCC version identical accross the architectures. + JARDIR=`mktemp -d ../$@.XXXXXX` || exit 1; \ + for d in `find java gnu javax org -type d \ + | sed -e '/\/\./d' -e '/\/xlib/d'`; do \ + mkdir -p $$JARDIR/$$d; \ + done; \ + touch -r $(srcdir)/../gcc/ChangeLog $$JARDIR.stamp; \ + [ $(srcdir)/../gcc/java/ChangeLog -nt $$JARDIR.stamp ] \ + && touch -r $(srcdir)/../gcc/java/ChangeLog $$JARDIR.stamp; \ + [ $(srcdir)/ChangeLog -nt $$JARDIR.stamp ] \ + && touch -r $(srcdir)/ChangeLog $$JARDIR.stamp; \ + for f in `find java gnu javax org -type f -name '*.class' \ + | sed -e '/\/\./d' -e '/\/xlib/d'`; do \ + cp $$f $$JARDIR/$$f; \ + touch -r $$JARDIR.stamp $$JARDIR/$$f; \ + done; \ + touch -r $$JARDIR.stamp `find $$JARDIR -type d`; \ + cd $$JARDIR; \ + find java gnu javax org -type d -o -type f | \ + LC_ALL=C sort | $(ZIP) cfM0E@ ../libjava/$@ || exit 1; \ + cd -; \ + rm -rf $$JARDIR $$JARDIR.stamp clean-local: find . -name '*.class' -print | xargs rm -f |