Tudor Florea [Tue, 1 Oct 2013 22:54:40 +0000 (22:54 +0000)]
kmod: ptest fixes
Make kmod-ptest able to compile with separated source and
build dir. Since kmod test files contain kernel modules for
many different architectures, strip and arch gets confused
and throws errors.
Bruce Ashfield [Wed, 2 Oct 2013 19:15:26 +0000 (19:15 +0000)]
linux-yocto: enable CONFIG_INPUT_EVDEV as standard policy
We have a number (in fact most) BSPs that require INPUT_EVDEV for basic
functionality. The size increase is minimal, so we'll add it to the
standard configuration for all platforms.
Some packages may return error while running opkg-cl configure, during
first boot. This will fail 'ExecStart' and 'ExecStartPost' will not run.
Without 'ExecStartPost' opkg-configure service will continue to run on
successive boot attempts. 'ExecStartPost' should disable this service
after first boot irrespective of 'ExecStart' status.
Richard Purdie [Wed, 2 Oct 2013 13:09:50 +0000 (13:09 +0000)]
cross-canadian: Fix TUNE_PKGARCH references
The cross-canadian compilers are now build once per architecture but were being
installed into tune specific locations which is incorrect. This adjusts things
so they are make TARGET_ARCH specific. We gain the tune specific parts from the
target sysroot which remains tune specific, the compiler and tools are independent
ot that.
binutils/gcc require sysroot options but since we reset at runtime, these shouldn't
have dependencies in the sstate checksums. They are therefore also excluded.
With these patches, switching machines does not result in a rebuild of *-cross-canadian
and the compiler is correctly located and referenced in the target images.
where X is an armv7a machine and Y is not results in pixman rebuilding
due to the neon option. This is incorrect. The ultimate fix will be
not to apply target system overrides in the nativesdk case. Until
we do that we can at least work around the issue as done by this patch.
We only care about the end result in this case, not the specific inputs
that went into determining the gcc option. This change updates the code
to reflect that.
If you build nativesdk for machine A, then change to B you will see sstate
manifest warnings for the packagedata files. The stamps are machine
specific and should not be, ditto for native.
This patch copies the populate-sysroot extra stamp entries to avoid
these warnings.
Jonathan Liu [Wed, 2 Oct 2013 10:47:11 +0000 (10:47 +0000)]
boot-directdisk: avoid loop in MBR disk signature generation
Instead of looping until the generated signature is non-zero, just
return 'ffffffff' if it's zero. This avoids an infinite loop if the
generated signature is always zero.
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>
Tom Zanussi [Fri, 4 Oct 2013 14:37:38 +0000 (09:37 -0500)]
yocto-kernel: Use variable-substituted BBLAYERS
The current find_bblayers() code finds and parses the BBLAYERS
variable manually, and therefore doesn't handle variable substitution,
which causes problems if used.
This change makes find_bblayers() use the variable-substituted
BBLAYERS instead.
Nathan Rossi [Tue, 1 Oct 2013 04:19:42 +0000 (04:19 +0000)]
linux-dummy.bb: Resolve missing task issues
Commit 609d5a9ab9e58bb1c2bcc2145399fbc8b701b85a added additional
initramfs functionality and created an additional task on kernel.bbclass
Adding this task was missed on the linux-dummy recipe, which causes task
dependency issues due to image.bbclass depending on
"virtual/kernel:do_bundle_initramfs". This change adds a dummy task
which resolves the dependency issue.
Saul Wold [Tue, 1 Oct 2013 16:57:52 +0000 (16:57 +0000)]
makedevs: Do not return error if the fifo exisits
This ensures that makedevs will not cause image creation failures
when it encounters a pipe (fifo) that exists from a previous image.
This handles mode changes and it will correctly fail for dangling
symlinks.
Tom Zanussi [Thu, 19 Sep 2013 04:32:19 +0000 (04:32 +0000)]
wic: Add OpenEmbedded-specific implementation
Reuses the mic/livecd infrastructure but heavily subclasses and
modifies it to adapt to the special needs of building images from
existing OpenEmbedded build artifacts.
In addition to the OE-specific mic objects and modifications to the
underlying infrastructure, this adds a mechanism to allow OE kickstart
files to be 'canned' and made available to users via the 'wic list
images' command.
Two initial OE kickstart files have been added as canned .wks files:
directdisk, which implements the same thing as the images created by
directdisk.bbclass, and mkefidisk, which can essentially be used as a
replacement for mkefidisk.sh. Of course, since creation of these
images are now driven by .wks files rather than being hard-coded into
class files or scripts, they can be easily modified to generate
different variations on those images. They also don't require root
priveleges, since they don't use mount to create the images. They
don't however write to media like mkefidisk.sh does, but rather create
images that can be written onto media.
Tom Zanussi [Sat, 24 Aug 2013 15:31:34 +0000 (15:31 +0000)]
wic: Add mic w/pykickstart
This is the starting point for the implemention described in [YOCTO
3847] which came to the conclusion that it would make sense to use
kickstart syntax to implement image creation in OpenEmbedded. I
subsequently realized that there was an existing tool that already
implemented image creation using kickstart syntax, the Tizen/Meego mic
tool. As such, it made sense to use that as a starting point - this
commit essentially just copies the relevant Python code from the MIC
tool to the scripts/lib dir, where it can be accessed by the
previously created wic tool.
Most of this will be removed or renamed by later commits, since we're
initially focusing on partitioning only. Care should be taken so that
we can easily add back any additional functionality should we decide
later to expand the tool, though (we may also want to contribute our
local changes to the mic tool to the Tizen project if it makes sense,
and therefore should avoid gratuitous changes to the original code if
possible).
Added the /mic subdir from Tizen mic repo as a starting point:
Also added the /plugins subdir, moved to under the /mic subdir (to
match the default plugin_dir location in mic.conf.in, which was
renamed to yocto-image.conf (moved and renamed by later patches) and
put into /scripts.
Tom Zanussi [Tue, 20 Aug 2013 20:55:16 +0000 (20:55 +0000)]
wic: Initial code for wic (OpenEmbedded Image Creator)
Initial implementation of the 'wic' command.
The 'wic' command generates partitioned images from existing
OpenEmbedded build artifacts. Image generation is driven by
partitioning commands contained in an 'Openembedded kickstart' (.wks)
file specified either directly on the command-line or as one of a
selection of canned .wks files (see 'wic list images'). When applied
to a given set of build artifacts, the result is an image or set of
images that can be directly written onto media and used on a
particular system.
'wic' is based loosely on the 'mic' (Meego Image Creator) framework,
but heavily modified to make direct use of OpenEmbedded build
artifacts instead of package installation and configuration, things
already incorporated int the OE artifacts.
The name 'wic' comes from 'oeic' with the 'oe' diphthong promoted to
the letter 'w', because 'oeic' is impossible to remember or pronounce.
This covers the mechanics of invoking and providing help for the
command and sub-commands; it contains hooks for future commits to
connect with the actual functionality, once implemented.
Help is integrated into the 'wic' command - see that for details on
usage.
Scott Rifenbark [Mon, 30 Sep 2013 20:53:33 +0000 (13:53 -0700)]
ref-manual: Edits to restore the supported Linux distro list.
This list evidently is not quite ready so I put it back to its
orginal form with a couple of commented out lines in there for
some distros that might be part of the list.
Scott Rifenbark [Thu, 26 Sep 2013 20:39:27 +0000 (13:39 -0700)]
dev-manual: Updates to "Working with Eclipse" section.
I added a step on making sure they have Oracle JDK in there
to the section that builds the plugin. Also, removed the
third method to install the plugin.
Scott Rifenbark [Tue, 24 Sep 2013 21:47:10 +0000 (14:47 -0700)]
poky.ent: Fixed variable for ADT Installer download link
The YOCTO_ADTINSTALLER_DL_URL variable used to point to the
ADT Installer tarball download area was incorrect. It was set
to "&YOCTO_RELEASE_DL_URL;/adt_installer". Community member
Dusty Clark ran into trouble downloading from the link in the
"Current" documentation version of the Application Developer's
Manual. I fixed the variable to be
YOCTO_ADTINSTALLER_DL_URL "&YOCTO_RELEASE_DL_URL;/adt-installer".
Scott Rifenbark [Mon, 23 Sep 2013 23:35:26 +0000 (16:35 -0700)]
ref-manual, dev-manual: Edits to running automated tests section.
Applied a second round of review edits from Paul Eggleton
for the new "Performing Automated Runtime Testing" section.
I did some reorganization and some minor wording changes.
Scott Rifenbark [Mon, 23 Sep 2013 20:23:00 +0000 (13:23 -0700)]
bsp-guide, dev-manual: Updated for 3.10 default kernel
YP 1.5 default kernel is 3.10. This is a change from 3.8 in
the previous release. This change affected several areas of
the documentation.
1. The BSP Guide had a crownbay BSP structure that did not
account for the new default.
2. The yocto-bsp tool output still asked for the 3.8 kernel
as the default.
3. The recipes-bsp section had 3.8 used and had some bad
listings that had to be changed.
4. The recipes-graphics section had 3.8 used and also had some
stuff supporting two versions of the graphics (emgd and
noemgd). I had to pull the emgd stuff.
5. There were miscellaneous spots in the dev-manual that were
referencing 3.8 as the default kernel. Particularly the
list that shows what kernel repositories we have. That needed
updating.
Scott Rifenbark [Mon, 23 Sep 2013 18:06:18 +0000 (11:06 -0700)]
ref-manual: Updates to DESTDIR areas.
Removed the glossary entry for DESTDIR as this is a Makefile
variable. Also, updated the reference sentence to DESTDIR
that was in the autotools.bbclass section.
Richard Purdie [Thu, 26 Sep 2013 17:01:29 +0000 (17:01 +0000)]
pseudo: Fix race problems
There is a potential issue with the fastop code in pseudo since a process may
exit and allow some other function to run before the server has processed
the commands run by the process. Issues have been see with unpredictable
file permissions.
To avoid this, we ping the server before exitting which guarantees it has
processed the current command queue.
The patch was written by peter.seebach@windriver.com
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>
Jason Wessel [Fri, 27 Sep 2013 01:01:20 +0000 (01:01 +0000)]
mkefidisk.sh: Allow using a loopback mounted file
It should be possible to generate a disk to a file using a loopback
device with mkefidisk.sh, which is useful for booting simulators. To
make this possible the partitions for the loop back need to work
similarly to the mmc devices. The mkfs.vfat also requires and
additional argument to force it to write to something other then a
real disk.
Note:
Also a bug was fixed in the mkefidisk.sh where if the disk you are
writing to initially has an invalid label the size of the first
partition will be computed incorrectly. For the simulator disk
creation this is generally always the case, but this can happen with
real hardware as well.
Jason Wessel [Fri, 27 Sep 2013 21:32:00 +0000 (21:32 +0000)]
kernel.bbclass: Allow INITRAMFS_TASK to trigger copy initramfs code
Activating the INITRAMFS_TASK can cause circular dependencies, but
that is up to the end user to resolve in recipes. The INITRAMFS_TASK
should also trigger immediate linking of the cpio task in the first
compile pass. This was a subtle regression introduced by: 609d5a9ab
(kernel.bbclass, image.bbclass: Implement kernel INITRAMFS dependency
and bundling).
This patch restores the previous behavior and only affects the
INITRAMFS_TASK which is not set by any of the default build profiles
in oe-core.
Muhammad Shakeel [Fri, 27 Sep 2013 18:14:15 +0000 (18:14 +0000)]
opkg: Use systemd service for first boot configuration
Currently opkg uses a script to configure packages during first time boot.
This script is present in rcS.d and when 'sysvinit' is disabled this
script doesn't execute. For systemd only distros this newly added service
will run the opkg configure during first boot only.
Paul Eggleton [Fri, 27 Sep 2013 15:46:06 +0000 (15:46 +0000)]
psplash: copy image files from workdir instead of next to recipe
During parsing this recipe builds up a list of splash image files,
however it was recording full paths to local files (i.e. the files next
to the recipe) and then in do_compile it was pointing to those instead
of the fetched files in WORKDIR. Fix it to use the fetched files which
has the added benefit of the do_compile signature not changing if the
recipe is moved around.
Richard Purdie [Fri, 27 Sep 2013 09:58:17 +0000 (09:58 +0000)]
native: Use a native site file and ensure the correct sed is used
native recipes were not using the site files. There are some things we need
to correct such as not using the path to sed-native. This allows us
to deploy settings globally for all recipes rather than hacking around
then in individual recipes as libtool-native used to for sed.
systemd-compat-units: do not create runlevel command
It seems strange that runlevel always returns 1, The comment says it is
related to sysvinit, but if we enable systemd, sysvinit will not be
installed. and we have created a link for runlevel to systemctl if
systemd is installed.
Roy Li [Wed, 25 Sep 2013 05:58:36 +0000 (05:58 +0000)]
makedevs: rectify the exit codes and handle the invalid parameter
It is correct behaviours to output help and version information,
and should return 0;
When input parameter is invalid, print help information and exit.
Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Roy Li [Thu, 26 Sep 2013 01:56:08 +0000 (09:56 +0800)]
dropbear: pass SFTPSERVER_PATH explicitly
The default value of SFTPSERVER_PATH is "/usr/libexec/sftp-server" defined in
dropbear-2013.58/option.h, but after commit 406bd38b423[bitbake.conf: change
libexecdir to ${libdir}/${BPN}], sftp-server is provided by openssh package,
and is installed into ${libdir}/openssh, so we pass it explicitly.
Ross Burton [Thu, 26 Sep 2013 16:43:05 +0000 (17:43 +0100)]
eglinfo: drop machine-specific configuration from oe-core
eglinfo.inc has some board-specific EGLINFO_DEVICE settings but is missing the
dependencies. Maintaining them for all supported devices in oe-core isn't
scalable and this is trivially supported though a bbappend in each BSP layer.
This was also causing problems compiling eglinfo on meta-yocto-bsp's beagleboard
machine as the EGLINFO_DEVICE setting for beagleboard was telling it to use the
closed GPU drivers, which are not supported in meta-yocto-bsp.
Ross Burton [Thu, 26 Sep 2013 16:06:36 +0000 (17:06 +0100)]
matchbox-panel: silence some pointless warnings
The battery applet emits a warning if the hardware doesn't have a battery (it
shouldn't) and the parser emits a warning if two separators are used in a row
(which happens if the hardware has a keyboard). Silence these with a patch from
upstream.
Jason Wessel [Tue, 17 Sep 2013 13:32:17 +0000 (13:32 +0000)]
boot-directdisk.bbclass: Fix media generation problems with vmdk
The various populate methods need to accept a path as an argument vs
using hard expanded variables. In the case of the boot-directdisk
class it uses a different path for HDDDIR but it gets eclipsed by the
the class definition at the point in time ${HDDDIR} gets expanded.
The logical fix is to pass the arguments to the functions as opposed
to using globally expanded variables from the class definitions.
This patch changes 3 things:
1) syslinux_hddimg_populate takes an argument for the destination
2) syslinux_iso_populate takes an argument for the destination
3) populate is changed to boot_direct_populate because there
was a conflict with it overriding the populate in bootimg.bbclass
Jason Wessel [Tue, 17 Sep 2013 13:32:13 +0000 (13:32 +0000)]
syslinux.bbclass, syslinux: Update to syslinux 6.01
A newer version of syslinux is required for an EFI enabled isohybrid.
This is used for the the capability to generate 3 types of ISO images,
all of which can be booted off a USB device or HDD if copied with dd.
1) PC BIOS only ISO
2) EFI only ISO
3) EFI + PC BIOS ISO
The syslinux.bbclass required a minor tweak because a few .c32
libraries require dynamic loading from the created media as of
syslinux 5 and up. This was a good time to also fix the
duplication of the AUTO_SYSLINUXMENU block.
Jason Wessel [Tue, 17 Sep 2013 13:32:16 +0000 (13:32 +0000)]
syslinux.bbclass: Fix hard coding of console=tty*
The SYSLINUX_SERIAL variable was hard coded and occasionally needs to
be different for the kernel argument vs the syslinux argument.
In the auto-generated boot mode console=tty0 was hard coded, and this
is not needed at all, and causes problems in some cases if a end user
wanted to change the console=... via the kernel boot argument APPEND
mechanism. The default can be forced with SYSLINUX_DEFAULT_CONSOLE
for systems that need a special specification to enable the frame
buffer instead of a serial port.
Jason Wessel [Tue, 17 Sep 2013 13:32:15 +0000 (13:32 +0000)]
grub-efi.bbclass: Add serial and graphics menu options
The syslinux.bbclass already has support for automatically generated
serial and graphics menu choices. This patch adds the same concept to
the grub-efi menu. That makes it possible to generate a single image
which can boot on a PCBIOS or EFI firmware with consistent looking
boot options.
Jason Wessel [Tue, 17 Sep 2013 13:32:14 +0000 (13:32 +0000)]
bootimage.bbclass, grub-efi.bbclass: Improve EFI & PCBIOS+EFI ISO support
Using the latest mkisofs it is possible to generate 3 different types
of ISO images, which can be used in various scenarios.
1) PCBIOS Only ISO
- This option remains unchanged by this commit
- Uses syslinux menus
- Can be directly copied with dd to a USB device
- Can be burned to optical media
2) EFI Only ISO
- Uses grub 2 menus
- Can be burned to optical media
- If you want to use this image on a USB device
extra steps must be taken in order to format the USB
device with fat32, and copy an EFI loader which will
in turn load the iso image
3) PCBIOS / EFI ISO
- This is a hybrid image ISO that will work for case 1 or 2
as above with the same restrictions and boot menu types
depending on what type of firmware is installed on
the hardware or depending on if EFI or "Legacy Boot" is
enabled on some UEFI firmwares.
The syslinux.bbclass is now always required because that is where the
isohybrid dependencies come from as well as the configuration data for
the isohybrid. The isohybrid is the secret sauce which allows the ISO
to work as optical media or as a disk image on USB or a HDD/SSD.
Jason Wessel [Tue, 17 Sep 2013 13:32:12 +0000 (13:32 +0000)]
grub-efi-native: Add support for EFI ISO images
The iso9660 file system support needs to be added to grub in order to
be able to correctly find the grub.cfg. The grub commands to locate
the grub.cfg also needs to be encoded into grub's default
configuration.
This change allows the resulting grub binary to work both in the hard
drive / USB boot case or the optical media boot case.
Richard Purdie [Thu, 26 Sep 2013 16:20:18 +0000 (16:20 +0000)]
testimage: Exclude BB_ORIGENV variable
The BB_ORIGENV variable isn't picklable and causes failures when generating the task
signature for the autorun image mode. We don't want to depend on its contents anyway
so lets exclude it.
Paul Eggleton [Thu, 26 Sep 2013 16:00:33 +0000 (17:00 +0100)]
classes/package_rpm: fix bitbake package-index for RPM
The function that "bitbake package-index" relies upon when using the RPM
package backend (package_update_index_rpm()) uses MULTILIB_PREFIX_LIST
to get the list of package architectures to be indexed, but that
variable is only set when populate_sdk_rpm or rootfs_rpm are inherited,
which is not the case for the package-index recipe. Until we're able to
refactor this properly, for minimal impact just use the value of
ALL_MULTILIB_PACKAGE_ARCHS if MULTILIB_PREFIX_LIST does not give us any
architectures (the equivalent function in the ipk backend uses the
former variable).
Having "bitbake package-index" working is important because it's the
only practical way of indexing RPM packages for use as a feed; host
versions of createrepo won't work properly because they won't support
indexing recommends relationships.
Ross Burton [Thu, 26 Sep 2013 10:41:36 +0000 (11:41 +0100)]
pseudo: warn twice if the 32-bit toolchain appears broken
Putting a warning at the top of do_compile is useful but not everyone reads the
file from beginning to end, so use a trap to put the message at the bottom too.