[yocto] SANITY_TESTED_DISTROS update for 1.8
Hi Lucian / Alex, Just a reminder, it looks like we still need to update SANITY_TESTED_DISTROS to match the host distros we are testing against for 1.8. Thanks, Paul -- Paul Eggleton Intel Open Source Technology Centre -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] [meta-mono][PATCH] mono: Support to build mono without X support.
Use PACKAGECONFIG to build a version of mono with or without X support in function of x11 DISTRO_FEATURES. Tested on qemux86 (mono using X) and imx6 board (mono without X) Signed-off-by: Enric Balletbo i Serra --- recipes-mono/mono/mono-native_3.12.1.bb | 8 ++-- recipes-mono/mono/mono_3.12.1.bb| 12 +--- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/recipes-mono/mono/mono-native_3.12.1.bb b/recipes-mono/mono/mono-native_3.12.1.bb index b575224..3afae4b 100644 --- a/recipes-mono/mono/mono-native_3.12.1.bb +++ b/recipes-mono/mono/mono-native_3.12.1.bb @@ -5,10 +5,14 @@ inherit native SRC_URI[md5sum] = "ccab015f0c54ffeccd2924b44885809c" SRC_URI[sha256sum] = "5d8cf153af2948c06bc9fbf5088f6834868e4db8e5f41c7cff76da173732b60d" -DEPENDS =+ "libgdiplus-native" - EXTRA_OECONF += "mono_cv_uscore=no --with-sigaltstack=no --with-mcs-docs=no " +EDEPENDS_X11 =+ "libgdiplus-native" +PACKAGECONFIG[x11] = ",,${EDEPENDS_X11}" + +# Default configuration, distros might want to override +PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" + SRC_URI += "file://fix-basic-mscorlib-dep.patch" do_compile() { diff --git a/recipes-mono/mono/mono_3.12.1.bb b/recipes-mono/mono/mono_3.12.1.bb index c22c1d5..e8a8da0 100644 --- a/recipes-mono/mono/mono_3.12.1.bb +++ b/recipes-mono/mono/mono_3.12.1.bb @@ -2,13 +2,21 @@ require mono-3.12.inc inherit pkgconfig -DEPENDS =+ "mono-native libgdiplus" +DEPENDS =+ "mono-native" SRC_URI[md5sum] = "ccab015f0c54ffeccd2924b44885809c" SRC_URI[sha256sum] = "5d8cf153af2948c06bc9fbf5088f6834868e4db8e5f41c7cff76da173732b60d" EXTRA_OECONF += "--disable-mcs-build mono_cv_clang=no mono_cv_uscore=no --with-sigaltstack=no --with-mcs-docs=no" +EDEPENDS_X11 = "libgdiplus" +ERDEPENDS_X11 = "libgdiplus" + +PACKAGECONFIG[x11] = ",,${EDEPENDS_X11},${ERDEPENDS_X11}" + +# Default configuration, distros might want to override +PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" + do_install_append() { cp -af ${STAGING_DIR_NATIVE}${sysconfdir}/${PN} ${D}${sysconfdir} cp -af ${STAGING_DIR_NATIVE}${libdir}/${PN} ${D}${libdir}/${PN} @@ -23,5 +31,3 @@ FILES_${PN}-doc += " ${datadir}/libgc-mono/*" FILES_${PN}-dbg += " ${datadir}/mono-2.0/mono/cil/cil-opcodes.xml" PACKAGES = "${PN} ${PN}-dbg ${PN}-doc ${PN}-dev ${PN}-staticdev ${PN}-locale" - -RDEPENDS_${PN} += "libgdiplus" -- 2.1.0 -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] .rpm not being generated (or empty)
Hi all, I write a recipe to build an JNI layer for my C library, the JNI library gets compiled right, but no .rpm is generated besides -dev and -dbg. I suspect that the rpm is getting empty. Here is the recipe: http://pastebin.com/vqtaM1Fv Looking on package directory I got the compiled .so's [root@arch 1.0-r0]# find package package package/usr package/usr/lib package/usr/lib/libDigitalInputJni.so package/usr/lib/libDigitalOutputJni.so package/usr/lib/.debug package/usr/lib/.debug/libDigitalOutputJni.so package/usr/lib/.debug/libDigitalInputJni.so But on packages-split I got nothing: [root@arch 1.0-r0]# ls packages-split/libdigitalio-jni total 0 Any idea what I'm missing? Regards, Hilst -- *"Do or do not. There is no try"* *Yoda Master* -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] How to support arm-none-eabi toolchain for u-boot on Amlogic
Hello, it looks like that Amlogic based devices like the ODROID-C1 [1] requires their u-boot compiled with an arm-none-eabi toolchain. The rest kernel and rootfs is compiled with standard arm eabi toolchain. I am wondering how to support this in yocto/openembedded. With kind regrads, Christian [1] http://odroid.com/dokuwiki/doku.php?id=en:c1_building_u-boot -- http://project-magpie.github.io/ -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Application Dev & Package Management
Hey All: I'm trying to switch a large project we've been working on for years from TinyCore to yocto. I've avoided dealing with this up until now, but it can't wait any longer. I want to keep the yocto SDK that we distribute to our development team as lean as possible so that we don't have to send out ~100MB install scripts every week. We do, however, have a lot of internally developed libraries that change during each major release, so I need a simple way of installing the packages for those libraries and their dependencies to the target sysroot in the SDK dir (/opt/poky/1.7.1/sysroots/). The documentation covers this scenario briefly here: http://www.yoctoproject.org/docs/1.7.1/adt-manual/adt-manual.html#configuring-the-pms Here's the problem. Yocto sets the default package output type to RPM, but the example uses OPKG. So I switched the output to ipk, but OPKG doesn't allow capital letters in the package names. I've put together about 40 some recipes for our libraries and tools, many of which have capital letters. I've tried to get the rpm command line tool to install packages from the build repo to the sysroot directory, but haven't had any luck. After a bit of Googling, I've found most RPM reference for repos will refer to YUM commands, which isn't much help. I also tried to use smartpm on my workstation since it's the recommended package manager for runtime (on the target itself), but smart has very little reference so I ran into a wall there as well. Right now it looks like I have two options: 1) Bite the bullet and switch all my recipes to use names that don't violate OPKGs naming rules. 2) Find a way to make RPM work. What do you guys recommend? Any suggestions for the RPM route? Thanks. -Erik Disclaimer: This message contains information that may be privileged or confidential and is the property of AgJunction Inc and its subsidiaries. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message. -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] .rpm not being generated (or empty)
Hilst: You can specify what files get installed to what packages with FILES_${PN}- In your case, something like: FILES_${PN} = "${libdir}/libDigital*" FILES_${PN}-dbg = “"${libdir}/.debug/*" would probably work fine. I’d also recommend using “oe_runmake” instead of “make” in your build function. -Erik From: yocto-boun...@yoctoproject.org [mailto:yocto-boun...@yoctoproject.org] On Behalf Of Daniel. Sent: Wednesday, March 18, 2015 12:48 PM To: yocto@yoctoproject.org Subject: [yocto] .rpm not being generated (or empty) Hi all, I write a recipe to build an JNI layer for my C library, the JNI library gets compiled right, but no .rpm is generated besides -dev and -dbg. I suspect that the rpm is getting empty. Here is the recipe: http://pastebin.com/vqtaM1Fv Looking on package directory I got the compiled .so's [root@arch 1.0-r0]# find package package package/usr package/usr/lib package/usr/lib/libDigitalInputJni.so package/usr/lib/libDigitalOutputJni.so package/usr/lib/.debug package/usr/lib/.debug/libDigitalOutputJni.so package/usr/lib/.debug/libDigitalInputJni.so But on packages-split I got nothing: [root@arch 1.0-r0]# ls packages-split/libdigitalio-jni total 0 Any idea what I'm missing? Regards, Hilst -- "Do or do not. There is no try" Yoda Master Disclaimer: This message contains information that may be privileged or confidential and is the property of AgJunction Inc and its subsidiaries. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message. -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] How to support arm-none-eabi toolchain for u-boot on Amlogic
On Wed, Mar 18, 2015 at 12:55 PM, Christian Ege wrote: > Hello, > > it looks like that Amlogic based devices like the ODROID-C1 [1] > requires their u-boot compiled with an arm-none-eabi toolchain. The > rest kernel and rootfs is compiled with standard arm eabi toolchain. I > am wondering how to support this in yocto/openembedded. are there any specific reasons for doing that ? can it be done by passing -ffreestanding option via CFLAGS afterall uboot is a baremetal/standalone app. -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Installing Linux kernel headers including custom UAPI header file
Hello, I'm using Yocto (dizzy) with meta-ti and the linux-ti-staging kernel 3.14.x to build for BeagleBone Black. I've written a custom char driver with several ioctl() calls, and I'm patching that into the linux-ti-staging kernel. The driver adds a new UAPI header file that goes in the kernel tree under include/uapi/linux/mydriver.h, to define the ioctl commands. I've got a test application to use that custom char driver. I've also written a library libmydriver, to provide a more user-friendly interface to the ioctl calls. Both want to include the mydriver.h from the Linux headers. The application and library are using autotools to build. I've written a Yocto recipe to build them via autotools. My problem is this: my application and library fail to build under Yocto, due to missing the Linux kernel header file mydriver.h (/usr/include/linux/mydriver.h is where I'd expect it to appear in the build environment root filesystem). What do I need to change to cause the custom Linux kernel build to install the kernel header files, including mydriver.h into the Yocto build for other packages to use during build? (I don't want it installed on the target, only in the build sysroot, although I'm not familiar enough with Yocto to understand how it installs include files to the build sysroot, but not the target sysroot.) I can see that Linux kernel headers are being installed to tmp/sysroots/beaglebone/usr/include/linux/... but not including mydriver.h; I'm not sure what package is installing these headers. (I can also see that my header is installed at tmp/sysroots/beaglebone/usr/src/kernel/include/uapi/linux/mydriver.h, but that's not the same.) -- Craig McQueen -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
Re: [yocto] Installing Linux kernel headers including custom UAPI header file
I think I've answered my own question. The existing files installed in the build root /usr/include/linux/... are put there by the linux-libc-headers package. According to a prominent comment in meta/recipes-kernel/linux-libc-headers/linux-libc-headers.inc, I shouldn't try to fiddle with those, but instead point my application/library code to the STAGING_KERNEL_DIR. This previous post gave some useful hints: https://lists.yoctoproject.org/pipermail/linux-yocto/2014-April/002178.html But according to http://kernelnewbies.org/KernelHeaders I should just copy the specific header file I need from the kernel into my application/library source code, with a note to keep it synced with the latest kernel versions. I ended up doing the latter. -- Regards, Craig McQueen -Original Message- From: yocto-boun...@yoctoproject.org [mailto:yocto-boun...@yoctoproject.org] On Behalf Of Craig McQueen Sent: Thursday, 19 March 2015 10:59 AM To: yocto@yoctoproject.org Subject: [yocto] Installing Linux kernel headers including custom UAPI header file Hello, I'm using Yocto (dizzy) with meta-ti and the linux-ti-staging kernel 3.14.x to build for BeagleBone Black. I've written a custom char driver with several ioctl() calls, and I'm patching that into the linux-ti-staging kernel. The driver adds a new UAPI header file that goes in the kernel tree under include/uapi/linux/mydriver.h, to define the ioctl commands. I've got a test application to use that custom char driver. I've also written a library libmydriver, to provide a more user-friendly interface to the ioctl calls. Both want to include the mydriver.h from the Linux headers. The application and library are using autotools to build. I've written a Yocto recipe to build them via autotools. My problem is this: my application and library fail to build under Yocto, due to missing the Linux kernel header file mydriver.h (/usr/include/linux/mydriver.h is where I'd expect it to appear in the build environment root filesystem). What do I need to change to cause the custom Linux kernel build to install the kernel header files, including mydriver.h into the Yocto build for other packages to use during build? (I don't want it installed on the target, only in the build sysroot, although I'm not familiar enough with Yocto to understand how it installs include files to the build sysroot, but not the target sysroot.) I can see that Linux kernel headers are being installed to tmp/sysroots/beaglebone/usr/include/linux/... but not including mydriver.h; I'm not sure what package is installing these headers. (I can also see that my header is installed at tmp/sysroots/beaglebone/usr/src/kernel/include/uapi/linux/mydriver.h, but that's not the same.) -- Craig McQueen -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto
[yocto] Local YUM Repo
Hey All: I'm trying to setup a local YUM repo using the RPMs in /tmp/deploy/rpm/ I've added a .repo file to /etc/yum/repos.d with the following lines: [local] name=yocto-core2_32 baseurl=file:///home/ebolton/yocto/poky/build-max/tmp/deploy/rpm/core2_32 enabled=1 gpgcheck=0 and setup my main yum.conf file with: [main] cachedir=/var/cache/yum keepcache=1 debuglevel=10 logfile=/var/log/yum.log obsoletes=1 exactarch=0 multilib_policy=all protected_multilib=0 # PUT YOUR REPOS HERE OR IN separate files named file.repo # in /etc/yum/repos.d Yum parses the repodata dir just fine and counts the number of packages correctly, but it's excluding them all for some reason. This is the output from "yum repolist": Config time: 0.010 Yum Version: 3.4.3 COMMAND: yum repolist Installroot: / Setting up Package Sacks pkgsack time: 0.001 Repo-id : local Repo-name: yocto-core2_32 Repo-updated : Wed Mar 18 21:54:18 2015 Repo-pkgs: 0 Repo-size: 0 Repo-baseurl : file:///home/ebolton/yocto/poky/build-max/tmp/deploy/rpm/core2_32 Repo-expire : 21,600 second(s) (last: Wed Mar 18 23:01:51 2015) Repo-excluded: 4,599 Repo-filename: ///etc/yum/repos.d/local.repo repolist: 0 Any thoughts as to why all my packages are being excluded? FYI, using "--disableexcludes=[repo]?" with yum doesn't help. Thanks. -Erik Disclaimer: This message contains information that may be privileged or confidential and is the property of AgJunction Inc and its subsidiaries. It is intended only for the person to whom it is addressed. If you are not the intended recipient, you are not authorized to read, print, retain, copy, disseminate, distribute, or use this message or any part thereof. If you receive this message in error, please notify the sender immediately and delete all copies of this message. -- ___ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto