Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • eclipse/oniro-core/oniro
  • landgraf/oniro
  • zyga/oniro
  • mrybczyn/oniro
  • agherzan/oniro
  • pcoval/oniro
  • tony3oo3/oniro
  • stefanschmidt/oniro
  • waykovalenko/oniro
  • bero/oniro
  • esben/oniro
  • robertd/oniro
  • pidge/oniro
  • shettygururaj/oniro
  • thierrye/oniro
  • sradakovi/oniro
  • dricci783/oniro
  • ektor5/oniro
  • fldn/oniro
  • lucafavaretto/oniro
  • lucazizolfi/oniro
  • artemkondratiuk/oniro
  • lucaseri/oniro
  • gwozdzcfs/oniro
  • kristis/oniro
  • brgl/oniro
  • heurtemattes/oniro
  • idlethread/oniro
  • lquach/oniro
  • ghassaneben/oniro
  • heurtemattes/oniro-bitbake
  • kzarka/oniro
  • heurtemattes/oniro-migration
  • pastanki/oniro
  • malowe/oniro
  • chaseqi/oniro
  • mrfrank/oniro
37 results
Show changes
Showing
with 141 additions and 36 deletions
......@@ -55,8 +55,10 @@ Initialize a repo workspace and clone all required repositories:
$ repo init -u https://gitlab.eclipse.org/eclipse/oniro-core/oniro.git -b kirkstone
$ repo sync --no-clone-bundle
Building an Oniro image
***********************
.. _Building an Oniro image:
Building and Running an Oniro image
***********************************
The following steps will build a ``oniro-image-base``. The process will
build all its components, including the toolchain, from source.
......@@ -70,17 +72,27 @@ cloned using the repo tool. See above.
could use around 100GB of disk space for downloads, temporary files, and
build artifacts combined.
Initialize the build directory and run a build:
Initialize the build directory:
.. code-block:: console
$ TEMPLATECONF=../oniro/flavours/linux . ./oe-core/oe-init-build-env build-oniro-linux
$ MACHINE=qemux86-64 bitbake oniro-image-base
Booting a Qemu X86-64 Target with a |main_project_name| image
*************************************************************
Now that the build is initialized, you have the choice of building a standard
Oniro image or an OpenHarmony compatible one.
Once the image is built, you can run a Qemu X86-64 instance using the provided script wrapper as follows:
A. Standard Oniro image
-----------------------
As the build directory is now initialized, you can proceed to running the build
process:
.. code-block:: console
$ MACHINE=qemux86-64 bitbake oniro-image-base
Once the image is built, you can run a Qemu instance using the provided
script wrapper as follows:
.. code-block:: console
......@@ -88,3 +100,46 @@ Once the image is built, you can run a Qemu X86-64 instance using the provided s
If the host has a VT-capable CPU, you can pass the ``kvm`` argument for better
performance. Check ``runqemu``'s help message for all available arguments.
.. _Building with OpenHarmony:
B. Building with OpenHarmony compatibility
------------------------------------------
To enable OpenHarmony compatibility features, you need to tweak the
`local.conf` file before running the build process. You will find this
configuration in `build-oniro-linux/conf/local.conf` where you'll need to add
the following:
.. code-block:: sh
TOOLCHAIN="clang"
RUNTIME="llvm"
DISTRO_FEATURES:append = " openharmony"
IMAGE_INSTALL:append = " openharmony-standard"
This will enable OpenHarmony features and add OpenHarmony Standard System
features to the `oniro-image-base` image.
As the build directory is now initialized, you can proceed to run the build
process:
.. code-block:: console
$ MACHINE=qemuarm bitbake oniro-image-base
Once the image is built, you can run a Qemu instance using the provided
script wrapper as follows:
.. code-block:: console
$ MACHINE=qemuarm runqemu oniro-image-base serialstdio nographic slirp
Runtime Login
*************
Once the target has booted, a login shell will prompt for a user/password
combination. By default, the OS uses the following:
- user name: **oniro**
- password: **oniro**
......@@ -4,7 +4,7 @@
.. include:: definitions.rst
Supported images
Supported Images
################
To create a custom Linux distribution to match the product requirements,
......
......@@ -18,6 +18,7 @@ BBLAYERS ?= " \
##OEROOT##/../meta-zephyr/meta-zephyr-bsp \
##OEROOT##/../meta-zephyr/meta-zephyr-core \
##OEROOT##/../oniro/meta-oniro-core \
##OEROOT##/../meta-openharmony \
##OEROOT##/../meta-freertos \
##OEROOT##/../meta-intel \
##OEROOT##/../meta-seco-intel \
......@@ -32,4 +33,5 @@ BBLAYERS ?= " \
##OEROOT##/../meta-security \
##OEROOT##/../meta-riscv \
##OEROOT##/../meta-rauc \
##OEROOT##/../meta-java \
"
......@@ -26,5 +26,6 @@ or via command line, e.g.:
You can also run generated qemu images with a command:
$ runqemu qemux86-64 qemuparams="-nographic" oniro-image-base wic ovmf
$ runqemu qemux86-64 qemuparams="-nographic" oniro-image-base wic ovmf slirp
Then log in as 'oniro' user with 'oniro' as a password.
<?xml version="1.0" encoding="UTF-8"?>
<!--
SPDX-License-Identifier: Apache-2.0
SPDX-FileCopyrightText: Huawei Inc.
-->
<manifest>
<include name="manifests/default.xml" />
<project name="oniro-core/meta-binaryaudit" remote="eclipse" revision="oniro/kirkstone" path="meta-binaryaudit" />
</manifest>
......@@ -25,19 +25,20 @@ SPDX-FileCopyrightText: Huawei Inc.
<remote name="seco" fetch="https://git.seco.com" />
<project name="bitbake" remote="openembedded" revision="b8fd6f5d9959d27176ea016c249cf6d35ac8ba03" path="bitbake" />
<project name="openembedded-core" remote="openembedded" revision="eea52e0c3d24c79464f4afdbc3c397e1cb982231" path="oe-core" />
<project name="meta-openembedded" remote="openembedded" revision="fcc7d7eae82be4c180f2e8fa3db90a8ab3be07b7" path="meta-openembedded" />
<project name="openembedded-core" remote="openembedded" revision="a4bfb5ceb5cf8c0c6d27225b27ef10c0b9dceccb" path="oe-core" />
<project name="meta-openembedded" remote="openembedded" revision="a47ef046619d639dfbd3be2a13ef6d5b40fd40a1" path="meta-openembedded" />
<project name="aehs29/meta-freertos" remote="github" revision="98a6838261d36b8f79c5fbae1736492169727a1e" path="meta-freertos" />
<project name="meta-intel" remote="yocto" revision="8e472da759cd5a5bf2ece041d2796db56b1d5482" path="meta-intel" />
<project name="meta-intel" remote="yocto" revision="ef3aa3064b9bbfa19f600eafb1e7d3473f62af74" path="meta-intel" />
<project name="pub/intel/yocto/meta-seco-intel" remote="seco" revision="65a673560211b11986db5785c70254fad190785f" path="meta-seco-intel" />
<project name="meta-freescale" remote="yocto" revision="92df6b76f38397b75ea76d588935b5b91b63c58c" path="meta-freescale" />
<project name="meta-freescale" remote="yocto" revision="2e785f257ad98581b684f0e32f6d4bb96faefb10" path="meta-freescale" />
<project name="pub/i.mx/yocto/5.x/meta-seco-imx" remote="seco" revision="b6976d806dad5cff6e071cfdb59ab45c4210604b" path="meta-seco-imx" />
<project name="meta-raspberrypi" remote="yocto" revision="0135a02ea577bd39dd552236ead2c5894d89da1d" path="meta-raspberrypi" />
<project name="meta-security" remote="yocto" revision="d3d8e62bf1caa3870a504c0addcfd200b33c189f" path="meta-security" />
<project name="rauc/meta-rauc" remote="github" revision="2c07f828924c6e522925544ec51900935be23703" path="meta-rauc" />
<project name="meta-security" remote="yocto" revision="c79262a30bd385f5dbb009ef8704a1a01644528e" path="meta-security" />
<project name="rauc/meta-rauc" remote="github" revision="ea4236412dc4449eff4d52d3ef6b6d230355f936" path="meta-rauc" />
<project name="riscv/meta-riscv" remote="github" revision="70e099d7ceca52a1dde2c978713012f6b20a9891" path="meta-riscv" />
<project name="meta-arm" remote="yocto" revision="af928569b421431347c84f5941cee7aaa9f0ac74" path="meta-arm" />
<project name="jiazhang0/meta-secure-core" remote="github" revision="2ccf4aa4e352a1b990d0f59bf28de8639ca529d9" path="meta-secure-core" />
<project name="meta-arm" remote="yocto" revision="78fce73c3803aba82149a3a03fde1b708f5424fa" path="meta-arm" />
<project name="meta-java" remote="yocto" revision="1a8059f6b257ebe6fcae6416e499784d976afd24" path="meta-java" />
<project name="jiazhang0/meta-secure-core" remote="github" revision="d0a02859719f1a2c6b98d9d9afe785ec8535ec32" path="meta-secure-core" />
<!--
All entries above are pinned to a specific revision and updated manually.
......@@ -55,6 +56,7 @@ SPDX-FileCopyrightText: Huawei Inc.
</project>
<project name="oniro-core/meta-clang.git" remote="eclipse" revision="oniro/kirkstone" path="meta-clang" />
<project name="oniro-core/meta-zephyr.git" remote="eclipse" revision="oniro/kirkstone" path="meta-zephyr" />
<project name="oniro-core/meta-openharmony.git" remote="eclipse" revision="kirkstone" path="meta-openharmony" />
<project name="oniro-core/docs.git" remote="eclipse" revision="main" path="docs" />
<project name="distro/governance/ip-policy" remote="oniro-booting" revision="main" path="ip-policy" />
</manifest>
......@@ -5,3 +5,7 @@
require conf/distro/include/security_flags.inc
INHERIT += "oniro-sanity"
# Configuration needed for meta-java layer
PREFERRED_PROVIDER_virtual/java-initial-native ?= "cacao-initial-native"
PREFERRED_PROVIDER_virtual/java-native ?= "cacao-native"
......@@ -112,3 +112,9 @@ ENABLE_UART ?= "1"
GPU_MEM:raspberrypi4-64 = "128"
SPLASH = "psplash-oniro"
DISTRO_FEATURES_FILTER_NATIVE:append = " openharmony"
DISTRO_FEATURES_FILTER_NATIVESDK:append = " openharmony"
require conf/distro/include/openharmony.inc
# OpenHarmony requires musl libc, so we cannot allow other TCLIBC values
TCLIBC:df-openharmony = "musl"
......@@ -13,11 +13,9 @@ IMAGE_INSTALL:append = "\
kernel-selftest \
"
# This adds ptest packages to the image
EXTRA_IMAGE_FEATURES:append = " ptest-pkgs"
# This adds ptest packages to the image, and enables empty root password
EXTRA_IMAGE_FEATURES:append = " ptest-pkgs debug-tweaks"
# For testing purposes, we want to have an extra ext4 format for the root
# filesystem.
IMAGE_FSTYPES:append = " ext4"
ROOT_PARTITION_SIZE = "2500M"
......@@ -20,3 +20,10 @@ IMAGE_INSTALL:append = "\
"
IMAGE_INSTALL:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'optee', 'optee-client', '', d)} "
# If the machine has a cellular modem it can set MACHINE_FEATURES+=modem to
# add the needed packages into the image. In the special case of an USB cellular
# modem adding MACHINE_FEATURES+="modem usbmodem" ensures to have the usb-modeswitch
# package as well.
IMAGE_INSTALL:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'modem', 'networkmanager-wwan modemmanager', '', d)} "
IMAGE_INSTALL:append = " ${@bb.utils.contains('MACHINE_FEATURES', 'usbmodem', 'usb-modeswitch', '', d)} "
......@@ -11,9 +11,12 @@ IMAGE_INSTALL:append = "\
packagegroup-oniro-tests \
"
# This adds ptest packages to the image
EXTRA_IMAGE_FEATURES:append = " ptest-pkgs"
# This adds ptest packages to the image, and enables empty root password
EXTRA_IMAGE_FEATURES:append = " ptest-pkgs debug-tweaks"
# For testing purposes, we want to have an extra ext4 format for the root
# filesystem.
IMAGE_FSTYPES:append = " ext4"
# Workaround for https://bugzilla.yoctoproject.org/show_bug.cgi?id=14858
PACKAGE_EXCLUDE_COMPLEMENTARY:append = " openssh "
......@@ -4,7 +4,9 @@
# This class allows building GN-based projects.
DEPENDS += "gn-native ninja-native"
DEPENDS += "gn-native"
inherit ninja
# General GN options, like --dotfile
GN_OPTIONS ??= ""
......
# SPDX-FileCopyrightText: Huawei Inc.
#
# SPDX-License-Identifier: Apache-2.0
DEPENDS:prepend = "ninja-native "
MAXLOAD_NINJA ??= "0"
export MAXLOAD_NINJA
......@@ -23,7 +23,7 @@ BBFILES_DYNAMIC += "\
BBFILE_COLLECTIONS += "oniro-staging"
BBFILE_PATTERN_oniro-staging = "^${LAYERDIR}/"
BBFILE_PRIORITY_oniro-staging = "5"
BBFILE_PRIORITY_oniro-staging = "6"
LAYERDEPENDS_oniro-staging = " \
core \
......
# SPDX-FileCopyrightText: Huawei Inc.
#
# SPDX-License-Identifier: Apache-2.0
# If the machine has a cellular modem it can set MACHINE_FEATURES+=modem to
# enable build-in support in NetworkManager.
PACKAGECONFIG:append:pn-networkmanager = "${@bb.utils.contains('MACHINE_FEATURES', \
'modem', ' modemmanager ', '', d)}"
......@@ -8,7 +8,7 @@ DESCRIPTION = "TAYGA is an out-of-kernel stateless NAT64 implementation for \
kernel. It is intended to provide production-quality NAT64 service for \
networks where dedicated NAT64 hardware would be overkill."
SECTION = "net"
LICENSE="GPLv2"
LICENSE="GPL-2.0-only"
LIC_FILES_CHKSUM="file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
SRC_URI= "http://www.litech.org/tayga/tayga-0.9.2.tar.bz2 \
......
......@@ -2,14 +2,14 @@ require gcc-common.inc
# Third digit in PV should be incremented after a minor release
PV = "12.0.1"
PV = "12.1.0"
# BINV should be incremented to a revision after a minor gcc release
BINV = "12.0.1"
BINV = "12.1.0"
MAJOR = "12"
SNAPSHOT = "20220313"
# SNAPSHOT = "20220313"
FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
......@@ -26,11 +26,11 @@ LIC_FILES_CHKSUM = "\
file://COPYING.RUNTIME;md5=fe60d87048567d4fe8c8a0ed2448bcc8 \
"
#RELEASE ?= "5b2ac9b40c325e9209c0bd55955db84aad4a0cc5"
#BASEURI ?= "https://github.com/gcc-mirror/gcc/archive/${RELEASE}.zip;downloadfilename=gcc-${PV}-${RELEASE}.zip"
RELEASE ?= "1ea978e3066ac565a1ec28a96a4d61eaf38e2726"
BASEURI ?= "https://github.com/gcc-mirror/gcc/archive/${RELEASE}.tar.gz;downloadfilename=gcc-${PV}-${RELEASE}.tar.gz"
BASEURI ?= "https://mirror.koddos.net/gcc/snapshots/${MAJOR}-${SNAPSHOT}/gcc-${MAJOR}-${SNAPSHOT}.tar.xz \
"
# For snapshots
#BASEURI ?= "https://mirror.koddos.net/gcc/snapshots/${MAJOR}-${SNAPSHOT}/gcc-${MAJOR}-${SNAPSHOT}.tar.xz"
SRC_URI = "\
${BASEURI} \
file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \
......@@ -57,12 +57,12 @@ SRC_URI = "\
file://0006-If-CXXFLAGS-contains-something-unsupported-by-the-bu.patch \
file://0001-Fix-install-path-of-linux64.h.patch \
"
SRC_URI[sha256sum] = "979d8cbe9b2ed2ab4434f52097754e004a207cf6541aea3e167c5d0f74957633"
SRC_URI[sha256sum] = "37f4815d27485cd84bfd725598a5afe53714ce4ecdfdef4bc266c086ae165367"
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${MAJOR}-${SNAPSHOT}"
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${RELEASE}"
# For dev release snapshotting
#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${RELEASE}"
#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${MAJOR}-${SNAPSHOT}"
#B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"
# Language Overrides
......