Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:33125 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 93661 invoked by uid 1010); 14 Nov 2007 13:49:10 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 93646 invoked from network); 14 Nov 2007 13:49:10 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 14 Nov 2007 13:49:10 -0000 Authentication-Results: pb1.pair.com header.from=steph@zend.com; sender-id=softfail Authentication-Results: pb1.pair.com smtp.mail=steph@zend.com; spf=permerror; sender-id=softfail Received-SPF: error (pb1.pair.com: domain zend.com from 64.97.136.165 cause and error) X-PHP-List-Original-Sender: steph@zend.com X-Host-Fingerprint: 64.97.136.165 smtpout0165.sc1.he.tucows.com Solaris 8 (1) Received: from [64.97.136.165] ([64.97.136.165:50567] helo=n082.sc1.he.tucows.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 21/C0-55670-4DCFA374 for ; Wed, 14 Nov 2007 08:49:10 -0500 Received: from sc1-out03.emaildefenseservice.com (64.97.139.2) by n082.sc1.he.tucows.com (7.2.069.1) id 47030A3E0033348E; Wed, 14 Nov 2007 13:49:05 +0000 X-SpamScore: 2 X-Spamcatcher-Summary: 2,0,0,a2d1ec544215f8a3,2cf0441d8e91481b,steph@zend.com,-,RULES_HIT:1:2:355:379:539:540:541:542:543:567:599:601:945:946:966:967:973:980:982:988:989:1155:1156:1260:1277:1311:1313:1314:1345:1437:1515:1516:1518:1587:1593:1594:1605:1730:1747:1766:1792:2073:2075:2078:2194:2196:2198:2199:2200:2201:2379:2393:2525:2553:2559:2563:2682:2685:2687:2693:2736:2828:2829:2857:2859:2900:2902:2933:2937:2939:2942:2945:2947:2951:2954:3022:3027:3622:3865:3866:3867:3868:3869:3870: 3871:3872:3873:3874:3934:3936:3938:3941:3944:4051:4250:4385:4639:4886:5007:6117:6119:6261:7653:7679:7688,0,RBL:none,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:,MSBL:none,DNSBL:none X-Spamcatcher-Explanation: Received: from foxbox (80-195-223-230.cable.ubr07.shef.blueyonder.co.uk [80.195.223.230]) (Authenticated sender: steph.fox) by sc1-out03.emaildefenseservice.com (Postfix) with ESMTP; Wed, 14 Nov 2007 13:49:03 +0000 (UTC) Message-ID: <018901c826c5$34c66850$e6dfc350@foxbox> Reply-To: "Steph Fox" To: , "Elizabeth Smith" References: <02.DE.09095.25988374@pb1.pair.com> <698DE66518E7CA45812BD18E807866CEE8A7F6@us-ex1.zend.net> Date: Wed, 14 Nov 2007 13:49:39 -0000 Organization: Zend Technologies MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=response Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 Subject: Re: [PHP-DEV] Providing Visual Studio 2005 builds (again) From: steph@zend.com ("Steph Fox") Hi Elizabeth, Bear in mind that the first part of this discussion (at the start of October) passed me by completely, so I'm arguing in both at present. > I wasn't suggesting replacing the current VC6 builds, I was suggesting > making 2005 builds available for those who want to test. Since linking to > a third party distribution site is out of the question (which boggles my > mind because you DO that for other OS's... Windows is somehow held to a > higher standard I guess), Has anybody suggested it? (I presume you mean 'to pick up the CRT' here?) To my mind it would be infinitely preferable to bundling the CRT with the PHP distro. why can't we provide an official download, > or heck even a build at snaps.php.net, (in addition to the VC6 versions) > for the adventurous to use? Perhaps you haven't noticed that when a bug is fixed in PHP the bug reporter is sent to CVS or the snaps box to test the fix? I would like to find edge cases now instead > of when 2005 IS the default build - and it will happen eventually. We agree on this. And > it's quite frankly foolish to ask the windows users who want to test to > build their own binaries as well, you'll never get a windows test bed with > that attitude. This is a free compiler, is it not? I think though that the QA site's a better place for testing things. If there must be differently-abled binaries, why not distribute them from there? You can put a notice on php.net asking for people to test them. You can even say in that notice that they're so much faster etc, which ought to pull in the adventurous. While on unix and linux the "compile it yourself" > is standard thought, that is not the case and windows and never will be, > and all the talks I do on how to build on windows can't erase an > entrenched mentality. (besides the fact that it's just a heck of a lot > harder to set up a build system on windows) It's not hard to set up a build system on windows. We could still do with rewriting bison to build with sane paths, but apart from that it's dead simple. (Edin won't agree with me on this point.) >> The build system we use is known to work, out of the box, across all >> the current MS compiler versions (read: VC6 -> VS 2005 - I'm >> old-fashioned enough to see 2008 as 'next year'). The only issue, >> then, is third party >> libraries. Ergo, all we really need is a 'zip.zip' for each CRT, >> surely? This assuming - and I guess we do have to assume it - that MS >> are pushing us into the unhappy position of having to distribute our >> own builds of third >> party libs if we want to support Windows at all. (Of course dropping >> that support would be another option, if possibly not a popular one.) > > Actually works fine on 2008 as well ;) Good news :) The problem is most third party > libs we link against have windows support as an afterthought - no one on > the project works on windows or tests on windows and the attitude is so > negative in the open source (particularly gnu) world that the people who > DID originally maintain the ports ran away, so the build support for MSVC > is outdated or missing completely, only people who are brave enough to > assemble make files or projects by hand and fiddle until it builds have > success. I've done that before now, mostly with success. (GTK+ did my head in, but that's mostly due the size of the project.) I'll even help you with this side of things when I get some space. (Heck, even libxml2 which has great official windows > build support links against very antiquated libiconv - 1.9 released in > 2004 when the latest is 1.12) I'd argue that this has nothing to do with > Microsoft and everything to do with Open Source negative stereotypes. I'd try talking to the people involved, preferably without making those assumptions. >> The distribution of third-party libraries is intended for people >> rolling their own PHP builds. I don't see any justification for >> distributing more than one CRT version of every PHP release, in fact I >> think doing so is >> likely to confuse hell out of most of PHP's end users. The only way it >> makes any sense is on the 'testing' front - so maybe it'd make sense >> to ask for volunteer builder/testers on more specialized page(s) used >> for 'zip.zip' >> distributions, and set up a bunch of edge case scripts (e.g. stuff >> that passes around data structures or uses a lot of IO calls, etc). >> The framework to do that already exists in run-tests.php, although the >> tests themselves >> may not. Setting up something this way - a collection of third party >> libs built with VC7, VC8, VC9 when it arrives - and testing the >> various library builds with a same-compiler version of PHP in known >> critical areas, now that >> would be genuinely useful. That would mean that when (most likely) >> Apache move on, we're good and ready to move on with them. > > This is a good goal, and something I've been working on in general, at > least assembling open source libraries that PHP extensions link against, > and building them on different runtimes. But there's no place for a > "testing area" just for windows that could also distribute libs currently > on the website. qa.php.net is a testing area, full stop. Anyone have ideas for a home for this? Maybe > a windows section of gcov? Or maybe test 2005 builds on snaps.php.net or > a page just for binaries for windows? The bottom line is the performance > increase is enough to justify distributing newer builds. >> It concerns me that Edin hasn't been involved either in this >> discussion or the one a few weeks back, so I'm glad you've been in >> touch over this issue off-list. I know Elizabeth knows what she's >> talking about when it comes to >> VC8 (and probably beyond), and hope she and Edin can come to some sane >> arrangement. But please hold back with distributing VC8-only versions >> of PHP when we still support platforms pre-dating its C runtime, and >> please back off from the idea of offering a range of official PHP >> builds with different CRTs. It makes absolutely no sense to do either >> thing at this point in time, and it won't make a great deal of sense >> to do the latter at any time. > > Since when is two versions a range...ah semantics... I wasn't thinking of two versions, I was thinking if this is going to be done anyway (fixing build systems up so we can use them in third-party libraries) we might as well make real and permanent use of it, rather than do Microsoft's bidding as a one-off. I'll refer you to the rest of the thread for details (this end of it, not the October part.) >> nb Andi, Edin's been distributing official NTS builds for some time >> now... they make a huge difference to CLI, and a visible difference to >> PHP-GTK's draw speed. And please note, even the 'NTS' option has >> proved confusing for >> some...! >> >> - Steph > > I have one last suggestion that maybe Microsoft (and everyone so against > the 2005 builds) might want to think about. PHP does not distribute > binaries for linux and similar distributions, however they do provide > links to external distribution sites. What's to stop Microsoft from > distributing non-thread-safe 2005 builds (obviously optimized for IIS) on > their own servers - They'd have to support it. Long term. Think Gnope. > After all PHP provides the same service for other operating systems. In > fact, several of the links on the downloads page aren't even official > builds, but third parties providing the software. Is there some kind of > issue with third party providers not being able to have the same service, > just because they're for Windows? If it's simply because PHP provides > windows binaries already...if the binaries are inferior to third party > offerings... There's a big difference between dealing with a company and dealing with enthusiastic programmers who put all their spare time into coding their ideas. One has vested interests, the other does not. They also have very different sets of resources, and very different ideas about 'long term'. > Anyway, the offer stands to help get libraries up to speed... I'll see if > I can get a hold of Edin, I have space and bandwidth if that's his biggest > issue. I could argue with you all night Steph, but it's obvious you have > an issue with the C runtime changing that Microsoft has done with its > compilers, and so no matter what I say you won't change your opinion ;) > Anyone else (other than Steph or Stas) care to weigh in? 'Shut up Steph, since you don't agree with me'? That's hardly useful in any form of debate. - Steph > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php >