== native win32 ==
Starting with lighty 1.4.11-svn the source compiles on windows. Not all parts are ported, but it works in general.
=== Requirements ===
* Visual C++ (e.g. [http://msdn.microsoft.com/visualc/vctoolkit2003/ Visual C++ Toolkit] or [http://msdn.microsoft.com/vstudio/express/visualc/download/ Visual C++ 2005 Express])
* the win32-SDK from the [http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk Platform SDK] (tip: you don't need the full package)
* [http://www.scons.org/ SCons] (scons 0.96.91 or higher) which requires [http://www.python.org/ Python]
SCons needs a configfile in the same folder as the SConstruct file.
My config.py file looks like this:
prefix='c:/lighttpd-scons/'
VC_TOOLKIT_HOME='c:/Programme/Microsoft Visual C++ Toolkit 2003/'
PSDK_HOME='c:/Programme/Microsoft Platform SDK/'
# with_mysql='/usr/local/mysql/bin/mysql_config'
with_pcre='no'
with_openssl='no'
with_gzip='no'
with_bzip2='no'
with_memcache='no'
with_sqlite3='no'
with_xml='no'
# default 'no'
build_static='yes'
# default 'no'
build_fullstatic='no'
# default 'yes'
build_dynamic='no'
All the with_* options have to 'no' for now, build_static is the only way that works and VC_TOOLKIT_HOME and PSDK_HOME have to be set to the locations of the Visual C++ Toolkit and the Platform SDK.
$ scons
will build the lighty (lighttpd-semi-static.exe) in the 'build' directory.
=== Problems ===
With a get of /trunk/ as of 11/28/2006, and using VS2005, I get:
scons: *** An executable should have exactly one target with the suffix: .exe
Deleting that section out of the SConscript (it seems to be for building test apps?) gets me a bit farther until:
src\server.c(3) : fatal error C1083: Cannot open include file: 'sys/time.h': No such file or directory
Anyone have any suggestions?
As with r1504 /trunk/ it seems that Win32 build is broken:
sys/time.h only exists in POSIX environment, possibly should be using sys/utime.h under Win32.
Local implementation of getopt.h is missing.