blob: d41700d210f426b7cf06ed0c3d5fa033a8e9325d [file] [log] [blame] [view]
Skyler Kaufman44436912011-04-07 15:11:52 -07001<!--
2 Copyright 2010 The Android Open Source Project
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15-->
16
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070017# Codenames, Tags, and Build Numbers #
18
19At a high level, Android development happens around families of
20releases, which use code names ordered alphabetically after tasty
21treats.
22
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070023## Platform code names, versions, API levels, and NDK releases ##
24
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070025The code names match the following version numbers, along with
26API levels and NDK releases provided for convenience:
27
Jean-Baptiste Queru9d600e62012-01-05 08:12:09 -080028Code name | Version | API level
29-----------------|---------------|--------------------
30(no code name) | 1.0 | API level 1
31(no code name) | 1.1 | API level 2
32Cupcake | 1.5 | API level 3, NDK 1
33Donut | 1.6 | API level 4, NDK 2
34Eclair | 2.0 | API level 5
35Eclair | 2.0.1 | API level 6
36Eclair | 2.1 | API level 7, NDK 3
37Froyo | 2.2.x | API level 8, NDK 4
38Gingerbread | 2.3 - 2.3.2 | API level 9, NDK 5
39Gingerbread | 2.3.3 - 2.3.7 | API level 10
40Honeycomb | 3.0 | API level 11
41Honeycomb | 3.1 | API level 12, NDK 6
42Honeycomb | 3.2.x | API level 13
Jean-Baptiste Queruc10820f2012-07-17 13:33:48 -070043Ice Cream Sandwich | 4.0.1 - 4.0.2 | API level 14, NDK 7
44Ice Cream Sandwich | 4.0.3 - 4.0.4 | API level 15, NDK 8
45Jelly Bean | 4.1.x | API level 16
Jean-Baptiste Queru5955ba52012-11-09 10:59:40 -080046Jelly Bean | 4.2 | API level 17
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070047
48Starting with Cupcake, individual builds are identified with a short
Jean-Baptiste Querue3dc1ac2011-06-23 13:29:03 -070049build code, e.g. FRF85B.
50
51The first letter is the code name of the release family, e.g. F is
52Froyo.
53
54The second letter is a branch code that allows Google to identify
55the exact code branch that the build was made from, and R is by
56convention the primary release branch.
57
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070058The next letter and two digits are a date code. The letter counts
59quarters, with A being Q1 2009. Therefore, F is Q2 2010. The two
60digits count days within the quarter, so F85 is June 24 2010.
Jean-Baptiste Querue3dc1ac2011-06-23 13:29:03 -070061
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070062Finally, the last letter identifies individual versions related to
63the same date code, sequentially starting with A; A is actually
Jean-Baptiste Querue3dc1ac2011-06-23 13:29:03 -070064implicit and usually omitted for brevity.
65
66The date code is not guaranteed to be the exact date at which a build
67was made, and it is common that minor variations added to an existing
68build re-use the same date code as that existing build.
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070069
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070070## Source code tags and builds ##
71
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070072Starting with Donut, the exact list of tags and builds is in the
73following table:
74
75Build | Tag | Notes
76-------|--------------------|-----------------------------------
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -070077DRC83 | android-1.6_r1.1 | earliest Donut version, ADP1, ADP2
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070078DRC92 | android-1.6_r1.2
79DRD08 | android-1.6_r1.3
80DRD20 | android-1.6_r1.4
81DMD64 | android-1.6_r1.5 | latest Donut version
82ESD20 | android-2.0_r1 | earliest Eclair version
83ESD56 | android-2.0.1_r1
84ERD79 | android-2.1_r1 | Nexus One
85ERE27 | android-2.1_r2 | Nexus One
86EPE54B | android-2.1_r2.1p | Nexus One
87ESE81 | android-2.1_r2.1s
88EPF21B | android-2.1_r2.1p2 | latest Eclair version
89FRF85B | android-2.2_r1 | earliest Froyo version, Nexus One
90FRF91 | android-2.2_r1.1 | Nexus One
91FRG01B | android-2.2_r1.2
92FRG22D | android-2.2_r1.3
93FRG83 | android-2.2.1_r1 | Nexus One
94FRG83D | android-2.2.1_r2 | Nexus One
Jean-Baptiste Queruaeac48d2011-10-06 14:16:39 -070095FRG83G | android-2.2.2_r1 | Nexus One
96FRK76 | android-2.2.3_r1
97FRK76C | android-2.2.3_r2 | latest Froyo version
Skyler Kaufman991ae4d2011-04-07 12:30:41 -070098GRH55 | android-2.3_r1 | earliest Gingerbread version, Nexus S
99GRH78 | android-2.3.1_r1 | Nexus S
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -0700100GRH78C | android-2.3.2_r1 | Nexus S
Jean-Baptiste Queru3a49c682011-05-09 09:29:18 -0700101GRI40 | android-2.3.3_r1 | Nexus One, Nexus S
Jean-Baptiste Queru1a6c0f02011-05-11 08:51:17 -0700102GRI54 | android-2.3.3_r1.1 | Nexus S
103GRJ06D | android-2.3.4_r0.9 | Nexus S 4G
Jean-Baptiste Queru24d21302011-07-26 10:52:50 -0700104GRJ22 | android-2.3.4_r1 | Nexus One, Nexus S, Nexus S 4G
Jean-Baptiste Querucac01c12011-09-28 17:26:00 -0700105GRJ90 | android-2.3.5_r1 | Nexus S 4G
Jean-Baptiste Querube48f612011-10-06 14:20:51 -0700106GRK39C | android-2.3.6_r0.9 | Nexus S
107GRK39F | android-2.3.6_r1 | Nexus One, Nexus S
108GWK74 | android-2.3.7_r1 | latest Gingerbread version, Nexus S 4G
Jean-Baptiste Queruc10820f2012-07-17 13:33:48 -0700109ITL41D | android-4.0.1_r1 | earliest Ice Cream Sandwich version, Galaxy Nexus
Jean-Baptiste Queru61142cb2011-12-20 09:05:45 -0800110ITL41D | android-4.0.1_r1.1 | Galaxy Nexus
Jean-Baptiste Queru35f51012011-12-14 09:32:22 -0800111ITL41F | android-4.0.1_r1.2 | Galaxy Nexus
Jean-Baptiste Queru61142cb2011-12-20 09:05:45 -0800112ICL53F | android-4.0.2_r1 | Galaxy Nexus
Jean-Baptiste Querucb81c792012-01-05 09:51:16 -0800113IML74K | android-4.0.3_r1 | Nexus S
Jean-Baptiste Queruc6dd1022012-10-04 14:00:14 -0700114IML77 | android-4.0.3_r1.1
115IMM76 | android-4.0.4_r1
Jean-Baptiste Queru2fc05a02012-04-25 19:07:40 -0700116IMM76D | android-4.0.4_r1.1 | Nexus S, Nexus S 4G, Galaxy Nexus
Jean-Baptiste Querude841e22012-06-06 15:25:12 -0700117IMM76I | android-4.0.4_r1.2 | Galaxy Nexus
118IMM76K | android-4.0.4_r2 | Galaxy Nexus
Jean-Baptiste Queruc10820f2012-07-17 13:33:48 -0700119IMM76L | android-4.0.4_r2.1 | latest Ice Cream Sandwich version
120JRO03C | android-4.1.1_r1 | earliest Jelly Bean version, Galaxy Nexus
121JRO03D | android-4.1.1_r1.1 | Nexus 7
122JRO03E | android-4.1.1_r2 | Nexus S
Jean-Baptiste Queruc6dd1022012-10-04 14:00:14 -0700123JRO03H | android-4.1.1_r3
124JRO03L | android-4.1.1_r4 | Nexus S
125JRO03O | android-4.1.1_r5 | Galaxy Nexus
126JRO03R | android-4.1.1_r6 | Nexus S 4G
Jean-Baptiste Queru794f4822012-10-15 10:42:14 -0700127JRO03S | android-4.1.1_r6.1 | Nexus 7
Jean-Baptiste Queru5955ba52012-11-09 10:59:40 -0800128JZO54K | android-4.1.2_r1 | Nexus S, Galaxy Nexus, Nexus 7
Jean-Baptiste Queru71753982012-11-12 17:34:24 -0800129JOP40C | android-4.2_r1 | latest Jelly Bean version, Galaxy Nexus, Nexus 7, Nexys 4, Nexus 10
Skyler Kaufman991ae4d2011-04-07 12:30:41 -0700130
Jean-Baptiste Queruc10820f2012-07-17 13:33:48 -0700131The branches froyo, gingerbread, ics-mr0, ics-mr1, jb-dev,
Jean-Baptiste Queru5955ba52012-11-09 10:59:40 -0800132jb-mr1-dev,
Jean-Baptiste Queruc10820f2012-07-17 13:33:48 -0700133represent development
Skyler Kaufman991ae4d2011-04-07 12:30:41 -0700134branches that do not exactly match configurations that were tested
135by Google. They might contain a variety of changes in addition to
136the official tagged releases, and those haven't been as thoroughly
137tested.
138
Jean-Baptiste Querub4d39b42011-04-11 13:53:58 -0700139## Honeycomb GPL modules ##
140
141For Honeycomb, the entire platform source code isn't available.
142However, the parts of Honeycomb licensed under the GPL and LGPL
143are available under the following tags:
144
145Build | Tag | Notes
146-------|--------------------|-----------------------------------
Jean-Baptiste Queru3a49c682011-05-09 09:29:18 -0700147HRI39 | android-3.0_r1 | earliest Honeycomb version
148HRI66 | android-3.0_r1.1
149HWI69 | android-3.0_r1.2
150HRI93 | android-3.0_r1.3
Jean-Baptiste Queruc1f92662011-07-20 12:37:14 -0700151HMJ37 | android-3.1_r1
Jean-Baptiste Querucac01c12011-09-28 17:26:00 -0700152HTJ85B | android-3.2_r1
Jean-Baptiste Querube48f612011-10-06 14:20:51 -0700153HTK55D | android-3.2.1_r1
154HTK75D | android-3.2.1_r2
155HLK75C | android-3.2.2_r1
Jean-Baptiste Queru80fe8392011-12-02 15:21:31 -0800156HLK75D | android-3.2.2_r2
Jean-Baptiste Queru2a179c32012-04-16 14:02:32 -0700157HLK75F | android-3.2.4_r1
158HLK75H | android-3.2.6_r1 | latest Honeycomb version
Jean-Baptiste Queru3b70aac2011-06-23 13:29:24 -0700159
160There is no manifest that contains exactly those. However, there
161are manifests that allow building those components. The following
162commands work for 3.0_r1.1, and using other versions can be done by
Jean-Baptiste Querube48f612011-10-06 14:20:51 -0700163switching the git checkout paramater, and if necessary the -m parameter in
164repo init. The git checkout command outputs an error for the non-GPL
165projects, where it can't find the tag in question.
Jean-Baptiste Queru3b70aac2011-06-23 13:29:24 -0700166
Jean-Baptiste Querube48f612011-10-06 14:20:51 -0700167 $ repo init -b master -m base-for-3.0-gpl.xml
Jean-Baptiste Queru3b70aac2011-06-23 13:29:24 -0700168 $ repo sync
169 $ repo forall -c git checkout android-3.0_r1.1