rbb         99/10/18 11:34:26

  Modified:    src/lib/apr APRDesign
  Log:
  Update the design doc with specs for FEATURE macros inside APR.
  
  Revision  Changes    Path
  1.2       +26 -0     apache-2.0/src/lib/apr/APRDesign
  
  Index: APRDesign
  ===================================================================
  RCS file: /home/cvs/apache-2.0/src/lib/apr/APRDesign,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- APRDesign 1999/10/11 00:51:41     1.1
  +++ APRDesign 1999/10/18 18:34:25     1.2
  @@ -19,6 +19,32 @@
   This document will discuss the structure of APR, and how best to contribute
   code to the effort.
   
  +APR Features
  +
  +One of the goals of APR is to provide a common set of features across all 
  +platforms.  This is an admirable goal, it is also not realisitic.  We cannot
  +expect to be able to implement ALL features on ALL platforms.  So we are
  +going to do the next best thing.  Provide a common interface to ALL APR 
  +features on MOST platforms.
  +
  +APR developers should create FEATURE MACROS for any feature that is not
  +available on ALL platforms.  This should be a simple definition which has
  +the form:
  +
  +APR_HAS_FEATURE
  +
  +This macro should evaluate to true if APR has this feature on this platform.
  +For example, Linux and Windows have mmap'ed files, and APR is providing an
  +interface for mmapp'ing a file.  On both Linux and Windows, APR_HAS_MMAP
  +should evaluate to one, and the ap_mmap_* functions should map files into
  +memory and return the appropriate status codes.
  +
  +If your OS of choice does not have mmap'ed files, APR_HAS_MMAP should 
evaluate 
  +to zero, and all ap_mmap_* functions should automatically return 
APR_ENOTIMPL.
  +The second step is a precaution.  We will not break at compile time, just
  +because a programmer tried to write code that uses functions which may not be
  +there, but we will make sure the programmer knows he isn't doing anything.
  +
   APR types
   
   The base types in APR
  
  
  

Reply via email to