diff options
author | bonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-05-17 10:26:27 +0000 |
---|---|---|
committer | bonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-05-17 10:26:27 +0000 |
commit | cc15e38f10a3d9f72ed55ac3fd550c5dbbe7e085 (patch) | |
tree | 682027ec303cfdda3c92dbb24f40497cdfa20732 /libjava/Makefile.in | |
parent | 429f2f90251e5a4bfdd214017e9824995f5d4ae1 (diff) | |
download | gcc-cc15e38f10a3d9f72ed55ac3fd550c5dbbe7e085.tar.gz |
2005-05-17 Paolo Bonzini <bonzini@gnu.org>
* Makefile.am (Makefile.deps): Do not create native.list and
bytecodes.list.
(all_native_compiled_dirs, all_java_dirs): Compute dir list here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99827 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/Makefile.in')
-rw-r--r-- | libjava/Makefile.in | 39 |
1 files changed, 24 insertions, 15 deletions
diff --git a/libjava/Makefile.in b/libjava/Makefile.in index 352bbfc8206..7e692a76e84 100644 --- a/libjava/Makefile.in +++ b/libjava/Makefile.in @@ -778,8 +778,8 @@ all_java_source_files = \ gnu/gcj/tools/gcj_dbtool/Main.java EXTRA_DIST = $(all_java_source_files) -all_native_compiled_dirs := $(shell test -f native.list && cat native.list) -all_java_dirs := $(shell test -f bytecodes.list && cat bytecodes.list) +all_native_compiled_dirs = $(sort $(patsubst %/, %, $(dir $(all_native_compiled_source_files)))) +all_java_dirs = $(sort $(patsubst %/, %, $(dir $(all_java_source_files)))) all_java_lo_files = $(all_native_compiled_dirs:=.lo) all_java_deps_files = $(all_java_dirs:=.deps) all_java_stamp_files = $(all_java_dirs:=.stamp) @@ -6270,23 +6270,32 @@ uninstall-info: uninstall-info-recursive uninstall-toolexeclibLTLIBRARIES uninstall-toolexecmainlibDATA -# Build a list of native and bytecode-compiled directories. The Makefile -# depends on them, because they affect the definition of two variables -# below. -# Each directory's filelist file depends on the corresponding Java source files -# Each class file depends on the its directory's .stamp file -# Below, one .lo file is built per directory when the stamp file changes - +# Build dependencies between java, class and lo files. They are included +# below, together with automatically-generated dependencies between Java +# files. +# +# Dependencies from Java to .class files +# -------------------------------------- +# Each directory's filelist file depends on the corresponding Java source files. +# The stamp file depends on the filelist (using a `Static Pattern Rule'). +# Each class file depends on the its directory's .stamp file. This reflects +# the fact that 1) all classfiles are compiled in one go when the .stamp file +# is built and 2) anything which depends on a particular .class file must wait +# until its directory is processed and the .stamp file is created. +# +# Dependencies from Java to .lo files +# ----------------------------------- +# As above, each directory's filelist file depends on the corresponding Java +# source files, and the stamp file depends on the filelist. For native +# compilation, the lo file depends on the stamp file (also using a `Static +# Pattern Rule'). So, when one Java file changes, the filelist file is +# updated, the stamp file rule builds the .class files, and the .lo file rule +# recompiles to native code. Makefile.deps: $(srcdir)/Makefile.in @: $(call write_entries_to_file,$(all_java_source_files),files.tmplist) - sed 's,/[^/]*$$,,' \ - files.tmplist | sort | uniq > bytecodes.list - sed -n '1,$(words $(all_native_compiled_source_files))s,/[^/]*$$,,p' \ - files.tmplist | sort | uniq > native.list echo 's,^\(.*\)/\([^/]*\)\.java$$,\1.list: \0\' > tmpsed echo '\1/\2.class: \1.stamp,' >> tmpsed - sed -ftmpsed files.tmplist \ - > Makefile.deps + sed -ftmpsed files.tmplist > Makefile.deps rm files.tmplist tmpsed # Include automatically generated dependencies between Java source files. |