Author: wrowe
Date: Thu Oct 21 14:19:47 2004
New Revision: 55266

Added:
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.Version.h   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.rc   
(contents, props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.rc   (contents, 
props changed)
Modified:
   incubator/httpd/cli/trunk/mod_aspdotnet/   (props changed)
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.h
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.vcproj
   incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/AssemblyInfo.cpp
   incubator/httpd/cli/trunk/mod_aspdotnet/README.txt
   incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.cpp
   incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.vcproj
Log:
Split Apache.Web.Version.h out of Apache.Web.h, add resource version
tags (.rc files) and update the readme.


Added: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.Version.h
==============================================================================
--- (empty file)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.Version.h     
Thu Oct 21 14:19:47 2004
@@ -0,0 +1,60 @@
+/* Copyright 2002-2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// Apache.Web.Version.h Version declaration macros
+
+#ifndef APACHE_WEB_VERSION
+
+// The MAJOR.MINOR revision should reflect the Apache release this module 
+// is built for.  The httpd release guidelines from version 4.0.43 onwards
+// assure us that the binaries remain backwards compatibile, within each
+// major.minor httpd release.
+//
+#define APACHE_WEB_VER_MAJOR 2
+#define APACHE_WEB_VER_MINOR 0
+
+// The n.n.SUBVS should reflect each mod_aspdotnet/Apache.Web release
+//
+#define APACHE_WEB_VER_SUBVS 0
+
+// 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.
+//
+#define APACHE_WEB_VER_BUILD 2000
+
+// Define APACHE_WEB_VER_RELEASE as 1 for a non-dev, release build, when 
rolling
+// the distribution .zip sources or binary release.
+//
+#define APACHE_WEB_VER_RELEASE 0
+
+#define APACHE_WEB_VERSION_CSV \
+    APACHE_WEB_VER_MAJOR,\
+    APACHE_WEB_VER_MINOR,\
+    APACHE_WEB_VER_SUBVS,\
+    APACHE_WEB_VER_BUILD
+
+// Properly quote a value as a string in the C preprocessor
+#define APW_STRINGIFY(n) APW_STRINGIFY_HELPER(n)
+// Helper macro for APR_STRINGIFY
+#define APW_STRINGIFY_HELPER(n) #n
+
+#define APACHE_WEB_VERSION \
+    APW_STRINGIFY(APACHE_WEB_VER_MAJOR ##. \
+                ##APACHE_WEB_VER_MINOR ##. \
+                ##APACHE_WEB_VER_SUBVS ##. \
+                ##APACHE_WEB_VER_BUILD)
+
+#endif // APACHE_WEB_VERSION

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.h
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.h     
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.h     Thu Oct 
21 14:19:47 2004
@@ -15,13 +15,10 @@
 
 // Apache.Web.h base COM interop interfaces for Apache 2.0
 
-
-#ifndef APACHE_WEB_VERSION
-#define APACHE_WEB_VERSION "2.0.0.2000"
-#endif
-
 #ifndef APACHE_WEB_H
 #define APACHE_WEB_H
+
+#include "Apache.Web.Version.h"
 
 // We don't care about unused arguments, 
 // or conditional expression constant evaluation

Added: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.rc
==============================================================================
--- (empty file)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.rc    Thu Oct 
21 14:19:47 2004
@@ -0,0 +1,39 @@
+#include "Apache.Web.Version.h"
+
+1 VERSIONINFO
+ FILEVERSION APACHE_WEB_VERSION_CSV
+ PRODUCTVERSION APACHE_WEB_VERSION_CSV
+ FILEFLAGSMASK 0x3fL
+#if defined(_DEBUG)
+ FILEFLAGS 0x03L
+#else
+#if !APACHE_WEB_VER_RELEASE
+ FILEFLAGS 0x02L
+#else
+ FILEFLAGS 0x0L
+#endif
+#endif
+ FILEOS 0x40004L
+ FILETYPE 0x1L
+ FILESUBTYPE 0x0L
+BEGIN
+  BLOCK "StringFileInfo"
+  BEGIN
+    BLOCK "040904b0"
+    BEGIN
+      VALUE "Comments", "All rights reserved.  The license is available at 
<http://www.apache.org/licenses/LICENSE-2.0.txt>. The Apache HTTP Server 
cli-dev subproject pages are at <http://httpd.apache.org/cli-dev/>.\0"
+      VALUE "CompanyName", "Apache Software Foundation\0"
+      VALUE "FileDescription", "Apache.Web connector to the mod_aspdotnet 
module for the Apache HTTP Web Server\0"
+      VALUE "FileVersion", APACHE_WEB_VERSION "\0"
+      VALUE "InternalName", "Apache.Web.dll\0"
+      VALUE "LegalCopyright", "Copyright © 2004 The Apache Software 
Foundation.\0"
+      VALUE "OriginalFilename", "Apache.Web.dll\0"
+      VALUE "ProductName", "mod_aspdotnet/Apache.Web host module for Microsoft 
ASP.NET within the Apache HTTP Server\0"
+      VALUE "ProductVersion", APACHE_WEB_VERSION "\0"
+    END
+  END
+  BLOCK "VarFileInfo"
+  BEGIN
+    VALUE "Translation", 0x409, 1200
+  END
+END

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.vcproj
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.vcproj        
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/Apache.Web.vcproj        
Thu Oct 21 14:19:47 2004
@@ -152,6 +152,9 @@
                        Name="Header Files"
                        Filter="h;hpp;hxx;hm;inl;inc">
                        <File
+                               RelativePath="Apache.Web.Version.h">
+                       </File>
+                       <File
                                RelativePath="Apache.Web.h">
                        </File>
                        <File
@@ -170,6 +173,9 @@
                <Filter
                        Name="Resource Files"
                        
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;r">
+                       <File
+                               RelativePath="Apache.Web.rc">
+                       </File>
                </Filter>
                <File
                        RelativePath="ReadMe.txt">

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/AssemblyInfo.cpp
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/AssemblyInfo.cpp 
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/Apache.Web/AssemblyInfo.cpp Thu Oct 
21 14:19:47 2004
@@ -15,11 +15,7 @@
 
 // AssemblyInfo.cpp support for Apache.Web Assembly
 
-
-// We aren't looking for much beyond the version, 
-// so lie that this header was previously loaded
-#define APACHE_WEB_H
-#include "Apache.Web.h"
+#include "Apache.Web.Version.h"
 
 #using <mscorlib.dll>
 

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/README.txt
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/README.txt  (original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/README.txt  Thu Oct 21 14:19:47 2004
@@ -34,12 +34,19 @@
 Alternate Build Notes
 ---------------------
 
-You may build the module with the free Microsoft Visual C++ Toolkit and 
-the .NET Framework, instead of the full Developer Studio.  However, it's
-not possible to create the full installer with this method, and some
-registration by-hand is required.
-
-  [NEW batch file and documentation needed]
+We have attempted to build the modules with the free Microsoft Visual C++ 
+Toolkit, Microsoft's .NET Framework SDK and Windows Platform SDK.  Sadly,
+this combination is not a complete replacement for the Developer Studio,
+and is insufficient to build the mod_aspdotnet and Apache.Web.dll modules.
+
+Notably, none of these packages includes the DelayImp.lib which is
+required to link libhttpd, libaprutil and libapr .dll files to the
+Apache.Web.dll module.  This allows the regasm and gacutil utilities,
+amoung others, to load and process the Apache.Web.dll, without loading
+the actual Apache .dll files.  Without this feature it's impossible to
+place Apache.Web.dll in the GAC (required for loading inside Microsoft's
+System.Web.Hosting framework), while the Apache .dll files remain in the
+Apache bin directory.
 
 
 Deployment Notes
@@ -50,7 +57,7 @@
 two releases, and Exceptions, destruction, construction and failure cases
 will manifest differently between the two variants.
 
-Asp.Net requires the Apache::Web::Request object to be registered in 
+ASP.NET requires the Apache::Web::Request object to be registered in 
 the Global Assembly Cache in order to instantiate it's host container.
 
 The Debug build will do so automatically, copying mod_aspdotnet.so + .pdb
@@ -69,6 +76,8 @@
 
 This will *NOT* work on an end-user's machine without the .Net SDK.  Those
 tools [regasm/gacutil] aren't installed with the retail .Net-redist install.
+Instead, the .msi installer package, with the details for registering the
+Apache.Web assembly into the Global Assembly Cache, is used for end-users.
 
 
 TODO
@@ -87,34 +96,6 @@
 a much more efficient method.
 
 Note that the .msi package searches for apache/bin/apache.exe up to 3 levels 
-deep from the local hard drives, in sequence.  It aught to further test for
-version 2.0.43.0 or later.
-
-The installer cannot be configured correctly from the MS Visual Studio
-environment; the follow changes should be programmed to automatically
-occur after building installer.msi;
-
-Modify the following records;
-
-  Table     Property             Value
-  Property  FolderForm_AllUsers  s/ME/ALL/
-  
-Insert the follow records;
-
-  Table         Action           Type   Source     Target
-  CustomAction  DIRCH_TARGETDIR  307    TARGETDIR  [HTTPSDPATH]\..
-
-  Table                    Action           Condition       Seq
-  InstallUISequence        DIRCH_TARGETDIR  HTTPSDPATH<>""  725
-  InstallExecuteSequence   DIRCH_TARGETDIR  HTTPSDPATH<>""  725
-
-This sequence uses the HTTPSDPATH search already built into the
-installer.msi project, and sets that default as the targetdir for
-the installation.
-
-It is entirely possible for the project to also create a .bat file
-build script using the http://msdn.microsoft.com/visualc/vctoolkit2003/
-Visual C++ Toolkit for .NET (a free download.)  Of course, it would not
-be possible to create the .msi installer using that file.  It would be
-possible to use the free XML-based .msi packaging techology, however.
+deep from the local hard drives, in sequence.  It aught to test further, as
+necessary, or allow explicitly long paths.
 

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.cpp
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.cpp       
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.cpp       Thu Oct 
21 14:19:47 2004
@@ -43,10 +43,7 @@
 #include "util_filter.h"
 #include "util_script.h"
 
-// We aren't looking for much beyond the version, 
-// so lie that this header was previously loaded
-#define APACHE_WEB_H
-#include "Apache.Web.h"
+#include "Apache.Web.Version.h"
 
 #include <mscoree.h>
 #import <mscorlib.tlb> raw_interfaces_only \

Added: incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.rc
==============================================================================
--- (empty file)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.rc        Thu Oct 
21 14:19:47 2004
@@ -0,0 +1,40 @@
+#include "..\Apache.Web\Apache.Web.Version.h"
+
+1 VERSIONINFO
+ FILEVERSION APACHE_WEB_VERSION_CSV
+ PRODUCTVERSION APACHE_WEB_VERSION_CSV
+ FILEFLAGSMASK 0x3fL
+#if defined(_DEBUG)
+ FILEFLAGS 0x03L
+#else
+#if !APACHE_WEB_VER_RELEASE
+ FILEFLAGS 0x02L
+#else
+ FILEFLAGS 0x0L
+#endif
+#endif
+ FILEOS 0x40004L
+ FILETYPE 0x1L
+ FILESUBTYPE 0x0L
+BEGIN
+  BLOCK "StringFileInfo"
+  BEGIN
+    BLOCK "040904b0"
+    BEGIN
+      VALUE "Comments", "All rights reserved.  The license is available at 
<http://www.apache.org/licenses/LICENSE-2.0.txt>. The Apache HTTP Server 
cli-dev subproject pages are at <http://httpd.apache.org/cli-dev/>.\0"
+      VALUE "CompanyName", "Apache Software Foundation\0"
+      VALUE "FileDescription", "Apache.Web connector to mod_aspdotnet for 
Apache HTTP Server\0"
+      VALUE "FileDescription", "aspdotnet_module connector module to 
Apache.Web for the Apache HTTP Web Server\0"
+      VALUE "FileVersion", APACHE_WEB_VERSION "\0"
+      VALUE "InternalName", "mod_aspdotnet.so\0"
+      VALUE "LegalCopyright", "Copyright © 2004 The Apache Software 
Foundation.\0"
+      VALUE "OriginalFilename", "mod_aspdotnet.so\0"
+      VALUE "ProductName", "mod_aspdotnet/Apache.Web host module for Microsoft 
ASP.NET within the Apache HTTP Server\0"
+      VALUE "ProductVersion", APACHE_WEB_VERSION "\0"
+    END
+  END
+  BLOCK "VarFileInfo"
+  BEGIN
+    VALUE "Translation", 0x409, 1200
+  END
+END

Modified: incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.vcproj
==============================================================================
--- incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.vcproj    
(original)
+++ incubator/httpd/cli/trunk/mod_aspdotnet/mod/mod_aspdotnet.vcproj    Thu Oct 
21 14:19:47 2004
@@ -139,6 +139,9 @@
                <Filter
                        Name="Resource Files"
                        
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;r">
+                       <File
+                               RelativePath="mod_aspdotnet.rc">
+                       </File>
                </Filter>
        </Files>
        <Globals>

Reply via email to