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...
|