Browse Source

Update MSVC project files for rev 120, and add instructions for compiling with zlib.

kenton@google.com 16 years ago
parent
commit
50ede8ba17

+ 2 - 0
src/google/protobuf/descriptor_database_unittest.cc

@@ -34,6 +34,8 @@
 //
 //
 // This file makes extensive use of RFC 3092.  :)
 // This file makes extensive use of RFC 3092.  :)
 
 
+#include <algorithm>
+
 #include <google/protobuf/descriptor_database.h>
 #include <google/protobuf/descriptor_database.h>
 #include <google/protobuf/descriptor.h>
 #include <google/protobuf/descriptor.h>
 #include <google/protobuf/descriptor.pb.h>
 #include <google/protobuf/descriptor.pb.h>

+ 1 - 1
src/google/protobuf/extension_set.h

@@ -633,7 +633,7 @@ class LIBPROTOBUF_EXPORT ExtensionIdentifier {
 
 
  private:
  private:
   const int number_;
   const int number_;
-  const typename TypeTraits::ConstType default_value_;
+  typename TypeTraits::ConstType default_value_;
 };
 };
 
 
 // -------------------------------------------------------------------
 // -------------------------------------------------------------------

+ 6 - 2
vsprojects/config.h

@@ -15,7 +15,11 @@
 #define HASH_SET_H <hash_set>
 #define HASH_SET_H <hash_set>
 
 
 /* define if the compiler has hash_map */
 /* define if the compiler has hash_map */
-#define HAVE_HASH_MAP
+#define HAVE_HASH_MAP 1
 
 
 /* define if the compiler has hash_set */
 /* define if the compiler has hash_set */
-#define HAVE_HASH_SET
+#define HAVE_HASH_SET 1
+
+/* define if you want to use zlib.  See readme.txt for additional
+ * requirements. */
+// #define HAVE_ZLIB 1

+ 16 - 0
vsprojects/libprotobuf.vcproj

@@ -183,6 +183,10 @@
 				RelativePath="..\src\google\protobuf\generated_message_reflection.h"
 				RelativePath="..\src\google\protobuf\generated_message_reflection.h"
 				>
 				>
 			</File>
 			</File>
+			<File
+				RelativePath="..\src\google\protobuf\io\gzip_stream.h"
+				>
+			</File>
 			<File
 			<File
 				RelativePath="..\src\google\protobuf\stubs\hash.h"
 				RelativePath="..\src\google\protobuf\stubs\hash.h"
 				>
 				>
@@ -199,6 +203,10 @@
 				RelativePath="..\src\google\protobuf\message.h"
 				RelativePath="..\src\google\protobuf\message.h"
 				>
 				>
 			</File>
 			</File>
+			<File
+				RelativePath="..\src\google\protobuf\stubs\once.h"
+				>
+			</File>
 			<File
 			<File
 				RelativePath="..\src\google\protobuf\compiler\parser.h"
 				RelativePath="..\src\google\protobuf\compiler\parser.h"
 				>
 				>
@@ -303,6 +311,10 @@
 				RelativePath="..\src\google\protobuf\generated_message_reflection.cc"
 				RelativePath="..\src\google\protobuf\generated_message_reflection.cc"
 				>
 				>
 			</File>
 			</File>
+			<File
+				RelativePath="..\src\google\protobuf\io\gzip_stream.cc"
+				>
+			</File>
 			<File
 			<File
 				RelativePath="..\src\google\protobuf\stubs\hash.cc"
 				RelativePath="..\src\google\protobuf\stubs\hash.cc"
 				>
 				>
@@ -319,6 +331,10 @@
 				RelativePath="..\src\google\protobuf\message.cc"
 				RelativePath="..\src\google\protobuf\message.cc"
 				>
 				>
 			</File>
 			</File>
+			<File
+				RelativePath="..\src\google\protobuf\stubs\once.cc"
+				>
+			</File>
 			<File
 			<File
 				RelativePath="..\src\google\protobuf\compiler\parser.cc"
 				RelativePath="..\src\google\protobuf\compiler\parser.cc"
 				>
 				>

+ 25 - 0
vsprojects/readme.txt

@@ -54,6 +54,31 @@ recommend that you do NOT expose protocol buffer objects in your library's
 public interface, and that you statically link protocol buffers into your
 public interface, and that you statically link protocol buffers into your
 library.
 library.
 
 
+ZLib support
+============
+
+If you want to include GzipInputStream and GzipOutputStream
+(google/protobuf/io/gzip_stream.h) in libprotoc, you will need to do a few
+additional steps:
+
+1) Obtain a copy of the zlib library.  The pre-compiled DLL at zlib.net works.
+2) Make sure zlib's two headers are in your include path and that the .lib file
+   is in your library path.  You could place all three files directly into the
+   vsproject directory to compile libprotobuf, but they need to be visible to
+   your own project as well, so you should probably just put them into the
+   VC shared icnlude and library directories.
+3) Right-click on the "tests" project and choose "properties".  Navigate the
+   sidebar to "Configuration Properties" -> "Linker" -> "Input".
+4) Under "Additional Dependencies", add the name of the zlib .lib file (e.g.
+   zdll.lib).  Make sure to update both the Debug and Release configurations.
+5) If you are compiling libprotobuf and libprotoc as DLLs (see previous
+   section), repeat steps 2 and 3 for the libprotobuf and libprotoc projects.
+   If you are compiling them as static libraries, then you will need to link
+   against the zlib library directly from your own app.
+6) Edit config.h (in the vsprojects directory) and un-comment the line that
+   #defines HAVE_ZLIB.  (Or, alternatively, define this macro via the project
+   settings.)
+
 Notes on Compiler Warnings
 Notes on Compiler Warnings
 ==========================
 ==========================
 
 

+ 4 - 0
vsprojects/tests.vcproj

@@ -290,6 +290,10 @@
 				RelativePath="..\src\google\protobuf\message_unittest.cc"
 				RelativePath="..\src\google\protobuf\message_unittest.cc"
 				>
 				>
 			</File>
 			</File>
+			<File
+				RelativePath="..\src\google\protobuf\stubs\once_unittest.cc"
+				>
+			</File>
 			<File
 			<File
 				RelativePath="..\src\google\protobuf\compiler\parser_unittest.cc"
 				RelativePath="..\src\google\protobuf\compiler\parser_unittest.cc"
 				>
 				>