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

Side by Side Diff: third_party/protobuf/README.chromium

Issue 2495533002: third_party/protobuf: Update to HEAD (83d681ee2c) (Closed)
Patch Set: Make chrome settings proto generated file a component Created 4 years 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/Protobuf.podspec ('k') | third_party/protobuf/README.md » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 Name: Protocol Buffers 1 Name: Protocol Buffers
2 Short Name: protobuf 2 Short Name: protobuf
3 URL: https://github.com/google/protobuf 3 URL: https://github.com/google/protobuf
4 License: BSD 4 License: BSD
5 License File: LICENSE 5 License File: LICENSE
6 Version: 3.0.0-beta-3 6 Version: 3.1.0
7 Revision: 3470b6895aa659b7559ed678e029a5338e535f14 7 Revision: 83d681ee2caef1feb009656417830f846382d8ba
8 Security Critical: yes 8 Security Critical: yes
9 9
10 Steps used to create the current version: 10 Steps used to create the current version:
11 1. Pull the release from https://github.com/google/protobuf/releases 11 1. Pull the release from https://github.com/google/protobuf/releases
12 2. Add build files (BUILD.gn, proto_library.gni, protobuf.gyp, 12 2. Add build files (BUILD.gn, proto_library.gni).
13 protobuf_lite.gypi, protobuf_nacl.gyp).
14 13
15 Be sure to update the list of source files, as additional .cc files and 14 Be sure to update the list of source files, as additional .cc files and
16 headers might have been added -- you need to find the transitive closure of 15 headers might have been added -- you need to find the transitive closure of
17 include files required by targets. 16 include files required by targets.
18 17
19 Other things to care about are defines required by protobuf on various 18 Other things to care about are defines required by protobuf on various
20 platforms, warnings generated by compilers, and new dependencies introduced. 19 platforms, warnings generated by compilers, and new dependencies introduced.
21 3. Get open-source library six.py from https://pypi.python.org/pypi/six/ and add 20 3. Get open-source library six.py from https://pypi.python.org/pypi/six/ and add
22 it to protobuf/third_party/six/six.py. 21 it to protobuf/third_party/six/six.py.
23 4. Apply patches in patches/ (see the description below): 22 4. Apply patches in patches/ (see the description below):
24 23
25 $ for patch in patches/*; do patch -s -p1 < $patch; done 24 $ for patch in patches/*; do patch -s -p1 < $patch; done
26 25
27 For future releases, it will be worth looking into which patches still need 26 For future releases, it will be worth looking into which patches still need
28 to be applied. 27 to be applied. In case of conflict, update those patches accordingly and save
28 them back in place (i.e. in patches directory).
29 5. Generate descriptor_pb2.py using something like the following steps. Make 29 5. Generate descriptor_pb2.py using something like the following steps. Make
30 sure you've regenerated your buildfiles and will build protoc from the 30 sure you've regenerated your buildfiles and will build protoc from the
31 newly-modified sources above. 31 newly-modified sources above.
32 32
33 $ cd $SRC_DIR 33 $ cd $SRC_DIR
34 $ ninja -C out/Debug protoc 34 $ ninja -C out/Debug protoc
35 $ cd third_party/protobuf/src 35 $ cd third_party/protobuf/src
36 $ ../../../out/Debug/protoc --python_out=../python google/protobuf/descriptor .proto 36 $ ../../../out/Debug/protoc --python_out=../python google/protobuf/descriptor .proto
37 37
38 6. Add an __init__.py to protobuf/ that adds third_party/six/ to Python path. 38 6. Add an __init__.py to protobuf/ that adds third_party/six/ to Python path.
39 7. Update README.chromium. 39 7. Update README.chromium.
40 40
41 Description of the patches: 41 Description of the patches:
42 42
43 - 0003-remove-static-initializers.patch 43 - 0003-remove-static-initializers.patch
44 44
45 This patch removes all static initializers from Chromium. The change in Status 45 This patch removes all static initializers from Chromium. The change in Status
46 class is not completely compatible with upstream, but it's compatible enough 46 class is not completely compatible with upstream, but it's compatible enough
47 to work in Chromium, which doesn't use this functionality yet. The work on 47 to work in Chromium, which doesn't use this functionality yet. The work on
48 upstreaming the removal of static initializers is in progress: 48 upstreaming the removal of static initializers is in progress:
49 https://github.com/google/protobuf/issues/1404 49 https://github.com/google/protobuf/issues/1404
50 50
51 - 0004-fix-integer-types-and-shared-library-exports.patch 51 - 0004-fix-integer-types-and-shared-library-exports.patch
52 52
53 This patch makes protobuf int64 to be int64_t (as opposed to long long in 53 This patch makes protobuf int64 to be int64_t (as opposed to long long in
54 upstream), and similarly for other integer types. It also allows exporting 54 upstream), and similarly for other integer types. It also allows exporting
55 protobuf symbols in Linux .so libraries, so that protobuf can be built as a 55 protobuf symbols in Linux .so libraries, so that protobuf can be built as a
56 component (see http://crrev.com/179806). 56 component (see http://crrev.com/179806).
57 57
58 - 0005-fix-include-js-generator.protobuf
59
60 During merge with internal branch, the <> in one of the #includes were
61 accidentally replaced with "", which results in a failure in checkdeps.
62
63 Fixed in https://github.com/google/protobuf/pull/1547.
64
65 - 0007-uninline_googleonce.patch 58 - 0007-uninline_googleonce.patch
66 - 0008-uninline_get_empty_string.patch 59 - 0008-uninline_get_empty_string.patch
67 - 0009-uninline-arenastring.patch 60 - 0009-uninline-arenastring.patch
68 - 0010-uninline-generated-code.patch 61 - 0010-uninline-generated-code.patch
69 62
70 These patches uninline some functions, resulting in a significant reduction 63 These patches uninline some functions, resulting in a significant reduction
71 (somewhere between 500 KB and 1 MB) of binary size. 64 (somewhere between 500 KB and 1 MB) of binary size.
72
73 - 0011-libprotobuf_export.patch
74
75 During merge with internal branch, the dll export attribute was accidentally
76 removed in C++11 mode.
77
78 Fixed in https://github.com/google/protobuf/pull/1549
OLDNEW
« no previous file with comments | « third_party/protobuf/Protobuf.podspec ('k') | third_party/protobuf/README.md » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698