Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: third_party/protobuf/generate_descriptor_proto.sh

Issue 1842653006: Update //third_party/protobuf to version 3. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: merge Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/protobuf/examples/list_people_test.go ('k') | third_party/protobuf/gmock.BUILD » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
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
31 declare -a RUNTIME_PROTO_FILES=(\
32 google/protobuf/any.proto \
33 google/protobuf/api.proto \
34 google/protobuf/descriptor.proto \
35 google/protobuf/duration.proto \
36 google/protobuf/empty.proto \
37 google/protobuf/field_mask.proto \
38 google/protobuf/source_context.proto \
39 google/protobuf/struct.proto \
40 google/protobuf/timestamp.proto \
41 google/protobuf/type.proto \
42 google/protobuf/wrappers.proto)
43
44 CORE_PROTO_IS_CORRECT=0
45 PROCESS_ROUND=1
46 echo "Updating descriptor protos..."
47 while [ $CORE_PROTO_IS_CORRECT -ne 1 ]
48 do
49 echo "Round $PROCESS_ROUND"
50 CORE_PROTO_IS_CORRECT=1
51 for PROTO_FILE in ${RUNTIME_PROTO_FILES[@]}; do
52 BASE_NAME=${PROTO_FILE%.*}
53 cp ${BASE_NAME}.pb.h ${BASE_NAME}.pb.h.tmp
54 cp ${BASE_NAME}.pb.cc ${BASE_NAME}.pb.cc.tmp
55 done
56 cp google/protobuf/compiler/plugin.pb.h google/protobuf/compiler/plugin.pb.h.t mp
57 cp google/protobuf/compiler/plugin.pb.cc google/protobuf/compiler/plugin.pb.cc .tmp
58
59 make $@ protoc &&
60 ./protoc --cpp_out=dllexport_decl=LIBPROTOBUF_EXPORT:. ${RUNTIME_PROTO_FILES [@]} && \
61 ./protoc --cpp_out=dllexport_decl=LIBPROTOC_EXPORT:. google/protobuf/compile r/plugin.proto
62
63 for PROTO_FILE in ${RUNTIME_PROTO_FILES[@]}; do
64 BASE_NAME=${PROTO_FILE%.*}
65 diff ${BASE_NAME}.pb.h ${BASE_NAME}.pb.h.tmp > /dev/null
66 if test $? -ne 0; then
67 CORE_PROTO_IS_CORRECT=0
68 fi
69 diff ${BASE_NAME}.pb.cc ${BASE_NAME}.pb.cc.tmp > /dev/null
70 if test $? -ne 0; then
71 CORE_PROTO_IS_CORRECT=0
72 fi
73 done
74
75 diff google/protobuf/compiler/plugin.pb.h google/protobuf/compiler/plugin.pb.h .tmp > /dev/null
76 if test $? -ne 0; then
77 CORE_PROTO_IS_CORRECT=0
78 fi
79 diff google/protobuf/compiler/plugin.pb.cc google/protobuf/compiler/plugin.pb. cc.tmp > /dev/null
80 if test $? -ne 0; then
81 CORE_PROTO_IS_CORRECT=0
82 fi
83
84 for PROTO_FILE in ${RUNTIME_PROTO_FILES[@]}; do
85 BASE_NAME=${PROTO_FILE%.*}
86 rm ${BASE_NAME}.pb.h.tmp
87 rm ${BASE_NAME}.pb.cc.tmp
88 done
89 rm google/protobuf/compiler/plugin.pb.h.tmp
90 rm google/protobuf/compiler/plugin.pb.cc.tmp
91
92 PROCESS_ROUND=$((PROCESS_ROUND + 1))
93 done
94 cd ..
95
96 if test -x objectivec/generate_descriptors_proto.sh; then
97 echo "Generating messages for objc."
98 objectivec/generate_descriptors_proto.sh $@
99 fi
OLDNEW
« no previous file with comments | « third_party/protobuf/examples/list_people_test.go ('k') | third_party/protobuf/gmock.BUILD » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698