83 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			83 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
Bouncy Castle on the Android platform.
 | 
						|
---
 | 
						|
 | 
						|
The code in this directory is based on $BOUNCYCASTLE_VERSION in the
 | 
						|
file bouncycastle.version. See the in-file change markers for more information
 | 
						|
on how the code differs from $BOUNCYCASTLE_VERSION.
 | 
						|
 | 
						|
Porting New Versions of Bouncy Castle.
 | 
						|
--
 | 
						|
 | 
						|
The following steps are recommended for porting new Bouncy Castle versions.
 | 
						|
 | 
						|
1) Retrieve the appropriate version of the Bouncy Castle source from
 | 
						|
   www.bouncycastle.org/latest_releases.html (both bcprov-jdk*-*.tar.gz
 | 
						|
   and bcpkix-jdk*-*.tar.gz files).
 | 
						|
 | 
						|
   Check the checksum (found at http://bouncycastle.org/checksums.html) with:
 | 
						|
 | 
						|
     md5sum bcprov-jdk*-*.tar.gz
 | 
						|
     sha1sum bcprov-jdk*-*.tar.gz
 | 
						|
     md5sum bcpkix-jdk*-*.tar.gz
 | 
						|
     sha1sum bcpkix-jdk*-*.tar.gz
 | 
						|
 | 
						|
2) Submit the code to the upstream-master branch:
 | 
						|
 | 
						|
  a) Create a new branch tracking upstream-master
 | 
						|
 | 
						|
      git checkout -b upgrade-to-xxx --track aosp/upstream-master
 | 
						|
 | 
						|
  b) Update the variables in bouncycastle.version.
 | 
						|
 | 
						|
  c) Expand the source from the .tar.gz files
 | 
						|
 | 
						|
  d) Replace bc{prov,pkix}/src/main/java/org with the equivalent source
 | 
						|
     directory
 | 
						|
 | 
						|
  e) Ensure any new files are added
 | 
						|
 | 
						|
      git add bc{prov,pkix}
 | 
						|
 | 
						|
  f) Commit the change
 | 
						|
 | 
						|
      git commit -a -m 'bouncycastle: Android tree with upstream code for version X.XX'
 | 
						|
 | 
						|
  g) Get the change reviewed
 | 
						|
 | 
						|
      repo upload . -D upstream-master
 | 
						|
 | 
						|
3) Merge the code into the master branch
 | 
						|
 | 
						|
  a) Create a new branch
 | 
						|
 | 
						|
      repo start merge-xxx
 | 
						|
 | 
						|
  b) Merge the changes in
 | 
						|
 | 
						|
      git fetch aosp upstream-master
 | 
						|
      git merge aosp/upstream-master
 | 
						|
 | 
						|
  c) Resolve any conflicts.  Some common cases:
 | 
						|
 | 
						|
     * If upstream changed a file that's deleted locally, we probably don't
 | 
						|
       need it
 | 
						|
     * If upstream added a file to a directory we deleted, we probably don't
 | 
						|
       need it
 | 
						|
 | 
						|
  d) Confirm all changes
 | 
						|
 | 
						|
      git diff aosp/master
 | 
						|
 | 
						|
  e) Run the tests, commonly at least
 | 
						|
 | 
						|
      cts -m CtsLibcoreTestCases
 | 
						|
      cts -m CtsLibcoreFileIOTestCases
 | 
						|
      cts -m CtsLibcoreJsr166TestCases
 | 
						|
      cts -m CtsLibcoreOjTestCases
 | 
						|
      cts -m CtsLibcoreOkHttpTestCases
 | 
						|
      cts -m CtsLibcoreWycheproofBCTestCases
 | 
						|
 | 
						|
  e) Get the change reviewed
 | 
						|
 | 
						|
      repo upload .
 |