You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rivet-dev@tcl.apache.org by Massimo Manghi <ma...@alice.it> on 2018/12/09 01:52:15 UTC

Still having problems with Windows build

I committed in branch winbuild what I made to have mod_rivet build and 
run again on Windows 10 (but I guess this doesn't depend on the windows 
version, since last year it was OK on my win10 laptop)

I made several changes to cmake/CMakeList.txt and made other changes to 
the C code

The module builds but Apache fails because there is invalid data in the 
rivet configuration record. This is may be linked to the only warning I 
can't get rid of (c4273 inconsistent dll linkage for the 'rivet_module' 
symbol) since this symbol is the key needed to read the configuration by 
calling the macro RIVET_SERVER_CONF

any help from any of you familiar with this type of issue on windows is 
welcome

  -- Massimo

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Massimo Manghi <ma...@alice.it>.

On 12/16/18 11:48 AM, Georgios Petasis wrote:
>> Dear Massimo,
>>
>>
>> All link problems under windows originate from mod_rivet.h, and the 
>> addition you have made on 31/1/2018, where you have added 
>> "APLOG_USE_MODULE(rivet);" in mod_rivet.h.
>>
>>
>> Why do you need this definition? Why you want mod_rivet.h to export a 
>> symbol?
>>
>> Initially you had:
>>
>> module AP_MODULE_DECLARE_DATA rivet_module;
>>
>> Which I commented out. AP_MODULE_DECLARE_DATA = __declspec(dllexport) 
>> under windows.
>>
>> And from http_confi.g:
>>
>> #define APLOG_USE_MODULE(foo) \
>>     extern module AP_MODULE_DECLARE_DATA foo##_module;                  \
>>     AP_MAYBE_UNUSED(static int * const aplog_module_index) = 
>> &(foo##_module.module_index)
>>
>> Which does the same think.
>>
>> The header file should not export any symbol. If it does, it cannot be 
>> included in any of the bridges (which need to import the symbol).
>>
>> George
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
>> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>>
>>
> Dear Massimo,
> 
> I have committed my changes (in the main branch, not the cmake one). The 
> current trunk, builds without problems in my windows box with apache 24 
> (64 bit).
> 
> The only change, was removing "APLOG_USE_MODULE(rivet);" from mod_rivet.h.
> 
> Perhaps it is needed under unix in some file, but this must be placed in 
> the .c file that actually uses the symbol.
> 
> Best,
> 
> George
> 
> 

Thank you George,

I don't know why a symbol export ended up in mod_rivet.h. It was wrong 
and, worse, I can't remember why I moved it in that file, which is 
inexcusable because every change should be accountable.

Working on the Windows build I had read the macro definition but my 
attempts started from the assumption that that macro was there for a 
reason, since the build on windows worked well.

  -- Massimo

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Massimo Manghi <mx...@apache.org>.
On 12/17/18 2:03 PM, Georgios Petasis wrote:
> 
> When you are on the github page, you don't see a settings tab, is this 
> correct?
> (If not, then you don't have admin access either.)
> 
> George
> 
> 


correct, I don't see any settings tab. I guess Jira already had to deal 
with such problems. I'm going to ask them for assistance.

  -- Massimo

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@iit.demokritos.gr>.
Στις 17/12/2018 14:56, ο Massimo Manghi έγραψε:
> On 12/17/18 1:41 PM, Georgios Petasis wrote:
>> Στις 17/12/2018 13:56, ο Massimo MANGHI έγραψε:
> >>
>>> nothing happened so far, perhaps you have to generate some kind of
>>> manual impulse in your account on Appveyor? Another issue is with the
>>> branches: only 3.0/3.1/master/windbuild have the cmake script, could we
>>> maybe restrict the build to these branches?
>>>
>>>    -- Massimo
>>>
>> Yes nothing happened. I was looking at this:
>>
>> https://help.appveyor.com/discussions/problems/5166-github-webhook-not-created 
>>
>>
>> Probably, because I do not have admin rights on the github repo, the 
>> hooks have not placed.
>>
>> George
>>
>
>
> I suspect that I don't have privileges on the github repository 
> either. It is not among my own personal repositories, it's an Apache's 
> repo. I guess we have to ask Jira if something can be done or perhaps 
> ask the appveyor staff if a webhook can be installed by the 
> organization managers on behalf of a member
>
>  -- Massimo

When you are on the github page, you don't see a settings tab, is this 
correct?
(If not, then you don't have admin access either.)

George


---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Massimo Manghi <mx...@apache.org>.
On 12/17/18 1:41 PM, Georgios Petasis wrote:
> Στις 17/12/2018 13:56, ο Massimo MANGHI έγραψε:
 >>
>> nothing happened so far, perhaps you have to generate some kind of
>> manual impulse in your account on Appveyor? Another issue is with the
>> branches: only 3.0/3.1/master/windbuild have the cmake script, could we
>> maybe restrict the build to these branches?
>>
>>    -- Massimo
>>
> Yes nothing happened. I was looking at this:
> 
> https://help.appveyor.com/discussions/problems/5166-github-webhook-not-created 
> 
> 
> Probably, because I do not have admin rights on the github repo, the 
> hooks have not placed.
> 
> George
> 


I suspect that I don't have privileges on the github repository either. 
It is not among my own personal repositories, it's an Apache's repo. I 
guess we have to ask Jira if something can be done or perhaps ask the 
appveyor staff if a webhook can be installed by the organization 
managers on behalf of a member

  -- Massimo


---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@iit.demokritos.gr>.
Στις 17/12/2018 13:56, ο Massimo MANGHI έγραψε:
> On 12/17/18 12:01 PM, Georgios Petasis wrote:
>> Ok, you updated VERSION in winbuild branch. Lets see if appveyor will
>> rebuild this.
>>
>>
>> George
>>
> nothing happened so far, perhaps you have to generate some kind of
> manual impulse in your account on Appveyor? Another issue is with the
> branches: only 3.0/3.1/master/windbuild have the cmake script, could we
> maybe restrict the build to these branches?
>
>    -- Massimo
>
Yes nothing happened. I was looking at this:

https://help.appveyor.com/discussions/problems/5166-github-webhook-not-created

Probably, because I do not have admin rights on the github repo, the 
hooks have not placed.

George

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Massimo MANGHI <ma...@unipr.it>.
On 12/17/18 12:01 PM, Georgios Petasis wrote:
>>
> Ok, you updated VERSION in winbuild branch. Lets see if appveyor will 
> rebuild this.
> 
> 
> George
> 

nothing happened so far, perhaps you have to generate some kind of 
manual impulse in your account on Appveyor? Another issue is with the 
branches: only 3.0/3.1/master/windbuild have the cmake script, could we 
maybe restrict the build to these branches?

  -- Massimo



Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@iit.demokritos.gr>.
Στις 17/12/2018 13:00, ο Georgios Petasis έγραψε:
> Στις 17/12/2018 12:43, ο Massimo Manghi έγραψε:
>> On 12/17/18 10:07 AM, Georgios Petasis wrote:
>>> I looked at the Appveyor configuration, I have explicitly selected 
>>> the master branch. I change the configuration (with all branches), 
>>> and I tried to separate branches in Readme.md:
>>>
>>> https://github.com/apache/tcl-rivet/
>>>
>>> Now what is missing is a commit in winbuild :-)
>>>
>>> (I am not sure if we can save the binaries produced. It would be 
>>> nice...)
>>>
>>> Best,
>>> George
>>>
>>
>> commit and push done in both winbuild and 3.1. Let's wait to see what 
>> happens.
>>
>>
>>  -- Massimo 
> What has been changed?
> (I cannot see the commit, both github and 
> https://gitbox.apache.org/repos/asf?p=tcl-rivet.git;a=summary show my 
> commit as last...)
>
> George
>
Ok, you updated VERSION in winbuild branch. Lets see if appveyor will 
rebuild this.


George


---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@apache.org>.
Στις 17/12/2018 12:43, ο Massimo Manghi έγραψε:
> On 12/17/18 10:07 AM, Georgios Petasis wrote:
>> I looked at the Appveyor configuration, I have explicitly selected 
>> the master branch. I change the configuration (with all branches), 
>> and I tried to separate branches in Readme.md:
>>
>> https://github.com/apache/tcl-rivet/
>>
>> Now what is missing is a commit in winbuild :-)
>>
>> (I am not sure if we can save the binaries produced. It would be 
>> nice...)
>>
>> Best,
>> George
>>
>
> commit and push done in both winbuild and 3.1. Let's wait to see what 
> happens.
>
>
>  -- Massimo 
What has been changed?
(I cannot see the commit, both github and 
https://gitbox.apache.org/repos/asf?p=tcl-rivet.git;a=summary show my 
commit as last...)

George

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Massimo Manghi <mx...@apache.org>.
On 12/17/18 10:07 AM, Georgios Petasis wrote:
> I looked at the Appveyor configuration, I have explicitly selected the 
> master branch. I change the configuration (with all branches), and I 
> tried to separate  branches in Readme.md:
> 
> https://github.com/apache/tcl-rivet/
> 
> Now what is missing is a commit in winbuild :-)
> 
> (I am not sure if we can save the binaries produced. It would be nice...)
> 
> Best,
> George
> 

commit and push done in both winbuild and 3.1. Let's wait to see what 
happens.


  -- Massimo

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Massimo MANGHI <ma...@unipr.it>.
On 12/17/18 10:07 AM, Georgios Petasis wrote:
> I looked at the Appveyor configuration, I have explicitly selected the 
> master branch. I change the configuration (with all branches), and I 
> tried to separate  branches in Readme.md:
> 
> https://github.com/apache/tcl-rivet/
> 
> Now what is missing is a commit in winbuild :-)
> 
> (I am not sure if we can save the binaries produced. It would be nice...)
> 
> Best,
> George

About the binaries produced. How long they keep the binaries they build? 
It's a great opportunity for an unofficial rivet distribution for 
windows that we may advertise in our documentation, the real issue is to 
have artifacts that can be somehow named after a branch name, so that we 
can point out the right one. I think the ASF policy doesn't forbid it. 
After all what ApacheLounge does is for the HTTP web server itself

  -- Massimo

Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@apache.org>.
Στις 17/12/2018 10:45, ο Georgios Petasis έγραψε:
> Στις 17/12/2018 02:37, ο Massimo Manghi έγραψε:
>>
>>
>> On 12/17/18 1:20 AM, Massimo Manghi wrote:
>>
>>> I meant to use the winbuild branch for any development on the 
>>> Windows build system that required modifications that could 
>>> interfere with the build on Linux. I wonder if appveyor could point 
>>> to this branch instead of master.
>>
>> from what its suggested by the statements in .appveyor.yml multiple 
>> branches could be selected. Can we add also winbuild?
>>
>>  -- M
>>
> I don't know Appveyor that well (I have only used it for checking my 
> tkdnd extension, from where I "copied" the configuration), but from 
> the docs I understand that committing to any branch will trigger a 
> build. Can you commit something in the winbuild branch to test?
>
> George
I looked at the Appveyor configuration, I have explicitly selected the 
master branch. I change the configuration (with all branches), and I 
tried to separate  branches in Readme.md:

https://github.com/apache/tcl-rivet/

Now what is missing is a commit in winbuild :-)

(I am not sure if we can save the binaries produced. It would be nice...)

Best,
George




---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@apache.org>.
Στις 17/12/2018 02:37, ο Massimo Manghi έγραψε:
>
>
> On 12/17/18 1:20 AM, Massimo Manghi wrote:
>
>> I meant to use the winbuild branch for any development on the Windows 
>> build system that required modifications that could interfere with 
>> the build on Linux. I wonder if appveyor could point to this branch 
>> instead of master.
>
> from what its suggested by the statements in .appveyor.yml multiple 
> branches could be selected. Can we add also winbuild?
>
>  -- M
>
I don't know Appveyor that well (I have only used it for checking my 
tkdnd extension, from where I "copied" the configuration), but from the 
docs I understand that committing to any branch will trigger a build. 
Can you commit something in the winbuild branch to test?

George


---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Massimo Manghi <ma...@alice.it>.

On 12/17/18 1:20 AM, Massimo Manghi wrote:

> I meant to use the winbuild branch for any development on the Windows 
> build system that required modifications that could interfere with the 
> build on Linux. I wonder if appveyor could point to this branch instead 
> of master.

from what its suggested by the statements in .appveyor.yml multiple 
branches could be selected. Can we add also winbuild?

  -- M

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Massimo Manghi <ma...@alice.it>.

On 12/16/18 2:25 PM, Georgios Petasis wrote:
>
> And now I noticed that in the tab "Messages", all compiler warnings are 
> listed:
> 
> https://ci.appveyor.com/project/petasis/tcl-rivet/build/messages
> 
> So, we can easily fix them :-)
> 
> Best,
> 
> George
> 

excellent! I worked on those warnings and fixed them in winbuild.
These changes resulted in resolving some ambiguities in implicitly 
casting size_t or apr_off_t (which is a size_t itself ad declared in 
apr.h) to int. I also changed some function arguments or structure 
fields wherever an argument was unambiguously a size_t. Basically the 
type casts to 'int' is mostly needed to call Tcl functions

I meant to use the winbuild branch for any development on the Windows 
build system that required modifications that could interfere with the 
build on Linux. I wonder if appveyor could point to this branch instead 
of master.


  -- Massimo

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@iit.demokritos.gr>.
Στις 16/12/2018 15:20, ο Georgios Petasis έγραψε:
> Στις 16/12/2018 12:48, ο Georgios Petasis έγραψε:
>> Στις 16/12/2018 12:30, ο Georgios Petasis έγραψε:
>>> Στις 9/12/2018 03:52, ο Massimo Manghi έγραψε:
>>>> I committed in branch winbuild what I made to have mod_rivet build 
>>>> and run again on Windows 10 (but I guess this doesn't depend on the 
>>>> windows version, since last year it was OK on my win10 laptop)
>>>>
>>>> I made several changes to cmake/CMakeList.txt and made other 
>>>> changes to the C code
>>>>
>>>> The module builds but Apache fails because there is invalid data in 
>>>> the rivet configuration record. This is may be linked to the only 
>>>> warning I can't get rid of (c4273 inconsistent dll linkage for the 
>>>> 'rivet_module' symbol) since this symbol is the key needed to read 
>>>> the configuration by calling the macro RIVET_SERVER_CONF
>>>>
>>>> any help from any of you familiar with this type of issue on 
>>>> windows is welcome
>>>>
>>>>  -- Massimo
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
>>>> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>>>>
>>>>
>>> Dear Massimo,
>>>
>>>
>>> All link problems under windows originate from mod_rivet.h, and the 
>>> addition you have made on 31/1/2018, where you have added 
>>> "APLOG_USE_MODULE(rivet);" in mod_rivet.h.
>>>
>>>
>>> Why do you need this definition? Why you want mod_rivet.h to export 
>>> a symbol?
>>>
>>> Initially you had:
>>>
>>> module AP_MODULE_DECLARE_DATA rivet_module;
>>>
>>> Which I commented out. AP_MODULE_DECLARE_DATA = 
>>> __declspec(dllexport) under windows.
>>>
>>> And from http_confi.g:
>>>
>>> #define APLOG_USE_MODULE(foo) \
>>>     extern module AP_MODULE_DECLARE_DATA 
>>> foo##_module;                  \
>>>     AP_MAYBE_UNUSED(static int * const aplog_module_index) = 
>>> &(foo##_module.module_index)
>>>
>>> Which does the same think.
>>>
>>> The header file should not export any symbol. If it does, it cannot 
>>> be included in any of the bridges (which need to import the symbol).
>>>
>>> George
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
>>> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>>>
>>>
>> Dear Massimo,
>>
>> I have committed my changes (in the main branch, not the cmake one). 
>> The current trunk, builds without problems in my windows box with 
>> apache 24 (64 bit).
>>
>> The only change, was removing "APLOG_USE_MODULE(rivet);" from 
>> mod_rivet.h.
>>
>> Perhaps it is needed under unix in some file, but this must be placed 
>> in the .c file that actually uses the symbol.
>>
>> Best,
>>
>> George
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
>> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>>
>>
> Dear Massimo,
>
> I have added a few more files:
>
> 1) A build file for Appveyor. It is named .appveyor.yml. Appveyor will 
> re-build rivet, after each commit made in the repository. This way, we 
> can constantly test whether the windows build is broken :-)
>
> 2) I added a "Readme.md" in markdown. I copied some code from my tkdnd 
> extension, to show the build status. Perhaps we need to tweak it some 
> more, but look how it shows in github:
>
> https://github.com/apache/tcl-rivet
>
> I think much better than the textual README. And a bonus, you can 
> click on the build badge, and see the build log from Appveyor!
>
> Best,
>
> George
>
>
And now I noticed that in the tab "Messages", all compiler warnings are 
listed:

https://ci.appveyor.com/project/petasis/tcl-rivet/build/messages

So, we can easily fix them :-)

Best,

George


---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@apache.org>.
Στις 16/12/2018 12:48, ο Georgios Petasis έγραψε:
> Στις 16/12/2018 12:30, ο Georgios Petasis έγραψε:
>> Στις 9/12/2018 03:52, ο Massimo Manghi έγραψε:
>>> I committed in branch winbuild what I made to have mod_rivet build 
>>> and run again on Windows 10 (but I guess this doesn't depend on the 
>>> windows version, since last year it was OK on my win10 laptop)
>>>
>>> I made several changes to cmake/CMakeList.txt and made other changes 
>>> to the C code
>>>
>>> The module builds but Apache fails because there is invalid data in 
>>> the rivet configuration record. This is may be linked to the only 
>>> warning I can't get rid of (c4273 inconsistent dll linkage for the 
>>> 'rivet_module' symbol) since this symbol is the key needed to read 
>>> the configuration by calling the macro RIVET_SERVER_CONF
>>>
>>> any help from any of you familiar with this type of issue on windows 
>>> is welcome
>>>
>>>  -- Massimo
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
>>> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>>>
>>>
>> Dear Massimo,
>>
>>
>> All link problems under windows originate from mod_rivet.h, and the 
>> addition you have made on 31/1/2018, where you have added 
>> "APLOG_USE_MODULE(rivet);" in mod_rivet.h.
>>
>>
>> Why do you need this definition? Why you want mod_rivet.h to export a 
>> symbol?
>>
>> Initially you had:
>>
>> module AP_MODULE_DECLARE_DATA rivet_module;
>>
>> Which I commented out. AP_MODULE_DECLARE_DATA = __declspec(dllexport) 
>> under windows.
>>
>> And from http_confi.g:
>>
>> #define APLOG_USE_MODULE(foo) \
>>     extern module AP_MODULE_DECLARE_DATA 
>> foo##_module;                  \
>>     AP_MAYBE_UNUSED(static int * const aplog_module_index) = 
>> &(foo##_module.module_index)
>>
>> Which does the same think.
>>
>> The header file should not export any symbol. If it does, it cannot 
>> be included in any of the bridges (which need to import the symbol).
>>
>> George
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
>> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>>
>>
> Dear Massimo,
>
> I have committed my changes (in the main branch, not the cmake one). 
> The current trunk, builds without problems in my windows box with 
> apache 24 (64 bit).
>
> The only change, was removing "APLOG_USE_MODULE(rivet);" from 
> mod_rivet.h.
>
> Perhaps it is needed under unix in some file, but this must be placed 
> in the .c file that actually uses the symbol.
>
> Best,
>
> George
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>
>
Dear Massimo,

I have added a few more files:

1) A build file for Appveyor. It is named .appveyor.yml. Appveyor will 
re-build rivet, after each commit made in the repository. This way, we 
can constantly test whether the windows build is broken :-)

2) I added a "Readme.md" in markdown. I copied some code from my tkdnd 
extension, to show the build status. Perhaps we need to tweak it some 
more, but look how it shows in github:

https://github.com/apache/tcl-rivet

I think much better than the textual README. And a bonus, you can click 
on the build badge, and see the build log from Appveyor!

Best,

George


---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@iit.demokritos.gr>.
Στις 16/12/2018 12:30, ο Georgios Petasis έγραψε:
> Στις 9/12/2018 03:52, ο Massimo Manghi έγραψε:
>> I committed in branch winbuild what I made to have mod_rivet build 
>> and run again on Windows 10 (but I guess this doesn't depend on the 
>> windows version, since last year it was OK on my win10 laptop)
>>
>> I made several changes to cmake/CMakeList.txt and made other changes 
>> to the C code
>>
>> The module builds but Apache fails because there is invalid data in 
>> the rivet configuration record. This is may be linked to the only 
>> warning I can't get rid of (c4273 inconsistent dll linkage for the 
>> 'rivet_module' symbol) since this symbol is the key needed to read 
>> the configuration by calling the macro RIVET_SERVER_CONF
>>
>> any help from any of you familiar with this type of issue on windows 
>> is welcome
>>
>>  -- Massimo
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
>> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>>
>>
> Dear Massimo,
>
>
> All link problems under windows originate from mod_rivet.h, and the 
> addition you have made on 31/1/2018, where you have added 
> "APLOG_USE_MODULE(rivet);" in mod_rivet.h.
>
>
> Why do you need this definition? Why you want mod_rivet.h to export a 
> symbol?
>
> Initially you had:
>
> module AP_MODULE_DECLARE_DATA rivet_module;
>
> Which I commented out. AP_MODULE_DECLARE_DATA = __declspec(dllexport) 
> under windows.
>
> And from http_confi.g:
>
> #define APLOG_USE_MODULE(foo) \
>     extern module AP_MODULE_DECLARE_DATA foo##_module;                  \
>     AP_MAYBE_UNUSED(static int * const aplog_module_index) = 
> &(foo##_module.module_index)
>
> Which does the same think.
>
> The header file should not export any symbol. If it does, it cannot be 
> included in any of the bridges (which need to import the symbol).
>
> George
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>
>
Dear Massimo,

I have committed my changes (in the main branch, not the cmake one). The 
current trunk, builds without problems in my windows box with apache 24 
(64 bit).

The only change, was removing "APLOG_USE_MODULE(rivet);" from mod_rivet.h.

Perhaps it is needed under unix in some file, but this must be placed in 
the .c file that actually uses the symbol.

Best,

George


---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org


Re: Still having problems with Windows build

Posted by Georgios Petasis <pe...@apache.org>.
Στις 9/12/2018 03:52, ο Massimo Manghi έγραψε:
> I committed in branch winbuild what I made to have mod_rivet build and 
> run again on Windows 10 (but I guess this doesn't depend on the 
> windows version, since last year it was OK on my win10 laptop)
>
> I made several changes to cmake/CMakeList.txt and made other changes 
> to the C code
>
> The module builds but Apache fails because there is invalid data in 
> the rivet configuration record. This is may be linked to the only 
> warning I can't get rid of (c4273 inconsistent dll linkage for the 
> 'rivet_module' symbol) since this symbol is the key needed to read the 
> configuration by calling the macro RIVET_SERVER_CONF
>
> any help from any of you familiar with this type of issue on windows 
> is welcome
>
>  -- Massimo
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
> For additional commands, e-mail: rivet-dev-help@tcl.apache.org
>
>
Dear Massimo,


All link problems under windows originate from mod_rivet.h, and the 
addition you have made on 31/1/2018, where you have added 
"APLOG_USE_MODULE(rivet);" in mod_rivet.h.


Why do you need this definition? Why you want mod_rivet.h to export a 
symbol?

Initially you had:

module AP_MODULE_DECLARE_DATA rivet_module;

Which I commented out. AP_MODULE_DECLARE_DATA = __declspec(dllexport) 
under windows.

And from http_confi.g:

#define APLOG_USE_MODULE(foo) \
     extern module AP_MODULE_DECLARE_DATA foo##_module;                  \
     AP_MAYBE_UNUSED(static int * const aplog_module_index) = 
&(foo##_module.module_index)

Which does the same think.

The header file should not export any symbol. If it does, it cannot be 
included in any of the bridges (which need to import the symbol).

George


---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org