Author: wrowe
Date: Tue Nov 23 09:54:33 2004
New Revision: 106321

Modified:
   httpd/mod_aspdotnet/trunk/Apache.Web/Apache.Web.Version.h
Log:

  Modify our versioning schema.

  major.minor.subversion will reflect a specific httpd build, e.g. 2.0.0,
  with which this module is compatible.

  If .minor is even, httpd remains binary compatible, we will use n.n.0
  for our version.  If .minor is odd, httpd is a development branch which
  is rather unstable.  Use n.n.n corresponding to the Apache httpd version.

  Use our n.n.n.{build} version to reflect the flavor of our Apache.Web.h
  interfaces.  Somewhat unconventional, our API won't change significantly,
  and is bound by the entire version string when loading Apache.Web.dll.
  Even by build number, assemblies coexist nicely in the GAC.  So, we can
  have 2.0.0.2000 coexist with 2.0.0.2002 in parallel, with no adverse
  effects.  The two mod_aspdotnet version .2000 and .2002 will cleanly
  load their corresponding assemblies.

  There should be no case where a user obtains mod_aspdotnet and Apache.Web
  out-of-sync with one another.



Modified: httpd/mod_aspdotnet/trunk/Apache.Web/Apache.Web.Version.h
Url: 
http://svn.apache.org/viewcvs/httpd/mod_aspdotnet/trunk/Apache.Web/Apache.Web.Version.h?view=diff&rev=106321&p1=httpd/mod_aspdotnet/trunk/Apache.Web/Apache.Web.Version.h&r1=106320&p2=httpd/mod_aspdotnet/trunk/Apache.Web/Apache.Web.Version.h&r2=106321
==============================================================================
--- httpd/mod_aspdotnet/trunk/Apache.Web/Apache.Web.Version.h   (original)
+++ httpd/mod_aspdotnet/trunk/Apache.Web/Apache.Web.Version.h   Tue Nov 23 
09:54:33 2004
@@ -17,23 +17,39 @@
 
 #ifndef APACHE_WEB_VERSION
 
+// Borrow Versioning from httpd
+#include "ap_release.h"
+
 // The MAJOR.MINOR revision should reflect the Apache release this module 
-// is built for.  The httpd release guidelines from version 4.0.43 onwards
+// is built for.  The httpd release guidelines from version 2.0.43 onwards
 // assure us that the binaries remain backwards compatibile, within each
-// major.minor httpd release.
+// major.minor httpd release.  In the absense of Apache's numeric maj.min
+// numeric values, we presume 2.0.
 //
+#ifdef AP_SERVER_MAJORVERSION_NUMBER
+#define APACHE_WEB_VER_MAJOR AP_SERVER_MAJORVERSION_NUMBER
+#define APACHE_WEB_VER_MINOR AP_SERVER_MINORVERSION_NUMBER
+#else
 #define APACHE_WEB_VER_MAJOR 2
 #define APACHE_WEB_VER_MINOR 0
+#endif
 
-// The n.n.SUBVS should reflect each mod_aspdotnet/Apache.Web release
+// The n.n.SUBVS reflects 0 for a binary stable (even) releases,
+// or the httpd subversion for binary unstable (odd) dev releases.
 //
-#define APACHE_WEB_VER_SUBVS 1
+#if (APACHE_WEB_VER_MAJOR % 2)
+#define APACHE_WEB_VER_SUBVS AP_SERVER_PATCHLEVEL_NUMBER
+#else
+#define APACHE_WEB_VER_SUBVS 0
+#endif
 
 // The n.n.n.BUILD must be bumped every time Apache.Web class interfaces 
change.
 // This ensures that a specific build of mod_aspdotnet loads it's correponding
 // build of Apache.Web, and that multiple builds of Apache.Web coexist in the 
GAC.
+// This also ensures we use the most recent 'build' of the module for the given
+// Apache core version.
 //
-#define APACHE_WEB_VER_BUILD 2000
+#define APACHE_WEB_VER_BUILD 2002
 
 // Define APACHE_WEB_VER_RELEASE as 1 for a non-dev, release build, when 
rolling
 // the distribution .zip sources or binary release.

Reply via email to