Alex Olson [Tue, 25 Jun 2013 20:10:48 +0000 (15:10 -0500)]
udev: only use devtmpfs for udev
Fix for bug: https://bugzilla.yoctoproject.org/show_bug.cgi?id=4632
Since udev 172, the 'mknod' logic was removed from udev. Yocto Dylan
is now using udev 182. This means /dev is now required to be a
devtmpfs filesystem (maintained by the kernel). If the root
filesystem is a ramdisk, the kernel's auto-mount of /dev doesn't
activate since there is no rootfs to actually mount... The bug causes
an unusable system as /dev doesn't contain even basic nodes required
to even get a login prompt.
The Yocto udev/init script mounts tmpfs if it does not detect tmpfs
or devtmpfs mounted at /dev. This appears to be outdated logic that
is no longer correct. I believe the Yocto udev init script should be
checking and mounting only 'devtmpfs' on dev.
Otavio Salvador [Tue, 25 Jun 2013 17:56:27 +0000 (14:56 -0300)]
alsa-tools: Pass ACLOCAL_FLAGS so aclocal uses the right params
The compile step ends regenerating the configure scripts included in
the source subdirs, for it to properly work we need to pass the
ACLOCAL_FLAGS or the .m4 files won't be found.
,----[ Build error ]
| ./ac3dec
| aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
| configure.in:18: warning: macro 'AM_PATH_ALSA' not found in library
| automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
| configure.in:9: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. For more info, see:
| configure.in:9: http://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_INIT_AUTOMAKE-invocation
| automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
| test/Makefile.am:1: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
| configure.in:18: error: possibly undefined macro: AM_PATH_ALSA
| If this token and others are legitimate, please use m4_pattern_allow.
| See the Autoconf documentation.
| make: *** [all] Error 1
| ERROR: oe_runmake failed
`----
Wenzong Fan [Tue, 18 Jun 2013 02:28:50 +0000 (22:28 -0400)]
logrotate: fix for CVE-2011-1548
If a logfile is a symlink, it may be read when being compressed, being
copied (copy, copytruncate) or mailed. Secure data (eg. password files)
may be exposed.
Kai Kang [Wed, 19 Jun 2013 11:49:42 +0000 (07:49 -0400)]
python-pygtk: fix parallel compile issue
defs.c dependes on gdk-types.defs and gtk-types.defs. When parallel
compile, it may fails with:
"IOError: [Errno 2] No such file or directory: 'gtk-types.defs'"
Add them to dependences of defs.c to fix this issue.
Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Kai Kang [Wed, 19 Jun 2013 10:33:07 +0000 (06:33 -0400)]
python-pygobject: disable parallel install
The installation of __glib.so is invoked by install-data-am target
which are generated by automake. installing libpyglib-2.0-python is
invoked by install-exec-am.
"make install" will firstly install libpyglib-2.0-python, then install
__glib.so, the sequence should not be broken, since _glib.so has
dependence on libpyglib-2.0-python. But when enable parallel install,
the sequence maybe break then installation fails with:
"/usr/bin/ld: cannot find -lpyglib-2.0-python"
Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Wed, 8 May 2013 12:14:45 +0000 (13:14 +0100)]
gnutls: upgrade to 2.12.23
Importantly, this fixes CVE-2013-1619.
Upstream doesn't use GNU as a host, so update the SRC_URI.
remove-gets.patch isn't required anymore, obsolete_automake_macros.patch is
merged upstream, and gnutls_fix_for_automake_1.12.1.patch doesn't seem to be
needed. It was merged and reverted upstream, and my build without it succeeded.
Richard Purdie [Fri, 3 May 2013 14:11:33 +0000 (15:11 +0100)]
path.py: Deal with race issue
The change to use copyhardlinktree in some of the sstate code instead of
copytree exposed a race condition. This is due to cp failing if it finds
a directory doesn't exist yet some other process creates it while cp was
trying to create it itself. tar doesn't error in this case.
To fix this we need to create the directory structure with tar, then
use cp to hardlink the files. Messy but probably worth doing.
I also took the opportunity to remove src_bak since the code is neater
without it.
Robert Yang [Sat, 27 Apr 2013 09:32:07 +0000 (05:32 -0400)]
sstate.bbclass: make hard links for staging files
Make hard links for staging files instead of copy to save the disk space
(3G will be saved for a core-image-sato build), and it doesn't affect
much on the build time.
The following directories are affected:
1) The sysroot
2) The DEPLOY_DIR
3) The pkgdata
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Laurentiu Palcu [Tue, 7 May 2013 12:31:14 +0000 (15:31 +0300)]
archive-*-source.bbclass: handle dependency in anonymous function
Using "before do_rootfs" would have this task added to do_rootfs
dependencies regardless of the filtering options. Instead, add this
dependency in the anonymous python function.
Kevin Strasser [Wed, 12 Jun 2013 20:27:15 +0000 (13:27 -0700)]
archiver.bbclass: check if package contains a copyleft license
The copyleft filter is only excluding packages that contain a
closed source license. This is because oe.license.is_included()
returns a boolean value that indicates if the license is excluded,
and a string that contains the matched included licenses. If the
string is empty it indicates that no licenses were matched.
Reject packages that do not contain a copyleft license.
Jonathan Liu [Thu, 20 Jun 2013 13:19:53 +0000 (23:19 +1000)]
qt4: add eglibc-gconv-utf-16 to QtCore RRECOMMENDS when using glibc
This fixes the following warnings when running Qt applications:
QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
Qt's QString class stores strings internally using UTF-16 encoding.
The UTF-16 iconv module is needed to convert between the system's local
8-bit representation and QString's UTF-16 encoding.
For example, the following functions would be affected:
QString::fromLocal8Bit(...)
QString::toLocal8Bit(...)
If the UTF-16 iconv module couldn't be loaded, it would use Latin-1
encoding instead of the system's encoding for conversion.
Richard Purdie [Thu, 20 Jun 2013 15:48:23 +0000 (16:48 +0100)]
base.bbclass: Ensure finalised data is displayed in build banner
The build banner displayed at the start of builds can be misleading since
the data store has not been finalised. As easy way to illustrate this is
to use something like:
Jonathan Liu [Fri, 14 Jun 2013 13:15:17 +0000 (23:15 +1000)]
qt4: disable gdb_dwarf_index
* qmake is trying to call native gdb and we don't depend on gdb-native
(or even provide gdb-native)
* fixes errors like this:
/bin/sh: gdb: command not found
/bin/sh: line 0: test: -gt: unary operator expected
Darren Hart [Mon, 22 Apr 2013 23:27:38 +0000 (16:27 -0700)]
linux-firmware: Look for RTL license in the right directory
The rtl-license package FILES was pointing to the wrong directory as it
was removed from there in commit:
acd3735 linux-firmware: Remove duplicaed license from rtlwifi subdir
This resulted in a do_rootfs failure for core-image-sato-sdk for fri2
with ipk when the linux-firmware-dev package tried to install
linux-firmware-rtl-license which wasn't created as it was empty.
Ming Liu [Wed, 15 May 2013 05:56:50 +0000 (05:56 +0000)]
grep: fix for CVE-2012-5667
Multiple integer overflows in GNU Grep before 2.11 might allow
context-dependent attackers to execute arbitrary code via vectors
involving a long input line that triggers a heap-based buffer overflow.
Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Roy.Li [Fri, 14 Jun 2013 07:15:22 +0000 (15:15 +0800)]
directfb:filter out -fno-omit-frame-pointer option on x86 arch
directfb need -fomit-frame-pointer option of gcc to build some inline
asm code about mmx. But once -fno-omit-frame-pointer was added
into TARGET_CFLAGS. That will cause directfb build error on x86 arch.
Muhammad Shakeel [Thu, 13 Jun 2013 11:41:20 +0000 (16:41 +0500)]
openssl: Add fix for cipher des-ede3-cfb1
Add patch file for one of the ciphers used in openssl, namely the cipher
des-ede3-cfb1. Details of the bug, without this patch, can be found here.
http://rt.openssl.org/Ticket/Display.html?id=2867
Ross Burton [Wed, 12 Jun 2013 10:24:20 +0000 (11:24 +0100)]
runqemu: when tunctl can't be found, say what package builds it
If runqemu is used without actually building any qemu images (i.e. you
downloaded the images) it's likely that qemu-helper-native hasn't been built.
Instead of just saying what command can't be found, tell the user how to solve
their problem.
Without using our python classes and having appropriate dependencies, the
build is nondeterministic, and whether a python-avahi package is produced will
vary depending on the host environment, yet avahi-discover is always produced,
and it depends on python-avahi.
Ross Burton [Tue, 11 Jun 2013 17:00:03 +0000 (18:00 +0100)]
systemd: don't install quotaon.service twice
If the same file is installed twice there's a race which can lead to "make
install" failing. Remove the redundant installation of quotaon.service to
eliminate the race.
The -meta packages were depending on non-existing packages,
like -glib and -apps. The fix checks if packages in the PACKAGES list
are empty. If so, they are omitted from the rdepends list.
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Barker [Tue, 7 May 2013 09:05:22 +0000 (10:05 +0100)]
qt4: remove trailing slash from prefix
The trailing slashs on "Prefix=${prefix}/" and "-prefix ${prefix}/" are passed
through to the generated pkgconfig files and may be joined to paths like
"/include" yielding a final path with a double forward-slash (eg.
"/usr//include"). This may end up in the debugging symbols in other applications
or libraries which depend on qt4 which in turn causes the debugedit program to
fail with the message "canonicalization unexpectedly shrank by one character"
when it tries to replace the double forward-slash with a single forward-slash.
Thus the function split_and_strip_files fails and ultimately do_package fails.
As this slash is removed from the prefix it is added into the regular expression
used to fix up pkgconfig files later in the recipe.
This error was seen in vlc in meta-openembedded and should be solved by this
change in openembedded-core.
Richard Purdie [Fri, 31 May 2013 11:07:08 +0000 (14:07 +0300)]
alsa-tools: Fix configure race
aclocal is being called here directly,
not called by autotools.bbclass wrapper.
aclocal files are installed in sysroot,
and are removed while build is still running.
This translates to a possible race condition during the build.
Jonathan Liu [Fri, 31 May 2013 11:09:14 +0000 (11:09 +0000)]
classes/buildhistory: record removals in buildhistory directory
"git add ." does not record files that were removed in the buildhistory
directory. Specify the -A flag to also record removals.
This was discovered by the following warning added in Git 1.8.3:
warning: You ran 'git add' with neither '-A (--all)' or '--ignore-removal',
whose behaviour will change in Git 2.0 with respect to paths you removed.
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Fri, 31 May 2013 03:28:46 +0000 (23:28 -0400)]
qemu*: restrict NFSD to linux-yocto only
In the current releases, not all linux-yocto derived kernels have NFS
support, or NFS support fragments availble. To ensure that derived
kernels like linux-yocto-cutom continue to work against poky-lsb,
we can make the KERNEL_FEATURE append more specific to the linux-yocto
recipe.
Paul Eggleton [Thu, 30 May 2013 08:49:15 +0000 (09:49 +0100)]
python-smartpm: add gettext-native to DEPENDS
Fixes the following failure at do_install building python-smartpm-native
if gettext-native has not already been built and gettext tools are not
installed on the host:
| compiling locale/it/LC_MESSAGES/smart.po -> locale/it/LC_MESSAGES/smart.mo
| sh: msgfmt: command not found
...
| creating $D/usr/share/share/locale/it/LC_MESSAGES
| error: can't copy 'locale/it/LC_MESSAGES/smart.mo': doesn't exist or not a regular file
Note that we need gettext-native in DEPENDS and not "inherit gettext"
here because for native variants, gettext.bbclass instead adds
gettext-minimal-native to DEPENDS and that does not provide the msgfmt
command.
Signed-off-by: Jesse Zhang <sen.zhang@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jesse Zhang [Tue, 19 Feb 2013 08:58:15 +0000 (08:58 +0000)]
dbus-glib: use BPN instead of PN
Fix warnings in multilib build:
WARNING: For recipe lib32-dbus-glib, the following files/directories were installed but not shipped in any package:
WARNING: /usr/share/dbus-glib
WARNING: /usr/share/dbus-glib/tests
Signed-off-by: Jesse Zhang <sen.zhang@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bogdan Marinescu [Wed, 29 May 2013 13:40:10 +0000 (13:40 +0000)]
guile: added runtime dependency on glibc-gconv-iso8859-1
guile needs to be able to convert strings from ISO-8859-1 in order
to work properly. This patch adds a runtime dependency to the required
convert package, but only when glibc is used. The fix for uClibc depends
on another bug (#4530).
Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Xin Ouyang [Wed, 29 May 2013 15:09:55 +0000 (10:09 -0500)]
qmake_base.bbclass: Add linux-gnun32-oe-g++ to QMAKESPEC
For some mips targets, TARGET_OS is set to linux-gnun32, while
linux-gnun32-oe-g++ is not listed in the default QMAKESPEC list of
qmake in oe-core/wrlinux. This would cause build failures for qt
apps, so add a matching rule to fix this.
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Samuli Piippo [Mon, 27 May 2013 10:24:45 +0000 (13:24 +0300)]
gdb-cross-canadian: use correct exec-prefix path for python
Incorrect exec-prefix path was given to gdb which leads to gdb
startup failure when SDK is not installed to its original destination.
Gdb relocates the exec-prefix path, so it will work for SDKs that
are installed to different location. PYTHONHOME env in no longer
neeeded for gdb.
Jonathan Liu [Thu, 16 May 2013 02:59:47 +0000 (12:59 +1000)]
systemd: fix ordering for machineid and run-postinsts services
The remount-rootfs.service unit has been renamed to
systemd-remount-fs.service in systemd v183 and later.
The run-postinsts script writes to /var/log (a symbolic link to
/var/volatile/log), so systemd-tmpfiles-setup.service is added to After=
in run-postinsts.service to ensure /var/volatile/log is created before
running the script.
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Nitin A Kamble [Thu, 23 May 2013 16:09:20 +0000 (16:09 +0000)]
dropbear: a fix for hang in dropbearkey, built for x32
This commit fixes runtime hang of 'dropbearkey' utility, built for a x32
target abi system. The hang was observed while generating ssh keys, with
this command:
dropbearkey -t dss -f private
The issue is fixed by changing the code, where 'long' in x86_64 mode is
assumed as 64bit quantity. With the x32 abi, the processor is in x86_64
mode, but the 'long' is a 32bit quantity. Hence the fix uses 'long long'
instead of 'long' to define/access 64bit data variables.
Bruce Ashfield [Mon, 13 May 2013 04:06:14 +0000 (21:06 -0700)]
kern-tools: refresh and make dash compliant
The separately packaged merge_config.sh in the kern-tools package was
missing upstream fixes, and in particular a change that ensures it is
dash compatible.
By grabbing that upstream commit and rebasing the existing patches on
top of the new baseline, we are up to date and working on systems
where /bin/sh is dash.
[YOCTO #4473]
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Stefan Stanacar [Tue, 14 May 2013 16:21:35 +0000 (19:21 +0300)]
connman: replace hardcoded path in init script and systemd service
The connman init script sources a setup file from /usr/lib/connman,
so we end up with no network in qemu multilib enabled images.
The init script it's installed by connman and because wired-setup
it's installed by another package (connman-conf) we can't use
libexecdir here and now (in the init script and systemd service file).
Once libexecdir changes from ${libdir}/${bpn} to something else like
/usr/libexec we could use that instead of ${libdir}/connman.
Richard Purdie [Tue, 14 May 2013 05:50:33 +0000 (08:50 +0300)]
package.bbclass: Fix sources contents
http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=c376f1f49cea182a2887945840ab97a20970a373
fixed a valid issue where the sources file was accumulating information
and subsequent task runs of do_packacge were not cleaning it. The
fix is wrong however since we're removing the file within a loop.
This fix removes the file outside the loop ensuring it is not truncated
and contains the correct information.
Saul Wold [Tue, 7 May 2013 15:26:04 +0000 (08:26 -0700)]
rpm: ensure __mkdir_p matches __mkdir
They differ at times because one is set from the db_cv_path_mkdir and the other is
found during config time for the host (/usr/bin/mkdir), in the macros we should just
use __mkdir for the __mkdir_p variant.
Stefan Stanacar [Tue, 7 May 2013 15:45:37 +0000 (18:45 +0300)]
xserver-xorg: Add xkbcomp to RRECOMMENDS
OE-Core commit bdcc5e8f1286d288baf410458efc39a59b68d751 removed xkbcomp
from RDEPENDS for xkeyboard-config but X server still needs it otherwise
it fails to start.
Bruce Ashfield [Fri, 3 May 2013 03:07:54 +0000 (20:07 -0700)]
kern-tools: anchor and delimit regexs
Updating the kern-tools SRCREV with the following fix:
Updateme is responsible for updating an existing meta-series with new patches,
configs and tree manipulations. To do this, it first checks for an existing
board description and generates one if required. It then searches for features
and fragments to be applied for the tree.
There were two problems:
- A top level board description is detected via the presence of "define"
directives that indicate the board name, the arch and kernel type. The
test for define would match on patches or fragments with 'define' in their
name, and would incorrectly use that file as the top level board description.
This is fixed by ensuring that only defines at the start of a line, or preceded
by whitepace match.
- When searching for features that were indicated as 'addon' or 'optional', the
search would find, and apply, any feature with the passed name as substring
versus an exact match.
This is fixed by ensuring that the matched feature name is /<feature name>
versus <feature name>
Bruce Ashfield [Fri, 26 Apr 2013 03:31:51 +0000 (23:31 -0400)]
linux-yocto/3.4: iwlwifi, ext4, brtfs warning and -rt fixes
Updating the yocto 3.4 SRCREVs for the following fixes:
206d4bb powerpc/perf: run irq-work under softirq context in rt 8a969f9 arm/perf: run irq-work under softirq context in rt 79ba946 iwlwifi: fix unused variable warning 59d93fa ext4: remove unused variable in ext4_update_super() 2385eee Btrfs: fix compile warnings in extent_io.c
Phil Blundell [Thu, 2 May 2013 13:55:02 +0000 (14:55 +0100)]
fs-perms.txt: Don't tinker with file modes in /usr/src/debug
Since 6775feb9fe935ab01fd9cae2b2d3fce5824a9a72 our local "copy" of the
debug sources has in fact been hardlinked to ${S} and potentially other
places too. This means that any modifications we make to these files
might have wider consequences than intended.
Avoid this potential pitfall by telling fixup_perms() to leave the file
modes in this directory alone. No great harm will result from shipping
debug sources with a mode other than 0644: if the mode was permissive
enough for us to compile the sources in the first place then it must
also be permissive enough for subsequent debugging.
Phil Blundell [Thu, 2 May 2013 12:19:25 +0000 (13:19 +0100)]
gcc-runtime: Avoid error when trying to remove nonexistent directories
If we didn't build libgomp then we won't have installed anything into
${infodir} or ${libdir}/gcc/${TARGET_SYS}/${BINV}/finclude. Check
whether those directories exist before trying to remove them, else we
will lose.
Laurentiu Palcu [Fri, 3 May 2013 09:01:04 +0000 (12:01 +0300)]
archive-*-source.bbclass: have do_dumpdata_create_diff_gz task run before do_rootfs
do_rootfs[cleandirs] contains ${S} and, if do_rootfs task starts before
the do_dumpdata_create_diff_gz is finished, an error will occur in the
process because the directory will be removed while still needed by the
create_diff_gz() function.
This patch will force the do_dumpdata_create_diff_gz task to run before
do_rootfs when the final image is created.
Tomas Frydrych [Fri, 3 May 2013 12:18:11 +0000 (13:18 +0100)]
image_types: fix default location of kernel when generating elf images
Generation of elf images fails because kernel images are no longer staged under
${STAGING_DIR_HOST}/kernel, but rather ${STAGING_DIR_HOST}/usr/src/kernel. This
patch fixes the path to point to the correct location.
scripts/postinst-intercepts: create separete hooks for multilib
When using multilib, the hooks for lib32/lib64 must be different because
the libdir/base_libdir point to different locations. Postinstalls
calling postint_intercept script must pass the mlprefix in the 3rd
argument.
The reason for reverting this is:
* qemuwrapper has now a fallback method;
* when using multilib, calling qemu_target_binary from recipes would
always point to the qemu binary corresponding to the machine
architecture. Hence, postinstalls needing to use qemu would call the
wrong qemu user emulation binary;
qemuwrapper: use fallback in case the ELF binary is wrong
This wrapper script is called mainly from intercept hooks and allarch
packages postinstalls. When multilib is used, the qemuwrapper script
points to the binary that matches the MACHINE architecture.
For example: if MACHINE=qemux86_64 and we activate multilib, then the
postinstalls for lib32 packages would call qemu-x86_64 with 32 bit
binaries and they would certainly fail.
This patch adds just a fallback method if the exit code of the previous
qemu call corresponds to "Invalid ELF image for this architecture"
error. This will allow us to have all postinstalls run on host.
Phil Blundell [Thu, 25 Apr 2013 14:34:21 +0000 (15:34 +0100)]
glib: Add --disable-man to configure arguments
Without this, glib will probe for the existence of xsltproc and use that
to decide whether or not it wants to generate manpages. This has two
consequences, neither of them good:
a) the result of the build will vary depending on whether xsltproc
happens to be installed in either the native sysroot or the host
environment; and
b) if xsltproc does happen to be installed but docbook-xsl isn't, the
build will fail with "I/O error" messages.
Martin Jansa [Wed, 24 Apr 2013 13:42:12 +0000 (15:42 +0200)]
conf/machine: use .= instead of += in TUNE_CCARGS
* number of TUNE_CCARGS conditionals is important if we add
extra space with each one in "else" branch
I'm building for 2 MACHINEs one is cortexa9, second is cortexa8
few months ago we added TUNE_CCARGS[vardepvalue] in bitbake.conf
http://git.openembedded.org/openembedded-core/commit/?id=03f1e34ea3ce80931e9c3cd2ab22824f28a7233b
which fixed some cases (like mentioned tune-xscale and tune-arm926ejs)
where both had unused TUNE_CCARGS when common DEFAULTTUNE was used.
with cortexa[89] it's different, because cortexa9 has one extra TUNE_CCARGS
TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "cortexa9", "-mtune=cortex-a9", "", d)}"
which adds extra *space* even when not used because of '+=' and as result:
Don't add the first line of /etc/rpm/platform to the list of patterns
to match when computing an arch score, use it just for getting
information about the platform (cpu/vendor/os).
Phil Blundell [Wed, 24 Apr 2013 11:43:27 +0000 (12:43 +0100)]
libxslt: Avoid regenerating manpage during "make install"
The timestamps in libxslt-1.1.28.tar.gz (specifically) are rather hokey, making
the source files for the documentation appear newer than the generated output:
This causes make to decide that xsltproc.1 needs to be regenerated during the
installation process. However, this requires a native xsltproc binary which
may not be available, leading to errors like:
| make[2]: /usr/bin/xsltproc: Command not found
| make[2]: [xsltproc.1] Error 127 (ignored)
Adding DEPENDS_class-target = "libxslt-native", or installing xsltproc in the
host environment, fixes the above but the documentation still doesn't build:
| I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
| warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"
| error
| xsltParseStylesheetFile : cannot parse http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
| compilation error: file ./xsltproc.xml line 10 element refentry
| xsltParseStylesheetProcess : document is not a stylesheet
And in any case, requiring libxslt-native would increase build time for no
real benefit. So, let's just adjust the timestamp on the shipped copy of
xsltproc.1 to make it appear newer than the source files.
If it's not first boot, /tmp has already been symlinked to /var/volatile/tmp.
But the udev service starts before populate-volatile.sh starts. This leads to
a dead link at /tmp. As a result, trying to create any file under /tmp will
fail.
If a USB is plugged in before the populate-volatile.sh script starts, the
/tmp/.automount-$name file will not be created correctly. As a result, when
the USB is unplugged, the /media/$name directory is not removed.
So we create /var/volatile/tmp directory in the udev script to avoid this dead
link problem.
Depending on kernel version used, the system can hung when trying to
mount the extended partition (not the logical one) as it is a holder
for other partitions and does not have a filesystem in it.
To avoid this to happen we just mount partitions when these are using
known filesystems so it does not try to mount a partition for an
unsupported filesystem.
Ross Burton [Mon, 22 Apr 2013 14:33:25 +0000 (15:33 +0100)]
glib-2.0: disable tests for native builds, and respect ptest for LSB
Without disabling the tests in the native build, glib-2.0-native will need
libdbus-native to be present. As we don't run the tests, disable them so we
don't have build failures due to missing dependencies.
Also, the LSB override was missing PTEST_CONF so the same problem could happen.
After adding PTEST_CONF the LSB override is identical to the non-overridden
EXTRA_OECONF, so remove it.
Finally, to be explicit, put --enable-module-tests in PTEST_CONF.
grub-efi-native: fix build on modern distributions without gets()
O irony: the grub2/gnulib nag macro that says "don't use gets, use fgets" breaks the build if you're using a recent (e)glibc release that has gets removed.
Fedora already #if 0's the check in grub, so I stole their patch.
image.bbclass: change the logic when intercepts fail
Due to some issues with postinstalls that register hooks, we changed the
logic a bit. Now, all postinstalls that register hooks will return
successfully and only after, if hooks fail, mark the package as unpacked.