Commit graph

805 commits

Author SHA1 Message Date
Richard Purdie
968d00de15 package_deb.bbclass: Fix packaging functions to use versioned dependency package functions correctly
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-07-02 00:06:50 +01:00
Joshua Lock
3abe7a0624 classes/package_ipk|_deb|_rpm.bbclass: Fix setting of OVERRIDES when packaging
The OVERRIDES variable was being incorrectly set with the end result of the
runtime dependencies of the package not being encoded in it's package metadata.

This broke opkg-native in meta-toolchain.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-07-01 16:14:21 +01:00
Kevin Tian
4057e1a811 insane.bbclass: allow reporting all md5 mismatch warnings
instead of exiting when once one md5 mismatch is seen. This would be
helpful to save time on filling md5sum for multiple license check
files.

Signed-off-by Kevin Tian <kevin.tian@intel.com>
2010-06-30 13:19:05 +01:00
Richard Purdie
99d883f81a classes/package_ipk|_deb.bbclass: Make sure versions correctly make it into output packages
The version information part of package dependency strings was not ending up
in the output packages correctly. This patch fixes this and ensures the version
information isn't lost.

Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-30 09:48:59 +01:00
Joshua Lock
b8e16403fa cross-canadian: ensure package dependencies are generated correctly
cross-canadian packages need to look for their SOLIBS in the nativesdk
sysroot so that dependencies are correctly picked up and meta-toolchains are
correctly built.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-25 14:54:20 +01:00
Scott Garman
698dab0109 kernel.bbclass: Remove additional binaries from staging
* Remove additonal binaries known to cause "strip command failed"
  errors during do_package on cross platforms.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-06-23 18:43:45 +01:00
Joshua Lock
c350927b22 sanity.bbclass: Fix test for i686 SDKMACHINE
The 'is' keyword tests for object identity, returning True if the variables are
both referencing the same object. Changed the test to use the equality
operator, which compares the values of the objects.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-14 12:53:48 +01:00
Joshua Lock
c7f6eab8b1 packaged-staging.bbclass: fix typo in scan_cmd
it's PSTAGE_TMPDIR_STAGE, not PSTAGE_TMDPDIR_STAGE spotted by Chris Larson
<chris_larson@mentor.com>

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-11 14:43:58 +01:00
Scott Garman
b5fc6abac9 poky.bbclass: Add second fall-back sources mirror
* Green and newer releases can now use http://autobuilder.pokylinux.org/sources/

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-06-11 10:19:03 +01:00
Joshua Lock
eb3c93f401 rootfs_ipk.bbclass: ensure the package manager can create lock files
The opkg package manager uses /usr/lib/opkg to store lock files in, modify the
remove_package_data_files() function to create an empty directory once the data
files are removed so that the lock can be created.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-10 14:49:50 +01:00
Joshua Lock
6a7549ff00 packaged-staging.bbclass: Use a differnet opkg.conf for each TARGET_ARCH
Assembling an appropriate opkg.conf in the pstage_helper is difficult when
building for multiple target architectures in one Poky directory, work around
this by generating an appropriate opkg.conf for the TARGET_ARCH and using an
${TARGET_ARCH}-opkg.conf for packaged staging.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-10 11:36:23 +01:00
Richard Purdie
61a730184b kernel.bbclass: Drop code which is duplicated later in the function, fixing older kernel builds
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-09 14:27:13 +01:00
Joe Sauer
47e5d86aad metadata_scm.bbclass: Make errors quiet if we're not in a git based scm
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-08 20:54:26 +01:00
Richard Purdie
a06a85ab9b cross/cross-canadian.bbclass: Save target_exec_prefix variable
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-08 20:30:26 +01:00
Joshua Lock
6a9312cccc sanity.bbclass: Check for Python 2.6 or newer
In relocatable.bbclass and utility-tasks.bbclass we depend on functionality
that was only introduced with Pytrhon 2.6, so we now check that the build
system has it in the sanity class.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-08 17:29:46 +01:00
Richard Purdie
2160dddcc1 base.bbclass: Fix after bb.decodeurl was fixed
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-07 21:16:16 +01:00
Joshua Lock
c4a0b5463d sanity.bbclass: version each of the files in the build/conf/ directory
We already have versioning of the local.conf file but it's entirely plausible
for the bblayers.conf and site.conf to change incompatibly so we should version
those too.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-07 16:16:35 +01:00
Nitin A Kamble
fc81ca7d2d insane.bbclass: Throw better error if path is bad
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2010-06-07 16:05:12 +01:00
Joshua Lock
8f367b6930 packaged-staging: Add the correct architectures to the opkg conf
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-04 20:02:09 +01:00
Kevin Tian
3161c9b15a utility-tasks.bbclass: automatic upstream version check
Automatic upstream version check can be triggered by "bitbake xxx -c checkpkg".
The rationale behind is to find a automatic way for version comparison between
current in-use one and upstream progress. The tricky thing is how to find out
useful version string from mass diverse information. Fortunately now it mostly
work for wget based protocol, except some sites (e.g. sourceforge) not providing
a directory service. Repo (git/svn/cvs) based protocols are handled in a very
simple manner, by always tagging as update required. This will be further
improved later. Use 'world' target to retrieve a full version check for all
active recipes.

Along with version check, other package information is also collected from
existing fields in .bb file

Signed-off-by Kevin Tian <kevin.tian@intel.com>
2010-06-03 12:23:22 +01:00
Joshua Lock
7ada79de07 sanity.bbclass: check for invalid characters in OEROOT
Some characters in the path for OEROOT are known to cause issues, so check for
them in the sanity checker.
Currerently we warn on +'s and spaces.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-02 15:25:00 +01:00
Richard Purdie
9ea69b17f7 utility-tasks: Remove unneeded addtask parameter
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-02 14:07:59 +01:00
Nitin A Kamble
5ae3f65531 do_distro_check: Recipe exists in other distros?
This adds a new task (distro_check) for each recipe.
The task generates the source package list for Fedora OpenSuSE
Ubuntu Debian & Mandriva Linux distros.

As one recipe or source package can generate multiple target packages
the recipe name is compared with the source package name list of LInux
distributions.

Thread locking is used to avoid multiple threads racing for the
package list update.

Then the recipe name (PN) is checked if it exists in the package
list of distros. And if the DISTRO_PN_ALIAS then it is used to copmare
pacakge_name instead of the PN variable. Just for example the
DISTRO_PN_ALIAS can be defined in the recipe (.bb) files like this

In the file xset_1.0.4.bb:

DISTRO_PN_ALIAS = "Fedora=xorg-x11-server-utils;\
   Ubuntu=x11-xserver-utils; Debian=x11-xserver-utils;Opensuse=xorg-x11"

The final results are stored in the tmp/log/distro_check-${DATETIME}.result
file.

FYI this command will generate the results for all recipies:
bitbake world -f -c distro_check

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2010-06-02 14:06:02 +01:00
Richard Purdie
7dcf1e47b7 sanity.bbclass: Check for SDKMACHINE=i686 and error if found
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-01 17:25:05 +01:00
Joshua Lock
09536a7592 patch.bbclass: Merge patch enhancements from OE by Chris Larson
Chris made some interesting changes to the patch handling in OE. Firstly the
patch and pnum parameters have been renamed, to better reflect their function,
to apply and striplevel. The apply parameter now takes either yes or no as its
value.

Therefore a patch line would be changed from:
file://some.patch;patch=1;pnum=2
to:
file://some.patch;apply=yes;striplevel=2

Secondly the apply parameter is inferred if not defined. Entries in SRC_URI
with diff or patch filename extensions will be automatically applied as patches
if the apply parameter is not set to no (or an unknown value).

Note: We have disabled the warnings when using the old style parameters for now

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-06-01 15:17:12 +01:00
Joshua Lock
138df217ef Drop vm_mmap_min_addr checks from scripts and sanity class
QEMU 0.12.x is relocatable so we no longer need these tests, which is good
because it doesn't work reliably with modern kernels.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-28 15:32:41 +01:00
Joshua Lock
cd62d697e1 relocatable.bbclass: reduce the amount of output
Disable the last bb.note call, it's a bit spurious. Only really useful for
debug.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-24 17:25:28 +01:00
Richard Purdie
6bf1f8c76e kernel.bbclass: Simplify the current external module code
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-05-24 11:14:56 +01:00
Scott Garman
ae9174ef53 kernel.bbclass: Stop staging binaries within scripts/
* Preserves scripts/ directory but excludes binaries known to cause
  "strip command failed" errors during do_package on cross platforms

Signed-off-by: Scott Garman <sgarman@zenlinux.com>
2010-05-24 10:34:40 +01:00
Joshua Lock
5bec733fb1 kernel.bbclass: tidy up staging of headers
The changes merged from upstream used the ASMDIR variable even when it might
not have been set. These changes may be incorrect but at the very least I can
now build a QEMU image (including v86d) with the 2.6.33 kernel now.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-20 16:09:39 +01:00
Joshua Lock
2c3437d0ae kernel-arch.bbclass: merge improved arch detection from OE.dev
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-20 15:15:55 +01:00
Joshua Lock
769cf0b6b0 kernel.bbclass: Package Kernel firmware
Merged change from OE.dev to create packages of the kernel firmware

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-20 14:16:26 +01:00
Joshua Lock
3da120a872 linux-kernel-base.bbclass: merge version detection updates from upstream
Kernels after 2.6.33 store the utrelease.h file, used to detect the kernels
version, in a different location.

Merged from oe.dev

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-20 14:14:22 +01:00
Joshua Lock
e30c5a29d2 kernel.bbclass: match x86 header installation to other architectures
The header installation for x86 was slightly different as to that employed
for other architectures, change them to match for consistency.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-20 12:58:25 +01:00
Joshua Lock
5e07bc9128 kernel.bbclass: fix installing of kernels 2.6.34 and above
Changes merged from upstream to cope with changes to directory structures in
recent kernels when building for x86

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-19 12:20:08 +01:00
Nitin A Kamble
8825d4d455 License Checking: convert an error into warning
If license file md5 information (LIC_FILES_CHKSUMS variable) is
missing in the recipe then just throw a warning instead of the build
failure.
  Once enough recipes' LIC_FILES_CHKSUMS are filled then this warning
will be reverted back to the the fetal error.
  If LIC_FILES_CHKSUMS field is present but invalid then the it still
causes a fetal build error.

Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
2010-05-12 10:54:05 -07:00
Nitin A Kamble
2ca1f78a95 License Change checking:
Added a new variable in recipe : LIC_FILES_CHKSUM

It is a required field for every recipe.

It describes license text location in the source files. And also stores
md5sum of that license text. Any change in this license text triggers build
error. Which enables developer to review any changes in the license and
update the license fields in the recipe accordingly.

For Example: contents of zlib_1.2.3.bb
LICENSE = "zlib"
LIC_FILES_CHKSUM = "file://README;md5=ae764cfda68da96df20af9fbf9fe49bd \
  file://zlib.h;beginline=1;endline=30;md5=6ab03f03a5ee92d06b809797d4d5586d "

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2010-05-11 16:25:39 -07:00
Joshua Lock
e7fa3529f3 Update classes to use lib/oe
Adapt modifications from upstream to make Poky classes use lib/oe for the
common Python functionality.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-06 12:53:16 +01:00
Richard Purdie
14196cb031 base.bbclass: Sync minor layout changes with OE.dev
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-05-06 12:22:44 +01:00
Richard Purdie
89497d8057 xfce.bbclass: Fix SRC_URI (from OE.dev)
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-05-06 12:03:31 +01:00
Joshua Lock
d425fac6d1 sanity.bbclass: fix typo in earlier commit
Commit fbe3d41eb0 left a trailing bracket which
cause an interpretation error

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-30 20:15:56 +01:00
Joshua Lock
fbe3d41eb0 Version the build configuration directory
The addition of BBLAYERS changes the build/conf directory to be incompatible
with the "old way" in the Purple release.

As such things are likely to occur in future we should bersion the build/conf
directory through local.conf

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-30 16:25:41 +01:00
Joshua Lock
69d788ad5e Fix sanity check for new abi
current_abi is the abi of the tmp directory, not the current abi specified in
the abi file...

Now the sanity check should work sanely.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-29 10:25:39 +01:00
Joshua Lock
19a81653b7 Bump the ABI to alert people that cross has gone
Since we've change the tmpdir layout quite a bit we're going to bump ABI and
force a rebuild.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-28 17:48:08 +01:00
Joshua Lock
6458da896f Fix references to CROSS_DIR now that it has been removed
CROSS_DIR is no longer removed so fix up classes, packages and documentation
which refer to it.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-28 16:47:14 +01:00
Joshua Lock
29813a43b5 cross.bbclass: inherit relocatable to post-process cross binaries
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-27 18:29:57 +01:00
Joshua Lock
c22ab5fc9f Install cross-packages into the native sysroot
Cross is no longer required so can go away, we now install cross packages into
the native sysroot and use them from there.

This patch includes updates to classes and some recipes which reference
CROSS_DIR. Others still need fixing an image can be built and run with this
patch applied.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-27 18:29:57 +01:00
Joshua Lock
4d1f39af75 autotools: deprecate autotools_stage class
Move the functionality into autotools and ensure all our Poky recipes are no
longer using it.
Keep the autools_stage class around for OE compatability but just have it
inherit autools.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-27 17:11:28 +01:00
Joshua Lock
23ff2e0819 relocatable.bbclass: Normalise the generated path
The generated path we create for the binaries RPATH can have a lot of directory
separators in. Use os.path.normpath() to tidy it up and only include the
required directory separators.

This patch is purely to appease my personal sense of niceness...

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-27 16:58:42 +01:00
Joshua Lock
d1f413ff30 sanity.bbclass: handle lack of permission to read /proc/sys/vm/mmap_min_addr
Patch from OE.dev by Martin Jansa to workaround that we on modern Linux we can
no longer read this file.

We need a better fix but best option will be to update to a newer, relocatable,
QEMU release.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-27 16:58:42 +01:00
Joshua Lock
7f019514d8 Move STAGING_BINDIR_CROSS into target sysroot, instead of native
Cross scripts now live in sysroot/$arch-distro-os/crossscripts, this conveys
that they are no longer native system dependant and emphasises their purpose.

Bump the staging ABI and implement a simple migration from ABI 3 to ABI 4.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-27 16:58:42 +01:00
Joshua Lock
e866ea68c7 packaged-staging.bbclass: Fix architecture field
The packages architecture field is incorrect, this patch changes it to:
native - build machine architecture
cross - build and target machine architectures
target - target machine architecture

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-27 16:58:42 +01:00
Joshua Lock
d3fbb56c2f relocatable.bbclass: Actually skip symlinks
The previous patch to do so was badly merged and didn't actually skip all
symlinks, only ones which where not an absolute path...

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-12 15:56:45 +01:00
Joshua Lock
1ac0a1aebe relocatable.bbclass: ignore symlinks
If this links to a file created by the package install we already handle it
when we process the sysroot. By ignoring symlinks here we don't cause a build
to fail when the symlink is to somewhere in the host OS.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-08 16:41:24 +01:00
Joshua Lock
10b6d14062 relocatable.bbclass: Handle files which don't have read/write permissions
It's possible to have files in our sysroot which don't have the write (or in
some cases even the read) bit set. Test for these and if they are not set
temporarily set them so that we can chrpath the binaries.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-08 16:41:24 +01:00
Joshua Lock
572f86ce5b packaged-staging.bbclass: Remove hardcoded paths in binfiles for target packages
Amend the default PSTAGE_SCAN_CMD, as used when scanning target packages, to
include binconfig scripts in the results and remove their hardcoded paths.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-08 16:41:24 +01:00
Joshua Lock
b43b80c760 relocatable: Handle directories having subdirectories of binaries
Make the processing of directories less naive so that it can handle a directory
with children that are directories. We now scan for and process binaries in all
directories below the scanned paths rather than only the top-level directory.

This patch moves the meat of the post-processing into a separate function which
is fed paths, process_dir (). Then when the function finds a subdirectory of
the passed path which is itself a directory it recursively calls itself.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-04-01 11:53:29 +01:00
Richard Purdie
847324b79b classes/conf: Update to handle gcc-runtime
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-29 22:28:49 +01:00
Richard Purdie
fcfbc7b1e7 autotools.bbclass: Allow extraction of the configure arguments for use in strange testcases
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-29 17:04:13 +01:00
Joshua Lock
93f357d657 relocatable.bbclass: we need to process library files too
The .so files we ship also have a RPATH encoded so should be post-processed for
a relocatable RPATH too.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-03-26 14:24:58 +00:00
Joshua Lock
1ee88638a2 rootfs_rpm: Explicitly add runtime dependencies to depends
Python RDEPENDS are tricksy beasts and the runtime dependencies of Yum aren't
being pulled in for the RPM rootfs so explicitly add them to depends.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-03-26 12:23:11 +00:00
Richard Purdie
c328f161f8 bootimg.bbclass: Fix dependency name
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-25 17:09:15 +00:00
Richard Purdie
f89cd3158a bootimg/boot-directdisk.bbclass: Update afer syslinux changes, fix mbr.bin location and fix dependencies
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-25 14:09:06 +00:00
Richard Purdie
027c167878 boot-directdisk.bbclass: Add direct disk image creation class
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-25 11:44:25 +00:00
Richard Purdie
f30bf93e14 bootimg.bbclass: Improve documentation
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-25 11:36:40 +00:00
Richard Purdie
0449c26e97 packaged-staging.bbclass: Revert accidental damage
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-23 21:59:06 +00:00
Richard Purdie
9ce619897c packaged-staging.bbclass: Fix mkdir to actually create the destination directory
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-23 21:56:21 +00:00
Richard Purdie
a4008b883c utility-tasks.bbclass: Remove unneeded base_ prefix since we don't EXPORT these functions any longer
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-22 17:12:38 +00:00
Richard Purdie
e17a0bd6c0 sanity.bbclass: Add a note about using dpkg-reconfigure
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-22 14:33:56 +00:00
Richard Purdie
9c5386c1fd base.bbclass: Split up as per the patch in OE.dev by Chris Larson making code more readable and modularised
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-19 23:12:06 +00:00
Richard Purdie
185cb38f13 base.bbclass: Really drop siteinfo by default
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-03-19 22:53:21 +00:00
Richard Purdie
a30f6e968c base.bbclass: Don't inherit siteinfo in base.bbclass [based on an OE patch from Chris Larson] 2010-03-19 18:08:35 +00:00
Joshua Lock
28f7dd3ca7 packaged-staging: tweak previous fix to accomodate possible changes to CROSS_DIR
This change, suggested by Chris Larson, ensures that the fix works even if the
definition of CROSS_DIR changes.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-03-05 08:35:46 +00:00
Joshua Lock
538087d203 packaged-staging: Fix packagaging of cross packages
packagedstaging_fastpath() was only copying the contents of CROSS_DIR to
PSTAGE_TMPDIR resulting in the folders contents being packaged and then
installed incorrectly at the top level of CROSS_DIR rather than in HOST_ARCH
specific sub directories.

This patch fixes that issue by copying the directory and its contents rather
than just the directory contents.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-03-04 16:53:00 +00:00
Joshua Lock
211f928e08 packaged-staging: Fix typo, grep not qrep ...
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-03-03 17:43:40 +00:00
Joshua Lock
cb8ae04ebe packaged-staging: post-process non-binary files to fix paths in native packages
Extend the existing libtool hack so that native packages (native, cross, sdk)
have all non-binary files scanned and the STAGING_DIR fixed up.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-02-26 12:33:34 +00:00
Richard Purdie
7a60d379e8 relocatable.bbclass: Clean up indentation
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-02-22 14:23:26 +00:00
Richard Purdie
df76efbdee relocatable.bbclass: Handle symlinks correctly
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-02-22 14:20:26 +00:00
Joshua Lock
814c3efb5c cross.bbclass: Note that relocatable binaries disabled for a reason
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-02-18 10:57:08 +00:00
Joshua Lock
ef246b44b9 relocatable.bbclass: Enhancements to rpath replacement algorithm
This patch removes the hard coded number of parent directory operators ( /..)
placed into the rpath and instead fully dynamically generates the rpath entries
based on the current rpath.

Theoretically this patch means we can now make cross packages relocatable but
this is *not* enabled as chrpath can only set a new rpath of the same length
or shorter than the existing rpath. Due to the amount of parent directory
jumps we need to encode in the rpath this can easily fail when TMPDIR is in a
short namespace (e.g. /usr/poky).

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-02-18 10:38:29 +00:00
Joshua Lock
da10a2af54 sanity.bbclass: Add chrpath to the required utilities
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-02-15 16:43:38 +00:00
Joshua Lock
7b4e80b98e relocatable.bbclass: Tidy up class
There was a hard coded path and a spurious variable left in before the last
commit. Whoops ...

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-02-12 17:39:08 +00:00
Joshua Lock
f1a87fadc7 relocatable.bbclass: Improve logic and style
The initial pass at this class was pretty lame and broke on a lot of native
packages. This rewrite makes the code a lot more dynamic, removing use of hard
coded paths and improving the logic.

The class now runs a chrpath -l over the binary to determine what rpaths are
currently set. It then munges the output and determines relative versions of
each component of the rpath and uses chrpath -r to set them.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-02-12 15:00:44 +00:00
Joshua Lock
6e1cc7ca10 relocatable.bbclass: remove hard-coded rpaths from native binaries
The relocatable path will pre-process built binaries in SYSROOT_DESTDIR and
replace any harcoded dynamic link rpaths with relative paths.

Add an inherit of class in native.bbclass to make our native packages
relocatable and tweak the chrpath recipe so that the native package can make
itself relocatable with the just built chrpath binary.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-02-11 16:21:09 +00:00
Joshua Lock
095347fc69 poky.bbclass: Use pokylinux.org stashes as PREMIRRORS for vcs'
Check the tarball stash on pokylinux.org before hitting the upstream
version control systems. This is friendlier to the upstream repositories than
us hammering their bandwidth.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-02-04 00:18:29 +00:00
Joshua Lock
50ffb99417 packaged-staging: basic support for pulling staging packages from a mirror
Add simple support for trying to fetch staging packages from a http, https  or
ftp mirror if they do not already exist in PSTAGE_DIR.

As documented in local.conf.sample
"Poky can try and fetch packaged-staging packages from a http, https or ftp
mirror. Set this variable to the root of a pstage directory on a server."

If the PSTAGE_MIRROR variable is not set, or the package cannot be found on
the mirror it will be built as usual.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-29 12:33:46 +00:00
Joshua Lock
b2c8430898 packaged-staging: Move packaged staging directory outside of DEPLOY_DIR
Rename DEPLOY_DIR_PSTAGE to PSTAGE_DIR and move it outside of deploy.
Do soft assignment of a default variable inside bitbake.conf as
${OEROOT}/tmp/pstage.
Use a separate directory, PSTAGE_WORKDIR, to store transient packaged
staging files such as the stamp files and opkg.conf

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-29 12:33:45 +00:00
Joshua Lock
9ff304510e packaged-staging: fix up handling of crosssdk packages
The packaged-staging class already special cases native packages for ensuring
the package is only reused if the path doesn't change.

This patch ensures the special casing is also done for crosssdk packages.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-29 12:33:45 +00:00
Richard Purdie
fd34f26511 insane.bbclass: Since we have no legacy packaging, no need to repeatedly scan staging
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-26 16:00:13 +00:00
Richard Purdie
d6c7a44b94 gcc-cross-canadian: Fix include paths and hence c++ compiler issues
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-20 15:56:35 +00:00
Richard Purdie
feed2e22f4 cross.bbclass: Set BASEPKG_HOST_SYS to a sane value
Signed-off-by: Richard Purdie <richard@rex.(none)>
2010-01-14 17:19:02 +00:00
Richard Purdie
ce687c223f package_ipk.bbclass: Tweak handling for all/any/noarch and nativesdk
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14 13:16:13 +00:00
Richard Purdie
adede582cd package_ipk.bbclass: Add handling for all/any/noarch and nativesdk
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14 12:36:37 +00:00
Richard Purdie
ed2be0f349 insane.bbclass: Fix typo
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14 11:37:56 +00:00
Richard Purdie
9604ad0ddf cross-canadian: Fix gettext issues
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-14 11:25:42 +00:00
Joshua Lock
aef159c70c insane.bbclass: Fix multiline string
Earlier commit had created a multiline string without
updating the python string quotation (""" for multiline).

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-06 13:18:18 +00:00
Joshua Lock
aee835ba8f insane.bbclass: enhance gettext error message
Point the user at gettext.bbclass which handles adding the
correct gettext to DEPENDS.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-06 09:32:41 +00:00
Richard Purdie
c37037df65 gettext.bbclass: Set the gettext dependencies correctly for target, cross and native packages
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-01-05 21:10:47 +00:00
Joshua Lock
8a7fd14ad4 insane.bbclass: special case gettext as it can't depend on itself
Only run the gettext section of the QA configure sanity check if
the package is not gettext as the gettext tools, shipped with
gettext, use the macro employed in the sanity check.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-01-04 10:34:00 +00:00
Joshua Lock
2be65803cb insane.bbclass: Fix gettext test
The previous gettext check was broken resulting in many false positives.
This improved version works as follows:
* Adds to the existing os.walk() and builds a list of configure.in and
  configure.ac files
* Tests whether DEPENDS includes an appropriate gettext
* If not greps the configure files in the list for instances of AM_GNU_GETTEXT
* If if an instance is found we bb.fatal with an appropriate message

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2009-12-21 10:51:50 +00:00