Re: [tcljava-dev] Re: Error during build (FIX)
Brought to you by:
mdejong
From: Tom P. <tpo...@ny...> - 2006-03-07 23:53:56
|
On Thu, Mar 02, 2006 at 11:05:50AM -0800, Mo DeJong wrote: > On Thu, 2 Mar 2006 10:37:50 -0700 > Tom Poindexter <tpo...@ny...> wrote: > > > Mo, I got this error while trying to compile tjc: > > > > $ make tjc2 > > compile TJC Tcl source files > > tjc tjc.tjc > > error: cannot read: /home/tpoindex/src/java/tcljava.cvs/build/tjc2/bldTJC/source/tjc/*.java > > 1 error > > Well, the command line to javac is something like: > > javac source/tjc/*.java > > It does that instead of passing a huge number of filenames on the command line > because the exec blows up under Windows when the command line is too long. > I wonder if the Unix version of javac can't accept a file name pattern like the > Windows version does. > > You could try to disable that pattern logic in jdk.tcl and see if that fixes it. See attached jdk.tcl.diff and jdk.tcl (to patch/replace ./src/tjc/tjc/library/jdk.tcl) The fix glob's files to expand wildcard patterns, writes the resulting list of files to another file, and uses javac's '@filename' to specify the file containing the list of files. Also, I had to increase the memory for javac to prevent out of memory errors during 'make tjc2'. > > Small request: how about a '-wait' option for TJC::compile that waits > > until compilation is completed, throwing a Tcl error on compile error? > > Notification is already implemented: A shortcut would still be nice to have, perhaps: proc TJC::proc {name arglist body} { uplevel #0 [list ::proc $name $arglist $body] set ::TJC::__DONE__ "" TJC::compile $name -readyvar ::TJC::__DONE__ vwait ::TJC::__DONE__ } -- Tom Poindexter tpo...@ny... |