Status of Squid 3 on Windows

From: Guido Serassio <guido.serassio_at_acmeconsulting.it>
Date: Sun, 03 May 2009 13:02:12 +0200

Hi,

Hoping that Bazaar 1.14 really fixes its problems on Windows (I still
don't have tested if it really works), I have done a summary of the
status of Squid on Windows, focusing on various aspects: build
environment, resources for development, source code status and a TODO
for both Squid 2 and Squid 3.

Build environment

Squid should compile on Windows with 3 build environment, but with some limits:

- MinGW+MSYS: full automake/autoconf/libtool/gcc support based on GNU
toolset, but not all functionality (Large file support, IPv6,
mswin_check_ad_group helper, WSAPoll() support on Vista and later, 64
bit Windows support, AIO) can be compiled because a lack of many
library definitions. The generated code quality is good and runs
natively on Windows using the MSVCRT, good performances.
- Cygwin: similar to MinGW, but with more problems. The Windows API
libraries are common to MinGW, so, same compile problems, but
moreover, the build environment itself is very inconstant due to
continuous changes from Cygwin developers and many times the Squid
build process fails after a Cygwin update. The generated code is not
so good, because it relies on an emulation layer, with worse performances.
- MS Visual Studio: it lacks any kind of configure script support,
some of the "magic" is done using some special make projects included
in the main Workspace. But all functionality can be compiled. The
generated code quality is good and runs natively on Windows using the
MSVCRT, good performances.

So, Visual Studio environment is still a must for Squid 3 on Windows.

Resources for development

Currently I'm the only developer working on Windows, but Squid for
Acme Consulting today is a very marginal business, because we are
mainly focused on services for Windows System
Administration/Deployment and because it seems that IT Italian Market
is not so interested to Squid (not only on Windows). For this reason
currently we cannot invest into Squid deployment, so I can dedicate
only a little part of my limited free time to Squid Development.

Source code status

While Squid 2 source code is fine, things for Squid 3 are disastrous:
Squid 3 (trunk and 3.1) was no more compiled on Visual Studio since
March 2008, so the effects of all subsequent big changes are totally
untested on Windows. At the time of the bazaar cutover, the IPv6
support on Windows was still missing.
Today the Visual Studio workspace is totally outdated and needs a big
work to be repaired.
Just to more complicate things, the NT CVS branch on Sourgeforge is
corrupted since two months by a very big cvsmerge failed for a
time-out during script execution.

TODO Squid 2

- Upgrade Visual Studio support from old 6.0 (even if it's very good,
but obsolete) to 2008 (better if we can use the free version)
- Add real run-time support for WSAPoll() on Windows Vista and later,
the Enhancement from the bug #1739 is required

TODO Squid 3

- Allow Squid to build again on Visual Studio
- Check if Squid 3 still runs on Windows ....
- Upgrade Visual Studio support from 2005 to 2008 (better if we can
use the free version)
- Add IPv6 support
- Add real run-time support for WSAPoll() on Windows Vista and later,
the Enhancement from the bug #1739 is required
- .....

IMHO, the port of Squid 3 on Windows seems to be too much damaged for
my capabilities and time resources, so, without any other big
development contribution, we should drop it.

Regards

Guido

-
========================================================
Guido Serassio
Acme Consulting S.r.l. - Microsoft Certified Partner
Via Lucia Savarino, 1 10098 - Rivoli (TO) - ITALY
Tel. : +39.011.9530135 Fax. : +39.011.9781115
Email: guido.serassio_at_acmeconsulting.it
WWW: http://www.acmeconsulting.it/
Received on Sun May 03 2009 - 11:02:32 MDT

This archive was generated by hypermail 2.2.0 : Sun May 31 2009 - 12:00:02 MDT