You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by wr...@locus.apache.org on 2000/10/11 09:52:10 UTC

cvs commit: apache-2.0/src/include ap_config.h

wrowe       00/10/11 00:52:10

  Modified:    src/include ap_config.h
  Log:
    This much, at least, we don't need to debate.
  
  Revision  Changes    Path
  1.42      +4 -0      apache-2.0/src/include/ap_config.h
  
  Index: ap_config.h
  ===================================================================
  RCS file: /home/cvs/apache-2.0/src/include/ap_config.h,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- ap_config.h	2000/08/06 06:07:01	1.41
  +++ ap_config.h	2000/10/11 07:52:09	1.42
  @@ -70,21 +70,25 @@
   #define API_EXPORT(type)        type
   #define API_EXPORT_NONSTD(type) type
   #define API_VAR_EXPORT
  +#define MODULE_EXPORT(type)     type
   #define MODULE_VAR_EXPORT
   #elif defined(API_STATIC)
   #define API_EXPORT(type)        type __stdcall
   #define API_EXPORT_NONSTD(type) type
   #define API_VAR_EXPORT
  +#define MODULE_EXPORT(type)     type __stdcall
   #define MODULE_VAR_EXPORT
   #elif defined(API_EXPORT_SYMBOLS)
   #define API_EXPORT(type)        __declspec(dllexport) type __stdcall
   #define API_EXPORT_NONSTD(type) __declspec(dllexport) type
   #define API_VAR_EXPORT		__declspec(dllexport)
  +#define MODULE_EXPORT(type)     __declspec(dllexport) type __stdcall
   #define MODULE_VAR_EXPORT       __declspec(dllexport)
   #else
   #define API_EXPORT(type)        __declspec(dllimport) type __stdcall
   #define API_EXPORT_NONSTD(type) __declspec(dllimport) type
   #define API_VAR_EXPORT		__declspec(dllimport)
  +#define MODULE_EXPORT(type)     __declspec(dllexport) type __stdcall
   #define MODULE_VAR_EXPORT       __declspec(dllexport)
   #endif
   
  
  
  

Re: cvs commit: apache-2.0/src/include ap_config.h

Posted by Jeff Trawick <tr...@bellsouth.net>.
Greg Stein <gs...@lyra.org> writes:

> [ this was sent to 'httpd-docs-2.0-cvs@apache.org' ... what's up with
>   that... OtherBill: check your CVS working copy for wonkiness... ]

If a header file which has been declared to have documentation in it
is modified (or probably just lives in certain directories), the
commit message goes to the docs mailing list.  Ken can confirm the
exact rule.

-- 
Jeff Trawick | trawick@ibm.net | PGP public key at web site:
     http://www.geocities.com/SiliconValley/Park/9289/
          Born in Roswell... married an alien...

RE: cvs commit: apache-2.0/src/include ap_config.h

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
> From: Greg Stein [mailto:gstein@lyra.org]
> Sent: Wednesday, October 11, 2000 3:33 AM
> 
> Not necessarily a debate here :-) ... but what is the difference between
> API_EXPORT and MODULE_EXPORT? And API_VAR_EXPORT and MODULE_VAR_EXPORT?
> 
> They all look the same to me.
> 
> Can we possibly convert to a single form and grandfather the older ones?
> 
> e.g. AP_EXPORT(type), AP_EXPORT_NONSTD(type), AP_EXPORT_VAR

They change meaning on the context of what is defined when the compiler
is invoked:

APR_ symbols become dllexport when APR_EXPORT_SYMBOLS is defined, say, when
     we are building the shared APR_ library.  Otherwise dllimport on Win32
     unless STATIC_SYMBOLS - This is the APR library

API_ symbols become dllexport when APR_EXPORT_SYMBOLS is defined, say, when
     we are building the shared APR_ library.  Otherwise dllimport on Win32
     unless STATIC_SYMBOLS - This is the CORE library

MODULE_ symbols just -stay- as dllexport.  They don't change meanings into
        dllimport on any flag at all - These are (usually) mod_.dll's that
        nobody else includes.

DAV_ is the very example of how these tricks are played for mod_dav.h, and
was included in the patch I posted.

Yes, _EXPORT() and _EXPORT_NONSTD() are identical, at the moment.  If we wanted
another calling method (c v.s. pascal conventions) this would be the one stop
shop to change that behavior.  I will be testing it next week for robustness.


Re: cvs commit: apache-2.0/src/include ap_config.h

Posted by Greg Stein <gs...@lyra.org>.
[ this was sent to 'httpd-docs-2.0-cvs@apache.org' ... what's up with
  that... OtherBill: check your CVS working copy for wonkiness... ]


Not necessarily a debate here :-) ... but what is the difference between
API_EXPORT and MODULE_EXPORT? And API_VAR_EXPORT and MODULE_VAR_EXPORT?

They all look the same to me.

Can we possibly convert to a single form and grandfather the older ones?

e.g. AP_EXPORT(type), AP_EXPORT_NONSTD(type), AP_EXPORT_VAR

??

Cheers,
-g

p.s. and yes: a variety that defines custom linkage for modules that export
more symbols to other modules... but that is step 2 :-)

On Wed, Oct 11, 2000 at 07:52:10AM -0000, wrowe@locus.apache.org wrote:
> wrowe       00/10/11 00:52:10
> 
>   Modified:    src/include ap_config.h
>   Log:
>     This much, at least, we don't need to debate.
>   
>   Revision  Changes    Path
>   1.42      +4 -0      apache-2.0/src/include/ap_config.h
>   
>   Index: ap_config.h
>   ===================================================================
>   RCS file: /home/cvs/apache-2.0/src/include/ap_config.h,v
>   retrieving revision 1.41
>   retrieving revision 1.42
>   diff -u -r1.41 -r1.42
>   --- ap_config.h	2000/08/06 06:07:01	1.41
>   +++ ap_config.h	2000/10/11 07:52:09	1.42
>   @@ -70,21 +70,25 @@
>    #define API_EXPORT(type)        type
>    #define API_EXPORT_NONSTD(type) type
>    #define API_VAR_EXPORT
>   +#define MODULE_EXPORT(type)     type
>    #define MODULE_VAR_EXPORT
>    #elif defined(API_STATIC)
>    #define API_EXPORT(type)        type __stdcall
>    #define API_EXPORT_NONSTD(type) type
>    #define API_VAR_EXPORT
>   +#define MODULE_EXPORT(type)     type __stdcall
>    #define MODULE_VAR_EXPORT
>    #elif defined(API_EXPORT_SYMBOLS)
>    #define API_EXPORT(type)        __declspec(dllexport) type __stdcall
>    #define API_EXPORT_NONSTD(type) __declspec(dllexport) type
>    #define API_VAR_EXPORT		__declspec(dllexport)
>   +#define MODULE_EXPORT(type)     __declspec(dllexport) type __stdcall
>    #define MODULE_VAR_EXPORT       __declspec(dllexport)
>    #else
>    #define API_EXPORT(type)        __declspec(dllimport) type __stdcall
>    #define API_EXPORT_NONSTD(type) __declspec(dllimport) type
>    #define API_VAR_EXPORT		__declspec(dllimport)
>   +#define MODULE_EXPORT(type)     __declspec(dllexport) type __stdcall
>    #define MODULE_VAR_EXPORT       __declspec(dllexport)
>    #endif
>    
>   
>   
>   

-- 
Greg Stein, http://www.lyra.org/