public inbox for frysk-cvs@sourceware.org
help / color / mirror / Atom feed
* [SCM] master: Add JNI stubs to frysk-sys.
@ 2008-04-11 21:06 cagney
0 siblings, 0 replies; only message in thread
From: cagney @ 2008-04-11 21:06 UTC (permalink / raw)
To: frysk-cvs
The branch, master has been updated
via 19a5ebfc9ff217e1c1215190c1bf8f11f9631136 (commit)
via a19d93630d1c02ded844c5156cf1aa3fb53dcdf2 (commit)
via 918a0c362b0f1f9e394c44caddfc94bda0f0cd29 (commit)
via 6ebb1f0fb6f2a3cfb1f004694562b6c71934529b (commit)
via d2efaf531bea09c027c86bc5ec0c1c8f558378a7 (commit)
via 0ab0892cc40c5e55d4bcb23c0c0813beec7e1a3e (commit)
via 1689c38b330f1459e465f868a6cf9642e75661b1 (commit)
via aa03aeaec49e9026614ff9b7d201de14628bc10e (commit)
via 0236e57b6beabcd3ac7137a5898d5e412486b1d8 (commit)
from 40fbefd8950ef47a338fd60e10ab6ed234330fc2 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email.
- Log -----------------------------------------------------------------
commit 19a5ebfc9ff217e1c1215190c1bf8f11f9631136
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 17:02:15 2008 -0400
Add JNI stubs to frysk-sys.
frysk-sys/frysk/config/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/BuildCompiler.cxx: New.
* jni/Config.cxx: New.
* jni/jni/FryskVersion.cxx: New.
frysk-sys/frysk/sys/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/AuditLibs.cxx: New.
* jni/ChildFactory.cxx: New.
* jni/DaemonFactory.cxx: New.
* jni/Exec.cxx: New.
* jni/FileDescriptor.cxx: New.
* jni/Fork.cxx: New.
* jni/Itimer.cxx: New.
* jni/Pid.cxx: New.
* jni/Pipe.cxx: New.
* jni/Poll.cxx: New.
* jni/PseudoTerminal.cxx: New.
* jni/Signal.cxx: New.
* jni/SignalSet.cxx: New.
* jni/StatelessFile.cxx: New.
* jni/Tid.cxx: New.
* jni/Uname.cxx: New.
* jni/Wait.cxx: New.
frysk-sys/frysk/sys/proc/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/AuxvBuilder.cxx: New.
* jni/CmdLineBuilder.cxx: New.
* jni/Exe.cxx: New.
* jni/MapsBuilder.cxx: New.
* jni/ProcBuilder.cxx: New.
* jni/Stat.cxx: New.
* jni/Status.cxx: New.
frysk-sys/frysk/sys/ptrace/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/AddressSpace.cxx: New.
* jni/Ptrace.cxx: New.
* jni/RegisterSet.cxx: New.
* jni/Utrace.cxx: New.
frysk-sys/frysk/sys/termios/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/Control.cxx: New.
* jni/Flow.cxx: New.
* jni/Flush.cxx: New.
* jni/Input.cxx: New.
* jni/Local.cxx: New.
* jni/Output.cxx: New.
* jni/Special.cxx: New.
* jni/Speed.cxx: New.
* jni/Termios.cxx: New.
frysk-sys/frysk/testbed/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/LocalMemory.cxx: New.
* jni/Tee.cxx: New.
frysk-sys/inua/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/MmapByteBuffer.cxx: New.
frysk-sys/lib/dwfl/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/DwException.cxx: New.
* jni/Dwarf.cxx: New.
* jni/DwarfDie.cxx: New.
* jni/Dwfl.cxx: New.
* jni/DwflLine.cxx: New.
* jni/DwflModule.cxx: New.
* jni/Elf.cxx: New.
* jni/ElfArchiveSymbol.cxx: New.
* jni/ElfData.cxx: New.
* jni/ElfDynamic.cxx: New.
* jni/ElfNhdr.cxx: New.
* jni/ElfPrAuxv.cxx: New.
* jni/ElfPrFPRegSet.cxx: New.
* jni/ElfPrXFPRegSet.cxx: New.
* jni/ElfPrpsinfo.cxx: New.
* jni/ElfPrstatus.cxx: New.
* jni/ElfRel.cxx: New.
* jni/ElfSection.cxx: New.
* jni/ElfSymbol.cxx: New.
frysk-sys/lib/opcodes/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/Disassembler.cxx: New.
frysk-sys/lib/stdcpp/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/Demangler.cxx: New.
frysk-sys/lib/unwind/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* jni/ElfImage.cxx: New.
* jni/UnwindPPC32.cxx: New.
* jni/UnwindPPC64.cxx: New.
* jni/UnwindX86.cxx: New.
* jni/UnwindX8664.cxx: New.
commit a19d93630d1c02ded844c5156cf1aa3fb53dcdf2
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 16:48:09 2008 -0400
frysk-sys/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* Makefile.am (JniRunner.jar): Force frysk-sys.jar into JAVAC's
classpath.
commit 918a0c362b0f1f9e394c44caddfc94bda0f0cd29
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 16:03:30 2008 -0400
Add a Jni TestRunner.
frysk-common/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* Makefile.gen.sh (solib_PROGRAMS): Fix typo; Use GEN_DIRNAME not
GEN_MAKENAME.
frysk-sys/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* Makefile.am (JniRunner.java, JniRunner.jar, JniRunner): New
targets.
commit 6ebb1f0fb6f2a3cfb1f004694562b6c71934529b
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 14:38:42 2008 -0400
Build jni .solib.
frysk-common/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* Makefile.rules (SUBST_SED): Substitute GEN_DIRNAME.
* Makefile.gen.sh (solib_PROGRAMS): Add lib${GEN_MAKENAME}-jni.so.
commit d2efaf531bea09c027c86bc5ec0c1c8f558378a7
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 12:38:11 2008 -0400
Fix stray non-arch32 reference to arch32 sysroot in all-local.
frysk-core/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* Makefile.am (all-local) [DO_ARCH32_TEST]: Conditionally add
frysk/pkglibdir/arch32/test-sysroot to all-local's dependencies.
(TEST_SYSROOT, TEST32_SYSROOT): Define.
commit 0ab0892cc40c5e55d4bcb23c0c0813beec7e1a3e
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 12:30:22 2008 -0400
Fix compiling of non-cni/jni .cxx et.al. files.
frysk-common/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* Makefile.gen.sh: Re-include non-cni/jni .cxx et.al. lost by
below.
commit 1689c38b330f1459e465f868a6cf9642e75661b1
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 11:32:56 2008 -0400
Ignore files.base.
frysk-core/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* .gitignore: Ignore files.base.
frysk-gtk/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* .gitignore: Ignore files.base.
frysk-gui/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* .gitignore: Ignore files.base.
frysk-sys/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* .gitignore: Ignore files.base.
commit aa03aeaec49e9026614ff9b7d201de14628bc10e
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 11:30:19 2008 -0400
Compile */jni/*.cxx files.
frysk-common/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* Makefile.gen.sh (automake_variable_defined): New.
(automake_variable): Use.
(has_generated_java_source): New.
(has_java_source): New; use has_generated_java_source.
(sources): Pass to automake_variable.
(generate_compile): New; replace .cxx pass.
commit 0236e57b6beabcd3ac7137a5898d5e412486b1d8
Author: Andrew Cagney <cagney@redhat.com>
Date: Fri Apr 11 09:47:05 2008 -0400
Generate JNI headers when requested.
frysk-common/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* Makefile.rules (JAVAH_CNI_BUILT): Replace JAVAH_BUILT.
* Makefile.gen.sh (generate_cni_header): New.
(generate_jni_header): New.
(automake_variable): Replace set_variable.
frysk-sys/ChangeLog
2008-04-11 Andrew Cagney <cagney@redhat.com>
* bootstrap.sh: Pass both --cni and --jni to Makefile.gen.sh.
-----------------------------------------------------------------------
Summary of changes:
frysk-common/ChangeLog | 21 +
frysk-common/Makefile.gen.sh | 331 +++++++++++-----
frysk-common/Makefile.rules | 5 +-
frysk-core/.gitignore | 1 +
frysk-core/ChangeLog | 8 +
frysk-core/Makefile.am | 13 +-
frysk-gtk/.gitignore | 1 +
frysk-gtk/ChangeLog | 4 +
frysk-gui/.gitignore | 1 +
frysk-gui/ChangeLog | 4 +
frysk-sys/.gitignore | 1 +
frysk-sys/ChangeLog | 14 +
frysk-sys/Makefile.am | 33 ++
frysk-sys/bootstrap.sh | 4 +-
frysk-sys/frysk/config/ChangeLog | 6 +
frysk-sys/frysk/config/jni/BuildCompiler.cxx | 81 ++++
frysk-sys/frysk/config/jni/Config.cxx | 141 +++++++
frysk-sys/frysk/config/jni/FryskVersion.cxx | 51 +++
frysk-sys/frysk/sys/ChangeLog | 20 +
frysk-sys/frysk/sys/jni/AuditLibs.cxx | 61 +++
frysk-sys/frysk/sys/jni/ChildFactory.cxx | 51 +++
frysk-sys/frysk/sys/jni/DaemonFactory.cxx | 51 +++
frysk-sys/frysk/sys/jni/Exec.cxx | 51 +++
frysk-sys/frysk/sys/jni/FileDescriptor.cxx | 171 ++++++++
frysk-sys/frysk/sys/jni/Fork.cxx | 61 +++
frysk-sys/frysk/sys/jni/Itimer.cxx | 61 +++
frysk-sys/frysk/sys/jni/Pid.cxx | 61 +++
frysk-sys/frysk/sys/jni/Pipe.cxx | 51 +++
frysk-sys/frysk/sys/jni/Poll.cxx | 61 +++
frysk-sys/frysk/sys/jni/PseudoTerminal.cxx | 61 +++
frysk-sys/frysk/sys/jni/Signal.cxx | 481 +++++++++++++++++++++++
frysk-sys/frysk/sys/jni/SignalSet.cxx | 171 ++++++++
frysk-sys/frysk/sys/jni/StatelessFile.cxx | 61 +++
frysk-sys/frysk/sys/jni/Tid.cxx | 51 +++
frysk-sys/frysk/sys/jni/Uname.cxx | 51 +++
frysk-sys/frysk/sys/jni/Wait.cxx | 111 ++++++
frysk-sys/frysk/sys/proc/ChangeLog | 10 +
frysk-sys/frysk/sys/proc/jni/AuxvBuilder.cxx | 61 +++
frysk-sys/frysk/sys/proc/jni/CmdLineBuilder.cxx | 61 +++
frysk-sys/frysk/sys/proc/jni/Exe.cxx | 51 +++
frysk-sys/frysk/sys/proc/jni/MapsBuilder.cxx | 61 +++
frysk-sys/frysk/sys/proc/jni/ProcBuilder.cxx | 71 ++++
frysk-sys/frysk/sys/proc/jni/Stat.cxx | 71 ++++
frysk-sys/frysk/sys/proc/jni/Status.cxx | 61 +++
frysk-sys/frysk/sys/ptrace/ChangeLog | 7 +
frysk-sys/frysk/sys/ptrace/jni/AddressSpace.cxx | 101 +++++
frysk-sys/frysk/sys/ptrace/jni/Ptrace.cxx | 161 ++++++++
frysk-sys/frysk/sys/ptrace/jni/RegisterSet.cxx | 81 ++++
frysk-sys/frysk/sys/ptrace/jni/Utrace.cxx | 111 ++++++
frysk-sys/frysk/sys/termios/ChangeLog | 12 +
frysk-sys/frysk/sys/termios/jni/Control.cxx | 61 +++
frysk-sys/frysk/sys/termios/jni/Flow.cxx | 51 +++
frysk-sys/frysk/sys/termios/jni/Flush.cxx | 51 +++
frysk-sys/frysk/sys/termios/jni/Input.cxx | 61 +++
frysk-sys/frysk/sys/termios/jni/Local.cxx | 61 +++
frysk-sys/frysk/sys/termios/jni/Output.cxx | 61 +++
frysk-sys/frysk/sys/termios/jni/Special.cxx | 61 +++
frysk-sys/frysk/sys/termios/jni/Speed.cxx | 71 ++++
frysk-sys/frysk/sys/termios/jni/Termios.cxx | 101 +++++
frysk-sys/frysk/testbed/ChangeLog | 5 +
frysk-sys/frysk/testbed/jni/LocalMemory.cxx | 141 +++++++
frysk-sys/frysk/testbed/jni/Tee.cxx | 51 +++
frysk-sys/inua/ChangeLog | 4 +
frysk-sys/inua/eio/jni/MmapByteBuffer.cxx | 71 ++++
frysk-sys/lib/dwfl/ChangeLog | 22 +
frysk-sys/lib/dwfl/jni/DwException.cxx | 61 +++
frysk-sys/lib/dwfl/jni/Dwarf.cxx | 81 ++++
frysk-sys/lib/dwfl/jni/DwarfDie.cxx | 351 +++++++++++++++++
frysk-sys/lib/dwfl/jni/Dwfl.cxx | 161 ++++++++
frysk-sys/lib/dwfl/jni/DwflLine.cxx | 91 +++++
frysk-sys/lib/dwfl/jni/DwflModule.cxx | 151 +++++++
frysk-sys/lib/dwfl/jni/Elf.cxx | 371 +++++++++++++++++
frysk-sys/lib/dwfl/jni/ElfArchiveSymbol.cxx | 71 ++++
frysk-sys/lib/dwfl/jni/ElfData.cxx | 221 +++++++++++
frysk-sys/lib/dwfl/jni/ElfDynamic.cxx | 51 +++
frysk-sys/lib/dwfl/jni/ElfNhdr.cxx | 71 ++++
frysk-sys/lib/dwfl/jni/ElfPrAuxv.cxx | 71 ++++
frysk-sys/lib/dwfl/jni/ElfPrFPRegSet.cxx | 71 ++++
frysk-sys/lib/dwfl/jni/ElfPrXFPRegSet.cxx | 71 ++++
frysk-sys/lib/dwfl/jni/ElfPrpsinfo.cxx | 71 ++++
frysk-sys/lib/dwfl/jni/ElfPrstatus.cxx | 71 ++++
frysk-sys/lib/dwfl/jni/ElfRel.cxx | 51 +++
frysk-sys/lib/dwfl/jni/ElfSection.cxx | 121 ++++++
frysk-sys/lib/dwfl/jni/ElfSymbol.cxx | 81 ++++
frysk-sys/lib/opcodes/ChangeLog | 4 +
frysk-sys/lib/opcodes/jni/Disassembler.cxx | 71 ++++
frysk-sys/lib/stdcpp/ChangeLog | 6 +-
frysk-sys/lib/stdcpp/jni/Demangler.cxx | 51 +++
frysk-sys/lib/unwind/ChangeLog | 8 +
frysk-sys/lib/unwind/jni/ElfImage.cxx | 61 +++
frysk-sys/lib/unwind/jni/UnwindPPC32.cxx | 291 ++++++++++++++
frysk-sys/lib/unwind/jni/UnwindPPC64.cxx | 291 ++++++++++++++
frysk-sys/lib/unwind/jni/UnwindX86.cxx | 291 ++++++++++++++
frysk-sys/lib/unwind/jni/UnwindX8664.cxx | 291 ++++++++++++++
94 files changed, 7747 insertions(+), 107 deletions(-)
create mode 100644 frysk-sys/frysk/config/jni/BuildCompiler.cxx
create mode 100644 frysk-sys/frysk/config/jni/Config.cxx
create mode 100644 frysk-sys/frysk/config/jni/FryskVersion.cxx
create mode 100644 frysk-sys/frysk/sys/jni/AuditLibs.cxx
create mode 100644 frysk-sys/frysk/sys/jni/ChildFactory.cxx
create mode 100644 frysk-sys/frysk/sys/jni/DaemonFactory.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Exec.cxx
create mode 100644 frysk-sys/frysk/sys/jni/FileDescriptor.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Fork.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Itimer.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Pid.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Pipe.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Poll.cxx
create mode 100644 frysk-sys/frysk/sys/jni/PseudoTerminal.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Signal.cxx
create mode 100644 frysk-sys/frysk/sys/jni/SignalSet.cxx
create mode 100644 frysk-sys/frysk/sys/jni/StatelessFile.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Tid.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Uname.cxx
create mode 100644 frysk-sys/frysk/sys/jni/Wait.cxx
create mode 100644 frysk-sys/frysk/sys/proc/jni/AuxvBuilder.cxx
create mode 100644 frysk-sys/frysk/sys/proc/jni/CmdLineBuilder.cxx
create mode 100644 frysk-sys/frysk/sys/proc/jni/Exe.cxx
create mode 100644 frysk-sys/frysk/sys/proc/jni/MapsBuilder.cxx
create mode 100644 frysk-sys/frysk/sys/proc/jni/ProcBuilder.cxx
create mode 100644 frysk-sys/frysk/sys/proc/jni/Stat.cxx
create mode 100644 frysk-sys/frysk/sys/proc/jni/Status.cxx
create mode 100644 frysk-sys/frysk/sys/ptrace/jni/AddressSpace.cxx
create mode 100644 frysk-sys/frysk/sys/ptrace/jni/Ptrace.cxx
create mode 100644 frysk-sys/frysk/sys/ptrace/jni/RegisterSet.cxx
create mode 100644 frysk-sys/frysk/sys/ptrace/jni/Utrace.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Control.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Flow.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Flush.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Input.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Local.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Output.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Special.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Speed.cxx
create mode 100644 frysk-sys/frysk/sys/termios/jni/Termios.cxx
create mode 100644 frysk-sys/frysk/testbed/jni/LocalMemory.cxx
create mode 100644 frysk-sys/frysk/testbed/jni/Tee.cxx
create mode 100644 frysk-sys/inua/eio/jni/MmapByteBuffer.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/DwException.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/Dwarf.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/DwarfDie.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/Dwfl.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/DwflLine.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/DwflModule.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/Elf.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfArchiveSymbol.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfData.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfDynamic.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfNhdr.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfPrAuxv.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfPrFPRegSet.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfPrXFPRegSet.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfPrpsinfo.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfPrstatus.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfRel.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfSection.cxx
create mode 100644 frysk-sys/lib/dwfl/jni/ElfSymbol.cxx
create mode 100644 frysk-sys/lib/opcodes/jni/Disassembler.cxx
create mode 100644 frysk-sys/lib/stdcpp/jni/Demangler.cxx
create mode 100644 frysk-sys/lib/unwind/jni/ElfImage.cxx
create mode 100644 frysk-sys/lib/unwind/jni/UnwindPPC32.cxx
create mode 100644 frysk-sys/lib/unwind/jni/UnwindPPC64.cxx
create mode 100644 frysk-sys/lib/unwind/jni/UnwindX86.cxx
create mode 100644 frysk-sys/lib/unwind/jni/UnwindX8664.cxx
First 500 lines of diff:
diff --git a/frysk-common/ChangeLog b/frysk-common/ChangeLog
index d8e9f32..c4c20e9 100644
--- a/frysk-common/ChangeLog
+++ b/frysk-common/ChangeLog
@@ -1,5 +1,26 @@
2008-04-11 Andrew Cagney <cagney@redhat.com>
+ * Makefile.gen.sh (solib_PROGRAMS): Fix typo; Use GEN_DIRNAME not
+ GEN_MAKENAME.
+
+ * Makefile.rules (SUBST_SED): Substitute GEN_DIRNAME.
+ * Makefile.gen.sh (solib_PROGRAMS): Add lib${GEN_MAKENAME}-jni.so.
+
+ * Makefile.gen.sh: Re-include non-cni/jni .cxx et.al. lost by
+ below.
+
+ * Makefile.gen.sh (automake_variable_defined): New.
+ (automake_variable): Use.
+ (has_generated_java_source): New.
+ (has_java_source): New; use has_generated_java_source.
+ (sources): Pass to automake_variable.
+ (generate_compile): New; replace .cxx pass.
+
+ * Makefile.rules (JAVAH_CNI_BUILT): Replace JAVAH_BUILT.
+ * Makefile.gen.sh (generate_cni_header): New.
+ (generate_jni_header): New.
+ (automake_variable): Replace set_variable.
+
* frysk.xml-in: Include version.
2008-04-08 Andrew Cagney <cagney@redhat.com>
diff --git a/frysk-common/Makefile.gen.sh b/frysk-common/Makefile.gen.sh
index a144827..f5b93fe 100755
--- a/frysk-common/Makefile.gen.sh
+++ b/frysk-common/Makefile.gen.sh
@@ -75,8 +75,8 @@ GEN_ARGS="$@"
while test $# -gt 0
do
case "$1" in
- --cni ) cni=true ; jni=false ;;
- --jni ) jni=true ; cni=false ;;
+ --cni ) cni=true ;;
+ --jni ) jni=true ;;
*.jar ) jars="${jars} $1" ;;
*_JAR ) JARS="${JARS} $1" ;;
* ) dirs="${dirs} $1" ;;
@@ -156,15 +156,36 @@ EOF
echo "$@" 1>&2
}
-# Called as: set_variable foodir = '$(datadir)/foo'
-# set variable $1 to value $3, if this is the fist time called:
-set_variable ()
+# Does the automake variable exist (as in did this file define it).
+
+automake_variable_defined ()
+{
+ local name=$1
+ local variable=variable_${name}_set
+ eval test -n \"\${${variable}:-}\"
+}
+
+# Called as: variable NAME = [VALUE] or variable NAME += VALUE sets or
+# appends variable $1 to value $3, if this is the fist time called.
+# The only GOT-YA is that all invocations of this function must occure
+# in the same process; which means ``a | while read ... '' can't be
+# used.
+
+automake_variable ()
{
- if eval test -z "\${${1}_set:-}"; then
- eval ${1}_set=true
- echo "$@"
+ local name=$1 ; shift
+ local op=$1 ; shift
+ if automake_variable_defined $name ; then
+ # Append only; ignore duplicate assigns
+ if test "x$op" = "x+=" ; then
+ echo "$name" += "$@"
+ fi
+ else
+ local variable=variable_${name}_set
+ eval $variable=\'$name $op "$*"\'
+ echo "$name" = "$@"
fi
-}
+}
check_MANS ()
{
@@ -232,8 +253,9 @@ echo_arch32_PROGRAMS()
;;
esac
- echo "if DO_ARCH32_TEST"
cat <<EOF
+
+if DO_ARCH32_TEST
${name_}_SOURCES = ${file}
# why am_?
am_${name_}_OBJECTS = ${dir_name}/arch32/${base_name}.\$(OBJEXT)
@@ -250,7 +272,6 @@ EOF
echo "${name_}_LDADD = -lpthread"
fi
echo "endif"
- echo
;;
* )
;;
@@ -283,6 +304,25 @@ echo_LDFLAGS ()
echo "${name_}_LDFLAGS += \${GEN_GCJ_NO_SIGCHLD_FLAGS}"
}
+# Returns true if the path leads to a java source generator.
+
+has_generated_java_source ()
+{
+ test \
+ -r $1.shenum \
+ -o -r $1.mkenum \
+ -o -r $1.java-sh \
+ -o -r $1.java-in
+}
+
+# Return true if the path leads to either java source, or a java
+# source generator.
+
+has_java_source ()
+{
+ test -r $1.java || has_generated_java_source $1
+}
+
has_java_main ()
{
grep ' main[ ]*[(]' $1 > /dev/null 2>&1
@@ -402,14 +442,14 @@ print_header "... the lib${GEN_DIRNAME}.a skeleton"
sources=lib${GEN_MAKENAME}_a_SOURCES
-cat <<EOF
-
# Most of the directory's sources will be built into a single archive
# (.a). Start with a skeleton for that archive and then accumulate
# the relevant files.
+automake_variable ${sources} =
+
+cat <<EOF
noinst_LIBRARIES += lib${GEN_DIRNAME}.a
-${sources} =
if JAR_COMPILE
${sources} += ${GEN_DIRNAME}.jar
endif
@@ -470,10 +510,7 @@ for suffix in .java .java-sh .mkenum .shenum .java-in ; do
# source tree - handled earlier.
case ${suffix} in
.java)
- test -r "${d}/${b}.java-sh" && continue
- test -r "${d}/${b}.mkenum" && continue
- test -r "${d}/${b}.shenum" && continue
- test -r "${d}/${b}.java-in" && continue
+ has_generated_java_source ${d}/${b} && continue
test -r "common/${b}.java-in" && continue # too strong?
test "${b}" = JUnitTests && continue # hack
test -r "${d}/${b}.g" && continue
@@ -518,46 +555,46 @@ for suffix in .java-in .java-sh .mkenum .shenum ; do
done
done
-for suffix in .cxx .c .hxx .s .S .c-sh .c-in .cxx-sh .cxx-in; do
- print_header "... ${suffix}"
- grep -e "\\${suffix}\$" files.list | while read file ; do
- d=`dirname ${file}`
- b=`basename ${file} ${suffix}`
- name=${d}/${b}
- name_=`echo ${name} | sed -e 'y,/-,__,'`
- s=`echo ${suffix} | sed -e 's/-sh$//' -e 's/-in$//'`
- if has_main ${file} ; then
- echo "${name_}_SOURCES = ${name}${s}"
- case "${s}" in
- .cxx ) echo "${name_}_LINK = \$(CXXLINK)" ;;
- esac
- echo_PROGRAMS ${name}
- check_MANS ${name}
- if grep 'pthread\.h' ${file} > /dev/null 2>&1 ; then
- echo "${name_}_LDADD = -lpthread"
- fi
- # Generate the rules for arch32 test
- echo_arch32_PROGRAMS ${name} ${name}${s}
- else
- echo "${sources} += ${file}"
- fi
- case "${suffix}" in
- *-in | *-sh)
- echo "BUILT_SOURCES += ${name}${s}"
- echo "SCRIPT_BUILT += ${name}${s}"
- ;;
- esac
+generate_compile ()
+{
+ local file=$1
+ local d=$2
+ local b=$3
+ local suffix=$4
+ local sources=$5
+ local name=${d}/${b}
+ local name_=`echo ${name} | sed -e 'y,-/,__,'`
+ if has_main ${file} ; then
+ echo "${name_}_SOURCES = ${name}.${suffix}"
case "${suffix}" in
- # Hardwire assembler dependency on include/frysk-asm.h;
- # automake doesn't generate this :-( FIXME: ARCH-32 case?
- .S|.s)
- echo "${name}.\$(OBJEXT): \$(top_srcdir)/../frysk-imports/include/frysk-asm.h"
- echo "if DO_ARCH32_TEST"
- echo "${d}/arch32/${b}.\$(OBJEXT): \$(top_srcdir)/../frysk-imports/include/frysk-asm.h"
- echo "endif"
+ cxx ) echo "${name_}_LINK = \$(CXXLINK)" ;;
esac
- done
-done
+ echo_PROGRAMS ${name}
+ check_MANS ${name}
+ if grep 'pthread\.h' ${file} > /dev/null 2>&1 ; then
+ echo "${name_}_LDADD = -lpthread"
+ fi
+ # Generate the rules for 32-bit compile
+ echo_arch32_PROGRAMS ${name} ${name}.${suffix}
+ else
+ automake_variable ${sources} += ${file}
+ fi
+ case "${file}" in
+ *-in | *-sh)
+ echo "BUILT_SOURCES += ${name}.${suffix}"
+ echo "SCRIPT_BUILT += ${name}.${suffix}"
+ ;;
+ esac
+ case "${file}" in
+ *.S | *.s)
+ # Hardwire assembler dependency on include/frysk-asm.h;
+ # automake doesn't generate this :-(
+ echo "${name}.\$(OBJEXT): \$(top_srcdir)/../frysk-imports/include/frysk-asm.h"
+ echo "if DO_ARCH32_TEST"
+ echo "${d}/arch32/${b}.\$(OBJEXT): \$(top_srcdir)/../frysk-imports/include/frysk-asm.h"
+ echo "endif"
+ esac
+}
# What type of build?
if $cni ; then
@@ -568,45 +605,88 @@ else
: default
fi
-# Grep the cni/*.cxx files forming a list of included files. Assume
-# these are all generated from .class files found in the master .jar.
-
-# This matches both:
-# #include "a/file/dot.h"
-# and
-# #define A_FILE "a/file/dot.h"
-
-print_header "... *.{hxx,cxx}=.h"
-grep -e '/cni/' -e '/jni/' files.list \
- | xargs -r grep -H \
- -e '#include ".*.h"' \
- -e '#define [A-Z_]* ".*.h"' \
- | sed \
- -e 's/\.\(.\).*:#define [A-Z_]* "/ \1 /' \
- -e 's/\.\(.\).*:#include "/ \1 /' \
- -e 's/\.h".*$//' \
- -e 's/$.*//' \
- | while read o c h
-do
- if test \
- -r ${h}.java -o \
- -r ${h}.shenum -o \
- -r ${h}.mkenum -o \
- -r ${h}.java-sh -o \
- -r ${h}.java-in \
- ; then
- case "$c" in
- # Do not know what includes the header; just build early
- h)
- echo "BUILT_SOURCES += ${h}.h"
- echo "JAVAH_BUILT += ${h}.h"
- ;;
- c) echo "${o}.o: ${h}.h" ;;
- esac
- echo "CLEANFILES += ${h}.h"
- echo "CLEANFILES += ${h}\\\$\$*.h"
- fi
-done | sort -u
+# Grep the *.cxx and *.hxx files forming a list of included files.
+# Assume these are all generated from .class files found in the master
+# .jar.
+
+generate_cni_header () {
+ local file=$1
+ local d=$2
+ local b=$3
+ local suffix=$4
+ local _file=`echo $file | tr '[/.]' '[__]'`
+ sed -n \
+ -e 's,#include "\(.*\)\.h".*,include - \1,p' \
+ -e 's,#include \([A-Z][A-Z0-9_]*\).*,minclude \1 -,p' \
+ -e 's,#define \([A-Z0-9_]*\) "\(.*\)\.h".*,define \1 \2,p' \
+ < $file > $$.tmp
+ while read action m h j; do
+ echo "# file=$file action=$action m=$m h=$h"
+ if test "$action" = "minclude" ; then
+ # Assume file defining macro depends on this file
+ automake_variable $m = \$\($_file\)
+ elif has_java_source ${h} ; then
+ echo "JAVAH_CNI_BUILT += ${h}.h"
+ echo "CLEANFILES += ${h}.h"
+ echo "CLEANFILES += ${h}\\\$\$*.h"
+ j=`echo ${h} | tr '[_]' '[/]'`
+ echo "${h}.h: $j.java | ${GEN_DIRNAME}.jar"
+ case $action in
+ include)
+ case "$suffix" in
+ cxx) echo "$d/$b.o: ${h}.h" ;;
+ hxx) # remember what this file includes
+ automake_variable $_file += ${h}.h ;;
+ esac
+ ;;
+ define)
+ echo "$d/$b.o: ${h}.h"
+ # Assume file using this macro is a dependency.
+ echo "$d/$b.o: \$($m)"
+ ;;
+ esac
+ fi
+ done < $$.tmp
+ rm -f $$.tmp
+}
+
+# For any java file that contains "native" declarations, generate a
+# jni header.
+
+echo 'all-local: $(JAVAH_JNI_BUILT)'
+generate_jni_header ()
+{
+ local file=$1
+ local d=$2
+ local b=$3
+ local suffix=$4
+ if grep ' native ' $file > /dev/null ; then
+ local h=`echo $d/$b | tr '[/]' '[_]'`
+ local c=`echo $d/$b | tr '[/]' '[.]'`
+ automake_variable JAVAH_JNI_BUILT += ${h}.h
+ echo "CLEANFILES += ${h}.h"
+ echo "${h}.h: $file | ${GEN_DIRNAME}.jar"
+ echo " @echo \"$c => ${h}.h\""
+ echo ' $(GCJH) $(GCJHFLAGS) -jni -classpath=$(CLASSPATH):'${GEN_DIRNAME}.jar $c
+ fi
+}
+
+# For JNI .cxx files, generate an explict depend on what should be the
+# corresponding JNI header. What about .cxx files that are not jni?
+
+generate_jni_dependency()
+{
+ local file=$1
+ local d=$2 # contains /jni
+ local b=$3
+ local suffix=$4
+ local j=`dirname $d` # drop /jni
+ if has_java_source $j/$b ; then
+ # A corresponding .java source file.
+ local h=`echo $j/$b | tr '[/]' '[_]'`
+ echo "$d/$b.o: $h.h"
+ fi
+}
# Generate rules for all .xml-in files, assume that they are converted
@@ -753,10 +833,9 @@ sed -n -e '/dir\// {
;;
esac
if test -n "${d2}"; then
- set_variable "${dir}dir" = "\$(${d1}dir)/${d2}"
+ automake_variable "${dir}dir" = "\$(${d1}dir)/${d2}"
fi
- set_variable "${dir}_DATA" =
- echo "${dir}_DATA += $data"
+ automake_variable "${dir}_DATA" += $data
done
@@ -779,3 +858,59 @@ EOF
printf "\tmv \$@.tmp \$@\n"
done
done
+
+
+# Iterate through all the files in file.list; applying all applicable
+# generation rules to each file type. There are no smarts, each file
+# type gets all operations listed explicitly.
+
+# It is assumed that each file is of the form DIRNAME/BASENAME.SUFFIX,
+# pre-process each into: FILE DIRNAME BASENAME SUFFIX
+
+sed -e 's,^\(\(.*\)/\([^/]*\)\.\([a-z-]*\)\),\1 \2 \3 \4,' \
+ -e 's,-in$,,' \
+ -e 's,-sh$,,' \
+ < files.list \
+ > files.base
+
+print_header "bulk processing"
+
+while read file dir base suffix ; do
+
+ echo ""
+ echo "# file=$file"
+ echo "# dir=$dir"
+ echo "# base=$base"
+ echo "# suffix=$suffix"
+ echo ""
+
+ case $file in
+ */cni/*.cxx | */cni/*.cxx-in | */cni/*.cxx-sh | */cni/*.hxx)
+ generate_cni_header $file $dir $base $suffix
+ generate_compile $file $dir $base $suffix ${sources}
+ ;;
+ */jni/*.cxx | */jni/*.cxx-in | */jni/*.cxx-sh)
+ generate_jni_dependency $file $dir $base $suffix
+ generate_compile $file $dir $base $suffix \
+ lib${GEN_MAKENAME}_jni_a_SOURCES
+ ;;
+ *.java | *.java-in | *.java-sh )
+ generate_jni_header $file $dir $base $suffix
+ ;;
+ *.cxx | *.S | *.c )
+ # Non-cni/jni source.
+ generate_compile $file $dir $base $suffix ${sources}
+ ;;
+ esac
+
+done < files.base
+
+
+if automake_variable_defined lib${GEN_MAKENAME}_jni_a_SOURCES ; then
+ cat <<EOF
+noinst_LIBRARIES += lib${GEN_DIRNAME}-jni.a
+lib${GEN_MAKENAME}_jni_so_SOURCES =
+solib_PROGRAMS += lib${GEN_DIRNAME}-jni.so
+lib${GEN_DIRNAME}-jni.so: lib${GEN_DIRNAME}-jni.a
+EOF
+fi
diff --git a/frysk-common/Makefile.rules b/frysk-common/Makefile.rules
index 0a1a8d7..dddfcd3 100644
--- a/frysk-common/Makefile.rules
+++ b/frysk-common/Makefile.rules
@@ -81,7 +81,7 @@ man_MANS =
LDADD =
ANTLR_BUILT =
SCRIPT_BUILT =
-JAVAH_BUILT =
+JAVAH_CNI_BUILT =
check_SCRIPTS =
check_PROGRAMS =
@@ -194,7 +194,7 @@ AM_CCASFLAGS = \
.PHONY: built-sources
built-sources: $(BUILT_SOURCES)
$(ANTLR_BUILT): | $(SCRIPT_BUILT)
-$(JAVAH_BUILT): | $(SCRIPT_BUILT) $(ANTLR_BUILT)
+$(JAVAH_CNI_BUILT): | $(SCRIPT_BUILT) $(ANTLR_BUILT)
\f
# Rules for building a .java file from any of a .mkclass file, a
@@ -275,6 +275,7 @@ SUBST_SED = sed \
-e 's,[@]pkglib32dir[@],$(pkglib32dir),g' \
-e 's,[@]pkglib64dir[@],$(pkglib64dir),g' \
-e 's,[@]pkgincludedir[@],$(pkgincludedir),g' \
+ -e 's,[@]GEN_DIRNAME[@],$(GEN_DIRNAME),g' \
-e 's,[@]GEN_PACKAGENAME[@],$(GEN_PACKAGENAME),g' \
-e 's,[@]VERSION[@],$(VERSION),g' \
-e 's,[@]target_cpu[@],@target_cpu@,g'
diff --git a/frysk-core/.gitignore b/frysk-core/.gitignore
index 2655ccd..d349b0c 100644
--- a/frysk-core/.gitignore
+++ b/frysk-core/.gitignore
@@ -10,3 +10,4 @@ depcomp
files.list
install-sh
missing
+files.base
diff --git a/frysk-core/ChangeLog b/frysk-core/ChangeLog
index b481cb7..b0d8871 100644
--- a/frysk-core/ChangeLog
+++ b/frysk-core/ChangeLog
@@ -1,3 +1,11 @@
+2008-04-11 Andrew Cagney <cagney@redhat.com>
+
+ * Makefile.am (all-local) [DO_ARCH32_TEST]: Conditionally add
+ frysk/pkglibdir/arch32/test-sysroot to all-local's dependencies.
+ (TEST_SYSROOT, TEST32_SYSROOT): Define.
hooks/post-receive
--
frysk system monitor/debugger
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2008-04-11 21:06 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-04-11 21:06 [SCM] master: Add JNI stubs to frysk-sys cagney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).