Re: [naviserver-devel] NS_EXTERN set wrong on Windows?

2014-10-01 Thread Andrew Piskorski
On Wed, Sep 17, 2014 at 06:50:08PM -0400, Andrew Piskorski wrote:

 include/ns.h has this:
 
   #define NS_EXTERN  extern NS_EXPORT
 
 But I believe that is NOT relevent here because master.c, thread.h,
 and nsthread.h (correctly) do NOT include ns.h.
 
 Instead, I think it is the separate definition of NS_EXTERN in
 nsthread.h that matters when building nsthread.

Gustaf, on 9/27 you changed nsthread/reentrant.c to import ns.h.  It
never did that before, and now it imports ns.h before thread.h and
nsthread.h.  It looks like you did that in order to call Ns_Log in
reentrant.c.

However, I suspect that ALSO changed the definition of NS_EXTERN to
the one in ns.h rather than nsthread.h.  Was that an unintentional?
Defining NS_EXTERN in two separate places like that is kind of
confusing.  Can/should we merge them into one somehow?

I bring this up because after merging all your latest changes into my
fork, the nsthread Windows build (which worked before) now fails like
this:

  Creating library nsthread.lib and object nsthread.exp
  reentrant.o : error LNK2019: unresolved external symbol Ns_Log referenced in 
function ns_asctime
  nsthread.dll : fatal error LNK1120: 1 unresolved externals


changeset:   2884:950a8cebabb8
user:Gustaf Neumann neum...@wu-wien.ac.at
date:Sat Sep 27 22:17:55 2014 +0200
files:   include/nsthread.h nsd/exec.c nsthread/reentrant.c
description:
- setting WINVERSION to Vista to allow usage of InetNtop()
- make code more robust against previous defines
- use the right pid_t type for win
- add shutdown flags
- use *_s function in win-specific reentrant code

-- 
Andrew Piskorski a...@piskorski.com

--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
___
naviserver-devel mailing list
naviserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/naviserver-devel


Re: [naviserver-devel] NS_EXTERN set wrong on Windows?

2014-10-01 Thread Andrew Piskorski
On Wed, Oct 01, 2014 at 03:12:34PM -0400, Andrew Piskorski wrote:

   Creating library nsthread.lib and object nsthread.exp
   reentrant.o : error LNK2019: unresolved external symbol Ns_Log referenced 
 in function ns_asctime
   nsthread.dll : fatal error LNK1120: 1 unresolved externals

Well, I fixed that by simply commenting out that new Ns_Log call, here:

  
https://bitbucket.org/apiskors/naviserver/commits/f4c8f273833539b5d48ec1b73b594a9d961fe788

I still worry a bit about the two separate definitions of NS_EXTERN
and which one is actually getting used, but so far the change to
include ns.h from reentrant.c does NOT seem to have broken anything.

-- 
Andrew Piskorski a...@piskorski.com

--
Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer
Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports
Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper
Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer
http://pubads.g.doubleclick.net/gampad/clk?id=154622311iu=/4140/ostg.clktrk
___
naviserver-devel mailing list
naviserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/naviserver-devel