Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:6046 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 36469 invoked by uid 1010); 3 Dec 2003 07:57:16 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 36398 invoked from network); 3 Dec 2003 07:57:16 -0000 Received: from unknown (HELO mail.zend.com) (192.117.235.230) by pb1.pair.com with SMTP; 3 Dec 2003 07:57:16 -0000 Received: (qmail 3935 invoked from network); 3 Dec 2003 07:57:14 -0000 Received: from guardian.zend.office (HELO andi-laptop.zend.com) (10.1.1.4) by int.zend.com with SMTP; 3 Dec 2003 07:57:14 -0000 Message-ID: <5.1.0.14.2.20031203095458.0a290510@127.0.0.1> X-Sender: andi@127.0.0.1 X-Mailer: QUALCOMM Windows Eudora Version 5.1 Date: Wed, 03 Dec 2003 09:57:13 +0200 To: "Wez Furlong" , In-Reply-To: <09a401c3b92d$a5d03b20$8802a8c0@obsidian> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Subject: Re: [PHP-DEV] New win32 build system From: andi@zend.com (Andi Gutmans) References: <09a401c3b92d$a5d03b20$8802a8c0@obsidian> Hi Wez, I think this is an extremely cool effort (although I haven't played around with it quite yet). Is win32build.zip updated with all of the latest and greatest including libXML2? I really think we should have a big package with everything inside. It's usually a pain when I want to build certain additional extensions because lots of stuff isn't included right now. Andi At 11:40 PM 12/2/2003 +0000, Wez Furlong wrote: >I've committed the build infrastructure for the >"real programmers don't need an IDE" build system for win32. > >Why? >- It's frustrating to have to use VC6 to work on PHP if you > have a newer version that has incompatible project files. >- It's annoying to mess around with libxml2 stuff until it > stabilizes :-) and a pain to have to remember to edit > the config.w32.h header each time, and a pain to have to > avoid accidentally committing those changes each time. >- It's difficult to set up a fully working build environment > for PHP without installing everything. >- It's difficult for people without VC6 to create a win32 > project file for their extensions. > >Requirements: >You need windows script host (cscript.exe) and JScript installed. >This should be a standard config on windows machines since win98 >(perhaps optional under win98). > >You also need the Microsoft build tools (cl.exe, link.exe and nmake.exe). >These are freely available as part of the Platform SDK, but also >come with VC++/Visual Studio. > >Finally, you need the php_build dir that contains all the >headers and libraries for the things that php is linked >against; see [1] for details. > >Usage: >Check out PHP 5 and run buildconf.bat from the root of the php >source. This script is roughly equivalent to the unix buildconf >in that it scans ext/* and sapi/* for config.w32 files describing >optional build components and generates a configure script >named configure.js > >Now run "cscript configure.js --help" to get a list of configure >options; enable and disable stuff as appropriate. > >Then type nmake to build the things you configured. > >You will find the various .exe and .dll files in the build dir >that configure selects for you based on debug and zts settings; >it will be one of the usual Debug_TS, Release_TS, Debug or Release >dirs found under the source root. > >You can also run the test suite by running "nmake test". >[we have some issues under win32 with current CVS!] > >TODO: >- Write config.w32 files for more extensions and sapis. > They're quite easy (just a couple of javascript function calls) > and can be put together almost without thinking by copying the > guts of the config.m4 file from the same extension. >- add those .rc files with version info the generated .dll's and .exe's >- Test if it actually works under win98 (Steph?) > There are only two places that I suspect might have difficulty > under win98. > >[1] >http://www.php.net/manual/en/install.windows.php#install.windows.build > >-- >PHP Internals - PHP Runtime Development Mailing List >To unsubscribe, visit: http://www.php.net/unsub.php