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 Stas Bekman <st...@stason.org> on 2003/10/15 20:03:33 UTC

[aq2] configure warnings

% ./buildconf
removing stale config files
running libtoolize --automake --copy --force
running aclocal
running autoconf
running automake -a -c
buildconf successful.


% /usr/bin/perl-5.8.1-ithread Makefile.PL \
--with-apache2-apxs=/home/stas/httpd/prefork/bin/apxs
/home/stas/apache.org/httpd-apreq-2/missing: Unknown `--run' option
Try `/home/stas/apache.org/httpd-apreq-2/missing --help' for more information
configure: WARNING: `missing' script is too old or missing
     generating script t/TEST
Note (probably harmless): No library found for -lapreq2
Note (probably harmless): No library found for -lapreq2
Note (probably harmless): No library found for -lapreq2
Note (probably harmless): No library found for -lapreq2

The latter seems to be quite important...

__________________________________________________________________
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: [aq2] configure warnings

Posted by Stas Bekman <st...@stason.org>.
Joe Schaefer wrote:
> Stas Bekman <st...@stason.org> writes:
> 
> [...]
> 
> 
>>Also it seems that the whole thing builds itself twice, including the
>>xs generator. I'm using:
>>
>>make clean
>>./buildconf
>>CCOPTS='-Werror -O0 -g' /usr/bin/perl-5.8.1-ithread Makefile.PL
>>--with-apache2-apxs=/home/stas/httpd/prefork/bin/apxs
>>make
>>make test
> 
> 
> Looks good, but...
> 
> 
>>make perl_glue
>>make perl_test
> 
> 
> these perl_* targets are no longer necessary when building from
> Makefile.PL.
> 
> 
>>indeed running 'make perl_glue' rebuilds xs from scratch, as many
>>times as you invoke it. 
> 
> 
> Correct and by design.
> 
> 
>>There should be a target file against which make can check whether it
>>has built it already and do nothing if that's the case.
> 
> 
> Plain-old 'make' should do that already.

You mean you prefer to have one target for all: and not creating checkpoints 
for the perl_glue target. That's fine with me ;) Thanks.


__________________________________________________________________
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: [aq2] configure warnings

Posted by Joe Schaefer <jo...@sunstarsys.com>.
Stas Bekman <st...@stason.org> writes:

[...]

> Also it seems that the whole thing builds itself twice, including the
> xs generator. I'm using:
> 
> make clean
> ./buildconf
> CCOPTS='-Werror -O0 -g' /usr/bin/perl-5.8.1-ithread Makefile.PL
> --with-apache2-apxs=/home/stas/httpd/prefork/bin/apxs
> make
> make test

Looks good, but...

> make perl_glue
> make perl_test

these perl_* targets are no longer necessary when building from
Makefile.PL.

> indeed running 'make perl_glue' rebuilds xs from scratch, as many
> times as you invoke it. 

Correct and by design.

> There should be a target file against which make can check whether it
> has built it already and do nothing if that's the case.

Plain-old 'make' should do that already.

-- 
Joe Schaefer


Re: [aq2] configure warnings

Posted by Stas Bekman <st...@stason.org>.
Joe Schaefer wrote:
> Stas Bekman <st...@stason.org> writes:

>>>>>>Note (probably harmless): No library found for -lapreq2
>>>>>>Note (probably harmless): No library found for -lapreq2
>>>>>>Note (probably harmless): No library found for -lapreq2
>>>>>>Note (probably harmless): No library found for -lapreq2
>>>>>>
>>>>>>The latter seems to be quite important...
>>>>>
>>>>>Yes, but it's rather expected, since the library hasn't been
>>>>>compiled at this stage in the process.
>>>>
>>>>In which case it shouldn't pass -lapreq2 in LIBS.
>>>
>>>Huh?  Then how do you propose we link the perl glue against the
>>>soon-to-be-compiled-from-source-libapreq2?
>>
>>When makemaker generates this warning, it removes the reported entries
>>from LIBS that gets used at the end.
> 
> 
> That's certainly a bad situation, since the perl glue will be b0rked if
> it does not link against -lapreq2.  I just added the --enable-perl-glue 
> option to cvs, which should take care of the timing issue (ensures the
> library exists before MP::MM creates the Makefiles).  Give it a try.

Looks better. Though we now have warnings, which won't compile under -Werror.

/home/stas/apache.org/httpd-apreq-2/glue/perl/xsbuilder/Apache/Request/Apache__Request.h:63: 
warning: `apreq_xs_make_param' defined but not used
make[5]: *** [Request.o] Error 1
/home/stas/apache.org/httpd-apreq-2/glue/perl/xsbuilder/apreq_xs_postperl.h:387: 
warning: `apreq_xs_encode' defined but not used
/home/stas/apache.org/httpd-apreq-2/glue/perl/xsbuilder/apreq_xs_postperl.h:408: 
warning: `apreq_xs_decode' defined but not used
/home/stas/apache.org/httpd-apreq-2/glue/perl/xsbuilder/Apache/Request/Apache__Request.h:63: 
warning: `apreq_xs_make_param' defined but not used

Also it seems that the whole thing builds itself twice, including the xs 
generator. I'm using:

make clean
./buildconf
CCOPTS='-Werror -O0 -g' /usr/bin/perl-5.8.1-ithread Makefile.PL 
--with-apache2-apxs=/home/stas/httpd/prefork/bin/apxs
make
make test
make perl_glue
make perl_test

indeed running 'make perl_glue' rebuilds xs from scratch, as many times as you 
invoke it. There should be a target file against which make can check whether 
it has built it already and do nothing if that's the case.

Otherwise it builds fine. Thanks Joe.

__________________________________________________________________
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: [aq2] configure warnings

Posted by Joe Schaefer <jo...@sunstarsys.com>.
Stas Bekman <st...@stason.org> writes:

> Joe Schaefer wrote:
> > Stas Bekman <st...@stason.org> writes:
> >
> >>Joe Schaefer wrote:
> >>
> >>>Stas Bekman <st...@stason.org> writes:
> > [...]
> >
> >>>>Note (probably harmless): No library found for -lapreq2
> >>>>Note (probably harmless): No library found for -lapreq2
> >>>>Note (probably harmless): No library found for -lapreq2
> >>>>Note (probably harmless): No library found for -lapreq2
> >>>>
> >>>>The latter seems to be quite important...
> >>>
> >>>Yes, but it's rather expected, since the library hasn't been
> >>>compiled at this stage in the process.
> >>
> >>In which case it shouldn't pass -lapreq2 in LIBS.
> > Huh?  Then how do you propose we link the perl glue against the
> > soon-to-be-compiled-from-source-libapreq2?
> 
> When makemaker generates this warning, it removes the reported entries
> from LIBS that gets used at the end.

That's certainly a bad situation, since the perl glue will be b0rked if
it does not link against -lapreq2.  I just added the --enable-perl-glue 
option to cvs, which should take care of the timing issue (ensures the
library exists before MP::MM creates the Makefiles).  Give it a try.


-- 
Joe Schaefer


Re: [aq2] configure warnings

Posted by Stas Bekman <st...@stason.org>.
Joe Schaefer wrote:
> Stas Bekman <st...@stason.org> writes:
> 
> 
>>Joe Schaefer wrote:
>>
>>>Stas Bekman <st...@stason.org> writes:
> 
> 
> [...]
> 
> 
>>>>Note (probably harmless): No library found for -lapreq2
>>>>Note (probably harmless): No library found for -lapreq2
>>>>Note (probably harmless): No library found for -lapreq2
>>>>Note (probably harmless): No library found for -lapreq2
>>>>
>>>>The latter seems to be quite important...
>>>
>>>Yes, but it's rather expected, since the library hasn't been
>>>compiled at this stage in the process.
>>
>>In which case it shouldn't pass -lapreq2 in LIBS.
> 
> 
> Huh?  Then how do you propose we link the perl glue against 
> the soon-to-be-compiled-from-source-libapreq2?

When makemaker generates this warning, it removes the reported entries from 
LIBS that gets used at the end. if you check the generated Makefile

e.g. take a look at: glue/perl/xs/Apache/Cookie/Makefile. It shows that LIBS 
was passed including -lapreq2, but if you look at the real value of EXTRALIBS 
which make uses, it doesn't contain this library. Meaning that it's not being 
linked with, meaning that it shouldn't be there, since it's ignored anyway.

__________________________________________________________________
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: [aq2] configure warnings

Posted by Joe Schaefer <jo...@sunstarsys.com>.
Stas Bekman <st...@stason.org> writes:

> Joe Schaefer wrote:
> > Stas Bekman <st...@stason.org> writes:

[...]

> >>Note (probably harmless): No library found for -lapreq2
> >>Note (probably harmless): No library found for -lapreq2
> >>Note (probably harmless): No library found for -lapreq2
> >>Note (probably harmless): No library found for -lapreq2
> >>
> >>The latter seems to be quite important...
> > Yes, but it's rather expected, since the library hasn't been
> > compiled at this stage in the process.
> 
> In which case it shouldn't pass -lapreq2 in LIBS.

Huh?  Then how do you propose we link the perl glue against 
the soon-to-be-compiled-from-source-libapreq2?

-- 
Joe Schaefer


Re: [aq2] configure warnings

Posted by Stas Bekman <st...@stason.org>.
Joe Schaefer wrote:
> Stas Bekman <st...@stason.org> writes:
> 
> [...]
> 
> 
>>% /usr/bin/perl-5.8.1-ithread Makefile.PL \
>>--with-apache2-apxs=/home/stas/httpd/prefork/bin/apxs
>>/home/stas/apache.org/httpd-apreq-2/missing: Unknown `--run' option
>>Try `/home/stas/apache.org/httpd-apreq-2/missing --help' for more
>>information configure: WARNING: `missing' script is too old or missing
>>     generating script t/TEST
>>Note (probably harmless): No library found for -lapreq2
>>Note (probably harmless): No library found for -lapreq2
>>Note (probably harmless): No library found for -lapreq2
>>Note (probably harmless): No library found for -lapreq2
>>
>>The latter seems to be quite important...
> 
> 
> Yes, but it's rather expected, since the library hasn't been
> compiled at this stage in the process. 

In which case it shouldn't pass -lapreq2 in LIBS.

> FWIW, I'm adding an
> --enable-perl-glue option to "configure" which will incorporate
> the perl glue into the build process, so it'll work like this
> 
>   % ./configure --enable-perl-glue --with-apache2-apxs=...
>   % make          (will also compile the perl glue)
>   % make test     (will also run the perl glue tests)
>   % make install  (will also install the perl glue)
>   
> Then toplevel Makefile.PL just needs to add the --enable-perl-glue
> option and pass everything else along to ./configure.

Sounds cool

__________________________________________________________________
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: [aq2] configure warnings

Posted by Joe Schaefer <jo...@sunstarsys.com>.
Stas Bekman <st...@stason.org> writes:

[...]

> % /usr/bin/perl-5.8.1-ithread Makefile.PL \
> --with-apache2-apxs=/home/stas/httpd/prefork/bin/apxs
> /home/stas/apache.org/httpd-apreq-2/missing: Unknown `--run' option
> Try `/home/stas/apache.org/httpd-apreq-2/missing --help' for more
> information configure: WARNING: `missing' script is too old or missing
>      generating script t/TEST
> Note (probably harmless): No library found for -lapreq2
> Note (probably harmless): No library found for -lapreq2
> Note (probably harmless): No library found for -lapreq2
> Note (probably harmless): No library found for -lapreq2
> 
> The latter seems to be quite important...

Yes, but it's rather expected, since the library hasn't been
compiled at this stage in the process.  FWIW, I'm adding an
--enable-perl-glue option to "configure" which will incorporate
the perl glue into the build process, so it'll work like this

  % ./configure --enable-perl-glue --with-apache2-apxs=...
  % make          (will also compile the perl glue)
  % make test     (will also run the perl glue tests)
  % make install  (will also install the perl glue)
  
Then toplevel Makefile.PL just needs to add the --enable-perl-glue
option and pass everything else along to ./configure.

-- 
Joe Schaefer