summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)AuthorFiles
2014-04-04send-error-report: show responseMartin Jansa1
* useful when debuging why it was refused by server Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-01gdk-pixbuf: pass GDK_PIXBUF_FATAL_LOADER where relevantRoss Burton1
Pass GDK_PIXBUF_FATAL_LOADER to the sstate postinst and intercept so that any problems are flagged as errors instead of being silently ignored. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30sstate-cache-management: rm_by_stamps - discover all suffixes like ↵Martin Jansa1
remove_duplicated does * instead of hard coding list of sstate enabled task use the same function as remove_duplicated to find them in sstate-cache directory Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30sstate-cache-management: skip populate_lic archives when removing duplicatesMartin Jansa1
* there are 2 issues * all *gcc* recipes produce "duplicate" files and we cannot keep just the newest one: OE qemux86@ ~/build/oe-core $ find sstate-cache/ | grep gcc.*populate_lic sstate-cache/cd/sstate:gcc::4.8.2:r0::3:cd8d1a33b832662b624f5e4bd9f55154_populate_lic.tgz sstate-cache/cd/sstate:gcc::4.8.2:r0::3:cd8d1a33b832662b624f5e4bd9f55154_populate_lic.tgz.siginfo sstate-cache/d5/sstate:gcc::4.8.2:r0::3:d591af812395cc386e017fa2c8fa0722_populate_lic.tgz sstate-cache/d5/sstate:gcc::4.8.2:r0::3:d591af812395cc386e017fa2c8fa0722_populate_lic.tgz.siginfo sstate-cache/f7/sstate:gcc::4.8.2:r0::3:f74cfd4982fd7c349a5418f07297f955_populate_lic.tgz sstate-cache/f7/sstate:gcc::4.8.2:r0::3:f74cfd4982fd7c349a5418f07297f955_populate_lic.tgz.siginfo sstate-cache/74/sstate:gcc::4.8.2:r0::3:7489e4502cb446506b9829cda13c7630_populate_lic.tgz sstate-cache/74/sstate:gcc::4.8.2:r0::3:7489e4502cb446506b9829cda13c7630_populate_lic.tgz.siginfo OE qemux86@ ~/build/oe-core $ find tmp-eglibc/stamps/ | grep gcc.*populate_lic tmp-eglibc/stamps/i586-oe-linux/gcc-cross-initial/4.8.2-r0.do_populate_lic_setscene.cd8d1a33b832662b624f5e4bd9f55154 tmp-eglibc/stamps/i586-oe-linux/libgcc/4.8.2-r0.do_populate_lic_setscene.f74cfd4982fd7c349a5418f07297f955 tmp-eglibc/stamps/i586-oe-linux/gcc-cross/4.8.2-r0.do_populate_lic_setscene.d591af812395cc386e017fa2c8fa0722 tmp-eglibc/stamps/i586-oe-linux/gcc-runtime/4.8.2-r0.do_populate_lic_setscene.7489e4502cb446506b9829cda13c7630 * the same for target and native versions of the same recipe: OE qemux86@ ~/build/oe-core $ find tmp-eglibc/stamps/ | grep opkg-utils.*populate_lic tmp-eglibc/stamps/x86_64-linux/opkg-utils-native/0.1.8+gitAUTOINC+c33b217016-r0.do_populate_lic_setscene.dd21a3c5444482ce90be4c9a33d806f1 tmp-eglibc/stamps/i586-oe-linux/opkg-utils/0.1.8+gitAUTOINC+c33b217016-r0.do_populate_lic_setscene.8571422f9e311dc41bb6b21e71a09bc0 OE qemux86@ ~/build/oe-core $ find sstate-cache/ | grep opkg-utils.*populate_lic sstate-cache/dd/sstate:opkg-utils::0.1.8+gitAUTOINC+c33b217016:r0::3:dd21a3c5444482ce90be4c9a33d806f1_populate_lic.tgz.siginfo sstate-cache/dd/sstate:opkg-utils::0.1.8+gitAUTOINC+c33b217016:r0::3:dd21a3c5444482ce90be4c9a33d806f1_populate_lic.tgz sstate-cache/85/sstate:opkg-utils::0.1.8+gitAUTOINC+c33b217016:r0::3:8571422f9e311dc41bb6b21e71a09bc0_populate_lic.tgz.siginfo sstate-cache/85/sstate:opkg-utils::0.1.8+gitAUTOINC+c33b217016:r0::3:8571422f9e311dc41bb6b21e71a09bc0_populate_lic.tgz * similar problem for .siginfo file of do_patch: OE qemux86@ ~/build/oe-core $ find sstate-cache/ | grep eglibc.*patch sstate-cache/99/sstate:eglibc::2.19:r0::3:99b7e1d688e4c6c659b458c9c57611df_patch.tgz.siginfo sstate-cache/11/sstate:eglibc::2.19:r0::3:11401ddd208a753fee17696b14dc1e52_patch.tgz.siginfo OE qemux86@ ~/build/oe-core $ find tmp-eglibc/stamps/ | grep /eglibc.*patch tmp-eglibc/stamps/i586-oe-linux/eglibc-initial/2.19-r0.do_patch.sigdata.99b7e1d688e4c6c659b458c9c57611df tmp-eglibc/stamps/i586-oe-linux/eglibc/2.19-r0.do_patch.sigdata.11401ddd208a753fee17696b14dc1e52 * maybe these should have ideally identical signatures, but before it's fixed lets just skip removing them Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30sstate-cache-management: rm_by_stamps - remove .siginfo and .done filesMartin Jansa1
* it's possible that corresponding .tgz files were already removed (e.g. with -d option and older version of this script) and this won't find orphaned .siginfo or .done files to remove * add sort -u to count files found multiple times only once Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30sstate-cache-management: rm_by_stamps - include signatures of .sigdata. filesMartin Jansa1
* there are .siginfo files in sstate-cache, but STAMPS_DIR calls them .sigdata, make sure that such signatures are kept, because some tasks like do_package, don't have _setscene or main task entry and are removed: stamps: tmp-eglibc/stamps/i586-oe-linux/busybox/1.22.1-r0.do_package.sigdata.cd6f625471ef1b20a9379e90519db6f1 tmp-eglibc/stamps/i586-oe-linux/busybox/1.22.1-r0.do_package_write_ipk.f20fe66285219f23373fc64d5de1d412 tmp-eglibc/stamps/i586-oe-linux/busybox/1.22.1-r0.do_package_write_ipk.sigdata.f20fe66285219f23373fc64d5de1d412 tmp-eglibc/stamps/i586-oe-linux/busybox/1.22.1-r0.do_packagedata.sigdata.c55a3dbe90010c15aa3294753fbd402e tmp-eglibc/stamps/i586-oe-linux/busybox/1.22.1-r0.do_packagedata_setscene.c55a3dbe90010c15aa3294753fbd402e.qemux86 sstate (we want to keep all in this case): sstate-cache/c5/sstate:busybox:i586-oe-linux:1.22.1:r0:i586:3:c55a3dbe90010c15aa3294753fbd402e_packagedata.tgz sstate-cache/c5/sstate:busybox:i586-oe-linux:1.22.1:r0:i586:3:c55a3dbe90010c15aa3294753fbd402e_packagedata.tgz.siginfo sstate-cache/cd/sstate:busybox:i586-oe-linux:1.22.1:r0:i586:3:cd6f625471ef1b20a9379e90519db6f1_package.tgz sstate-cache/cd/sstate:busybox:i586-oe-linux:1.22.1:r0:i586:3:cd6f625471ef1b20a9379e90519db6f1_package.tgz.siginfo sstate-cache/f2/sstate:busybox:i586-oe-linux:1.22.1:r0:i586:3:f20fe66285219f23373fc64d5de1d412_package_write_ipk.tgz sstate-cache/f2/sstate:busybox:i586-oe-linux:1.22.1:r0:i586:3:f20fe66285219f23373fc64d5de1d412_package_write_ipk.tgz.siginfo Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30wic: Extend --rootfs-dir to connect rootfs-dirsJoão Henrique Ferreira de Freitas4
The wic command-line param --rootfs-dir gets generalized to support multiple directories. Each '--rootfs-dir' could be connected using a special string, that should be present in .wks. I.e: wic create ... --rootfs-dir rootfs1=/some/rootfs/dir \ --rootfs-dir rootfs2=/some/other/rootfs/dir part / --source rootfs --rootfs-dir="rootfs1" --ondisk sda --fstype=ext3 \ --label primary --align 1024 part /standby --source rootfs --rootfs-dir="rootfs2" \ --ondisk sda --fstype=ext3 --label secondary --align 1024 The user could use harded-code directory instead of connectors. Like this: wic create ... hard-coded-path.wks -r /some/rootfs/dir part / --source rootfs --ondisk sda --fstype=ext3 --label primary --align 1024 part /standby --source rootfs --rootfs-dir=/some/rootfs/dir \ --ondisk sda --fstype=ext3 --label secondary --align 1024 Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30wic: Report all ROOTFS_DIR artifactsJoão Henrique Ferreira de Freitas3
When a .wks has more than one ROOTFS_DIR it's better to report all ROOTFS_DIR that was used to create the image. Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30wic: Add option --rootfs-dir to --sourceJoão Henrique Ferreira de Freitas1
The '--rootfs-dir' option is optional and only takes efect is a partition is set up like this: part /standby --source rootfs --rootfs-dir=<special rootfs> ... So '--rootfs-dir' is used instead of bitbake ROOTFS_DIR variable or '-r' param. Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30wic: Use partition label to be part of rootfs filenameJoão Henrique Ferreira de Freitas1
When a partition from .wks file is set up like this: part /standby --source rootfs --rootfs-dir=<special rootfs> ... --label \ --label secondary This means that 'rootfs' must use '<special rootfs>' as rootfs and the default partition filename in /var/tmp/wic/build/ will be create using the '--label' as part of the name. E.g: /var/tmp/wic/build/rootfs_secondary.ext3 Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30wic: Add rootfs_dir argument to do_prepare_partition() methodJoão Henrique Ferreira de Freitas3
The do_prepare_partition() method from RootfsPlugin class need to know what will be the rootfs_dir. This makes sense when .wks file has a partition set up like this: part /standby --source rootfs --rootfs-dir=<special rootfs> ... then do_prepare_partition() will work with the correct rootfs. Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30wic: Hook up RootfsPlugin pluginJoão Henrique Ferreira de Freitas1
Remove the 'rootfs' case when internal call code is used and replace to call the general-purpose plugin. For now RootfsPluing class continues to invoke prepare_rootfs() method from Wic_PartData. However RootfsPlugin could implement them. Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30wic: Add RootfsPluginJoão Henrique Ferreira de Freitas1
Implement RootfsPlugin class. The do_prepare_partition() method is implemented using code in Wic_PartData class. This class have 'rootfs' name, which is the name that should be used in the --source parameters of the .wks partition commands. Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-30wic: Fix bitbake_env_command for 'None' caseTom Zanussi1
bitbake_env_command will choke if it isn't given an image, make sure it does the right thing in that case. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-27scripts: Update after addtion of parameter to bitbake -SRichard Purdie2
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-26wic: Add SD/MMC-Cards support to '--ondisk' paramJoão Henrique Ferreira de Freitas1
The special case when wic is set up to use SD/MMC-Cards in place of sdX disks is not handled properly. Append 'p' to the rootdev when disk is SD/MMC-Cards fix this situation. Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-21python3: sync module dependencies from 2.7Paul Eggleton1
These have been added recently to 2.7 but were missing in the 3.3 script/inc file. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-03-21generate-manifest-3.3.py: sync descriptions with 2.7 versionPaul Eggleton1
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-03-21runqemu: Add option for custom BIOS directoryRicardo Neri1
Add support to specify a directory for custom BIOS, VGA BIOS and keymaps as supported by qemu (-L option). Even though this can be done through qemuparams, having this option provides better user experience by not having to specify a long and cluttered path along with other qemuparams that the user might want to specify. This new options assumes first that the path provided is relative to OECORE_NATIVE_SYSROOT and will check whether it exists before proceeding. If not, it will treat the provided path as absolute. This provides the user flexibility to use BIOS binaries generated inside or outside the OE build environment. Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-21scripts/cleanup-workdir: Fix a comment typoOtavio Salvador1
s/Romve/Remove/ Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-21generate-manifest-2.7.py: sync with python-2.7-manifest.incPaul Eggleton1
Some changes were made earlier by me to SUMMARY values in python-2.7-manifest.inc without changing the manifest script. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-21generate-manifest-*.py: set SUMMARY instead of DESCRIPTIONPaul Eggleton2
Typically what's being set here is a short description, so it makes much more sense to set SUMMARY. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-21python: add python-mmap to python-multiprocessing RDEPENDSPaul Eggleton1
The multiprocessing module needs the mmap module. We got away with not having this for the build appliance because python-mmap was added to packagegroup-self-hosted, but this is the proper place to have it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-12wic: Use pseudo for ext mkfs commandTom Zanussi1
The switchover from populate-exfs.sh to mke2fs forgot to preserve pseudo, add it back. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-12wic: Use mke2fs to create the ext2/3/4 imageJoão Henrique Ferreira de Freitas1
OE-core commit f3a95ca6886b55e5819b068bdbd2cceb882d91a6 removed the populate-extfs.sh. So mke2fs should be used to create ext2/3/4 image. Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-12oe-setup-builddir: small reworkMatthieu Crapet1
Changes: - drop useless subshell creation in test: if ! (test -r "$BUILDDIR/conf/local.conf"); then$ - replace "source" builtin by "." (bashsism) - fix indentation 4 spaces (drop some tabs too) - fix return => exit (return is not allowed in main) - drop "sed -i" (doesn't exist in BSD sed) - for homogeneity, always use [ ] (instead of test) - replace old [ "x" = "x$VAR" ] by [ -z "$VAR" ] Signed-off-by: Matthieu Crapet <Matthieu.Crapet@ingenico.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-11scripts/oe-setup-builddir: Keep track of TEMPLATECONF settingGary Thomas1
Keeping track of the TEMPLATECONF variable in the build tree will let this script produce the same output when listing 'conf-notes.txt' every time the script is run, regardless of whether or not TEMPLATECONF has been provided by the user. Note that the default value for TEMPLATECONF now comes from an easily customizable file $OEROOT/.templateconf Signed-off-by: Gary Thomas <gary@mlbassoc.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-07scripts: add lnr (link relative)Ross Burton1
lnr is a simple script to generate relative symlinks from absolute paths, similar to "ln -r" but without requiring coreutils 8.16 (Ubuntu 12.04 and others currently ship 8.13). Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-03-05sstate-cache-management.sh: Don't use echo -nMartin Jansa1
* when debug is enabled it causes more confusion than what it's gaining without debug enabled Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-05sstate-cache-management.sh: Allow to remove old .siginfo and .done files for ↵Martin Jansa1
all tasks * this allows to remove them even for tasks without sstate archives (e.g. rm_work, multilib_install, ..) whole list of tasks found in one of my sstate-cache directories: sstate:xxx_boostconfig.tgz ... 6 sstate:xxx_bundle_initramfs.tgz ... 31 sstate:xxx_compile.tgz ... 47894 sstate:xxx_compile_kernelmodules.tgz ... 31 sstate:xxx_compile_ptest_base.tgz ... 68 sstate:xxx_configure.tgz ... 48247 sstate:xxx_configure_ptest_base.tgz ... 68 sstate:xxx_deploy.tgz ... 8 sstate:xxx_evacuate_scripts.tgz ... 58 sstate:xxx_fetch.tgz ... 7045 sstate:xxx_generate.tgz ... 812 sstate:xxx_generate_qt_config_file.tgz ... 576 sstate:xxx_generate_toolchain_file.tgz ... 219 sstate:xxx_install.tgz ... 48273 sstate:xxx_install_locale.tgz ... 58 sstate:xxx_install_ptest_base.tgz ... 68 sstate:xxx_kernel_checkout.tgz ... 14 sstate:xxx_kernel_configcheck.tgz ... 34 sstate:xxx_kernel_configme.tgz ... 17 sstate:xxx_kernel_link_vmlinux.tgz ... 30 sstate:xxx_make_scripts.tgz ... 42 sstate:xxx_multilib_install.tgz ... 29 sstate:xxx_package.tgz ... 13848 sstate:xxx_package_write_ipk.tgz ... 4615 sstate:xxx_packagedata.tgz ... 4613 sstate:xxx_pam_sanity.tgz ... 3 sstate:xxx_patch.tgz ... 7883 sstate:xxx_populate_adt.tgz ... 28 sstate:xxx_populate_ide_support.tgz ... 33 sstate:xxx_populate_lic.tgz ... 1718 sstate:xxx_populate_sysroot.tgz ... 5094 sstate:xxx_prepare_qmake_symlink.tgz ... 6 sstate:xxx_prepsources.tgz ... 168 sstate:xxx_rm_work.tgz ... 107630 sstate:xxx_rm_work_all.tgz ... 52563 sstate:xxx_rootfs.tgz ... 13 sstate:xxx_sanitize_sources.tgz ... 8 sstate:xxx_sizecheck.tgz ... 31 sstate:xxx_strip.tgz ... 31 sstate:xxx_uboot_mkimage.tgz ... 31 sstate:xxx_unpack.tgz ... 7857 sstate:xxx_unpack_extra.tgz ... 6 sstate:xxx_validate_branches.tgz ... 14 * with this patches most of these files are removed as well Figuring out the sstate:xxx_compile ... (0 from 0 .tgz files for compile suffix will be removed or 42310 from 47795 when counting also .siginfo and .done files) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-05sstate-cache-management: improve shown numbers of removed filesMartin Jansa1
* deleted files were counting .siginfo and .done files, but total_files were counting only .tgz archives so it could show confusing output like: Figuring out the sstate:xxx_packagedata.tgz ... (21098 from 15162 files for packagedata suffix will be removed) * split the counts and show both * fix .sigdata sometimes used instead of .siginfo * this will also show new "suffixes" which have only .siginfo files but no .tgz, e.g.: Figuring out the sstate:xxx_rm_work.tgz ... (0 from 0 .tgz files for rm_work suffix will be removed or 0 from 107630 when counting also .siginfo and .done files) because now we're storing siginfo files from all intermediate tasks, but they are not being removed by this script Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-25runqemu: Use readlink instead of realpathSaul Wold1
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-20runqemu: Ensure ROOTFS path is absoluteSaul Wold1
There is a problem if a relative path is passed to the kernel for NFS usage that it will not correctly find it, so ensure that the ROOTFS path is absolute. [YOCTO #2807] Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-02-20wic: Make exec_native_command() fail if a command isn't foundTom Zanussi1
Because exec_cmd() return values can in certain cases be non-zero yet non-fatal, we don't want to automatically make them fatal (though there should at least be a warning in such cases, which this patch also does); non-zero return values are definitely fatal however if they mean that a native command wasn't found, so have exec_native_cmd() check the return value of exec_cmd() for that case, and bail out if so. [YOCTO #5835] Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-02-20wic: Fix exec_native_cmd() pathTom Zanussi1
The path exported in exec_native_cmd() includes bogus 'PATH=' which means the native paths for all but the first will be ignored. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2014-02-20runqemu-export-rootfs: Fix missing # in commentSaul Wold1
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17bitbake-prserv-tool: make help text show .conf suffixKoen Kooi1
'export' will accept any output filename, but 'import' needs a '.conf' suffix to work. Otherwise you'll get: koen@beast:/build/v2013.12$ bitbake-prserv-tool import x.txt ERROR: Traceback (most recent call last): File "/build/v2013.12/sources/bitbake/lib/bb/cookerdata.py", line 162, in wrapped return func(fn, *args) File "/build/v2013.12/sources/bitbake/lib/bb/cookerdata.py", line 172, in parse_config_file return bb.parse.handle(fn, data, include) File "/build/v2013.12/sources/bitbake/lib/bb/parse/__init__.py", line 100, in handle raise ParseError("not a BitBake file", fn) ParseError: ParseError in x.txt: not a BitBake file ERROR: Unable to parse x.txt: ParseError in x.txt: not a BitBake file Importing from file x.txt failed! Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17runqemu: add ability to skip using an existing tap deviceScott Garman1
Support the sitauation where a user could have another VM running which uses tap devices. To prevent runqemu from trying to use the same tap device, runqemu will skip using a tap device if it finds a filename tapX.skip within its lock directory. This fixes [YOCTO #5815] Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-14report-error.bbclass: new class to save build information when errors occurAndreea Proca1
Class is used to save data about errors after every task that failed. Errors saved as json files in ERROR_REPORT_DIR (defaults to tmp/log/error-report). To use this class one has to add INHERIT += "report-error" to local.conf. scripts/send-error-report is a simple script that sends the json file to a HTTP server that collects data (git://git.yoctoproject.org/error-report-web is a Django web interface that can be used to receive and visualize the error reports). The script will give you an URL where you can find your report. Signed-off-by: Andreea Proca <andreea.b.proca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-13runqemu: enforce right CPU type for qemux86/x86-64Cristian Iorga2
Set in accordance with qemu machines configs. Fixes [YOCTO #5817]. Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11scripts/postinst-intercepts: do not redirect errors to /dev/nullLaurentiu Palcu2
The redirection was necessary with the old bash code because the log checking routine was searching for error strings in the log and abort the build in case failures occured. With the new python code, redirecting the intercept stderr is no longer necessary. This also makes the intercept hooks easier to debug. Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
2014-02-08scripts/oe-selftest: return based on the test resultsStefan Stanacar1
Regardless if the tests passed or not the script returned 0, which isn't what one would expect. Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-08wic: Honor --size for --source partititionsTom Zanussi4
Instead of simply creating partitions large enough to contain the contents of a --source partition (and adding a pre-specified amount of padding), use the --size used in the partition .wks statement. If --size isn't used, or is smaller than the actual --source size, retain the current behavior. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04wic: Hook up --debug optionTom Zanussi2
Hook up the existing --debug option to toggle the wic debug loglevel, which is indispensible when things go wrong, and make it easy to use from the command-line. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04wic: Hook up BootimgEFIPlugin and BootimgPcbiosPlugin pluginsTom Zanussi6
Remove all the Wic_PartData and DirectImageCreator code now implemented by the BootimgEFIPlugin and BootimgPcbiosPlugin plugins, as well as all the special-cased boot_type code, significantly cleaning up the code. Replace the calling code with general-purpose plugin invocations, in essence calling the appropriate implementations at run-time based on the --source value in effect. Change the directdisk.wks and mkefidisk.wks scripts to make use of the new plugins. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04wic: Add BootimgEFIPlugin and BootimgPcbiosPluginTom Zanussi2
Implement the BootimgPcbiosPlugin and BootimgEFIPlugin SourcePlugin classes. The configure/prepare_partition() methods are implemented using code derived from similar code in the Wic_PartData class. These classes have the corresponding names 'bootimg-pcbios' and 'bootimg-efi', which are the names that should be used in the --source parameters of the .wks partition commands. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04wic: Add SourcePlugin classTom Zanussi2
Define the SourcePlugin class, which is the class that should be subclassed to create a 'source' plugin. 'Source' plugins provide a mechanism to customize various aspects of the image generation process in wic, mainly the contents of partitions. The initial version of wic defined a --source param for partitions, which was in the first revision hard-coded to two possible values: rootfs and bootimg. This patch essentially removes the hard-coded --bootimg param and replaces it with a plugin system that maps the value specified as --source to a particular 'source' plugin instead. A 'source' plugin is created as a subclass of SourcePlugin and the plugin file containing it is added to scriptsl/lib/mic/plugins/source/ to make the plugin implementation available to the wic implementation. When the wic implementation needs to invoke a partition-specific implementation, it looks for the plugin that has the same name as the --source param given to that partition. For example, if the partition is set up like this: part /boot --source bootimg-pcbios ... then the methods defined as class members of the plugin having the matching .name class member would be used. To be more concrete, here's the plugin definition that would match a '--source bootimg-pcbios' usage, along with an example method that would be called by the wic implementation when it needed to invoke an implementation-specific partition-preparation function: class BootimgPcbiosPlugin(SourcePlugin): name = 'bootimg-pcbios' @classmethod def do_prepare_partition(self, part, ...) If the subclass itself doesn't implement a function, a 'default' version in a superclass will be located and used, which is why all plugins must be derived from SourcePlugin. This scheme is extensible - adding more hooks is a simple matter of adding more plugin methods to SourcePlugin and derived classes. The code that then needs to call the plugin methods the uses plugin.get_source_plugin_methods() to find the method(s) needed by the call; this is done by filling up a dict with keys containing the methon names of interest - on success, these will be filled in with the actual methods. fPlease see the implementation for examples and details. Note that a source plugin need not restrict itself to methods that apply directly to partitions - methods can also be defined for higher level processing such as at the 'disk' level. The get_default_source_plugin() of DirectImageCreator allows the default source plugin to be retrieved; by default this is set to be the same plugin used for the /boot partition, but that can be overridden by specifying a different --source and therefore different plugin on the 'bootloader' line. This isn't ideal, but it avoids forcing a new high-level object to be defined for that purpose. Note that the '--source rootfs' param remains as its current hard-coded value, which is just the rootfs to be used to populate the partition - by default, that's just the value of the bitbake ROOTFS_DIR variable (or whatever was passed in using the -r param). Note that this also could also be overridden by creating a source plugin using a different name; at this point, unlike with bootimg, there's been no need to do so. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04wic: Add wic-specific bootloader subclassTom Zanussi3
Add a new wic-specific bootloader subclass so we can add a --source param to hang non-partition plugin off of. By default, the bootloader gets the /boot partition source plugin, but this can be overridden by the --source bootloader param if needed. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04wic: Create and use new functions for getting bitbake variablesTom Zanussi3
Add get_bitbake_var() and bitbake_env_lines() functions for use by plugins, which will need access to them for customization. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04wic: Move some common items to oe.miscTom Zanussi3
Move a couple items into a more common location since they're going to need to be accessible from source plugins. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>