summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Barker <paul@paulbarker.me.uk>2014-05-28 15:19:50 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-06-17 08:59:35 +0100
commit6aa8d74ab22b55aa56ac9a0b32e1f099b5bf5e46 (patch)
treeb9f7f97e8d2b898e4eac0f7c6c2a577fcc746608
parent5a6f1c003c10bf1e58fe376c56230187f6536343 (diff)
downloadpoky-6aa8d74ab22b55aa56ac9a0b32e1f099b5bf5e46.tar.gz
package_ipk.bbclass: Support hierarchical feed
This patch allows for an optional new layout for ipk feed directories which I've called a 'hierarchical feed' and is based on how Debian pools package files. It is disabled by default and is enabled by setting IPK_HIERARCHICAL_FEED to "1". In the traditional feed layout, package files are placed in <outdir>/<arch>/. This can lead to several thousand files existing in a single directory which is often a problem if developers want to upload a package feed to a shared web hosting provider. For example, in my case, listing files via FTP only shows the first 2000 files, breaking my scripts which attempt to upload only new and changed files via FTP. In the hierarchical feed, package files are written to <outdir>/<arch>/<pkg_prefix>/<pkg_subdir>, where pkg_prefix is the first letter of the package file name for non-lib packages or "lib" plus the 4th letter of the package file name for lib packages (eg, 'l' for less, 'libc' for libc6). pkg_subdir is the root of the package file name, discarding the version and architecture parts and the common suffixes '-dbg', '-dev', '-doc', '-staticdev', '-locale' and '-locale-*' which are listed in meta/conf/bitbake.conf. This change relies on recent patches to opkg-utils which support hierarchical package feeds. (From meta-yocto rev: a0ab1527f975343f325fb2a5b0ecd14acdd65bc0) Signed-off-by: Paul Barker <paul@paulbarker.me.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta-yocto/conf/local.conf.sample.extended23
1 files changed, 23 insertions, 0 deletions
diff --git a/meta-yocto/conf/local.conf.sample.extended b/meta-yocto/conf/local.conf.sample.extended
index 1032bdef51..b156319163 100644
--- a/meta-yocto/conf/local.conf.sample.extended
+++ b/meta-yocto/conf/local.conf.sample.extended
@@ -308,3 +308,26 @@
308#INITRAMFS_IMAGE = "core-image-minimal-initramfs" 308#INITRAMFS_IMAGE = "core-image-minimal-initramfs"
309#INITRAMFS_IMAGE_BUNDLE = "1" 309#INITRAMFS_IMAGE_BUNDLE = "1"
310 310
311#
312# IPK Hierarchical feed
313#
314# In some cases it may be desirable not to have all package files in the same
315# directory. An example would be when package feeds are to be uploaded to a
316# shared webhosting service or transferred to a Windows machine which may have
317# problems with directories containing multiple thousands of files.
318#
319# If the IPK_HIERARCHICAL_FEED variable is set to "1", packages will be split
320# between subdirectories in a similar way to how Debian package feeds are
321# organised. In the hierarchical feed, package files are written to
322# <outdir>/<arch>/<pkg_prefix>/<pkg_subdir>, where pkg_prefix is the first
323# letter of the package file name for non-lib packages or "lib" plus the 4th
324# letter of the package file name for lib packages (eg, 'l' for less, 'libc' for
325# libc6). pkg_subdir is the root of the package file name, discarding the
326# version and architecture parts and the common suffixes '-dbg', '-dev', '-doc',
327# '-staticdev', '-locale' and '-locale-*' which are listed in
328# meta/conf/bitbake.conf.
329#
330# If IPK_HIERARCHICAL_FEED is unset or set to any other value, the traditional
331# feed layout is used where package files are placed in <outdir>/<arch>/.
332#
333#IPK_HIERARCHICAL_FEED = "1"