All ELDK related code can be found in a
git
repository at
git://git.denx.de/eldk.git
resp.
http://git.denx.de/eldk.git
.
ELDK releases closely follow the
Yocto releases, such that ELDK
release "x.y" corresponds to Yocto release "z.y", with "x" = "z + 4",
i. e.
ELDK v5.5.3
corresponds to
Yocto v1.5.3
.
In general, there are the following
branches in this repository:
- "master": This branch continuously tracks the Yocto mainline
repository, i. e. it follows
git://git.pokylinux.org/poky
- "x.y-backports": These branches contain backports from the
recent mainline Yocto branch, i. e. fixes or addition of
additional, new packages. The policy is to include here
important bug fixes (especially security related stuff) or other
significant features as demanded by our customers etc.
- "x.y-denx": These branches contain fixes and extensions added in
the context of work for the ELDK project, which are not directly
related to the ELDK distribution, so these are candidates for
pushing upstream (like GCC bugfix patches).
- "x.y-eldk": These branches contain the ELDK layer.
- "eldk-rel-vx.y": These branches are the result of octopus merges
of the respective "x.y-backports", "x.y-denx", and "x.y-eldk"
branches. These are the branches that are used for building the
ELDK.
That means the "eldk-rel-vx.y" branch is always used to actually
build the code, but any new commits get added to one of the "x.y-*"
branches and only then merged into the "eldk-rel-vx.y" branch.
Branches for ELDK release v5.5.x (x = 1, 2 or 3)
These releases are based on the
Yocto 1.5.x
(
"dora-10.0.x"
release tag).
- "5.5.x-backports"
- "5.5.x-denx"
- "5.5.x-eldk"
- "eldk-rel-v5.5" - Release branch.
The
ELDK V5.5.x releases are labeled as
"eldk-5.5.1" | commit id 32a7986 |
"eldk-5.5.2" | commit id b1642a5 |
"eldk-5.5.3" | commit id ba6000e |
Branches for ELDK release v5.5
This release is based on
Yocto 1.5.1
(
"dora-10.0.1"
release tag).
- "5.5-backports"
- "5.5-denx"
- "5.5-eldk"
- "eldk-rel-v5.5" - Release branch.
The
ELDK V5.5 release is labeled as
"eldk-5.5"
(commit id
df9de1f
).
Branches for ELDK release v5.4
This release is based on
Yocto 1.4.1
(
"dylan-9.0.1"
release tag).
- "5.4-backports"
- "5.4-denx"
- "5.4-eldk"
- "eldk-rel-v5.4" - Release branch.
The
ELDK V5.4 release is labeled as
"eldk-5.4"
(commit id
9a46fd5
).
Branches for ELDK release v5.3
This release is based on
Yocto 1.3
(
"danny-8.0"
release tag).
- "5.3-backports"
- "5.3-denx"
- "5.3-eldk"
- "eldk-rel-v5.3" - Release branch.
The
ELDK V5.3 release is labeled as
"eldk-5.3"
(commit id
c2836a8
).
Branches for ELDK release v5.2
This release is based on
Yocto 1.2
(
"denzil-7.0"
release tag).
- "5.2-backports"
- "5.2-denx"
- "5.2-eldk"
- "eldk-rel-v5.2" - Release branch.
The
ELDK V5.2 release is labeled as
"eldk-5.2"
(commit id
3dfe6e5
).
The
ELDK V5.2.1 release (which added support for Qt v4.8.2) is
labeled as
"eldk-5.2.1"
.
Branches for ELDK release v5.1
This release is based on
Yocto 1.1
(
"edison-6.0"
release tag).
- "5.1-backports"
- "5.1-denx"
- "5.1-eldk"
- "eldk-rel-v5.1" - Release branch.
The
ELDK V5.1 release is labeled as
"eldk-5.1"
.
The
ELDK V5.1.1 release (which added support for the new target
architectures
armv4t,
powerpc-4xx and
powerpc-4xx-softfloat) is
labeled as
"eldk-5.1.1"
.
The
ELDK V5.1.2 release (which added support for the new target
architecture
powerpc-e500v2) is labeled as
"eldk-5.1.2"
.
Note:
In preparation for ELDK release 5.2, the ELDK v5.1 code was
reorganized and cleaned up - related patches were squashed and
restructured as follows:
- Step 1:
- Squash commits into more logical groups like adding
the ELDK meta-layer, then adding the build and install tools,
then support for the separate target architectures, and finally
add support for board specific configurations.
Some commits were moved to the "backports" resp. "denx" branches
with the intention that the "eldk" branch should add and modify
data in the "meta-eldk/" directory only (some exceptions that
cannot be fixed without changing the code remain unfixed here).
Some missing files
("meta-eldk/tools/installer/targets/*/target.conf"
for armv4t, armv6, mips, powerpc-4xx, powerpc-4xx-softfloat and
powerpc-e500v2) were added, but otherwise the only difference of
the resulting code compared to the ELDK v5.1.2 release is the
sequence of patches in meta/recipes-devtools/gcc/gcc-4.6.inc .
Resulting branches:
- 5.1-backports-reorg
- 5.1-denx-reorg
- 5.1-eldk-reorg-1
- eldk-rel-v5.1-reorg-1 (= merge of '5.1-eldk-reorg-1',
'5.1-denx-reorg' and '5.1-backports-reorg')
- Step 2:
- The "eldk" branch still contains some references to
files in "meta/":
Commit 6cde70d meta/conf/machine/include/tune-ppce500v2.inc
Commit 46c655b meta/conf/machine/include/tune-ppc405.inc
Commit 108bd51 meta/conf/machine/include/tune-ppc440e.inc
We can avoid the changes to
meta/conf/machine/include/tune-ppce500v2.inc and move the other
files to "meta-eldk/".
Resulting branches:
- 5.1-backports-reorg (unchanged)
- 5.1-denx-reorg (unchanged)
- 5.1-eldk-reorg-2
- eldk-rel-v5.1-reorg-2 (= merge of '5.1-eldk-reorg-2',
'5.1-denx-reorg' and '5.1-backports-reorg')
Branches for ELDK release v5.0
This release is based on
Yocto 1.0
(
"bernard-5.0"
release tag).
- "5.0-backports"
- "5.0-denx"
- "5.0-eldk"
- "eldk-rel-v5.0" - Release branch.
The
ELDK V5.0 release is labeled as
"eldk-5.0"
.
Updating the Code for a New Release
Updating the code for a new release is done by rebasing the
branches of the previous ELDK version against the new Yocto
release.
For example, to move from ELDK v5.2 to v5.3, using the (then current)
Yocto "1.3_M5" milestone branch, one would run these commands:
-> git checkout -b 5.3-backports remotes/origin/5.2-backports
-> git rebase remotes/mainline/1.3_M5
-> git checkout -b 5.3-denx remotes/origin/5.2-denx
-> git rebase remotes/mainline/1.3_M5
-> git checkout -b 5.3-eldk remotes/origin/5.2-eldk
-> git rebase remotes/mainline/1.3_M5
-> git checkout -b eldk-rel-v5.3 remotes/mainline/1.3_M5
-> git pull . 5.3-backports 5.3-denx 5.3-eldk