README.android
1 Bouncy Castle on the Android platform.
2 ---
3
4 The code in this directory is based on $BOUNCYCASTLE_VERSION in the
5 file bouncycastle.version. See the in-file change markers for more information
6 on how the code differs from $BOUNCYCASTLE_VERSION.
7
8 Porting New Versions of Bouncy Castle.
9 --
10
11 The following steps are recommended for porting new Bouncy Castle versions.
12
13 1) Retrieve the appropriate version of the Bouncy Castle source from
14 www.bouncycastle.org/latest_releases.html (both bcprov-jdk*-*.tar.gz
15 and bcpkix-jdk*-*.tar.gz files).
16
17 Check the checksum (found at http://bouncycastle.org/checksums.html) with:
18
19 md5sum bcprov-jdk*-*.tar.gz
20 sha1sum bcprov-jdk*-*.tar.gz
21 md5sum bcpkix-jdk*-*.tar.gz
22 sha1sum bcpkix-jdk*-*.tar.gz
23
24 2) Submit the code to the upstream-master branch:
25
26 a) Create a new branch tracking upstream-master
27
28 git checkout -b upgrade-to-xxx --track aosp/upstream-master
29
30 b) Update the variables in bouncycastle.version.
31
32 c) Expand the source from the .tar.gz files
33
34 d) Replace bc{prov,pkix}/src/main/java/org with the equivalent source
35 directory
36
37 e) Ensure any new files are added
38
39 git add bc{prov,pkix}
40
41 f) Commit the change
42
43 git commit -a -m 'bouncycastle: Android tree with upstream code for version X.XX'
44
45 g) Get the change reviewed
46
47 repo upload . -D upstream-master
48
49 3) Merge the code into the master branch
50
51 a) Create a new branch
52
53 repo start merge-xxx
54
55 b) Merge the changes in
56
57 git fetch aosp upstream-master
58 git merge aosp/upstream-master
59
60 c) Resolve any conflicts. Some common cases:
61
62 * If upstream changed a file that's deleted locally, we probably don't
63 need it
64 * If upstream added a file to a directory we deleted, we probably don't
65 need it
66
67 d) Confirm all changes
68
69 git diff aosp/master
70
71 e) Run the tests, commonly at least
72
73 cts -m CtsLibcoreTestCases
74 cts -m CtsLibcoreFileIOTestCases
75 cts -m CtsLibcoreJsr166TestCases
76 cts -m CtsLibcoreOjTestCases
77 cts -m CtsLibcoreOkHttpTestCases
78 cts -m CtsLibcoreWycheproofBCTestCases
79
80 e) Get the change reviewed
81
82 repo upload .
83