You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by "Gregg L. Smith" <li...@glewis.com> on 2010/06/07 08:41:40 UTC

Re: svn commit: r951895 [1/2] - in /httpd/httpd/trunk: modules/aaa/ modules/arch/netware/ modules/arch/unix/ modules/arch/win32/ modules/cache/ modules/cluster/ modules/core/ modules/database/ modules/dav/fs/ modules/dav/lock/ modules/dav/main/ modules/deb...

Hi Stefan,

This seems to break trunk on Windows, prior revision builds fine.

--------------------Configuration: httpd - Win32 Release--------------------
Compiling resources...
Compiling...
main.c
E:\build\httpd-2.3.x-wrk\server\main.c(48) : warning C4273: 
'core_module' : inconsistent dll linkage.  dllexport assumed.
Linking...
main.obj : error LNK2001: unresolved external symbol _core_module
Release/httpd.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

Regards,
Gregg


sf@apache.org wrote:
> Author: sf
> Date: Sun Jun  6 16:59:50 2010
> New Revision: 951895
> 
> URL: http://svn.apache.org/viewvc?rev=951895&view=rev
> Log:
> Use the new APLOG_USE_MODULE/AP_DECLARE_MODULE macros everywhere to take
> advantage of per-module loglevels
> 
> Modified:
> ...
>     httpd/httpd/trunk/server/main.c
>...
> URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/server/main.c?rev=951895&r1=951894&r2=951895&view=diff
> ==============================================================================
> --- httpd/httpd/trunk/server/main.c (original)
> +++ httpd/httpd/trunk/server/main.c Sun Jun  6 16:59:50 2010
> @@ -45,6 +45,8 @@
>  #include <unistd.h>
>  #endif
>  
> +APLOG_USE_MODULE(core);
> +
>  /* WARNING: Win32 binds http_main.c dynamically to the server. Please place
>   *          extern functions and global data in another appropriate module.
>   *
> 



Re: svn commit: r951895 [1/2] - in /httpd/httpd/trunk: modules/aaa/ modules/arch/netware/ modules/arch/unix/ modules/arch/win32/ modules/cache/ modules/cluster/ modules/core/ modules/database/ modules/dav/fs/ modules/dav/lock/ modules/dav/main/ modules/deb...

Posted by Stefan Fritsch <sf...@sfritsch.de>.
On Tuesday 08 June 2010, Gregg L. Smith wrote:
> Yes, *only* in main.c which is the only problematic file.

Thanks, Gregg. I have removed the line from main.c in r952783.

Cheers,
Stefan

Re: svn commit: r951895 [1/2] - in /httpd/httpd/trunk: modules/aaa/ modules/arch/netware/ modules/arch/unix/ modules/arch/win32/ modules/cache/ modules/cluster/ modules/core/ modules/database/ modules/dav/fs/ modules/dav/lock/ modules/dav/main/ modules/deb...

Posted by "Gregg L. Smith" <li...@glewis.com>.
Hi Stefan,

Yes, *only* in main.c which is the only problematic file.

The warning directly below causes me to suspect this is why we are 
seeing the problem in this one file alone.

#ifndef WIN32
APLOG_USE_MODULE(core);
#endif

/* WARNING: Win32 binds http_main.c dynamically to the server. Please place
  *          extern functions and global data in another appropriate module.
  *
  * Most significant main() global data can be found in http_config.c
  */

Cheers,
Gregg


Stefan Fritsch wrote:
> Hi Gregg,
> 
> On Tuesday 08 June 2010, Gregg L. Smith wrote:
>> Sorry to say this still will not build and just changes the error
>> message.
>>
>> I however would like to see 2.3.6 out this week as well as
>> everyone  else. If worse comes to worse, #ifndef WIN32 around this
>> one line does allow apache to compile and run, and a quick testing
>> it seems to not be causing problems with normal logging. It may
>> not have the desired new functionality you are looking for but as
>> AFAIK this is still going to be under the alpha banner, so, no big
>> deal.
> 
> Thanks for testing.
> 
> Do you mean it works if you remove 
> - the one line only from main.c
> - APLOG_USE_MODULE(core) in all files where it appears
> - APLOG_USE_MODULE(...) in all files
> 
> But you are right, not having those lines does not cause any problems. 
> And I agree that we should just disable it if it threatens to delay 
> the alpha release.
> 
> If it only affects the core module, a possible fix may be to exploit 
> the fact that core_module always seems to have the module_index 0. 
> Though I would have to look at this in more detail.
> 
> Cheers,
> Stefan
> 


Re: svn commit: r951895 [1/2] - in /httpd/httpd/trunk: modules/aaa/ modules/arch/netware/ modules/arch/unix/ modules/arch/win32/ modules/cache/ modules/cluster/ modules/core/ modules/database/ modules/dav/fs/ modules/dav/lock/ modules/dav/main/ modules/deb...

Posted by Stefan Fritsch <sf...@sfritsch.de>.
Hi Gregg,

On Tuesday 08 June 2010, Gregg L. Smith wrote:
> Sorry to say this still will not build and just changes the error
> message.
> 
> I however would like to see 2.3.6 out this week as well as
> everyone  else. If worse comes to worse, #ifndef WIN32 around this
> one line does allow apache to compile and run, and a quick testing
> it seems to not be causing problems with normal logging. It may
> not have the desired new functionality you are looking for but as
> AFAIK this is still going to be under the alpha banner, so, no big
> deal.

Thanks for testing.

Do you mean it works if you remove 
- the one line only from main.c
- APLOG_USE_MODULE(core) in all files where it appears
- APLOG_USE_MODULE(...) in all files

But you are right, not having those lines does not cause any problems. 
And I agree that we should just disable it if it threatens to delay 
the alpha release.

If it only affects the core module, a possible fix may be to exploit 
the fact that core_module always seems to have the module_index 0. 
Though I would have to look at this in more detail.

Cheers,
Stefan

Re: svn commit: r951895 [1/2] - in /httpd/httpd/trunk: modules/aaa/ modules/arch/netware/ modules/arch/unix/ modules/arch/win32/ modules/cache/ modules/cluster/ modules/core/ modules/database/ modules/dav/fs/ modules/dav/lock/ modules/dav/main/ modules/deb...

Posted by "Gregg L. Smith" <li...@glewis.com>.
Hi Stefan,

Sorry to say this still will not build and just changes the error message.

I however would like to see 2.3.6 out this week as well as everyone 
else. If worse comes to worse, #ifndef WIN32 around this one line
does allow apache to compile and run, and a quick testing it seems to 
not be causing problems with normal logging. It may not have the desired 
new functionality you are looking for but as AFAIK this is still going 
to be under the alpha banner, so, no big deal.

That said, I still have to wrap my head around the docs of the new 
functionality which I plan to do after the release. I can then see if it 
  does, does not or partially does work should I succeed in understand 
the new fuctionality. This would also takes some pressure off Bill to 
scramble up his patch as he mentioned. Simply note in the source above 
the workaround that it may not be correct but is a temporary workaround 
to allow the server to be compiled on Windows. Of course, this is your 
guy's call.

Regards,
Gregg


Stefan Fritsch wrote:
> Hi Gregg,
> 
> On Monday 07 June 2010, Gregg L. Smith wrote:
>> This seems to break trunk on Windows, prior revision builds fine.
> 
> I am not really familiar with the difference between AP_DECLARE_DATA 
> and AP_MODULE_DECLARE_DATA or any other Windows build pecularities. 
> Maybe the attached patch helps?
> 
> Cheers,
> Stefan

> William A. Rowe Jr. wrote:
>> On 6/7/2010 1:41 AM, Gregg L. Smith wrote:
>> Hi Stefan,
>> 
>> This seems to break trunk on Windows, prior revision builds fine.
>> 
>> --------------------Configuration: httpd - Win32
>> Release--------------------
>> Compiling resources...
>> Compiling...
>> main.c
>> E:\build\httpd-2.3.x-wrk\server\main.c(48) : warning C4273:
>> 'core_module' : inconsistent dll linkage.  dllexport assumed.
>> Linking...
>> main.obj : error LNK2001: unresolved external symbol _core_module
>> Release/httpd.exe : fatal error LNK1120: 1 unresolved externals
>>  
> I'll work up a patch when I finish my workday.






Re: svn commit: r951895 [1/2] - in /httpd/httpd/trunk: modules/aaa/ modules/arch/netware/ modules/arch/unix/ modules/arch/win32/ modules/cache/ modules/cluster/ modules/core/ modules/database/ modules/dav/fs/ modules/dav/lock/ modules/dav/main/ modules/deb...

Posted by Stefan Fritsch <sf...@sfritsch.de>.
Hi Gregg,

On Monday 07 June 2010, Gregg L. Smith wrote:
> This seems to break trunk on Windows, prior revision builds fine.

I am not really familiar with the difference between AP_DECLARE_DATA 
and AP_MODULE_DECLARE_DATA or any other Windows build pecularities. 
Maybe the attached patch helps?

Cheers,
Stefan

Re: svn commit: r951895 [1/2] - in /httpd/httpd/trunk: modules/aaa/ modules/arch/netware/ modules/arch/unix/ modules/arch/win32/ modules/cache/ modules/cluster/ modules/core/ modules/database/ modules/dav/fs/ modules/dav/lock/ modules/dav/main/ modules/deb...

Posted by "William A. Rowe Jr." <wr...@rowe-clan.net>.
On 6/7/2010 1:41 AM, Gregg L. Smith wrote:
> Hi Stefan,
> 
> This seems to break trunk on Windows, prior revision builds fine.
> 
> --------------------Configuration: httpd - Win32
> Release--------------------
> Compiling resources...
> Compiling...
> main.c
> E:\build\httpd-2.3.x-wrk\server\main.c(48) : warning C4273:
> 'core_module' : inconsistent dll linkage.  dllexport assumed.
> Linking...
> main.obj : error LNK2001: unresolved external symbol _core_module
> Release/httpd.exe : fatal error LNK1120: 1 unresolved externals

I'll work up a patch when I finish my workday.