aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/classes
AgeCommit message (Collapse)Author
2020-01-17gitpkgv.bbclass: Add support for extending the supported tag formatsPeter Kjellerstedt
Introduce GITPKGV_TAG_REGEXP (which defaults to "v(\d.*)") to support dropping other unwanted parts of the found tags than just a leading "v". Any matching groups in the regexp will be concatenated to yield the final version. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-11-19gitpkgv.bbclass: Support also lightweight tagsniko.mauno@vaisala.com
When checking for commit specific tags during GITPKGVTAG resolution, use additional '--tags' and '--exact-match' options for 'git describe' command. This changes the behaviour so that in case an annotated tag does not exist for the particular commit, then the latest lightweight (non-annotated) tag is used instead, in case that commit has at least one such tag. Signed-off-by: Niko Mauno <niko.mauno@vaisala.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-11-19gitpkgv.bbclass: Use --git-dir optionniko.mauno@vaisala.com
Avoid redundant shell working directory change by resorting to '--git-dir' option for git command instead. Signed-off-by: Niko Mauno <niko.mauno@vaisala.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-10-27itstool: rework native shebang and add class to make native itstool workAndreas Müller
itstool was reworked in [1] to not use host's python. This patch introduced the '-S' option for coreutils's env [2]. Unfortunately that option is relatively young [3] and elder build-host don't support it [4]. The only way to get around this is: * remove '-S' and -s' from native shebang * add a class itstool.bbclass. This class depends itstool-native and creates a valid python3 runtime environment. Most notable in the environment is export PYTHONNOUSERSITE = "1" which does same as '-s' option: force python to avoid adding (host) user sites. [1] http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch?id=e5ac325b7974a346b218d1f43b92d06f5b0dd078 [2] http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch [3] https://github.com/coreutils/coreutils/commit/668306ed86c8c79b0af0db8b9c882654ebb66db2#diff-83d9d52b1f12ac589739ab1334ae4f30 [4] https://errors.yoctoproject.org/Errors/Details/274743/ Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-06-15gitver: Pass git directory argument to gitrev_runSaikiran Madugula
${GITSHA} gives the following error otherwise gitrev_run() missing 1 required positional argument: 'path' Signed-off-by: Saikiran Madugula <hummerbliss@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2019-01-13meta-oe: remove True option to getVar calls (again)André Draszik
A couple have still been missed in the past despite multiple attempts at doing so (or simply have re-appeared?). Search & replace made using the following command: sed -e 's|\(d\.getVar \?\)( \?\([^,()]*\), \?True)|\1(\2)|g' \ -i $(git grep -E 'getVar ?\( ?([^,()]*), ?True\)' \ | cut -d':' -f1 \ | sort -u) Signed-off-by: André Draszik <andre.draszik@jci.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-11-26Copy breakpad .sym file in appropriate folder.Tristan Ramseyer
Google breakpad requires a very specific folder structure which is only known after dump_syms has been executed. Therefore the .sym file's first line has to be parsed in order to move the file where breakpad wants it. Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-08-21dos2unix: Remove after move to coreKhem Raj
Its in OE-Core now Signed-off-by: Khem Raj <raj.khem@gmail.com>
2018-05-23scancode.bbclass: Adding a bbclass for scancode license scaning utilityirfan sadiq
This is adding the functionality to run scancode utility on code. You need to set the following variables to use it. You can override these from local.conf or auto.conf. 1) SCANCODE_GIT_LOCATION: Git Path for scancode-toolkit cloning, default is set. 2) SCANCODE_TAG: Select tag, if you want. 3) SCANCODE_FORMAT: Output file format json or html-app. 4) SCANCODE_SRC_LOCATION: Location to store scancode-toolkit. This belongs to OI-2. Signed-off-by: H M Irfan Sadiq <irfan_sadiq@mentor.com> Signed-off-by: Noor Ahsan <noor_ahsan@mentor.com>
2018-03-05classes/recipes: Convert SkipPackage -> SkipRecipeMaxin John
Update following the SkipPackage -> SkipRecipe change in oe-core. Signed-off-by: Maxin B. John <maxin.john@intel.com> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2018-01-16meson: remove recipe and classAlexander Kanavin
They have been moved to oe-core layer, as meson is increasingly the primary build system for many projects, particularly in the Gnome stack. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
2017-08-13meson: set needs_exe_wrapperRoss Burton
Tell Meson that even if it looks like the architectures are compatible, not to bother executing binaries: differences in tunes, C libraries and so on mean binaries may not work. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-01meson: set native tool flag variablesRoss Burton
As well as setting CC/CXX, export CFLAGS/CXXFLAGS and so on. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-01meson: export PKG_CONFIG to use pkg-config-native for native buildsRoss Burton
By default Meson uses 'pkg-config' in native builds but as that is the cross pkg-config, export PKG_CONFIG to use the correct pkg-config-native binary. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-01meson: don't pass localedirRoss Burton
For historic reasons the localedir directory is where binary locales are stored (/usr/lib/locale) , not where application translations belong (typically, /usr/share/locale). Don't pass localedir explicitly, and let Meson use the default of $datadir/locale to match the behaviour of autotools.bbclass and the expectations of the system. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-01Revert "meson: fix build/host confusion for bbclass"Ross Burton
This patch was incorrect: meson and autotools (thus OE) don't have conflicting terminology, and using HOST_* for the host_machine variables is correct. This reverts commit 77eae90ef5ca3f9a4bdf5727a29713dd2b215165. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-07-01meson: revert changes which shouldn't have been submittedRoss Burton
>From Adam Foltzer: Apologies, this line was inadvertently committed. It was a fix I tried before learning that adding TARGET_CC_ARCH was the solution to linking the wrong ld.so. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-06-22gitver: skip packages instead of panic()ing if ${GITVER} fails to expandAlejandro Mery
`inherit externalsrc gitver` is a very useful combo to get development trees in your workspace having a ${PN}_git.bb with PV=${GITVER} coexisting with a regular ${PN}_${PV}.bb but not everyone wants to checkout all developments sources and managinging different layers for each options is quite troublesome. making `gitver` skip the .bb instead of panic()ing every time EXTERNALSRC is missing allows people to have a single development layer where packages get enabled if the right sources are present or falling back to the last release if not Signed-off-by: Alejandro Mery <amery@hanoverdisplays.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-06-14gitver: fix broken ${GITSHA} and recursion in S when PV="${GITVER}"Alejandro Mery
Signed-off-by: Alejandro Mery <amery@hanoverdisplays.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-06-14gitver: extend class to use EXTERNALSRC if setAlejandro Mery
Signed-off-by: Alejandro Mery <amery@hanoverdisplays.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-06-14dos2unix.bbclass: add recipeMing Liu
Class for use to convert all CRLF line terminators to LF provided that some projects are being developed/maintained on Windows so they have different line terminators(CRLF) vs on Linux(LF), which can cause annoying patching errors during git push/checkout processes. Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-06-14meson: add LDFLAGS to bbclass C/C++ link argumentsAdam C. Foltzer
This adds compiler flags for C++ projects, and fixes the linker arguments for both C and C++ to avoid the GNU_HASH qa failure Signed-off-by: Adam C. Foltzer <acfoltzer@galois.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-06-14meson: fix build/host confusion for bbclassAdam C. Foltzer
Meson and Bitbake use different terminology for the build and host; this provides the correct build machine info to Meson. Signed-off-by: Adam C. Foltzer <acfoltzer@galois.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-06-05meson: Suport for c++ cross-compilationRicardo Ribalda Delgado
cpp_args and cpp_link_args must be set on the meson.cross file to compile c++ applications. Otherwise variables such as the sysroot are not set correctly and libraries/headers are not found. Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-03-16meson.bbclass: Use the correct C++ compiler when cross compilingPeter Kjellerstedt
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-03-16meson.bbclass: Support building for nativePeter Kjellerstedt
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-03-16meson.bbclass: Make changes to meson.build files trigger reconfigurationPeter Kjellerstedt
When externalsrc.bbclass is used, any changes to meson.build files should trigger do_configure to be re-run. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-03-16meson.bbclass: Add support for more standard installation directoriesPeter Kjellerstedt
A couple of more standard installation directories are supported with meson 0.37.1, so make sure they are configured. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-03-07gitver: fix try/except syntax for python3 supportAlejandro Mery
https://www.python.org/dev/peps/pep-3110/ It's backward compatible with 2.6+ Signed-off-by: Alejandro Mery <amery@hanoverdisplays.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-03-07meson.bbclass: Add progress support for do_compile()Peter Kjellerstedt
ninja provides progress information when building so let's make use of it. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-02-22gitpkgv.bbclass: fix versioning with multiple reposS. Lockwood-Childs
gitpkgv class is supposed to use SRCREV_FORMAT variable to define how to smoosh together revision info from multiple repos that are used in a single recipe. It is incorrectly repeating the rev hash for the first repo instead of including the rev from each listed repo. Example: SRC_URI = "git://some-server/purple.git;destsuffix=git/purple;name=purple" SRC_URI += "git://other-server/blue.git;destsuffix=git/blue;name=blue" SRCREV_purple = "${AUTOREV}" SRCREV_blue = "${AUTOREV}" SRCREV_FORMAT = "purple_blue" Suppose gitpkgv calculates "67+ea121ea" for purple repo, and "123+feef001" for blue repo. This should result in a package version with them joined together like so: "67+ea121ea_123+feef001" It didn't. Instead the git hash part for the first repo got repeated: "67+ea121ea_123+ea121ea" Fix this by looking in the right place for the git revisions of 2nd (and following) repos when assembling the full version string. Signed-off-by: S. Lockwood-Childs <sjl@vctlabs.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2017-02-20meson.bbclass: Add meson.bbclassLinus Svensson
Add a class for packages that uses the meson build system. Meson uses a cross-file that contain needed tools and information about the host and target system. Such a file will be created in {WORKDIR}. Meson only allows installation directories to be specified as relative to prefix, except for sysconfdir, which can be absolute. This patch is based on a prototype patch by Ross Burton <ross.burton@intel.com>. Signed-off-by: Linus Svensson <linussn@axis.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-12-02remove True option to getVar callsJoshua Lock
getVar() now defaults to expanding by default, thus remove the True option from getVar() calls with a regex search and replace. Search made with the following regex: getVar ?\(( ?[^,()]*), True\) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
2016-09-05gitpkgv: Fix $GITPKV for a single named git sourceClemens Lang
Recipes that fetch from a single git source, assign a name to this source and do not set SRCREV_FORMAT to this name will always get a GITPKGV value of "default", which causes version-going-backwards QA errors. Fix this by automatically determining a suitable SRCREV_FORMAT from the SRC_URI if none is set explicitly. This code does not run for multiple git sources, because bitbake's fetcher enforces setting SRCREV_FORMAT when multiple version-controlled sources are used. Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-06-08gitkpkgv: Ensure files are closedRichard Purdie
This avoids warnings with python 3. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2016-05-12autotools-bootstrap: make bootstrap package specific.Paul Gortmaker
The theory behind this bbclass was reasonable, with the primary goal being to avoid multiple downloads of gnulib, but it neglected the fact that packages would be shipping a specific version of the ./bootstrap which will support some flags but maybe not all the latest ones from the latest gnulib/build-aux/bootstrap file. I attempted to simply update the two pkgs to use the latest copy of bootstrap from gnulib but this of course triggers the descent into autoconf hell that we all know and love. Rather than futzing with the packages configure.ac and deviating from what the pkg maintainers intended and tested, we can just let the packages have independent calls to ./bootstrap with whatever flags are needed. The goal of this commit is to move the prepend out to the packages and then delete the class without any real functional change ; i.e. a purely mechanical change. Then we can adjust each package to ensure it will still build with a modern host, in an independent fashion, while keeping the main advantage of not fetching gnulib two extra times for netcf and fontforge. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2016-04-01waf-samba.bbclass: move to meta-networkingJackie Huang
The recipes that are using waf-samba were all moved to meta-networking, so move the bbclass and related cross-answers files as well. Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2016-03-02waf-samba.bbclass: add cross-answers option and filesJackie Huang
--cross-execute uses qemu to run cross-compiled binaries, it works fine for qemu supported targets, but it definitely will fail if the target is not supported by qemu. So we need to use the cross-answers option. Added three methods and set 'answer' as default: 1. answers: Only --cross-answers - try the cross-answers file, and if there's no corresponding answer, add to the file and mark the configure process as unfinished. 2. exec: Only --cross-execute - get the answer from cross-execute, an emulator (qemu) is used to run cross-compiled binaries. 3. both: Try the cross-answers file first, and if there is no corresponding answer, use cross-execute to get an answer, and add that answer to the file. The cross files in are all generated by qemu when the 'both' mode is enabled, and are placed in a common directory LAYERDIR/files/waf-cross-answers which is set as WAF_CROSS_ANSWERS_PATH in layer.conf of meta-oe, so that we don't have to put copies of them for each package (there are 5 packages inerit waf-samba for now) Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2016-01-06waf-samba: enable parallel buildsJens Rehsack
Instead of relying on sequencial waf build invoked by make, invoke waf as documented with default switch for building in parallel. Signed-off-by: Jens Rehsack <sno@netbsd.org> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-12-18gitpkgv.bbclass: Add support for gitsm:// url typeDaniel Adolfsson
When using "gitsm://", for projects using submodules, instead of "git://", gitpkgv does not work. The limitation is synthetic, this patch simply adds gitsm as an allowed url type. Signed-off-by: Daniel Adolfsson <daniel.adolfsson@bluetest.se> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-11-06autotools-bootstrap.bbclass: initial addAndreas Müller
bootstrap is another magic script which is intended run before autotools. The class created runs this script at the right time and ensures that sources of gnulib are not cloned during configure. Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
2015-11-02waf-samba.bbclass: add missing qemu optionsJackie Huang
- QEMU_OPTIONS is needed for running binary through qemu, add it for CROSS_EXEC. - "-r ${OLDEST_KERNEL}" is already included in QEMU_OPTIONS, remove it from CROSS_EXEC Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-09-23waf-samba.bbclass: remove bashismJackie Huang
use '=' instead of '==' so this works with dash as /bin/sh Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-08-24waf-samba: add new classBian Naimeng
waf-samba is a build system used by samba related software Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
2015-04-21socorro-syms: Limit the search for repository to within the build directoryDaniel Markus
When we search for the git repository associated with a file and the there's no repository associated, we incorrectly find the yocto repository itself. To prevent the search from finding an incorrect repository, we only accept repositories found within the build directory. Signed-off-by: Daniel Markus <daniel.markus@leica-geosystems.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-04-13socorro-syms: Correct the extraction of repository branchDaniel Markus
When a recipe has git-cloned source code to compile, it may be checked out with a detached HEAD. The current VCS information extraction in socorro-syms incorrectly assumes a detached HEAD belongs to the master branch. With the proper git command we find the branch the detached HEAD belongs to and use that in the Socorro link. Signed-off-by: Daniel Markus <daniel.markus@leica-geosystems.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-04-13socorro-syms: Add support for local repositoriesDaniel Markus
This socorro-syms functionality tries to extract the host name out of the source code repository origin. This causes problems when the origin is a local repository. The solution is to look for the origin in two steps. If the origin in the first step is a local directory we assume it is a temporary download repository. In the second step we look for the origin to that download repository and if that also redirects to a local repository, we provide the absolute path instead of a Socorro repository link. Signed-off-by: Daniel Markus <daniel.markus@leica-geosystems.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-03-21socorro-syms: Add directory arrangement needed by minidump_stackwalkDaniel Markus
http://code.google.com/p/google-breakpad/wiki/LinuxStarterGuide When extracting a stack trace out of a Breakpad minidump, the application minidump_stackwalk is used. This application needs all symbol files to be arranged in a particular directory structure in order to match the correct symbol file with the version of the crashed program in question. A directory structure is created in accordance with minidump_stackwalk. The structure contains the name of the application binary and a hash value where the hash corresponds to the binary the symbol file was produced from. The symbol file is moved to the hash directory allowing multiple versions of the same symbol file. Signed-off-by: Daniel Markus <daniel.markus@leica-geosystems.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
2015-03-03socorro-syms: Add Breakpad symbol generation adapted for SocorroDaniel Markus
https://github.com/mozilla/socorro Mozilla Socorro is a downloadable crash dump server that handles Breakpad crash dumps coming from own applications. In order for Socorro to create clickable links into your source code repository, Breakpad's symbol files must be copied and modified to contain VCS information for each file reference. This class reads the symbol file generated by Breakpad and creates a new symbol file with that VCS information contained. Signed-off-by: Daniel Markus <daniel.markus@leica-geosystems.com>
2014-11-07breakpad: correct the file suffix of the symbol fileAnders Darander
minidump_stackwalk looks for a .sym file extension. Correct the extension used for the generated file. Signed-off-by: Anders Darander <anders@chargestorm.se> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>