summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)AuthorFiles
2015-03-20devtool: deploy-target: fix deploying to previously deployed machinePaul Eggleton1
* Pass correct arguments to undeploy() function * If an error occurs during undeploy(), exit instead of continuing Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer-hook-default.sh: handle patches without Signed-off-byPatrick Ohly1
Inserting the "From rev" comment depended on having at least one Signed-off-by line in the patch header. Some old repository commits in openembedded-core and bitbake do not have those. When inporting those, just insert at the end of the patch header. While doing so, ensure that there's exactly one blank line since the last non-blank line. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer-hook-default.sh: beware of embedded patchesPatrick Ohly1
Patching the subject line must be limited to the subject of the main patch itself. In particular, git formatted patches embedded in the patch must not be changed. Achieved by limiting the replacement to the lines until the first subject in the patch, just as it is done for modifying the first Signed-off-by. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer-hook-default.sh: avoid duplicating prefixPatrick Ohly1
The existing patch might already have the desired prefix, perhaps even multiple times (due to some previous import error). Ensure that after the replace, the prefix is present exactly once. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer: partial import for '--history init'Patrick Ohly2
The new "since_revision" property can be used to cut off the imported history at some point. This is useful to keep the resulting repository smaller while still preserving enough history that "git annotate" reports the right author and commit for most lines. The initial, squashed import commit shows up with "unknown" as author in the "git annotate" output. It has the repository name as prefix in the subject line; importing that commit works best with a layer hook which does not add the repository name again when it is already present. Adding it here is useful for hooks which do not extend the subject line. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer: combine trees via replacement objectsPatrick Ohly1
Instead of local graft entries rooting the imported branches in the shared root commit, use replacement objects. The advantage is that they get moved around by "git push" and "git fetch", so everyone has the same, nicer view with everything starting at the beginning of the combined repository. If undesired, these objects can be removed with "git replace". Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer: init with full historyPatrick Ohly1
The new --history parameter enables a new mode in "combo-layer init" where it copies the entire history of the components into the new combined repository. This also imports merge commits. Moving into a destination directory and applying commit hooks is done via "git filter-branch" of the upstream branch. File filtering uses the same code as before and just applies it to that filtered branch to create the final commit which then gets merged into the master branch of the new repository. When multiple components are involved, they all get merged into a single commit with an octopus merge. This depends on a common ancestor, which is grafted onto the filtered branches via .git/info/grafts. These grafts are currently left in place. However, they do not get pushed, so the local view on the entire history (all branches rooted in the initial, empty commit, temporarily diverging and then converging) is not the same as what others will see (branches starting independently and converging). Perhaps "git replace" should be used instead. The final commit needs to be done manually, as before. A commit message with some tracking information is ready for use as-is. This information should be sufficient to implement also "combo-layer update" using this approach, if desired. The advantage would be that merge commits with conflict resolution would not longer break the update. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer: update() also instance propertyPatrick Ohly1
The Configuration class mirrors all properties in local hashes. When updating the configuration, also update these properties to remain consistent. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer: exclude filesPatrick Ohly2
Some combined repos intentionally do not include certain files. For example, Poky does not include bitbake's setup files and OE-core's sample files under meta/conf. When these files get modified in the upstream repository, applying the patches fails and requires manual intervention. That is merely a nuisance for someone familiar with the problem, but a real show stopper when having the import run automatically or by someone less experienced. Therefore this change introduces "file_exclude", a new per-repo list of file patterns which removes all matching files when initializing or updating a combined repository. Because fnmatch is used under the hood to match full path strings, removing entire directories must be done with a pattern ending in a '/*' (in contrast to file_filter). For Poky, the additional configuration looks like this: [bitbake] ... file_exclude = classes/base.bbclass conf/bitbake.conf .gitignore MANIFEST.in setup.py TODO [openembedded-core] ... file_exclude = meta/conf/bblayers.conf.sample meta/conf/local.conf.sample meta/conf/local.conf.sample.extended meta/conf/site.conf.sample Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer: runcmd() with separate outputPatrick Ohly1
Allow the caller to specify a separate output stream. stderr is always a temporary file opened by runcmd(), so read from that to capture output for error reporting *and* the return value. The reasoning for the latter is a) that this preserves the traditional behavior when out=None and b) if the caller wants the content of stdout, it can read from the stream itself, which is not possible for the temporary stderr. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer: make Signed-off-by optionalPatrick Ohly2
It depends on the diligence of the person running the combo-layer tool whether the Signed-off-by line added to each commit actually indicates that the person was involved in validating the change. When the import is purely automatic, it is better to not add the line, because the history is more useful without it (searching for the person really only lists changes he or she was involved with) and it would be a false statement. The 'signoff' property can be set per repository, like every other property. But setting it in the special [DEFAULT] section is more useful, so that is what the example shows. Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20combo-layer: let user choose where properties get updatedPatrick Ohly1
When updating a property (at the moment, only 'last_revision'), first check whether the user already added it to the main config. If so, update there even if there is a local config. This way, 'last_revision' can be shared between developers as part of the repository while still configuring per-developer repo paths outside of the git repository in a local config. An example of a repository which is set up like that is tizen-distro, with instructions for such a collaborative maintenance found here: https://review.tizen.org/git/?p=scm/bb/tizen-distro.git;a=blob;f=README;hb=refs/heads/tizen-ivi Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20runqemu-internal: Add cpio support for qemux86 so that we can boot poky-tiny ↵Richard Purdie1
images poky-tiny generates cpio.gz images, add support for these so we can boot them using runqemu. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20scripts/runqemu: Allow FSTYPE to be changed from the environmentRichard Purdie1
Currently its not possible to change FSTYPE from the environment but it would be useful to do so where multiple image types have been generated. This adds that possibility. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-20wic: Consider PSEUDO_* environment variablesEd Bartosh1
Used default values of PSEUDO_* environment variables only if variables are not set. This allows to set custom PSEUDO_PREFIX and other pseudo variables in order to use pseudo database from non-standard locations. Change-Id: I0bc1af5e521121d1f96d590cb6edb23cf0cb0b83 Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-16postinst-intercepts/update_font_cache: fix ownership of fontconfig cacheJonathan Liu1
The file ownership of the cache files in /var/cache/fontconfig needs to be set to root:root otherwise it inherits the user and group id of the build user. [YOCTO #7411] Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-16test-dependencies.sh: strip only .bb suffixMartin Jansa1
* we were stripping too much when stripping recipe name from line like this: ERROR: Task 12016 (/some/patch/something.dot.bar.bb, do_fetch) failed with exit code '1' where the recipe name contains dots and doesn't end with _<version>.bb * apply the same fix as 8c9a25ae70d249b823ab2b0385d539eb8bbc1374 while building individual recipes Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-16oe-setup-builddir: output message cleanupBenjamin Esquivel1
Moved a Yoctoproject documentation banner to the end of the first-time run messages section [YOCTO #7368] Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-09create-pull-request: fix git GIT_VERSIONRobert Yang1
If the git version is 1.7.9.5, then 1795 is bigger than 210 which causes errors like: fatal: No such ref: :rbt/bash fatal: Needed a single revision ERROR: git request-pull reported an error Use the first 3 numbers to fix the problem. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-09wic: rawcopy: support skippingAlexandre Belloni1
Add support for skipping the beginning of a file with the rawcopy plugin. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-09wic: add fsimage pluginAlexandre Belloni1
The fsimage plugin allows to add an already existing filesystem image in the partition layout. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-09wic: fix fstab generationAlexandre Belloni1
Commit 0a6668f6e60b4195ff4163c00fc972bacdb27b4b still included some debug and is not working properly as the new fstab is generated too late. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-09scripts/send-error-report: Rework script to support new featuresMichael Wood1
- Add arguments to allow for non-prompted sending, json encoded response and link backs. - Add feature to check the server's max_log_size - Add feature to allow reviewing of the final data - Be a bit more helpful if the expected fields aren't filled in instead of exiting. - Remove the redundant urlencode - Add a user-agent so that the server can identify the encoding method. - Remove custom proxy handling - urllib should 'just work' [YOCTO #6736] [YOCTO #7245] [YOCTO #7105] Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-05scripts/runqemu: clarify help textBernhard Reutner-Fischer1
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23scripts/oe-buildenv-internal: add means of skipping SDK check during setupRandy Witt1
The oe-buildenv-internal script checks if the user is already in an sdk environment and errors if true. Add a way to skip this check. Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23gen-lockedsig-cache: Allow cross-filesystem copies.Randy Witt1
Since this previously always tried to use hardlinks you couldn't have the source and destination be on different devices. This change allows for that and also prevents failure in situations where the files already existed. Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23Python: Upgrade from 2.7.3 to 2.7.9:Alejandro Hernandez1
- Based on Paul Eggletons work to partially upgrade to Python 2.7.6 Modified: default-versions.inc: switched to python 2.7.9 generate-manifest-2.7.py: fixed _sysconfigdata python-2.7-manifest.inc: fixed _sysconfigdata python.inc: Updated checksums and source, no LICENSE change just updated some dates python-native_2.7.3 -> python-native_2.7.9 and updated patches python_2.7.3 -> python_2.7.9, and added ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no in EXTRA_OECONF to solve python issue #3754, only needed when cross compiling, also updated patches use_sysroot_ncurses_instead_of_host.patch: New patch to use ncursesw from sysroot instead of hosts, introduced by fix for python issue #15268 Rebased: 01-use-proper-tools-for-cross-build.patch 03-fix-tkinter-detection.patch 05-enable-ctypes-cross-build.patch 06-avoid_usr_lib_termcap_path_in_linking.patch avoid_warning_about_tkinter.patch builddir.patch fix_for_using_different_libdir.patch host_include_contamination.patch multilib.patch nohostlibs.patch search_db_h_in_inc_dirs_and_avoid_warning.patch Deleted (fixed on upstream): 06-ctypes-libffi-fix-configure.patch CVE-2013-4073_py27.patch gcc-4.8-fix-configure-Wformat.patch json-flaw-fix.patch posix_close.patch pypirc-secure.patch python-2.7.3-CVE-2012-2135.patch python-2.7.3-CVE-2013-1752-smtplib-fix.patch python-2.7.3-CVE-2014-1912.patch python-2.7.3-CVE-2014-7185.patch python-2.7.3-berkeley-db-5.3.patch python-fix-build-error-with-Readline-6.3.patch remove-BOM-insection-code.patch remove_sqlite_rpath.patch python2.7.3-nossl3.patch [YOCTO #7059] Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
2015-02-23devtool: fix broken clones of git recipesPaul Eggleton1
Because we move the workdir when extracting source, then move the source and delete the temporary workdir, you lose the indirection symlink pointed to by the alternates file (which is created when the fetcher clones it from DL_DIR with -s) and the resulting repository is broken. In any case, for a source repo that the user may put their own changes into, we can't really rely on a clone made with -s in case the original goes away - because of cleanall, DL_DIR disappearing, etc. So repack the repository so that it is a complete, non-shared clone after unpacking. (While I'm at it, add a test for devtool modify with a git recipe which verifies that this works.) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23devtool: support source extraction for recipes that use a shared workdirPaul Eggleton1
Enable source extraction used by devtool extract / devtool modify -x for recipes that use a shared workdir (e.g. the kernel and gcc). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23devtool: modify: handle recipes that use a shared workdirPaul Eggleton1
If S is outside of WORKDIR then we shouldn't try to get the relative path in order to work out where the source subdirectory is as we do by default. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23devtool: prevent extract/modify use with image recipesPaul Eggleton1
There wouldn't be any point to using these with an image recipe, so disallow it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23devtool: update-recipe: add handling for git recipesPaul Eggleton1
When updating git-based recipes, in a lot of cases what you want is to push the changes to the repository and update SRCREV rather than to apply patches within the recipe. Updating SRCREV is now the default behaviour for recipes that fetch from git, but this can be overridden in both directions using a new -m/--mode option. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23devtool: build: run do_populate_sysroot instead of do_installPaul Eggleton1
If you want to be able to make use of libraries in conjunction with devtool then we need to install them into the sysroot for other recipes to use. Make it a configuration option in case it needs to be changed at runtime. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23devtool: reset: run bitbake -c clean on recipePaul Eggleton1
If you've added a new recipe, you want the output cleaned when you do devtool reset, otherwise cruft from building the recipe may remain which could interfere with future builds. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23devtool: add/modify: add option to build in same directoryPaul Eggleton1
The default behaviour is to build in a separate directory to the source, however some projects can't be built this way, so add an option to do that (or override the automatic behaviour in the case of modify). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23recipetool: fix regression caused by previous commitPaul Eggleton1
Option was renamed in the setup code but not in the code that used it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-21runqemu: Specify rootfstype to qemu to avoid QA warningsRichard Purdie1
With the change to ext4 filesystems for qemu, we get boot warnings from where it tried to mount the ext4 fileystem as ext2 and ext3 first. Avoid these by specifying the rootfs type directly on the kernel commandline for ext* images. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-21machine/qemu: Switch from ext3 to ext4Richard Purdie1
There is no good reason not to use ext4 at this point, it has advantages and few drawbacks. Therefore switch the qemu machines over (and the default runqemu script options). Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-21wic: Fix kernel dir locationTom Zanussi1
With the recent kernel staging changes, STAGING_KERNEL_DIR no longer points to the kernel image, which can be found however in DEPLOY_DIR_IMAGE. This updates find_artifacts() to look there instead. Fixes [YOCTO #7307]. Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-02-17scripts: delete dummy help2man scriptPaul Gortmaker1
This was added to try and deal with the cross compile issue of help2man ; one can not run an ARM binary "./chmod --help" on an x86-64 host in order to get the help text to create a man page. This has been primarily an issue with the coreutils package. However, we have since fixed coreutils to have useful pre-made manpages and we don't need this script anymore. And if other gnu packages are getting useless truncated "dummy" manpages, we want the build to fail so we can fix those packages in a similar way, vs. having the issue hidden via a help2man that is a no-op. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-17lib/oe/package_manager: support exclusion from complementary glob process by ↵Paul Eggleton1
regex Sometimes you do not want certain packages to be installed when installing complementary packages, e.g. when using dev-pkgs in IMAGE_FEATURES you may not want to install all packages from a particular multilib. This introduces a new PACKAGE_EXCLUDE_COMPLEMENTARY variable to allow specifying regexes to match packages to exclude. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-17test-dependencies.sh: strip only .bb suffixMartin Jansa1
* we were stripping too much when stripping recipe name from line like this: ERROR: Task 12016 (/some/patch/something.dot.bar.bb, do_fetch) failed with exit code '1' where the recipe name contains dots and doesn't end with _<version>.bb Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-14oe-pkgdata-util: add list-pkg-files subcommandPaul Eggleton1
Adds a subcommand to list the files in a package, or list the files in all packages for a recipe. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-14oe-pkgdata-util: add list-pkgs subcommandPaul Eggleton1
Add a subcommand to list packages, with options to list packages matching a specification, and packages produced by a particular recipe. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-14oe-pkgdata-util: allow reverse package name lookupsPaul Eggleton1
Add a -r/--reverse option to the lookup-pkg subcommand to enable looking up the recipe-space package name for one or more runtime package names. Also make this subcommand into a function that can be reused elsewhere. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-14oe-pkgdata-util: fix read-value to handle data with colons in the valuePaul Eggleton1
The read-value subcommand was truncating the value if it contained colons, for example FILES_INFO. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-14oe-pkgdata-util: make find-path show a proper error if no package foundPaul Eggleton1
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-14oe-pkgdata-util: improve command-line usagePaul Eggleton1
* Use argparse instead of optparse for standardised help output, options and a much cleaner code structure * Look up pkgdata directory automatically so the user doesn't have to specify it * Use standard logging NOTE: this does mean a slight change in syntax - if you do want to specify the pkgdata directory (usually only necessary if you're calling it from within the build process) you need to use the parameter -p (or --pkgdata-dir) and specify this before the command, not after it. Examples: oe-pkgdata-util find-path /sbin/mke2fs oe-pkgdata-util lookup-recipe libelf1 oe-pkgdata-util read-value PKGSIZE libc6 oe-pkgdata-util -p /home/user/oe/build/tmp/sysroots/qemux86-64/pkgdata read-value PKGSIZE libc6 Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-02-14wic: add GPT supportAlexandre Belloni1
Add GPT partition table support. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-02-14wic: properly label filesystemsAlexandre Belloni1
Use the partition label option, when available, to label the filesystem. Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Ross Burton <ross.burton@intel.com>