You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rivet-dev@tcl.apache.org by "David N. Welton" <da...@dedasys.com> on 2003/07/05 16:29:59 UTC
Windows makefile
Hi,
Pat Thoyts was kind enough to create some makefiles for windows, which
I have checked in:
* src/rivetWWW.c (snprintf): Added snprintf define from Pat.
* src/rivetParser.h: Added bit of defines for windows builds,
declared some of the functions EXTERN's here.
* src/rivetList.c: Make list commands created here 'static' - Pat.
* src/rivetCrypt.c: Use ap_config.h to grab other header files we
might need, like crypt.h. This is not an ideal solution, because
it adds a dependency we didn't have before. Added change by Pat
to conditionally compile or not the 'Rivet_Crypt' command.
* src/rivet.h: Added EXTERN definitions for functions.
* src/parserPkgInit.c (Rivetparser_Init): Added EXTERN decleration
for win builds.
* win/rules.vc: New file: include file for Microsoft makefile.
* win/rivet.dsp: New file: Microsoft Developer Studio Project
File.
* win/nmakehlp.c: New file: helper for windows building.
* win/makefile.vc: New file: makefile for windows. All from Pat
Thoyts <pa...@users.sourceforge.net>.
The noteworthy change here is the crypt functionality. In 2.0, which
Pat optimistically attempted to use, they have APR, which has defines
to let you know if there is a crypt.h or not, however, ap_config.h
from 1.3 seems to know enough to grab the right information.
I don't like this dependency, but it seems to at least make things
compile ok. Dmitry, would you check and see if this works on openbsd
as well?
A question for Pat - did you try and give up on make.tcl or... what
was the problem? I had hoped that it would work as a cross platform
builder.
In any case, a big thanks to Pat for his work!
--
David N. Welton
Consulting: http://www.dedasys.com/
Personal: http://www.dedasys.com/davidw/
Free Software: http://www.dedasys.com/freesoftware/
Apache Tcl: http://tcl.apache.org/
---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org
Re: Windows makefile
Posted by "David N. Welton" <da...@dedasys.com>.
Pat Thoyts <Pa...@zsplat.freeserve.co.uk> writes:
> davidw@dedasys.com (David N. Welton) writes:
> >A question for Pat - did you try and give up on make.tcl or... what
> >was the problem? I had hoped that it would work as a cross
> >platform builder.
> >In any case, a big thanks to Pat for his work!
> I tried and eventually gave up on it. My hacks were getting out of
> hand though I could probably revisit it. In general I think it's
> better to stick to the TEA2 configure/make format as much as
> possible. The files I've contributed here are the MSVC equivalents
> (modified from the tcl win sources). A more normal TEA configure.in
> wouldn't be much more work really, then I could use msys+mingw gcc
> or cygwin.
My goal with the Tcl stuff is to make it more cross platform, instead
of requiring that one have cygwin. Although maybe most windows users
just want a binary anyway...
> Issues I had with make.tcl:
> * Apache for Win32 doesn't provide apxs
Ouch.
> * MSVC generates difference suffixes: .lib, .obj and .dll and we
> don't normally prepend lib to libraries.
Ok. The right one for "librivet.so" would be [info
sharedlibextension] though, right? And that would be .dll?
> * link.exe has different option names from ld
Except for the -o, this should just grab things from tclConfig.sh:
sh {$TCL_SHLIB_LD -o $MOD_SHLIB $MOD_OBJECTS $TCL_LIB_SPEC $TCL_LIBS}
> * clean - we don't have rm
Fixed.
> * install - dunno - installed to /opt/tcl/lib/tcllib1.4/rivet !?!
Hrm. I'm still not even sure exactly where files should go (in terms
of available variables) on Unix.
> * distclean - hah hah - yeah xargs :)
Mostly meant for my own convenience, but... we should do that in Tcl
too:-)
> Don't forget though - while this builds, it doesn't actually run
> usefully under Windows Apache 1.3.27. It's still looping around in
> the early initialisation.
Well, thanks the same though, at least now others can have a go at
debugging it.
I wonder what it's getting stuck on:-/
Thanks,
--
David N. Welton
Consulting: http://www.dedasys.com/
Personal: http://www.dedasys.com/davidw/
Free Software: http://www.dedasys.com/freesoftware/
Apache Tcl: http://tcl.apache.org/
---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org
Re: Windows makefile
Posted by Pat Thoyts <Pa...@zsplat.freeserve.co.uk>.
davidw@dedasys.com (David N. Welton) writes:
>
>A question for Pat - did you try and give up on make.tcl or... what
>was the problem? I had hoped that it would work as a cross platform
>builder.
>
>In any case, a big thanks to Pat for his work!
I tried and eventually gave up on it. My hacks were getting out of
hand though I could probably revisit it. In general I think it's
better to stick to the TEA2 configure/make format as much as
possible. The files I've contributed here are the MSVC equivalents
(modified from the tcl win sources). A more normal TEA configure.in
wouldn't be much more work really, then I could use msys+mingw gcc or
cygwin.
Issues I had with make.tcl:
* Apache for Win32 doesn't provide apxs
* MSVC generates difference suffixes: .lib, .obj and .dll and we don't
normally prepend lib to libraries.
* link.exe has different option names from ld
* clean - we don't have rm
* install - dunno - installed to /opt/tcl/lib/tcllib1.4/rivet !?!
* distclean - hah hah - yeah xargs :)
Don't forget though - while this builds, it doesn't actually run
usefully under Windows Apache 1.3.27. It's still looping around in the
early initialisation.
Pat Thoyts
---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org