Age | Commit message (Collapse) | Author | Files | Lines |
|
bitbake offers a choice of DEB, RPM or IPK packaging. To a degree the
choice is functionally arbitrary for image generation but control over
the package format becomes important if we want to:
1. Include runtime package management functionality in the firmware image
2. Mess about with the packages on the build system
With respect to 1 the IPK format and opkg (an ipk package manager) are
designed for embedded systems[1] - by contrast to RPMs have heavier
dependencies and a greater impact on the size and complexity of the
firmware image.
Regarding 2, the embedded nature and the need for opkg to work without
much fuss leads to a lower configuration barrier by comparison to RPMs.
With ipk it becomes possible to reuse the packages built during image
preparation for core analysis without needing to generate an SDK:
```
$ export LD_LIBRARY_PATH=./tmp/work/x86_64-linux/opkg-native/*/recipe-sysroot-native/usr/lib
$ MY_DEBUG_ROOT=tmp/rootfs-debug
$ ./tmp/sysroots-components/x86_64/opkg-native/usr/bin/opkg \
-f ./tmp/work/p10bmc-openbmc-linux-gnueabi/obmc-phosphor-image/*/opkg.conf \
-o $MY_DEBUG_ROOT \
update
$ fakeroot ./tmp/sysroots-components/x86_64/opkg-native/usr/bin/opkg \
-f ./tmp/work/p10bmc-openbmc-linux-gnueabi/obmc-phosphor-image/1.0-r0/opkg.conf \
-o $MY_DEBUG_ROOT \
install dbus-sensors dbus-sensors-dbg
$ gdb-multiarch
(gdb) set solib-absolute-prefix .../tmp/rootfs-debug
(gdb) add-auto-load-safe-path .../tmp/rootfs-debug
(gdb) file tmp/rootfs-debug/usr/bin/nvmesensor
(gdb) core-file obmcdump_17_9597/core.nvmesensor.0.aae91b519d0e4e0e8bbe746e3f6cd25f.2779.9594000000
Core was generated by `/usr/bin/nvmesensor'.
Program terminated with signal SIGABRT, Aborted.
pthread_kill.c:45
45 pthread_kill.c: No such file or directory.
(gdb) bt
pthread_kill.c:45
../sysdeps/posix/raise.c:26
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
/home/andrew/src/openbmc/openbmc/build/p10bmc/tmp/rootfs-debug/usr/lib/libstdc++.so.6
"xyz.openbmc_project.NVMeSensor", this=0x488f04) at
/usr/include/sdbusplus/bus.hpp:234
../../../../../../workspace/sources/dbus-sensors/src/NVMeSensorMain.cpp:159
(gdb)
```
This approach documented in the Poky Reference Manual:
https://www.yoctoproject.org/docs/1.0/poky-ref-manual/poky-ref-manual.html#platdev-gdb-remotedebug-launch-gdb-inferiorbins
Switch all machines to IPK to align the debugging experience with
upstream's documentation and to facilitate efficient use of packaged
software at runtime.
[1] https://openwrt.org/docs/guide-user/additional-software/opkg
Change-Id: I8ef526add2d7a6790de1b3eb3fb85cd39b864f23
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: Ib334e243bb2293148b6bf3587c79a77e46bd8ce3
|
|
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I588025b614416c43aa2d053765ab53bacf890cb5
|
|
This is apparently not actually working anymore and is removed in the
next poky update.
Change-Id: Ia1c6a258d124a4a30a14fc42e8e0bba95e64faeb
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
Moved setting default root user password to
distro instead of applying it in every conf.
Unit-test:
Verified /etc/shadow file updated accordingly.
(From meta-phosphor rev: fd1f696f99eb61fa764d8438f635c6d6a558973d)
Change-Id: I652273b157102600c108d3a547613c11f774aad4
Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
As a known issue, the introspection data cannot be built on ppc64le.
https://lists.yoctoproject.org/pipermail/yocto/2016-April/029582.html.
To work around, I disable the use of qemu when we build openbmc
by modifying the configuration files:
Add
MACHINE_FEATURES_BACKFILL_CONSIDERED = "qemu-usermode"
to the end line.
Resolve: openbmc/openbmc#640
Change-Id: Idb6584ca43a8d4f005aa365f62aa1d46d2a00fd5
Signed-off-by: Nan Li <william.bjlinan@hotmail.com>
|
|
Remove comments.
Remove SDL lines.
Allow any distro without warning.
Change-Id: If2ddff9c50f834bff30454768f563b272975866c
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
sample.inc has been reduced to simply appending some
server related machine features.
For the sake of correctness, don't assume anything about
the machine features desired to be simulated by the phosphor
layer client. Accomplish this by removing sample.inc from
local.conf(.sample).
To simulate additional machine features on fake platforms
like evaluation boards or the default qemu models, append
additional features to OBMC_MACHINE_FEATURES in local.conf.
Change-Id: I8bf3e0b428a3d0c20136340720aa500e1312607e
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
This matches Yocto 2.1 per 685daeb6.
Change-Id: Idee5377f6a40de1d37db25d73b44382bad521934
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
|
|
|
|
|
|
git-subtree-dir: meta-phosphor
git-subtree-mainline: 21f9b84b4b729fbd7acbd465e7a3f726e4d20f91
git-subtree-split: 93fb535853a24d4c3c42ec425ac92c9d3de13294
|