1 #!/bin/sh 2 3 # Run this script to regenerate descriptor.pb.{h,cc} after the protocol 4 # compiler changes. Since these files are compiled into the protocol compiler 5 # itself, they cannot be generated automatically by a make rule. "make check" 6 # will fail if these files do not match what the protocol compiler would 7 # generate. 8 # 9 # HINT: Flags passed to generate_descriptor_proto.sh will be passed directly 10 # to make when building protoc. This is particularly useful for passing 11 # -j4 to run 4 jobs simultaneously. 12 13 if test ! -e src/google/protobuf/stubs/common.h; then 14 cat >&2 << __EOF__ 15 Could not find source code. Make sure you are running this script from the 16 root of the distribution tree. 17 __EOF__ 18 exit 1 19 fi 20 21 if test ! -e src/Makefile; then 22 cat >&2 << __EOF__ 23 Could not find src/Makefile. You must run ./configure (and perhaps 24 ./autogen.sh) first. 25 __EOF__ 26 exit 1 27 fi 28 29 cd src 30 make $@ protoc && 31 ./protoc --cpp_out=dllexport_decl=LIBPROTOBUF_EXPORT:. google/protobuf/descriptor.proto && \ 32 ./protoc --cpp_out=dllexport_decl=LIBPROTOC_EXPORT:. google/protobuf/compiler/plugin.proto 33 cd .. 34