From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 15835 invoked by alias); 11 Apr 2008 22:41:38 -0000 Received: (qmail 15797 invoked by uid 367); 11 Apr 2008 22:41:37 -0000 Date: Fri, 11 Apr 2008 22:41:00 -0000 Message-ID: <20080411224137.15782.qmail@sourceware.org> From: cagney@sourceware.org To: frysk-cvs@sourceware.org Subject: [SCM] master: Generate CNI headers using .class files in the .jar . X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: edcbffeacef28be267f416367d0bc0c45f114848 X-Git-Newrev: 8799a9d03b5f22f6a685a40aef649f15a8296cce Mailing-List: contact frysk-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: frysk-cvs-owner@sourceware.org Reply-To: frysk@sourceware.org X-SW-Source: 2008-q2/txt/msg00088.txt.bz2 The branch, master has been updated via 8799a9d03b5f22f6a685a40aef649f15a8296cce (commit) from edcbffeacef28be267f416367d0bc0c45f114848 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email. - Log ----------------------------------------------------------------- commit 8799a9d03b5f22f6a685a40aef649f15a8296cce Author: Andrew Cagney Date: Fri Apr 11 18:40:31 2008 -0400 Generate CNI headers using .class files in the .jar . frysk-common/ChangeLog 2008-04-11 Andrew Cagney * Makefile.rules (.java.h): Get the .class files from the .jar. frysk-sys/lib/dwfl/ChangeLog 2008-04-11 Andrew Cagney * cni/Dwfl.cxx: Explicitly include "inua/eio/Buffer.h". ----------------------------------------------------------------------- Summary of changes: frysk-common/ChangeLog | 2 ++ frysk-common/Makefile.rules | 20 ++++++-------------- frysk-sys/lib/dwfl/ChangeLog | 2 ++ frysk-sys/lib/dwfl/cni/Dwfl.cxx | 1 + 4 files changed, 11 insertions(+), 14 deletions(-) First 500 lines of diff: diff --git a/frysk-common/ChangeLog b/frysk-common/ChangeLog index 2b6ad40..32a719e 100644 --- a/frysk-common/ChangeLog +++ b/frysk-common/ChangeLog @@ -1,5 +1,7 @@ 2008-04-11 Andrew Cagney + * Makefile.rules (.java.h): Get the .class files from the .jar. + * Makefile.gen.sh (files.base): Handle .S when breaking down file names. diff --git a/frysk-common/Makefile.rules b/frysk-common/Makefile.rules index dddfcd3..d5c147a 100644 --- a/frysk-common/Makefile.rules +++ b/frysk-common/Makefile.rules @@ -364,21 +364,14 @@ $(GEN_SOURCENAME)/JUnitTests.java: files-java.list # Generate one or more .h files, one per named class, and using CNI, # from the corresponding .java file. Anonymous classes are pruned. -# Need to store the intermediate .class files in a separate directory -# as otherwise GCJ will include a possibly out-dated .class file -# instead of the latest .java file leading to screwed up dependencies. +# This assumes that the directories .jar file has already been built. .java.h: b=`basename $*` ; \ d=`dirname $*` ; \ - tmpdir=$$b.tmp ; \ - rm -rf $$tmpdir ; \ - mkdir -p $$tmpdir ; \ - $(JAVAC) $(JAVACFLAGS) -d $$tmpdir '$<' || exit 1 ; \ - classes=`cd $$tmpdir; find $$d/$$b*.class \ - -name '*\$$[0-9]*' -prune \ - -o -name $$b.class -print \ - -o -name $$b'\$$*'.class -print \ + classes=`$(JAR) tf $(GEN_DIRNAME).jar | grep \ + -e $$d/$$b'\.class' \ + -e $$d/$$b'$$[^0-9]*\.class' \ | sed -e 's,.class$$,,'`; \ echo $$classes ; \ for class in $$classes ; do \ @@ -386,11 +379,10 @@ $(GEN_SOURCENAME)/JUnitTests.java: files-java.list outputfile=`basename $$class`.h; \ echo "$$class => $$outputdir/$$outputfile"; \ rm -f $$outputdir/$$outputfile ; \ - $(GCJH) -I $$tmpdir \ + $(GCJH) -I $(GEN_DIRNAME).jar \ -o $$outputdir/$$outputfile \ $(GCJHFLAGS) $$class ; \ - done ; \ - rm -rf $$tmpdir + done # Shared library rule (for moment assume that .a contains PIC code). SUFFIXES += .so diff --git a/frysk-sys/lib/dwfl/ChangeLog b/frysk-sys/lib/dwfl/ChangeLog index eb121bb..ce36660 100644 --- a/frysk-sys/lib/dwfl/ChangeLog +++ b/frysk-sys/lib/dwfl/ChangeLog @@ -1,5 +1,7 @@ 2008-04-11 Andrew Cagney + * cni/Dwfl.cxx: Explicitly include "inua/eio/Buffer.h". + * jni/DwException.cxx: New. * jni/Dwarf.cxx: New. * jni/DwarfDie.cxx: New. diff --git a/frysk-sys/lib/dwfl/cni/Dwfl.cxx b/frysk-sys/lib/dwfl/cni/Dwfl.cxx index a2c3639..900b0a4 100644 --- a/frysk-sys/lib/dwfl/cni/Dwfl.cxx +++ b/frysk-sys/lib/dwfl/cni/Dwfl.cxx @@ -54,6 +54,7 @@ #include "lib/dwfl/DwarfDieFactory.h" #include "lib/dwfl/DwflModule.h" +#include "inua/eio/Buffer.h" #include "inua/eio/ByteBuffer.h" // Suck in elf_from_remote_memory from elfutils hooks/post-receive -- frysk system monitor/debugger