Commit Graph

7759 Commits

Author SHA1 Message Date
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