From 3c71084a5333c7153ec4714d1930e9ebdb3bf82e Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Thu, 14 Sep 2000 19:24:08 +0000 Subject: [PATCH] Makefile.am: Re-work shell commands that exceeded command-line length limits. * Makefile.am: Re-work shell commands that exceeded command-line length limits. * Makefile.in: Rebuilt. From-SVN: r36416 --- libjava/ChangeLog | 4 ++++ libjava/Makefile.am | 23 +++++++++++++++-------- libjava/Makefile.in | 22 ++++++++++++++-------- 3 files changed, 33 insertions(+), 16 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index b998b4a698e..6327de5be46 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,5 +1,9 @@ 2000-09-14 Alexandre Oliva + * Makefile.am: Re-work shell commands that exceeded command-line + length limits. + * Makefile.in: Rebuilt. + * java/lang/natRuntime.cc (lt_preloaded_symbols): Define as `extern'. * defineclass.cc: Include alloca.h only if HAVE_ALLOCA_H. diff --git a/libjava/Makefile.am b/libjava/Makefile.am index 909d8f0a43b..8c5c41a50d2 100644 --- a/libjava/Makefile.am +++ b/libjava/Makefile.am @@ -142,9 +142,12 @@ $(java_source_files:.java=.class): libgcj.zip $(built_java_source_files:.java=.class): $(built_java_source_files) ## This little nastiness is here so that the backquoted stuff in the ## GCJ definition can be correctly expanded, if required. - javac="$(JAVAC)"; \ - $$javac -L$(here) $(JCFLAGS) -classpath $(here):`cd $(srcdir) && /bin/pwd` \ - -d $(here) $? + @javac="$(JAVAC)"; \ + for f in $?; do \ + echo $$javac -L$(here) $(JCFLAGS) -classpath $(here):`cd $(srcdir) && /bin/pwd` -d $(here) $$f; \ + $$javac -L$(here) $(JCFLAGS) -classpath $(here):`cd $(srcdir) && /bin/pwd` \ + -d $(here) $$f; \ + done ## We have the zip file depend on the java sources and not the class ## files, because we don't know the names of all the class files. @@ -153,20 +156,24 @@ $(built_java_source_files:.java=.class): $(built_java_source_files) ## `make libgcj.zip' will not rebuilt foo.class. That's because ## libgcj.zip is not out-of-date with respect to foo.java. libgcj.zip: $(java_source_files) +## Create a list of all Java sources, without exceeding any shell limits. + @: $(shell echo Creating list of files to compile...) $(shell rm -f tmp-list || :) $(shell touch tmp-list) $(foreach source,$(subst $(srcdir)/,,$?),$(shell echo $(source) >> tmp-list)) ## FIXME: this ought to depend on built_java_source_files, but right ## now it can't. Ugly. $(MAKE) $(built_java_source_files:.java=.class) ## This little nastiness is here so that the backquoted stuff in the ## GCJ definition can be correctly expanded, if required. - javac="$(JAVAC)"; cd $(srcdir); \ - $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) \ - $(subst $(srcdir)/,,$?) - -@rm -f libgcj.zip + @javac="$(JAVAC)"; dir=`/bin/pwd`; cd $(srcdir); \ + for f in `cat $$dir/tmp-list`; do \ + echo $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) $$f; \ + $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) $$f; \ + done + -@rm -f tmp-list libgcj.zip ## Note that we explicitly want to include directory information. $(ZIP) -r libgcj java gnu -n .class -i '*.class' -i '*/' MOSTLYCLEANFILES = $(javao_files) $(nat_files) $(nat_headers) $(c_files) -CLEANFILES = libgcj.zip +CLEANFILES = tmp-list libgcj.zip clean-local: ## We just remove every .class file that was created. diff --git a/libjava/Makefile.in b/libjava/Makefile.in index 2f467975ef6..924e2663790 100644 --- a/libjava/Makefile.in +++ b/libjava/Makefile.in @@ -207,7 +207,7 @@ libgcj_la_LDFLAGS = -rpath $(toolexeclibdir) \ libgcj_la_LINK = $(LIBLINK) MOSTLYCLEANFILES = $(javao_files) $(nat_files) $(nat_headers) $(c_files) -CLEANFILES = libgcj.zip +CLEANFILES = tmp-list libgcj.zip SUFFIXES = .class .java .h @@ -2060,16 +2060,22 @@ mostlyclean distclean maintainer-clean $(java_source_files:.java=.class): libgcj.zip $(built_java_source_files:.java=.class): $(built_java_source_files) - javac="$(JAVAC)"; \ - $$javac -L$(here) $(JCFLAGS) -classpath $(here):`cd $(srcdir) && /bin/pwd` \ - -d $(here) $? + @javac="$(JAVAC)"; \ + for f in $?; do \ + echo $$javac -L$(here) $(JCFLAGS) -classpath $(here):`cd $(srcdir) && /bin/pwd` -d $(here) $$f; \ + $$javac -L$(here) $(JCFLAGS) -classpath $(here):`cd $(srcdir) && /bin/pwd` \ + -d $(here) $$f; \ + done libgcj.zip: $(java_source_files) + @: $(shell echo Creating list of files to compile...) $(shell rm -f tmp-list || :) $(shell touch tmp-list) $(foreach source,$(subst $(srcdir)/,,$?),$(shell echo $(source) >> tmp-list)) $(MAKE) $(built_java_source_files:.java=.class) - javac="$(JAVAC)"; cd $(srcdir); \ - $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) \ - $(subst $(srcdir)/,,$?) - -@rm -f libgcj.zip + @javac="$(JAVAC)"; dir=`/bin/pwd`; cd $(srcdir); \ + for f in `cat $$dir/tmp-list`; do \ + echo $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) $$f; \ + $$javac $(JCFLAGS) -classpath $(here):`/bin/pwd` -d $(here) $$f; \ + done + -@rm -f tmp-list libgcj.zip $(ZIP) -r libgcj java gnu -n .class -i '*.class' -i '*/' clean-local: