You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apreq-dev@httpd.apache.org by David Wheeler <da...@wheeler.net> on 2002/12/16 22:47:15 UTC

Fwd: [Fwd: Re: [proposal/vote] OS X support]

Howdy,

Stas Bekman asked me to forward this message that I sent to a 
collection of Mac OS X libapreq  users identified by Nat Torkington. 
The upshot is that those of us who use mod_perl on Mac OS X regularly 
*really* want libapreq to support Mac OS X. And it's basically there; 
it seems to work fine on Mac OS X 10.2.2. And Ken Williams and I are 
happy to do test compiles and help out where we can getting the kinks 
out with Mac OS X 10.1.

Thanks,

David

Begin forwarded message:

> On Friday, December 13, 2002, at 08:45  AM, Nathan Torkington wrote:
>
>> Stas Bekman writes:
>>> Per our discussion at ApacheCon, here is an example of why we need
>>> various OS gurus. Even though Apache::Request is not mod_perl per
>>> se, it's tightly coupled with it and many mod_perl users rely on
>>> it. Since we don't have in house OSX expertise, we decided to
>>> release a new version without OSX support.
>>>
>>> No OS-X user has volunteered to help Joe resolve the problem.
>
> Actually, that's not entirely true. Ken Williams and I have offered to 
> help out. Just Wednesday I emailed Joe to let him know that I'd 
> successfully built libapreq1.1rc1 on Mac OS X 10.2.2. Ken has been 
> having trouble with Mac OS X 10.1.x., but I think that we'd both be 
> happy to help out where we can. I think I could probably even get a 
> couple of people at Apple to help out, if necessary.
>
> That said, I'm no C expert. But I've put in a good deal of time 
> figuring out the best approaches to building mod_perl 1.3 on Mac OS X, 
> and have sent in a few patches, and I'm willing to keep it up.
>
> > Stas, I've CC:ed the big OS X people I can think of: David Wheeler,
>> Morbus Iff, Randal Schwartz, and brian d foy.  There are bits of
>> mod_perl and mod_perl2 that aren't trivial builds on OS X.  Sometimes
>> they need patching, either in code or docs.  Nobody has stepped
>> forward to do this.
>
> FYI, links to my patches for Apache build stuff:
>
>   http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14748
>   http://www.mail-archive.com/modssl-users@modssl.org/msg15623.html
>
>> I'd love to see someone be the Go To Guy for OS X and mod_perl
>> questions.  When the libapreq people have a bug reported to them and
>> don't have an OS X box to test it on, they can turn to the Go To Guy
>> (I know, Randal--"Go To Guys considered harmful") for verification and
>> debugging.
>
> I've compiled mod_perl 1.3.x with apreq 1.0 so many times now that 
> it's old hat. I've somewhat positioned myself as a "go-to guy" by 
> writing articles about it for MacDevCenter.com. (I wouldn't be a 
> technical go-to guy; I'd tell people to go-to read my articles.) So 
> anytime that Joe or someone else wants to try out a patched build for 
> Mac OS X, I'm happy to give it a go and report my results. And FWIW, 
> anyone with a SF account can use the Mac OS X compile farm, too.
>
> Part One of my article is here (part two is due to be published 
> Tuesday):
>
>   http://www.macdevcenter.com/pub/a/mac/2002/11/05/apache_osx.html
>
> I think that it would be a shame to release libapreq1.1 without formal 
> Mac OS X support, because it's so close already! I would actually 
> argue that you could say that it's supported for Mac OS X 10.2. And as 
> for Mac OS X 10.1, again, I think that both Ken and I would be willing 
> to test patches; Ken is helping Chris Nandor with a similar problem 
> with Mac::Carbon right now.
>
> So just let me know how I can help. I'll make sure that the 
> MacDevCenter articles get updated as necessary.
>
> Best,
>
> David

-- 
David Wheeler                                     AIM: dwTheory
david@wheeler.net                                 ICQ: 15726394
http://david.wheeler.net/                      Yahoo!: dew7e
                                                Jabber: Theory@jabber.org


Re: 1.1rc2 was (Re: [Fwd: Re: [proposal/vote] OS X support])

Posted by Randy Kobes <ra...@theoryx5.uwinnipeg.ca>.
On 23 Dec 2002, Joe Schaefer wrote:

> David Wheeler <da...@wheeler.net> writes:
> 
> > On Monday, December 23, 2002, at 05:02  PM, Stas Bekman wrote:
> > 
> > >> I agree that it should work, but unfortunately, it doesn't. Neither 
> > >> do these. :-( What does work is if I put in the full path.
> > >
> > > FWIW, we use FindBin in mod_perl 2.0 to resolve this problem.
> > >
> > > use FindBin;
> > > use lib map "$FindBin::Bin/$_",
> > >         qw(../Apache-Test/lib ../lib ../../lib);
> > 
> > I agree that that's a good approach. I enclose a patch implementing 
> > this change. I've tested it and it works fine.
> 
> Patch tested OK on linux.  I just applied it (hoping that
> it won't break the tests on Win32 :).

It's fine on Win32 - thanks :)

-- 
best regards,
randy


Re: 1.1rc2 was (Re: [Fwd: Re: [proposal/vote] OS X support])

Posted by Joe Schaefer <jo...@sunstarsys.com>.
David Wheeler <da...@wheeler.net> writes:

> On Monday, December 23, 2002, at 05:02  PM, Stas Bekman wrote:
> 
> >> I agree that it should work, but unfortunately, it doesn't. Neither 
> >> do these. :-( What does work is if I put in the full path.
> >
> > FWIW, we use FindBin in mod_perl 2.0 to resolve this problem.
> >
> > use FindBin;
> > use lib map "$FindBin::Bin/$_",
> >         qw(../Apache-Test/lib ../lib ../../lib);
> 
> I agree that that's a good approach. I enclose a patch implementing 
> this change. I've tested it and it works fine.

Patch tested OK on linux.  I just applied it (hoping that
it won't break the tests on Win32 :).

-- 
Joe Schaefer

Re: 1.1rc2 was (Re: [Fwd: Re: [proposal/vote] OS X support])

Posted by David Wheeler <da...@wheeler.net>.
On Monday, December 23, 2002, at 05:02  PM, Stas Bekman wrote:

>> I agree that it should work, but unfortunately, it doesn't. Neither 
>> do these. :-( What does work is if I put in the full path.
>
> FWIW, we use FindBin in mod_perl 2.0 to resolve this problem.
>
> use FindBin;
> use lib map "$FindBin::Bin/$_",
>         qw(../Apache-Test/lib ../lib ../../lib);

I agree that that's a good approach. I enclose a patch implementing 
this change. I've tested it and it works fine.

Regards,

David

-- 
David Wheeler                                     AIM: dwTheory
david@wheeler.net                                 ICQ: 15726394
http://david.wheeler.net/                      Yahoo!: dew7e
                                                Jabber: Theory@jabber.org


Re: 1.1rc2 was (Re: [Fwd: Re: [proposal/vote] OS X support])

Posted by Stas Bekman <st...@stason.org>.
David Wheeler wrote:
> On Monday, December 23, 2002, at 04:18  PM, Joe Schaefer wrote:
> 
>>> Can't locate loadable object for module Apache::Request in @INC (@INC
>>> contains: blib/arch
>>
>>             ^^^^^^^^^
>>
>> It should be in there (it's a relative path); you might try editing the
>> bottom of Makefile.PL; see the "unshift @INC" line. Possible changes:
>>
>>   unshift @INC, "./blib/arch";
>> or
>>   unshift @INC, "../blib/arch";
> 
> 
> I agree that it should work, but unfortunately, it doesn't. Neither do 
> these. :-( What does work is if I put in the full path.

FWIW, we use FindBin in mod_perl 2.0 to resolve this problem.

use FindBin;
use lib map "$FindBin::Bin/$_",
         qw(../Apache-Test/lib ../lib ../../lib);



__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


Re: 1.1rc2 was (Re: [Fwd: Re: [proposal/vote] OS X support])

Posted by David Wheeler <da...@wheeler.net>.
On Monday, December 23, 2002, at 04:18  PM, Joe Schaefer wrote:

>> Can't locate loadable object for module Apache::Request in @INC (@INC
>> contains: blib/arch
>             ^^^^^^^^^
>
> It should be in there (it's a relative path); you might try editing the
> bottom of Makefile.PL; see the "unshift @INC" line. Possible changes:
>
>   unshift @INC, "./blib/arch";
> or
>   unshift @INC, "../blib/arch";

I agree that it should work, but unfortunately, it doesn't. Neither do 
these. :-( What does work is if I put in the full path.

>> So I'm guessing that something's wonky in
>> finding the object files before they're installed.
>
> Hmm, maybe there's a relative-path problem in the vendor's build of
> mod_perl?

Given that the full path works, I would guess that this is, in fact, 
the case. Any chance it could be changed to use a full path? If not, 
I'll change the instructions I'm writing to run "make test" after "make 
install" :-(

I enclose the INSTALL.MacOSX file I've written. It borrows liberally 
from your own hints, Joe, and I've tested it on Mac OS X, using both 
approaches. Ken, can you test the Mac OS X 10.1 approach on your box?

Thanks!

David

-- 
David Wheeler                                     AIM: dwTheory
david@wheeler.net                                 ICQ: 15726394
http://david.wheeler.net/                      Yahoo!: dew7e
                                                Jabber: Theory@jabber.org

Re: 1.1rc2 was (Re: [Fwd: Re: [proposal/vote] OS X support])

Posted by Joe Schaefer <jo...@sunstarsys.com>.
David Wheeler <da...@wheeler.net> writes:


[...]

> Can't locate loadable object for module Apache::Request in @INC (@INC 
> contains: blib/arch 
            ^^^^^^^^^

It should be in there (it's a relative path); you might try editing the 
bottom of Makefile.PL; see the "unshift @INC" line. Possible changes:

  unshift @INC, "./blib/arch";
or 
  unshift @INC, "../blib/arch";

[...]

> So I'm guessing that something's wonky in 
> finding the object files before they're installed.

Hmm, maybe there's a relative-path problem in the vendor's build of 
mod_perl?

-- 
Joe Schaefer

Re: 1.1rc2 was (Re: [Fwd: Re: [proposal/vote] OS X support])

Posted by David Wheeler <da...@wheeler.net>.
On Thursday, December 19, 2002, at 04:01  AM, Joe Schaefer wrote:

> Sure, that's fine.  rc-2 is online at
>
>   http://httpd.apache.org/~joes/libapreq-1.1_rc2.tar.gz
>
> I put the patch in /patches.  Check out patches/README for details,
> and be sure to test everything out.  I did not test the patch myself,
> so it's likely broken.

I'll work on that shortly. For now, I'm writing the instructions for 
building apreq on Mac OS X 10.2. It works great for Apple's default 
Apache install except for one thing: The test httpd server doesn't 
start properly. Here's the error I get in t/error_log:

Syntax error on line 67 of /usr/local/src/httpd-apreq-1.1/t/httpd.conf:
Can't locate loadable object for module Apache::Request in @INC (@INC 
contains: blib/arch /usr/local/src/httpd-apreq-1.1/blib/lib 
/usr/local/src/httpd-apreq-1.1/t/lib /usr/local/bricolage/lib 
/Users/david/dev/perl/myco/classes /System/Library/Perl/darwin 
/System/Library/Perl /Library/Perl/darwin /Library/Perl 
/Network/Library/Perl/darwin /Network/Library/Perl . /usr/ 
/usr/lib/perl) at /System/Library/Perl/darwin/mod_perl.pm line 14
Compilation failed in require at (eval 37) line 3.

FWIW, if I go ahead and do "make install" and *then* do "make test", 
all of the tests pass. So I'm guessing that something's wonky in 
finding the object files before they're installed.

As I mentioned before, it works fine with my custom Apache/mod_perl 
build, including the tests.

I should have the INSTALL.MacOSX file done in a couple of hours. If you 
have any feedback on this issue, I'll be happy to roll it in.

Regards,

David

-- 
David Wheeler                                     AIM: dwTheory
david@wheeler.net                                 ICQ: 15726394
http://david.wheeler.net/                      Yahoo!: dew7e
                                                Jabber: Theory@jabber.org


1.1rc2 was (Re: [Fwd: Re: [proposal/vote] OS X support])

Posted by Joe Schaefer <jo...@sunstarsys.com>.
David Wheeler <da...@wheeler.net> writes:

> On Tuesday, December 17, 2002, at 04:34  PM, Joe Schaefer wrote:
> 
> > Yes- I'll put together an rc-2 tonight and place the patches in
> > the /osx directory.
> 
> Cool. I'll look around for some tuits to write a quick README.MacOSX. 
> Will that do?

Sure, that's fine.  rc-2 is online at

  http://httpd.apache.org/~joes/libapreq-1.1_rc2.tar.gz

I put the patch in /patches.  Check out patches/README for details, 
and be sure to test everything out.  I did not test the patch myself, 
so it's likely broken.

-- 
Joe Schaefer

Re: [Fwd: Re: [proposal/vote] OS X support]

Posted by David Wheeler <da...@wheeler.net>.
On Tuesday, December 17, 2002, at 04:34  PM, Joe Schaefer wrote:

> Yes- I'll put together an rc-2 tonight and place the patches in
> the /osx directory.

Cool. I'll look around for some tuits to write a quick README.MacOSX. 
Will that do?

> C expertise is unnecessary.  All that's really needed on apreq-dev
> is someone with OS X experience, who is willing to field questions
> from OS X users of Apache::Request, and occasionally test future 
> releases.
> Since Bricolage relies on libapreq, it'd be nice to have your feedback
> every now and then.

You shall have it.

Thanks,

David

-- 
David Wheeler                                     AIM: dwTheory
david@wheeler.net                                 ICQ: 15726394
http://david.wheeler.net/                      Yahoo!: dew7e
                                                Jabber: Theory@jabber.org


Re: [Fwd: Re: [proposal/vote] OS X support]

Posted by Joe Schaefer <jo...@sunstarsys.com>.
David Wheeler <da...@wheeler.net> writes:

[...]

> Fine, but you *will* upgrade the experimental server patches, yes?

Yes- I'll put together an rc-2 tonight and place the patches in
the /osx directory.

> 
> > httpd-apreq development does not follow the benevolent-dictator model.
> > It's an ASF project, and as such the committers are free to scratch
> > whatever itches suit them.  We collectively support the code, and 
> > expect
> > users to drive innovation.
> 
> Cool. Wish I knew more C -- and had time to just hack, hack, hack! In 
> the meantime, I can help to make sure it works.

C expertise is unnecessary.  All that's really needed on apreq-dev
is someone with OS X experience, who is willing to field questions
from OS X users of Apache::Request, and occasionally test future releases.
Since Bricolage relies on libapreq, it'd be nice to have your feedback
every now and then.

-- 
Joe Schaefer

Re: [Fwd: Re: [proposal/vote] OS X support]

Posted by David Wheeler <da...@wheeler.net>.
On Tuesday, December 17, 2002, at 09:34  AM, Joe Schaefer wrote:

>   1) a set of prerequisites for OS X, (apache version, compiler 
> version,
>      OS version, modperl version, etc.)

This will be the same as on FreeBSD, except that the OS should be Mac 
OS X 10.2.x -- at least until we can figure out the problems on 10.1.x.

>   2) accompanying documentation that describes the installation process

I can cobble something together, but the instructions you have on your 
web site did the trick for me, perfectly.

> I'd be happy to upgrade the experimental server patches to 1.1 and
> bundle them into the libapreq distribution.

That'll be great for OS X 10.1.x users. Thanks!

> I'd also be happy to
> include any documentation the OS X community wishes to provide for
> installing Apache::Request and Apache::Cookie.

As I said, I'd be glad to cobble something together. If you include the 
experimental server patch, I'll write the doc. It will describe using 
the patch for OS X 10.1.x users, and using your new instructions for OS 
X 10.2.x users.

>   However, I will not
> do that work for you.  I'll offer any technical assistance that I can,
> just as I did when Randy Kobes ported libapreq, Apache::Request, and
> Apache::Cookie to Win32.

Fine, but you *will* upgrade the experimental server patches, yes?

> httpd-apreq development does not follow the benevolent-dictator model.
> It's an ASF project, and as such the committers are free to scratch
> whatever itches suit them.  We collectively support the code, and 
> expect
> users to drive innovation.

Cool. Wish I knew more C -- and had time to just hack, hack, hack! In 
the meantime, I can help to make sure it works.

> None of the current committers have expressed any interest in making
> Apache::Request + Apache::Cookie work on OS X.  We've got the C API
> for libapreq working fairly well, though.  And we're satisfied with 
> that.

Yeah, and as I said, the Perl bit works fine, too, on 10.2.x. Ken and I 
are glad to help try to diagnose the problems on 10.1.1, though we're 
not the most experienced C guys for fixing it ourselves (though I have 
figured stuff out on occaision...).

Thanks,

David

-- 
David Wheeler                                     AIM: dwTheory
david@wheeler.net                                 ICQ: 15726394
http://david.wheeler.net/                      Yahoo!: dew7e
                                                Jabber: Theory@jabber.org


Re: Fwd: [Fwd: Re: [proposal/vote] OS X support]

Posted by Joe Schaefer <jo...@sunstarsys.com>.
David Wheeler <da...@wheeler.net> writes:

> Howdy,
> 
> Stas Bekman asked me to forward this message that I sent to a 
> collection of Mac OS X libapreq  users identified by Nat Torkington. 
> The upshot is that those of us who use mod_perl on Mac OS X regularly 
> *really* want libapreq to support Mac OS X. And it's basically there; 
> it seems to work fine on Mac OS X 10.2.2. And Ken Williams and I are 
> happy to do test compiles and help out where we can getting the kinks 
> out with Mac OS X 10.1.

What we really need is

  1) a set of prerequisites for OS X, (apache version, compiler version,
     OS version, modperl version, etc.)

  2) accompanying documentation that describes the installation process

I'd be happy to upgrade the experimental server patches to 1.1 and 
bundle them into the libapreq distribution.  I'd also be happy to 
include any documentation the OS X community wishes to provide for 
installing Apache::Request and Apache::Cookie.  However, I will not 
do that work for you.  I'll offer any technical assistance that I can, 
just as I did when Randy Kobes ported libapreq, Apache::Request, and 
Apache::Cookie to Win32.

httpd-apreq development does not follow the benevolent-dictator model.
It's an ASF project, and as such the committers are free to scratch
whatever itches suit them.  We collectively support the code, and expect 
users to drive innovation.  

None of the current committers have expressed any interest in making 
Apache::Request + Apache::Cookie work on OS X.  We've got the C API 
for libapreq working fairly well, though.  And we're satisfied with that.

-- 
Joe Schaefer