diff options
author | temporal <temporal@630680e5-0e50-0410-840e-4b1c322b438d> | 2008-07-10 02:12:20 +0000 |
---|---|---|
committer | temporal <temporal@630680e5-0e50-0410-840e-4b1c322b438d> | 2008-07-10 02:12:20 +0000 |
commit | 40ee551715c3a784ea6132dbf604b0e665ca2def (patch) | |
tree | 6e3ea9674be5b0f59106f88f3afa1313854beebf /generate_descriptor_proto.sh | |
download | protobuf-40ee551715c3a784ea6132dbf604b0e665ca2def.tar.gz protobuf-40ee551715c3a784ea6132dbf604b0e665ca2def.tar.bz2 protobuf-40ee551715c3a784ea6132dbf604b0e665ca2def.zip |
Initial checkin.
Diffstat (limited to 'generate_descriptor_proto.sh')
-rwxr-xr-x | generate_descriptor_proto.sh | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/generate_descriptor_proto.sh b/generate_descriptor_proto.sh new file mode 100755 index 00000000..53e88e67 --- /dev/null +++ b/generate_descriptor_proto.sh @@ -0,0 +1,35 @@ +#!/bin/sh + +# Run this script to regenerate descriptor.pb.{h,cc} after the protocol +# compiler changes. Since these files are compiled into the protocol compiler +# itself, they cannot be generated automatically by a make rule. "make check" +# will fail if these files do not match what the protocol compiler would +# generate. + +# Note that this will always need to be run once after running +# extract_from_google3.sh. That script initially copies descriptor.pb.{h,cc} +# over from the google3 code and fixes it up to compile outside of google3, but +# it cannot fix the encoded descriptor embedded in descriptor.pb.cc. So, once +# the protocol compiler has been built with the slightly-broken +# descriptor.pb.cc, the files must be regenerated and the compiler must be +# built again. + +if test ! -e src/google/protobuf/stubs/common.h; then + cat >&2 << __EOF__ +Could not find source code. Make sure you are running this script from the +root of the distribution tree. +__EOF__ + exit 1 +fi + +if test ! -e src/Makefile; then + cat >&2 << __EOF__ +Could not find src/Makefile. You must run ./configure (and perhaps +./autogen.sh) first. +__EOF__ + exit 1 +fi + +pushd src +make protoc && ./protoc --cpp_out=dllexport_decl=LIBPROTOBUF_EXPORT:. google/protobuf/descriptor.proto +popd |