37 Commits

Author SHA1 Message Date
Thilo Graf
5e68f8ae32 update poky 3.2.2 -> 3.2.4 gatesgarth 2021-05-30 19:45:23 +02:00
Thilo Graf
e7dfb1bad8 Update README.md 2021-05-27 12:58:21 +02:00
Thilo Graf
d84ba263a0 Update README.md 2021-05-27 12:55:38 +02:00
Thilo Graf
6ff644d8a5 Update README.md 2021-05-27 12:33:26 +02:00
Thilo Graf
2a8d426461 Update README.md 2021-05-27 12:08:46 +02:00
Thilo Graf
cd5b0f29ff Update README.md 2021-05-27 11:55:40 +02:00
Thilo Graf
078cd35de1 Update README.md 2021-05-27 11:53:38 +02:00
Thilo Graf
4264e706f7 Update README.md 2021-05-27 11:31:12 +02:00
Thilo Graf
7de2d09c94 Update README.md 2021-05-27 10:31:47 +02:00
Thilo Graf
fe0fc188cf Update README.md 2021-05-27 10:23:38 +02:00
Thilo Graf
8282272189 Update README.md 2021-05-27 10:18:55 +02:00
Thilo Graf
acc4c14a11 Update README.md 2021-05-27 10:11:09 +02:00
Thilo Graf
97f20986cb Update README.md 2021-05-26 09:08:19 +02:00
Thilo Graf
4ce9986d03 Update README.md 2021-05-26 07:05:01 +02:00
Thilo Graf
803697a20c Update README.md 2021-05-25 12:28:01 +02:00
Thilo Graf
eeec3fae0c Update README.md 2021-05-25 11:48:17 +02:00
Thilo Graf
bd83cbb8c1 Update README.md 2021-05-25 11:43:49 +02:00
Thilo Graf
409a9cc2e0 Update README.md 2021-05-12 12:56:54 +02:00
Thilo Graf
6e9868d181 Update README.md 2021-05-12 12:47:14 +02:00
Thilo Graf
ca0fe8f903 Update README.md 2021-05-02 12:53:03 +02:00
Thilo Graf
4eed1f45bf init.sh: add sample for EXTRA_IMAGEDEPENDS 2021-05-02 12:43:39 +02:00
Thilo Graf
adf32c85ae init.sh: add missing call for meta-qt5 update 2021-04-27 17:35:01 +02:00
Thilo Graf
09538c7a69 init: allow update to defined yocto release
Update via ./init.sh will now clone and update to defined and testet
yocto release.
A general update is disabled with variable $YOCTO_LAYER_DO_UPDATE=0
Reason: yocto recomends not to modify any parts of the yocto repositories. becaus all
Local changes can be done in your local layers e.g. with bbappend files.
see also: https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#using-bbappend-files

Another point is, the defined relase version is tested and should working
with our build.
2021-04-22 11:24:43 +02:00
Thilo Graf
eacce3ecf2 Update README.md 2021-04-14 12:27:02 +02:00
Thilo Graf
be25daedbc init: avoid update to untested upstream branch
update of yocto layer is disabled on executing init script, for yocto oe it's better to use a tested tag, defined with $YOCTO_BRANCH_HASH
2021-04-13 12:40:12 +02:00
Thilo Graf
315975d540 update local.conf.common.inc.sample 2021-04-12 15:36:09 +02:00
Thilo Graf
88d708c4fe update .gitignore 2021-04-05 16:37:28 +02:00
Thilo Graf
82a5d7a1b4 increment: use inrement file only as sample file 2021-04-05 16:34:48 +02:00
Thilo Graf
1582a34f8b init.sh: add meta-qt5 2021-04-05 16:30:23 +02:00
Thilo Graf
5c3b8c35c8 local.conf.common.inc.sample: add sample lines for local build increment 2021-03-30 11:25:35 +02:00
Thilo Graf
5841847489 Update local.conf.common.inc.sample 2021-03-23 17:47:45 +01:00
Thilo Graf
85370e135d Update README.md 2021-01-26 11:35:46 +01:00
Thilo Graf
b9718c4352 Update README.md 2021-01-13 19:31:06 +01:00
Thilo Graf
acd579ae31 update README.md 2021-01-04 22:31:42 +01:00
Thilo Graf
ab35dab3e2 local.conf.common.inc.sample: use yocto download directory as default 2021-01-04 19:28:41 +01:00
Thilo Graf
2258e9a89a local.conf.common.inc.sample: fix source mirror url
Entry was without effect. Many urls seems to be broken.
Watched with command:
bitbake  --runall="fetch" neutrino-image
2021-01-04 19:28:41 +01:00
Thilo Graf
5c67c090ea Update README.md
update clone url
2020-12-29 20:07:38 +01:00
5 changed files with 184 additions and 78 deletions

2
.gitignore vendored
View File

@@ -11,4 +11,6 @@ dist/*
build*
*.orig
*.log
local build increment
*.list

View File

@@ -1,64 +1,56 @@
# Quick start image build #
## Preparation
NOTE: If you are using the Tuxbox-Builder VM please jump to step 1. The Tuxbox-Builder VM already contains required packages.
For details and download of Tuxbox-Builder VM see: https://sourceforge.net/projects/n4k/files/Tuxbox-Builder
NOTE: If you are using the Tuxbox-Builder VM (this is not mandatory) please jump to [step 1](#1-clone-init-script-into-a-directory-of-your-choice). The Tuxbox-Builder VM already contains required packages.
For details and download of Tuxbox-Builder VM see: [Tuxbox-Builder](https://sourceforge.net/projects/n4k/files/Tuxbox-Builder)
### Install required packages (Debian 9/10)
```bash
apt-get install -y gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat cpio python python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa pylint3 xterm subversion locales-all libxml2-utils ninja-build default-jre clisp
```
Also required is sdl.
```bash
apt-get install -y libsdl1.2-dev
```
For newer image versions with dunfell (3.1) or later use libsdl2-dev instead libsdl1.2-dev
```bash
apt-get install -y libsdl2-dev
apt-get install -y gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential \
chrpath socat cpio python python3 python3-pip python3-pexpect xz-utils debianutils \
iputils-ping python3-git python3-jinja2 libegl1-mesa pylint3 xterm subversion locales-all \
libxml2-utils ninja-build default-jre clisp libcapstone3 libsdl2-dev
```
NOTE: Older buildsystem versions < 3.2 need libsdl1.2-dev
### Recommended additional packages:
### Recommended additional packages for graphical support (e.g. KDE ...):
```bash
apt-get install -y gitk git-gui meld
```
NOTE: In case of no configured git, please set your global git user data:
### Optional: In case of no configured git, please set your global git user data:
```bash
git config --global user.email "you@example.com"
git config --global user.user "Your Name"
```
For usage with other distributions see:
For usage with other distributions see: [Yocto Project Quick Build](https://www.yoctoproject.org/docs/latest/brief-yoctoprojectqs/brief-yoctoprojectqs.html)
https://www.yoctoproject.org/docs/3.0.3/brief-yoctoprojectqs/brief-yoctoprojectqs.html
### let's start:
## 1. Clone init script into a directory of your choice
```bash
$:~ git clone https://github.com/Tuxbox-Project/build.git
```
## 2. Change to the generated directory
```bash
$:~ git clone https://github.com/tuxbox-neutrino/build.git
$:~ cd build
```
## 3. Execute init script
This will clone all required layers and moves some config files into your build directory.
* Parameter 1: Machine type can be h7, hd51, hd60, hd61, osmio4k, osmio4kplus or set 'all' or keep empty '' for all machines.
* Parameter 2: Image version can be 3.0, 3.1, 3.2 or keep empty for latest version (recommended, because of older versions are not really maintained anymore)
## 2. Execute init script
This will clone all required layers and create some config files into your build directories.
* Parameter 1 <machine>: could be h7, hd51, hd60, hd61, osmio4k, osmio4kplus or set 'all' or keep empty ' ' for all machines.
* Parameter 2 <image-version>: could be 3.0, 3.1, 3.2 or keep empty for latest version (recommended, older versions are not really maintained anymore)
```bash
$:~ ./init.sh <machine> <image-version>
$:~ cd poky-<image-version>
```
## 4. Switch to poky directory
After sccessfull executed init script you will find a subdirectory like poky-3.x .
Now switch to this directory e.g.:
example:
```bash
$:~ ./init.sh hd51 3.2
$:~ cd poky-3.2
```
## 5. Execute environment script
Please use possible machine type which you selected (see step 3)! Here as example we use hd51.
This creates (if not exists!) the build directory named as hd51 (default name ist build) and sets the build environment.
## 3. Execute environment script
Please use possible machine type which you selected (see [step 2](#2-execute-init-script))! Here as example we use hd51.
This creates (if not exists!) the build directory named as hd51, sets the build environment and will print some lines:
```bash
$:~ . ./oe-init-build-env hd51
@@ -79,16 +71,16 @@ Other commonly useful commands are:
- 'bitbake-layers' handles common layer tasks
- 'oe-pkgdata-util' handles common target package tasks
tuxbox@tuxbox-builder:~/Build/poky-3.0/hd51
$ . ./oe-init-build-env hd51
$
```
NOTE: If you left the build directory you must retry step 5 for your machine type to recreate the required environment.
**NOTE:** If you left the current shell you must retry [step 3](#3-execute-environment-script) for your machine type to recreate the required environment.
## 6. Build image
After step 5 you are ready to build an image.
## 4. Build image
Now you are ready to build an image.
```bash
$:~ /build/poky-3.0/<machine>$ bitbake neutrino-image
$:~ /build/poky-3.2/<machine>$ bitbake neutrino-image
```
This may take a while. Some warn messages can be ignored and error messages during setscene tasks are no problem but errors during build and package tasks will abort the process. In this case please report or send us your solution to https://forum.tuxbox-neutrino.org/forum/viewforum.php?f=77. Help is very welcome.
This may take a while. Some warn messages can be ignored. Error messages during setscene tasks are no problem but errors during build and package tasks will abort the process. In this case please report or send us your solution to [Tuxbox-Forum](https://forum.tuxbox-neutrino.org/forum/viewforum.php?f=77). Help is very welcome.
If all done, such a message should appear:
```bash
@@ -107,14 +99,23 @@ or in the dist directory:
~/build/dist/<image-version/<machine>/
```
## Update the meta layer repositories
Execution of init script will update the meta layers. Of corse you can update your meta-layer repositories manually.
## Updating
Note: Your config files will be untouched. New or adapted config options are not considered. Please check your configuration if required.
### Update target sources
An explicit update for any sources (e.g. neutrino) is not required. This will be done automatically on evrery called target with bitbake. This will also update required dependencies. See also "[Working on target sources](#working-on-target-sources)"!
### Update meta layer repositories
Execution of init script will update the yocto poky-x.x repository to the required yocto release and will updating the included local meta layers to current
state of remote repositories. Of corse you can update and modiify your local meta-layer for meta-neutrino and machine layers repositories manually. The update routines will stash uncommitted changes or will rebase your local commits to new remote changes, but conflicts are possible. In this case you must solve manually.
## Reset configuration
If you want to reset your configs, please rename (delete is not recommended) the conf directory and execute the init script again.
**Note: Your config files will be untouched. New or adapted config options are not considered. Please check your configuration if required.**
## Working on target sources
In this case you should transfer the desiered target source into the workspace repository.
if You have moved any target source into the workspace tree you have full control to source code you want to modify. See also [devtool](https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#using-devtool-in-your-sdk-workflow) and especially [devtool modify](https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#sdk-devtool-use-devtool-modify-to-modify-the-source-of-an-existing-component).
## Reset configuration if required
If you want to reset your configs, please rename (delete is not recommended) the conf directory ($HOME/build/poky-X.X/<machine>/conf) and execute the init script again.
## Customize if required
@@ -122,7 +123,9 @@ It's recommended to build for first time without any changes on config files to
The possibilities for adjustments are very extensive and not really manageable for beginners. However, the Yoctoproject is very
extensively documented and provides the best source of information.
The generated local.conf contains only a few lines but contains a line which is linking a common config file and is valid for all images and supported machine types. The origin cloned sample config file ("local.conf.common.inc.sample") should be untouched. This avoids possible conflicts during updating the init script from git repo. After executed init script (step 3), the config sample file was renamed from "local.conf.common.inc.sample" to "local.conf.common.inc" and this file you can feed with your own options which have effect for all images you want to build.
**Please do not modify the Yocto-sources! This is not recommended by the Yocto-Team, but you can use [.bbappend](https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#using-bbappend-files) files to complete, expand or override meta core Yocto recipes.**
The generated local.conf contains only a few lines but contains a line which is linking a common config file and is valid for all images and supported machine types. The origin cloned sample config file ("local.conf.common.inc.sample") should be untouched. This avoids possible conflicts during updating the init script from git repo. After executed init script (step 2), the config sample file was renamed from "local.conf.common.inc.sample" to "local.conf.common.inc" and this file you can feed with your own options which have effect for all images you want to build.
Alternatively you can modify the default "$HOME/Build/poky-X.X/<machine>/conf/local.conf" with your own requirements or include your own config file. After updated init script, some new or changed options could be added or removed. This case you should consider for your own configuration.
For local configuration these config files within your build directory are required:

View File

@@ -0,0 +1 @@
0

128
init.sh
View File

@@ -92,12 +92,19 @@ GUI_LAYER_NAME=meta-neutrino
BACKUP_SUFFIX=bak
YOCTO_GIT_URL=https://git.yoctoproject.org/git/poky
# update of yocto layer is disabled on executing init script, for yocto oe it's better to use a tested tag, defined with $YOCTO_BRANCH_HASH
YOCTO_LAYER_DO_UPDATE=0
TUXBOX_LAYER_GIT_URL=https://github.com/neutrino-hd
PYTHON2_LAYER_NAME=meta-python2
PYTHON2_LAYER_GIT_URL=https://git.openembedded.org
PYTHON2_LAYER_DO_UPDATE=1
QT5_LAYER_NAME=meta-qt5
QT5_LAYER_GIT_URL=https://github.com/meta-qt5
QT5_LAYER_DO_UPDATE=1
GIT_CLONE='git clone'
GIT_PULL='git pull -r'
GIT_STASH='git stash'
@@ -114,39 +121,65 @@ elif [ "$IMAGE_VERSION" = "3.1" ]; then
YOCTO_BRANCH_HASH=2181825
elif [ "$IMAGE_VERSION" = "3.2" ]; then
YOCTO_BRANCH_NAME=gatesgarth
YOCTO_BRANCH_HASH=4e4a302
PYTHON2_BRANCH_HASH=27d2aeb
YOCTO_BRANCH_HASH=60c8482
fi
PYTHON2_BRANCH_HASH=27d2aeb
# clone required branch from yocto
if test ! -d $BUILD_ROOT_DIR/.git; then
echo -e "\033[36;1mCLONE POKY:\033[0m\nclone branch $YOCTO_BRANCH_NAME from $YOCTO_GIT_URL into $BUILD_ROOT_DIR..."
echo -e "\033[36;1mCLONE POKY:\033[0m clone branch $YOCTO_BRANCH_NAME from $YOCTO_GIT_URL into $BUILD_ROOT_DIR..."
do_exec "$GIT_CLONE -b $YOCTO_BRANCH_NAME $YOCTO_GIT_URL $POKY_NAME" ' ' 'show_output'
do_exec "cd $BUILD_ROOT_DIR"
do_exec "git checkout $YOCTO_BRANCH_HASH -b $IMAGE_VERSION"
do_exec "git tag $IMAGE_VERSION"
do_exec "$GIT_PULL origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
echo -e "set $POKY_NAME-repository to required yocto-release $IMAGE_VERSION at commit $YOCTO_BRANCH_HASH..."
do_exec "git -C $BUILD_ROOT_DIR reset --hard $YOCTO_BRANCH_HASH"
echo -e "create local branch $IMAGE_VERSION at commit $YOCTO_BRANCH_HASH..."
do_exec "git -C $BUILD_ROOT_DIR checkout $YOCTO_BRANCH_HASH -b $IMAGE_VERSION"
echo -e "create local tag $IMAGE_VERSION..."
do_exec "git -C $BUILD_ROOT_DIR tag $IMAGE_VERSION"
# if [ $YOCTO_LAYER_DO_UPDATE != 0 ]; then
# do_exec "git pull -C $BUILD_ROOT_DIR origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
# fi
echo -e "\033[36;1mdone ...\033[0m\n"
else
do_exec "cd $BUILD_ROOT_DIR"
CURRENT_YOCTO_BRANCH=`git -C $BUILD_ROOT_DIR rev-parse --abbrev-ref HEAD`
if [ $YOCTO_LAYER_DO_UPDATE != 0 ]; then
echo -e "\033[36;1mUPDATE poky:\033[0m\nupdate $CURRENT_YOCTO_BRANCH..."
CURRENT_YOCTO_BRANCH=`git -C $BUILD_ROOT_DIR rev-parse --abbrev-ref HEAD`
echo -e "\033[37;1mCHECKOUT:\033[0m\nswitch from $CURRENT_YOCTO_BRANCH to $IMAGE_VERSION..."
do_exec "git checkout $IMAGE_VERSION"
echo -e "\033[36;1mUPDATE poky:\033[0m\nupdate $CURRENT_YOCTO_BRANCH..."
echo -e "\033[37;1mUPDATE:\033[0m\nupdate $POKY_NAME from (branch $YOCTO_BRANCH_NAME) $YOCTO_GIT_URL ..."
do_exec "$GIT_PULL origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
echo -e "switch from $CURRENT_YOCTO_BRANCH to $IMAGE_VERSION..."
do_exec "git -C $BUILD_ROOT_DIR checkout $IMAGE_VERSION" ' ' 'show_output'
echo -e "\033[37;1mCHECKOUT:\033[0m\nswitch back to $YOCTO_BRANCH_NAME ..."
do_exec "git checkout $YOCTO_BRANCH_NAME"
do_exec "$GIT_PULL origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
echo -e "update $POKY_NAME from (branch $YOCTO_BRANCH_NAME) $YOCTO_GIT_URL ..."
do_exec "git pull -r -C $BUILD_ROOT_DIR origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
echo -e "\033[37;1mCHECKOUT:\033[0m\nswitch back to $IMAGE_VERSION ..."
do_exec "git checkout $IMAGE_VERSION"
echo -e "switch back to $YOCTO_BRANCH_NAME ..."
do_exec "git -C $BUILD_ROOT_DIR checkout $YOCTO_BRANCH_NAME" ' ' 'show_output'
do_exec "git pull -r -C $BUILD_ROOT_DIR origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
echo -e "\033[36;1mdone ...\033[0m\n"
echo -e "switch back to $IMAGE_VERSION ..."
do_exec "git -C $BUILD_ROOT_DIR checkout $IMAGE_VERSION" ' ' 'show_output'
echo -e "\033[36;1mdone ...\033[0m\n"
else
YOCTO_BRANCH_HASH_CURRENT=`git -C $BUILD_ROOT_DIR rev-parse --verify HEAD | awk '{print substr($0, 0,7)}'`
HAS_CHANGES=0
if [[ "$YOCTO_BRANCH_HASH_CURRENT" != "$YOCTO_BRANCH_HASH" ]]; then
HAS_CHANGES=1
LOCAL_YOCTO_BRANCH=$IMAGE_VERSION.mod.$YOCTO_BRANCH_HASH_CURRENT
echo -e "\033[36;1mupdate yocto: found local changes, create branch $LOCAL_YOCTO_BRANCH\033[0m\n"
do_exec "git -C $BUILD_ROOT_DIR checkout $YOCTO_BRANCH_HASH_CURRENT -b $LOCAL_YOCTO_BRANCH"
echo -e "\033[36;1mswitch to required branch $YOCTO_BRANCH_NAME at $YOCTO_BRANCH_HASH\033[0m\n"
do_exec "git -C $BUILD_ROOT_DIR checkout $IMAGE_VERSION"
fi
if [ $HAS_CHANGES=0 ]; then
echo -e "\033[36;1mkeeping $YOCTO_BRANCH_NAME at $YOCTO_BRANCH_HASH\033[0m\n"
do_exec "git -C $BUILD_ROOT_DIR reset --hard $YOCTO_BRANCH_HASH"
fi
fi
fi
@@ -167,7 +200,7 @@ else
do_exec "git checkout $YOCTO_BRANCH_NAME"
fi
#echo -e "\033[37;1mUPDATE:\033[0m\nupdate $GUI_LAYER_NAME from (branch $YOCTO_BRANCH_NAME) $TUXBOX_LAYER_GIT_URL ..."
echo -e "\033[37;1mUPDATE:\033[0m\nupdate $GUI_LAYER_NAME from (branch $YOCTO_BRANCH_NAME) $TUXBOX_LAYER_GIT_URL ..."
do_exec "$GIT_PULL origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
if [ "$CURRENT_GUI_LAYER_BRANCH" != "$YOCTO_BRANCH_NAME" ]; then
@@ -226,6 +259,49 @@ function clone_meta_python2 () {
fi
}
# clone or update required branch for qt5
function clone_meta_qt5 () {
META_MACHINE_LAYER=meta-$1
if [ $QT5_LAYER_DO_UPDATE == "1" ] && [ "$IMAGE_VERSION" != "3.0" ] && [ "$IMAGE_VERSION" != "3.1" ] && test -d $BUILD_ROOT_DIR/$META_MACHINE_LAYER/recipes-multimedia/kodi; then
$CURRENT_QT_LAYER_BRANCH
if test ! -d $BUILD_ROOT_DIR/$QT5_LAYER_NAME/.git; then
echo -e "\033[35;1mCLONE $QT5_LAYER_NAME:\033[0m\nclone $QT5_LAYER_NAME (branch $YOCTO_BRANCH_NAME) from $QT5_LAYER_GIT_URL ..."
do_exec "cd $BUILD_ROOT_DIR"
do_exec "$GIT_CLONE -b $YOCTO_BRANCH_NAME $QT5_LAYER_GIT_URL/$QT5_LAYER_NAME $QT5_LAYER_NAME" ' ' 'show_output'
do_exec "git -C $BUILD_ROOT_DIR/$QT5_LAYER_NAME checkout $QT5_BRANCH_HASH -b $IMAGE_VERSION"
do_exec "$GIT_PULL origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
echo -e "\033[35;1mdone ...\033[0m\n"
else
do_exec "cd $BUILD_ROOT_DIR/$QT5_LAYER_NAME"
CURRENT_QT_LAYER_BRANCH=`git -C $BUILD_ROOT_DIR/$QT5_LAYER_NAME rev-parse --abbrev-ref HEAD`
echo -e "\033[35;1mUPDATE: update $QT5_LAYER_NAME $CURRENT_QT_LAYER_BRANCH\033[0m"
do_exec "$GIT_STASH" 'no_exit'
if [ "$CURRENT_QT_LAYER_BRANCH" != "$YOCTO_BRANCH_NAME" ]; then
echo -e "\033[35;1mCHECKOUT:\033[0m\nswitch from $CURRENT_QT_LAYER_BRANCH to $YOCTO_BRANCH_NAME..."
do_exec "git checkout $YOCTO_BRANCH_NAME"
fi
#echo -e "\033[35;1mUPDATE:\033[0m\nupdate $QT5_LAYER_NAME from (branch $YOCTO_BRANCH_NAME) $QT5_LAYER_GIT_URL ..."
do_exec "$GIT_PULL origin $YOCTO_BRANCH_NAME" ' ' 'show_output'
if [ "$CURRENT_QT_LAYER_BRANCH" != "$YOCTO_BRANCH_NAME" ]; then
echo -e "\033[35;1mCHECKOUT:\033[0m\nswitch back to $CURRENT_QT_LAYER_BRANCH ..."
do_exec "git checkout $CURRENT_QT_LAYER_BRANCH"
echo -e "\033[35;1mREBASE:\033[0m\nrebase branch $YOCTO_BRANCH_NAME into $CURRENT_QT_LAYER_BRANCH"
do_exec "git rebase $YOCTO_BRANCH_NAME" ' ' 'show_output'
fi
do_exec "$GIT_STASH_POP" 'no_exit'
echo -e "\033[35;1mdone ...\033[0m\n"
QT5_LAYER_DO_UPDATE=0
fi
fi
}
function get_metaname () {
TMP_NAME=$1
@@ -257,6 +333,10 @@ function clone_box_layer () {
if test ! -d $BUILD_ROOT_DIR/$PYTHON2_LAYER_NAME; then
clone_meta_python2 $NAME
fi
if test ! -d $BUILD_ROOT_DIR/$QT5_LAYER_NAME; then
clone_meta_qt5 $NAME
fi
else
do_exec "cd $BUILD_ROOT_DIR/meta-$NAME"
do_exec "$GIT_STASH" 'no_exit'
@@ -281,6 +361,7 @@ function clone_box_layer () {
echo -e "\033[34;1mdone ...\033[0m\n"
clone_meta_python2 $NAME
clone_meta_qt5 $NAME
fi
fi
}
@@ -351,6 +432,11 @@ function create_local_config () {
'$BUILD_ROOT_DIR'/'$PYTHON2_LAYER_NAME' \
"' >> $BOX_BUILD_DIR/conf/bblayers.conf
fi
if test -d $BUILD_ROOT_DIR/$QT5_LAYER_NAME; then
echo 'BBLAYERS += " \
'$BUILD_ROOT_DIR'/'$QT5_LAYER_NAME' \
"' >> $BOX_BUILD_DIR/conf/bblayers.conf
fi
fi
fi
}

View File

@@ -5,14 +5,16 @@ BB_NUMBER_THREADS ?= "8"
#
# Determine how many processes make should run in parallel when running compile tasks:
PARALLEL_MAKE ?= "-j 4"
# Note: For your decision you can get information about core and threads at your machine with this command:
# ~ $ lscpu | grep -E '^Thread|^CPU\('
DISTRO = "tuxbox"
### System variables
#
#DL_DIR ?= "${COREBASE}/yocto-downloads"
DL_DIR = "${HOME}/Downloads"
DL_DIR = "${COREBASE}/yocto-downloads"
#DL_DIR = "${HOME}/Archive"
### sdk options
#
@@ -97,9 +99,14 @@ INHIBIT_EXTENDED_IMAGE_VERSION = "1"
# sample result: neutrino-image_hd51-20200926170603_v2020.39_usb.zip
#DISTRO_CUSTOM_VERSION = "2020.39"
#
# sample result with increment: neutrino-image_hd51-20200926170603_v20.0_usb.zip
# sample result with auto increment: neutrino-image_hd51-20200926170603_v20.0_usb.zip
# Result for next build will be: neutrino-image_hd51-20200926170603_v20.1_usb.zip
#DISTRO_CUSTOM_VERSION = "${IMAGE_YEARLY_TAG}.${IMAGE_BUILD_INCREMENT}"
#
# For user defined build increment you can generate manually (or how ever you want) a local increment file which cantains
# at the first line an increment number, other lines will be ignored.
# Sample result with local increment number '99' at the 1st line inside LOCAL_BUILD_INCREMENT_FILE: neutrino-image_hd51-20200926170603_v20.99_usb.zip
#LOCAL_BUILD_INCREMENT_FILE = "${HOME}/build/image_build_increment"
### default image root password
@@ -146,6 +153,9 @@ WEATHER_DEV_KEY = ""
#"
#EXTRA_OECONF_append_pn-gdb = "--with-system-gdbinit=/etc/gdbinit"
### experimental kodi, qtwebflix
#DEPENDS_pn-neutrino-image += "kodi qtwebflix"
### package feed configuration
#
@@ -195,17 +205,17 @@ BUG_REPORT_URL = "https://forum.tuxbox-neutrino.org"
### download mirrors
#
PREMIRRORS_prepend = "\
https://.*/.* https://archiv.tuxbox-neutrino.org/ \n \
git://.*/.* http://www.yoctoproject.org/sources/ \n \
ftp://.*/.* http://www.yoctoproject.org/sources/ \n \
http://.*/.* http://www.yoctoproject.org/sources/ \n \
https://.*/.* http://www.yoctoproject.org/sources/ \n \
"
# PREMIRRORS_prepend = "\
# https://.*/.* https://archiv.tuxbox-neutrino.org/ \n \
# git://.*/.* http://www.yoctoproject.org/sources/ \n \
# ftp://.*/.* http://www.yoctoproject.org/sources/ \n \
# http://.*/.* http://www.yoctoproject.org/sources/ \n \
# https://.*/.* http://www.yoctoproject.org/sources/ \n \
# "
#see: https://wiki.yoctoproject.org/wiki/How_do_I#Q:_How_do_I_create_my_own_source_download_mirror_.3F
#
SOURCE_MIRROR_URL ?= "https://archiv.tuxbox-neutrino.org"
SOURCE_MIRROR_URL = "https://archiv.tuxbox-neutrino.org"
INHERIT += "own-mirrors"
BB_GENERATE_MIRROR_TARBALLS = "1"
#BB_NO_NETWORK = "1"
@@ -238,6 +248,10 @@ SSTATE_MIRRORS = "\
# NOTE: Some masked targets with related depends could break the build.
# BBMASK += "/meta-neutrino/recipes-qt/qt5"
### Build packages but do not install packages into root filesystem/image
# https://www.yoctoproject.org/docs/current/mega-manual/mega-manual.html#var-EXTRA_IMAGEDEPENDS
EXTRA_IMAGEDEPENDS += " samba "
# These entries replace default installed entries which are contained in ./meta-neutrino/recipes-images/images/neutrino-image-base.inc.
# You can add more entries with variable IMAGE_INSTALL_append see below...
#
@@ -291,5 +305,5 @@ SSTATE_MIRRORS = "\
# Put additional packages that should be packaged into your image. Separated with a whitespace. or use IMAGE_INSTALL += ...
#
# IMAGE_INSTALL_append = " gdb-dbg glibc-dbg glibc-thread-db qtwebflix webmin rpm"
# IMAGE_INSTALL_append = " gdb-dbg glibc-dbg glibc-thread-db webmin rpm"
# IMAGE_INSTALL_append = " gdb-dbg glibc-dbg glibc-thread-db qtwebflix webmin"
# IMAGE_INSTALL_append = " gdb-dbg glibc-dbg glibc-thread-db webmin"