httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wang, Andy" <aw...@ptc.com>
Subject Re: Re: C99 bump prior to apr 2.0?
Date Thu, 04 Sep 2014 16:26:36 GMT
Good point.  I'd forgotten about compatibility with third party modules.

That said, by "arbitrarily" selecting VC6 aren't you also stuck with the same problem?

Thanks,
Andy

On Thu, 2014-09-04 at 08:33 -0700, wrowe@rowe-clan.net wrote:
You can do this.  However, that doesn't solve the problem for users of one
distribution of httpd (from any origin, not just the ASF) linked to a particular
msvcr###, interoperating with a module built by another third party for a
different msvcr### (or trying to build your own add-in with a compiler other
than your distribution's msvcr###).

It *can* work.  Both msvcr###'s are loaded in parallel.  The distribution
core/modules all use their msvcr###, the third party or homebuilt module
uses its distinct msvcr###.

Problems only arise once the third party module plays games with httpd
or apr internal structures, e.g. getting the 'windows fd' (no such thing, it
is an msvcr illusionary handle), or memory alloc/free (they each keep
their own independent memory management).  Any module written
purely in httpd and apr API's will be 100% safe.  Any module that then
manipulates these msvcr objects is hosed and will likely segfault, in
the best case.




--------- Original Message ---------
Subject: Re: C99 bump prior to apr 2.0?
From: "Issac Goldstand" <margol@beamartyr.net>
Date: 9/4/14 10:00 am
To: dev@httpd.apache.org

You can't, AFAIK, due to licensing. You need to include the *installer*
that comes in VC's redist area and can run that installer from yours to
install their runtime...

Or you can statically link to the runtime, but I'm not sure we want to
do that.

On 04/09/2014 17:48, Wang, Andy wrote:
> Is there a reason to not bundle the msvcrtxxx.dll that's microsoft includes in the redist
area?
> So that's what we've taken to doing with our apache. Simply including the version that
microsoft bundles with 2010 in the web server bin directory.
>
> Thanks,
> Andy
>
> On Wed, 2014-09-03 at 17:52 -0500, William A. Rowe Jr. wrote:
> And to answer the question, VC6 for httpd 2.2 is simply for msvcrt.DLL compatibility
and no-surprises upgrades. It is suboptimal, but not as suboptimal as MS's active disdain
for msvcr###.dll users.
>
>
> "Wang, Andy" <awang@ptc.com> wrote:
>
> On Wed, 2014-09-03 at 09:27 -0700, wrowe@rowe-clan.net wrote:
>> Finally returned to VC6, having replaced my older svn on Windows
>> which would no longer handshake with svn.apache.org and bumped into
>> a single issue.
>>
>> Building VC6 binaries for win32, I was bitten by r1508904 which
>> introduces
>> a C99 type prior to releasing apr 2.0 (probably not a good idea to
>> make
>> such changes in a maintenance branch).
>
> I don't mean to tangent this discussion too much but I'm curious.
>
> So this change back in 2.2.26(?) was what finally made me start to use
> visual studio 2010 for our windows builds (and boy is that an ugly
> mess).
>
> Is there a reason why you're sticking with VC6 to build?
>
> I was surprised that this change made it into a maintenance branch, but
> honestly was looking for something to push me to building on VC2010.
>
> Thanks,
> Andy
>


Mime
View raw message