Comments (11)
For the debug file, they could be shipped with the -dbg package if it exists. It seems to be relative to files specific to sunxi. So it make sense to add these files to linux-dbg package.
For the second issue, i don't see a way to fix it. It seems that it's a check on firmware binairies. So the best option here is what you said, add insane skip.
from meta-sunxi.
I tried adding the following in recipes-kernel/linux/linux_3.4.bb
:
INSANE_SKIP_${PN} = "ld-flags" #should skip GNU HASH warnings
FILES_${PN}-dbg += "/usr/src/debug" #should fix debug warnings
However, this does not seem to work?
Also, I am actually surprised we would need to add the debug line, as bitbake.conf
[1] already seems to take care of this:
DOTDEBUG-dbg = "${bindir}/.debug ${sbindir}/.debug ${libexecdir}/.debug ${libdir}/.debug \
${base_bindir}/.debug ${base_sbindir}/.debug ${base_libdir}/.debug ${libdir}/${BPN}/.debug \
${libdir}/matchbox-panel/.debug /usr/src/debug"
DEBUGFILEDIRECTORY-dbg = "/usr/lib/debug /usr/src/debug"
FILES_${PN}-dbg = "${@d.getVar(['DOTDEBUG-dbg', 'DEBUGFILEDIRECTORY-dbg'][d.getVar('PACKAGE_DEBUG_SPLIT_STYLE', True) == 'debug-file-directory'], True)}"
What am I missing?
Note that I believe the GNU_HASH warnings should actually be fixed upstream by adding --hash-style=gnu
to the compiler flags; I propose to only fix the debug warnings, and to not skip the GNU_HASH warnings for now.
[1] http://cgit.openembedded.org/openembedded-core/tree/meta/conf/bitbake.conf
from meta-sunxi.
I didn't check the source code but i think *-dbg only looks for binary files, can you try with FILES_${PN}-dev ?
But probably those files shouldn't be there, from openembedded-core kernel.bbclass:
.Define where the kernel headers are installed on the target as well as where
.they are staged.
KERNEL_SRC_PATH = "/usr/src/kernel"
....
FILES_kernel-dev = "/boot/System.map* /boot/Module.symvers* /boot/config* ${KERNEL_SRC_PATH}"
Can you check if it's really sunxi specific (only those sunxi files are installed in /usr/src/debug) or the full tree is there and it's just sunxi files that are not picked by some FILES_${PN}....?
from meta-sunxi.
It appears that this is really sunxi specific - only the files listed in the QA warning are installed in /usr/src/debug:
kristof@test:~/OE/oe-core/build/tmp-eglibc/work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/package/usr/src/debug$ tree
.
└── linux
└── 3.4.67-14
└── git
├── arch
│ └── arm
│ ├── include
│ │ └── asm
│ │ └── hwcap.h
│ └── mach-sun7i
│ ├── include
│ │ └── mach
│ │ └── ccmu.h
│ └── pm
│ ├── mem_divlibc.h
│ ├── mem_timing.h
│ ├── mem_tmr.h
│ ├── pm_debug.h
│ ├── pm.h
│ ├── pm_types.h
│ └── standby
│ ├── common.c
│ ├── common.h
│ ├── dram.c
│ ├── dram_init.c
│ ├── mem_delay.S
│ ├── mem_divlibc.c
│ ├── mem_divlib.S
│ ├── mem_int.c
│ ├── mem_int.h
│ ├── mem_mmu_pc_asm.S
│ ├── mem_printk.c
│ ├── mem_serial.c
│ ├── mem_timing.c
│ ├── pm_debug.c
│ ├── standby.c
│ ├── standby_clock.c
│ ├── standby_clock.h
│ ├── standby_delay.S
│ ├── standby_ir.c
│ ├── standby_ir.h
│ ├── standby_key.c
│ ├── standby_key.h
│ ├── standby_power.c
│ ├── standby_power.h
│ ├── standby_tmr.c
│ ├── standby_tmr.h
│ ├── standby_twi.c
│ ├── standby_twi.h
│ ├── standby_usb.c
│ └── standby_usb.h
└── include
└── linux
├── kernel.h
├── power
│ └── aw_pm.h
└── printk.h
15 directories, 41 files
from meta-sunxi.
I didn't check the source code but i think *-dbg only looks for binary files, can you try with FILES_${PN}-dev
Tried, doesnt help.
from meta-sunxi.
FILES_kernel-dev += "/usr/src/debug"
does work though.
For the GNU_HASH issue, I also tried adding "ld-flags" to the existing insane skip line - but that doesnt seem to work:
INSANE_SKIP_kernel-dev = "debug-files debug-deps arch ld-flags"
from meta-sunxi.
OK, turns out I should be using ldflags
rather than ld-flags
.
I.e. adding the following to recipes-kernel/linux/linux_3.4.bb
works to get rid of all the QA warnings mentioned in this thread:
INSANE_SKIP_kernel-dev = "debug-files debug-deps arch ldflags"
FILES_kernel-dev += "/usr/src/debug"
Is this also the right way of "solving" it?
from meta-sunxi.
For reference, adding the QA issues suppressed by the other INSANE_SKIPS (already there):
arch:
linux-3.4.67: Architecture did not match (40 to 62) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/drivers/net/wireless/rtxx7x/tools/bin2h
linux-3.4.67: Architecture did not match (40 to 62) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/ar6302/AR6K_SDK_ISC.build_3.1_RC.329/host/lib/wac/wac
linux-3.4.67: Architecture did not match (40 to 62) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/ar6302/AR6K_SDK_ISC.build_3.1_RC.329/host/tools/pal_host_intf/pal_app
linux-3.4.67: Architecture did not match (40 to 62) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/nano-c047.12/obj/hic-proxy
linux-3.4.67: Architecture did not match (40 to 1573) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/nano-c047.12/obj/x_mac_4.69.axf
linux-3.4.67: Architecture did not match (40 to 1573) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/nano-c047.12/obj/x_mac_patch_4_65.axf
linux-3.4.67: Architecture did not match (40 to 1573) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/nano-c047.12/obj/x_mac_4.66.axf
linux-3.4.67: Architecture did not match (40 to 1573) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/nano-c047.12/obj/x_mac-v4.68.axf
linux-3.4.67: Architecture did not match (40 to 1573) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/nano-c047.12/obj/x_mac.axf
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/wl
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/socket_noasd/x86/wl_server_socket
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/wifi_noasd/x86/wl_server_serial
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/wifi_noasd/x86/wl_server_wifi
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/make/wl
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/make/socket_noasd/x86/wl_server_socket
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/make/wifi_noasd/x86/wl_server_serial
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/make/wifi_noasd/x86/wl_server_wifi
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/make/dongle_noasd/x86/wl_server_dongle
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/open-src/src/wl/exe/dongle_noasd/x86/wl_server_dongle
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/apps/tc_cli
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/apps/wfa_ca
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/apps/dhd
linux-3.4.67: Architecture did not match (40 to 3) on /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/modules/wifi/bcm40181/apps/ca_cli
debug-deps
None in my configuration.
Is there any need for this in other configurations?
debug-files
linux-3.4.67: non debug package contains .debug directory: kernel-dev path /work/cubieboard2-oe-linux-gnueabi/linux/3.4.67-14/packages-split/kernel-dev/usr/src/kernel/arch/arm/mach-sun7i/pm/standby/.debug/standby.elf
from meta-sunxi.
I don't need this myself, so i think you can open a pull request with your fix.
from meta-sunxi.
Rather than using the INSANE_SKIPs, I propose to simply remove those problematic files in a do_configure_prepend
step. This has the advantage that it makes those issues directly visible (so people are aware), and avoids shipping those problematic files (which might lead to issues when used).
It also has the advantage that we are not skipping any sanity checks.
I'll prepare a pull request along those lines.
from meta-sunxi.
OK, I managed to get rid of all errors without using any INSANE_SKIPs:
(1) To get rid of the arch and ldflag issues, I removed the offending files during do_configure_prepend
(2) To get rid of the usr/src/debug
files not shipped, I enabled INHIBIT_PACKAGE_DEBUG_SPLIT
.
All comments welcome.
Pull request launched.
from meta-sunxi.
Related Issues (20)
- ATF Build failed for OrangePi PC2 HOT 4
- Build fails for master branch and OPi Zero 2 HOT 9
- Bad qtwebengine performance with lima HOT 7
- wic for sunxi64 HOT 9
- USB not working on BananaPi M2 Zero HOT 4
- Question: DT Overlays HOT 3
- Patch errors when baking HOT 1
- Should this generate an SD card image? HOT 18
- Ethernet not working on Orange Pi One Plus (H6) HOT 5
- Support for OrangePI zero 3 HOT 44
- Upcoming mainline kernels support HOT 9
- meta-sunxi depends on meta-sunxi error HOT 6
- Can't boot Orange PI Zero 2W HOT 1
- i2c kernel panic on A20-OLinuXino-LIME during poweroff HOT 6
- orange-pi-zero2 build no longer works HOT 5
- [OrangePi PC2] Wrong place for dtb in boot partition HOT 3
- please create scarthgap branch. thx HOT 4
- nanopi-r1 machine fails to build in u-boot for kirkstone (missing dts) HOT 7
- Legacy sunxi Kernel/U-Boot HOT 4
- olinuxino-a20lime2-emmc: pya20 SRC_URI entry mapping.h: file could not be found HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from meta-sunxi.