This changes the list of source files from relative filenames to
absolute ones.  We need this in the gcj build because the same list of
source files is used from more than one place; the alternative of
fixing up the file is too messy.

I don't think this will affect anything but gcj.

Andrew.


2010-05-04  Andrew Haley  <a...@redhat.com>

        * lib/gen-classlist.sh.in: Use absolute pathnames for all the
        directory names in the output file.

Index: libjava/classpath/lib/gen-classlist.sh.in
===================================================================
--- libjava/classpath/lib/gen-classlist.sh.in   (revision 158610)
+++ libjava/classpath/lib/gen-classlist.sh.in   (working copy)
@@ -7,13 +7,17 @@
 LC_ALL=C; export LC_ALL
 LANG=C; export LANG
 
-echo "Adding java source files from srcdir '@top_srcdir@'."
+abs_top_builddir=`cd "${top_builddir}"; pwd`
+abs_top_srcdir=`cd "@top_srcdir@"; pwd`
+
+echo "Adding java source files from srcdir '${abs_top_srcdir}'."
+
 # We construct 'classes.1' as a series of lines.  Each line
 # has three fields, which are separated by spaces.  The first
 # field is the package of this class (separated by "/"s).
-# The second field is the name of the top-level directory for
-# this file, relative to the build directory.  E.g., it might
-# look like "../../classpath/vm/reference".
+# The second field is the absolute pathname of the top-level directory
+# for this file.  E.g., it might look like
+# "/home/jezebel/classpath/vm/reference".
 # The third field is the file name, like "java/lang/Object.java".
 # We do this because it makes splitting for the gcj build much
 # cheaper.
@@ -21,15 +25,15 @@
  @FIND@ java javax gnu org sun -follow -name '*.java' -print |
  sort -r | sed -e 's,/\([^/]*\)$, \1,' |
  while read pkg file; do
-    echo $pkg @top_srcdir@ $pkg/$file
+    echo $pkg ${abs_top_srcdir} $pkg/$file
  done) > ${top_builddir}/lib/classes.1
 
 # The same, but for the external code.
 for dir in \
-   @top_srcdir@/external/w3c_dom \
-   @top_srcdir@/external/sax \
-   @top_srcdir@/external/relaxngDatatype \
-   @top_srcdir@/external/jsr166 \
+   ${abs_top_srcdir}/external/w3c_dom \
+   ${abs_top_srcdir}/external/sax \
+   ${abs_top_srcdir}/external/relaxngDatatype \
+   ${abs_top_srcdir}/external/jsr166 \
    ; do
    (cd $dir
    for subdir in java javax gnu org sun; do
@@ -62,8 +66,6 @@
 done
 
 # Only include generated files once.
-abs_top_builddir=`cd "${top_builddir}"; pwd`
-abs_top_srcdir=`cd "@top_srcdir@"; pwd`
 if test "$abs_top_builddir" != "$abs_top_srcdir"; then
   echo "Adding generated files in builddir '${top_builddir}'."
   # Currently the only generated files are in gnu.*.

Reply via email to