summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/fis/.mtn2git_empty0
-rw-r--r--packages/fis/files/.mtn2git_empty0
-rw-r--r--packages/fis/files/fis.cc372
-rw-r--r--packages/fis/fis_1.0.bb35
-rw-r--r--packages/glibc/glibc-package.bbclass2
-rw-r--r--packages/glibc/glibc.inc15
-rw-r--r--packages/glibc/glibc_2.2.5.bb11
-rw-r--r--packages/glibc/glibc_2.3.2+cvs20040726.bb11
-rw-r--r--packages/glibc/glibc_2.3.2.bb12
-rw-r--r--packages/glibc/glibc_2.3.3+cvs20041128.bb11
-rw-r--r--packages/glibc/glibc_2.3.3+cvs20050221.bb11
-rw-r--r--packages/glibc/glibc_2.3.3+cvs20050420.bb11
-rw-r--r--packages/glibc/glibc_2.3.3.bb11
-rw-r--r--packages/glibc/glibc_2.3.5+cvs20050627.bb10
-rw-r--r--packages/glibc/glibc_2.4.bb10
-rw-r--r--packages/glibc/glibc_2.5.bb10
-rw-r--r--packages/glibc/glibc_cvs.bb10
-rw-r--r--packages/lvm2/lvm2_2.01.15.bb2
-rw-r--r--packages/uboot-utils/files/fw_env.config7
19 files changed, 536 insertions, 15 deletions
diff --git a/packages/fis/.mtn2git_empty b/packages/fis/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/fis/.mtn2git_empty
diff --git a/packages/fis/files/.mtn2git_empty b/packages/fis/files/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/fis/files/.mtn2git_empty
diff --git a/packages/fis/files/fis.cc b/packages/fis/files/fis.cc
new file mode 100644
index 0000000000..8c43eca811
--- /dev/null
+++ b/packages/fis/files/fis.cc
@@ -0,0 +1,372 @@
+// fis.cc
+// see http://svn.chezphil.org/utils
+// (C) 2007 Philip Endecott
+
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+
+#include <string>
+#include <iostream>
+#include <map>
+
+#include <boost/lexical_cast.hpp>
+#include <boost/format.hpp>
+
+#include "Exception.hh"
+#include "FileDescriptor.hh"
+#include "utils.hh"
+#include "endian.hh"
+
+#include <stdint.h>
+
+using namespace std;
+using namespace boost;
+using namespace pbe;
+
+
+static void check_dev(string device)
+{
+ if (device=="") {
+ throw "You must specify a device using -d";
+ }
+}
+
+
+// This is taken from drivers/mtd/redboot.c in the Linux source
+struct fis_image_desc {
+ char name[16]; // Null terminated name
+ uint32_t flash_base; // Address within FLASH of image
+ uint32_t mem_base; // Address in memory where it executes
+ uint32_t size; // Length of image
+ uint32_t entry_point; // Execution entry point
+ uint32_t data_length; // Length of actual data
+ uint32_t skips[53];
+ uint32_t desc_cksum; // Checksum over image descriptor
+ uint32_t file_cksum; // Checksum over image data
+};
+
+ostream& operator<<(ostream& strm, const fis_image_desc& d)
+{
+ strm << format("%16s: addr = 0x%08x, size = 0x%08x\n")
+ % (d.name) % (d.flash_base) % (d.size);
+ for (unsigned int i=0; i<(sizeof(d.skips)/4); ++i) {
+ if (d.skips[i]==0x736b6970 || d.skips[i]==0x70696b73) { // "skip"
+ uint32_t offset = d.skips[i+1];
+ uint32_t length = d.skips[i+2];
+ strm << format(" skip: %08x + %08x\n")
+ % (offset) % (length);
+ i+=2;
+ }
+ }
+ return strm;
+}
+
+
+void check_checksum(const fis_image_desc& d)
+{
+ // This isn't checked by the kernel mtd driver, which has this
+ // comment: "RedBoot doesn't actually write the desc_cksum field yet
+ // AFAICT". I don't know what checksum is supposed to be used here.
+}
+
+void compute_checksum(fis_image_desc& d)
+{
+ // ditto
+}
+
+
+typedef map<uint32_t,fis_image_desc> dir_t;
+
+
+static void swap_entry_endianness(fis_image_desc& d)
+{
+ d.flash_base = swap_end_32(d.flash_base);
+ d.mem_base = swap_end_32(d.mem_base);
+ d.size = swap_end_32(d.size);
+ d.entry_point = swap_end_32(d.entry_point);
+ d.data_length = swap_end_32(d.data_length);
+ for (unsigned int i=0; i<(sizeof(d.skips)/4); ++i) {
+ d.skips[i] = swap_end_32(d.skips[i]);
+ }
+}
+
+
+static void load_dir(FileDescriptor& fd, int offset, int size, bool swap_endianness,
+ dir_t& dir)
+{
+ fd.seek(offset);
+ int num_entries = size/sizeof(fis_image_desc);
+ for (int i=0; i<num_entries; ++i) {
+ fis_image_desc d = fd.binread<fis_image_desc>();
+ if (d.name[0]!=static_cast<char>(0xff)) {
+ check_checksum(d);
+ if (swap_endianness) {
+ swap_entry_endianness(d);
+ }
+ dir[d.flash_base] = d;
+ }
+ }
+}
+
+
+static void write_blank_entries(FileDescriptor& fd, int n)
+{
+ char dummy[sizeof(fis_image_desc)];
+ for (unsigned int i=0; i<sizeof(fis_image_desc); ++i) {
+ dummy[i] = 0xff;
+ }
+ for (int i=0; i<n; ++i) {
+ fd.writeall(dummy,sizeof(fis_image_desc));
+ }
+}
+
+
+static void save_dir(FileDescriptor& fd, int offset, int size, bool swap_endianness,
+ const dir_t& dir)
+{
+ fd.seek(offset);
+ unsigned int num_entries = size/sizeof(fis_image_desc);
+ if (num_entries<dir.size()) {
+ throw "Too many entries for directory";
+ }
+ for (dir_t::const_iterator i=dir.begin();
+ i!=dir.end(); ++i) {
+ fis_image_desc d = i->second;
+ compute_checksum(d);
+ if (swap_endianness) {
+ swap_entry_endianness(d);
+ }
+ fd.binwrite<fis_image_desc>(d);
+ }
+ write_blank_entries(fd,num_entries-dir.size());
+}
+
+
+static void fis_list(string device, int offset, int size, bool swap_endianness)
+{
+ FileDescriptor fd(device,FileDescriptor::read_only);
+ dir_t dir;
+ load_dir(fd,offset,size,swap_endianness,dir);
+ for (dir_t::const_iterator i = dir.begin();
+ i != dir.end(); ++i) {
+ cout << i->second;
+ }
+}
+
+
+static void fis_init(string device, int offset, int size)
+{
+ FileDescriptor fd(device,FileDescriptor::create);
+ fd.seek(offset);
+ int num_entries = size/sizeof(fis_image_desc);
+ write_blank_entries(fd,num_entries);
+}
+
+
+static void check_overlap(const dir_t& dir, uint32_t addr, uint32_t size)
+{
+ uint32_t end_addr = addr+size;
+ for (dir_t::const_iterator i = dir.begin();
+ i != dir.end(); ++i) {
+ if (addr<(i->second.flash_base+i->second.size)
+ && end_addr>i->second.flash_base) {
+ throw "New partition overlaps existing partitions";
+ }
+ }
+}
+
+
+static void fis_create(string device, int offset, int size, bool swap_endianness,
+ int argc, char* argv[])
+{
+ fis_image_desc d;
+ d.mem_base = 0;
+ d.entry_point = 0;
+ d.data_length = 0;
+ for (unsigned int i=0; i<(sizeof(d.skips)/4); ++i) {
+ d.skips[i] = 0;
+ }
+ d.desc_cksum = 0;
+ d.file_cksum = 0;
+
+ for (int i=0; i<argc; ++i) {
+ string arg=argv[i];
+ if (arg=="-l") {
+ if (i==argc-1) {
+ throw "argumnet missing for -l";
+ }
+ ++i;
+ d.size = maybe_hex_string_to_int(argv[i]);
+ } else if (arg=="-f") {
+ if (i==argc-1) {
+ throw "argumnet missing for -f";
+ }
+ ++i;
+ d.flash_base = maybe_hex_string_to_int(argv[i]);
+ } else if (arg=="-n") {
+ if (i==argc-1) {
+ throw "argumnet missing for -n";
+ }
+ ++i;
+ string name = argv[i];
+ if (name.length()>=16) {
+ throw "name too long, max 16 chars including terminating null";
+ }
+ for (int j=0; j<16; j++) {
+ char c = name.c_str()[j];
+ d.name[j] = c;
+ if (!c) {
+ for (; j<16; ++j) {
+ d.name[j]=0;
+ }
+ break;
+ }
+ }
+ } else {
+ cerr << "Unrecognised option '" << arg << "'\n";
+ exit(1);
+ }
+ }
+
+ FileDescriptor fd(device,FileDescriptor::read_write);
+ dir_t dir;
+ load_dir(fd,offset,size,swap_endianness,dir);
+ check_overlap(dir,d.flash_base,d.size);
+ dir[d.flash_base] = d;
+ save_dir(fd,offset,size,swap_endianness,dir);
+}
+
+
+static void fis_delete(string device, int offset, int size, bool swap_endianness,
+ string name)
+{
+ FileDescriptor fd(device,FileDescriptor::read_write);
+ dir_t dir;
+ load_dir(fd,offset,size,swap_endianness,dir);
+
+ for (dir_t::iterator i = dir.begin();
+ i != dir.end(); ++i) {
+ string this_name(i->second.name);
+ if (this_name == name) {
+ dir.erase(i);
+ save_dir(fd,offset,size,swap_endianness,dir);
+ return;
+ }
+ }
+
+ throw "No partition found with specified name";
+}
+
+
+static void usage()
+{
+ cerr << "Usage:\n"
+ << " fis [options] list\n"
+ << " fis [options] init\n"
+ << " fis [options] create -f address -l size -n name\n"
+ << " fis [options] delete name\n"
+ << "Options:\n"
+ << " -d device specify /dev/mtd* device containing directory\n"
+ << " -o offset specify offset into device of start of directory\n"
+ << " (in decimal; prefix with 0x for hex)\n"
+ << " -s size specify size of directory in bytes\n"
+ << " -e swap endianness\n";
+}
+
+
+int main(int argc, char* argv[])
+{
+ try { try {
+
+ if (argc==1) {
+ usage();
+ exit(1);
+ }
+
+ string device="";
+ int offset=0;
+ int size=0;
+ bool swap_endianness=false;
+
+ for (int i=1; i<argc; ++i) {
+ string arg = argv[i];
+ if (arg=="-d") {
+ if (device!="") {
+ throw "-d option used more than once";
+ }
+ if (i==argc-1) {
+ throw "-d option is missing its parameter";
+ }
+ ++i;
+ device = argv[i];
+ } else if (arg=="-o") {
+ if (offset!=0) {
+ throw "-o option used more than once";
+ }
+ if (i==argc-1) {
+ throw "-o option is missing its parameter";
+ }
+ ++i;
+ offset = maybe_hex_string_to_int(argv[i]);
+ } else if (arg=="-s") {
+ if (size!=0) {
+ throw "-s option used more than once";
+ }
+ if (i==argc-1) {
+ throw "-s option is missing its parameter";
+ }
+ ++i;
+ size = maybe_hex_string_to_int(argv[i]);
+ } else if (arg=="-e") {
+ swap_endianness = true;
+ } else if (arg=="list") {
+ if (i!=argc-1) {
+ throw "Extra arguments after 'list'";
+ }
+ check_dev(device);
+ fis_list(device,offset,size,swap_endianness);
+ } else if (arg=="init") {
+ if (i!=argc-1) {
+ throw "Extra arguments after 'init'";
+ }
+ check_dev(device);
+ fis_init(device,offset,size);
+ } else if (arg=="create") {
+ check_dev(device);
+ fis_create(device,offset,size,swap_endianness,
+ argc-i-1,&argv[i+1]);
+ break;
+ } else if (arg=="delete") {
+ if (i!=argc-2) {
+ throw "Exactly one argumnet required after 'delete'";
+ }
+ ++i;
+ string name = argv[i];
+ check_dev(device);
+ fis_delete(device,offset,size,swap_endianness,name);
+ } else {
+ cerr << "unrecognised argument '" << arg << "'\n";
+ usage();
+ exit(1);
+ }
+ }
+ } RETHROW_MISC_EXCEPTIONS }
+ catch (Exception& E) {
+ cerr << "Error: ";
+ E.report(cerr);
+ exit(1);
+ }
+}
+
diff --git a/packages/fis/fis_1.0.bb b/packages/fis/fis_1.0.bb
new file mode 100644
index 0000000000..09bfa90a36
--- /dev/null
+++ b/packages/fis/fis_1.0.bb
@@ -0,0 +1,35 @@
+DESCRIPTION = "Tool to edit the Redboot FIS partition layout from userspace"
+PR = "r1"
+DEPENDS = "boost"
+
+SRC_URI = "http://svn.chezphil.org/utils/trunk/fis.cc \
+ svn://svn.chezphil.org/;module=libpbe;proto=http"
+
+PACKAGES =+ "fis-static"
+FILES_${PN}-static = "${sbindir}/fis-static"
+FILES_${PN} = "${sbindir}/fis"
+
+do_compile() {
+ ${CXX} -Os -W -I${STAGING_INCDIR} -I${WORKDIR}/libpbe/trunk/include -o fis ${WORKDIR}/fis.cc \
+ ${WORKDIR}/libpbe/trunk/src/Exception.cc ${WORKDIR}/libpbe/trunk/src/utils.cc
+
+ # Work around boost threading issue when compiling static
+ # We're singlethreading anyway
+
+ echo "#define BOOST_SP_DISABLE_THREADS" > ${WORKDIR}/tmpfile
+ cat ${WORKDIR}/tmpfile ${WORKDIR}/fis.cc > ${WORKDIR}/fis.new
+ mv ${WORKDIR}/fis.new ${WORKDIR}/fis.cc
+ rm ${WORKDIR}/tmpfile
+
+ ${CXX} -Os -W -static -I${STAGING_INCDIR} -I${WORKDIR}/libpbe/trunk/include -o fis-static ${WORKDIR}/fis.cc \
+ ${WORKDIR}/libpbe/trunk/src/Exception.cc ${WORKDIR}/libpbe/trunk/src/utils.cc
+}
+
+do_install() {
+ ${STRIP} ${WORKDIR}/fis-${PV}/fis-static
+ ${STRIP} ${WORKDIR}/fis-${PV}/fis
+
+ install -d ${D}/${sbindir}
+ install -m 755 ${WORKDIR}/fis-${PV}/fis-static ${D}/${sbindir}
+ install -m 755 ${WORKDIR}/fis-${PV}/fis ${D}/${sbindir}
+}
diff --git a/packages/glibc/glibc-package.bbclass b/packages/glibc/glibc-package.bbclass
index 5783ab1fcf..4cad10fd73 100644
--- a/packages/glibc/glibc-package.bbclass
+++ b/packages/glibc/glibc-package.bbclass
@@ -40,7 +40,7 @@ FILES_glibc-dev_append = " ${libdir}/*.o ${bindir}/rpcgen"
FILES_nscd = "${sbindir}/nscd*"
FILES_glibc-utils = "${bindir}/* ${sbindir}/*"
FILES_glibc-gconv = "${libdir}/gconv/*"
-FILES_${PN}-dbg += "${libexecdir}/getconf/.debug ${libdir}/gconv/.debug"
+FILES_${PN}-dbg += " ${libdir}/gconv/.debug"
FILES_catchsegv = "${bindir}/catchsegv"
RDEPENDS_catchsegv = "libsegfault"
FILES_glibc-pcprofile = "/lib/libpcprofile.so"
diff --git a/packages/glibc/glibc.inc b/packages/glibc/glibc.inc
index cd9220fdae..7078a1c09f 100644
--- a/packages/glibc/glibc.inc
+++ b/packages/glibc/glibc.inc
@@ -3,18 +3,7 @@ HOMEPAGE = "http://www.gnu.org/software/libc/libc.html"
SECTION = "libs"
PRIORITY = "required"
LICENSE = "LGPL"
-# nptl needs unwind support in gcc, which can't be built without glibc.
-DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
-#this leads to circular deps, so lets not add it yet
-#RDEPENDS_ldd += " bash"
-PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
-PROVIDES += "virtual/libintl virtual/libiconv"
-
-inherit autotools
-
-GLIBC_EXTRA_OECONF ?= ""
-INHIBIT_DEFAULT_DEPS = "1"
-
PACKAGES = "glibc catchsegv sln nscd ldd localedef glibc-utils glibc-dev glibc-doc glibc-locale libsegfault glibc-extra-nss glibc-thread-db glibc-pcprofile"
-require glibc-package.bbclass
+#this leads to circular deps, so lets not add it yet
+#RDEPENDS_ldd += " bash"
diff --git a/packages/glibc/glibc_2.2.5.bb b/packages/glibc/glibc_2.2.5.bb
index 9050605371..75f08be942 100644
--- a/packages/glibc/glibc_2.2.5.bb
+++ b/packages/glibc/glibc_2.2.5.bb
@@ -6,6 +6,7 @@ PR = "r10"
DEFAULT_PREFERENCE_sh3 = "-99"
GLIBC_ADDONS ?= "linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
#
# For now, we will skip building of a gcc package if it is a uclibc one
@@ -23,7 +24,12 @@ python __anonymous () {
bb.data.getVar('TARGET_OS', d, 1))
}
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
PROVIDES_unslung = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+INHIBIT_DEFAULT_DEPS = "1"
libc_baselibs = "/lib/libc* /lib/libm* /lib/ld* /lib/libpthread* /lib/libresolv* /lib/librt* /lib/libutil* /lib/libnsl* /lib/libnss_files* /lib/libnss_compat* /lib/libnss_dns* /lib/libdl* /lib/libanl* /lib/libBrokenLocale*"
@@ -107,6 +113,8 @@ SRC_URI = "${GNU_MIRROR}/glibc/glibc-${PV}.tar.gz \
S = "${WORKDIR}/glibc-${PV}"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -226,6 +234,9 @@ do_stage() {
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+require glibc-package.bbclass
+
+
# Unslung distribution specific packages follow ...
PACKAGES_unslung = "libc6-unslung"
diff --git a/packages/glibc/glibc_2.3.2+cvs20040726.bb b/packages/glibc/glibc_2.3.2+cvs20040726.bb
index aa37e0beae..40fef7bed4 100644
--- a/packages/glibc/glibc_2.3.2+cvs20040726.bb
+++ b/packages/glibc/glibc_2.3.2+cvs20040726.bb
@@ -6,6 +6,13 @@ FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
PR = "r22"
GLIBC_ADDONS ?= "linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
+
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+INHIBIT_DEFAULT_DEPS = "1"
# file://noinfo.patch;patch=1
# file://ldconfig.patch;patch=1;pnum=0
@@ -31,6 +38,8 @@ SRC_URI_append_openmn = " file://ldsocache-varrun.patch;patch=1"
S = "${WORKDIR}/libc"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -116,3 +125,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_2.3.2.bb b/packages/glibc/glibc_2.3.2.bb
index c2b1b4aef9..1dba326201 100644
--- a/packages/glibc/glibc_2.3.2.bb
+++ b/packages/glibc/glibc_2.3.2.bb
@@ -5,6 +5,7 @@ PR = "r11"
DEFAULT_PREFERENCE_sh3 = "-99"
GLIBC_ADDONS ?= "linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
#
# For now, we will skip building of a gcc package if it is a uclibc one
@@ -22,6 +23,13 @@ python __anonymous () {
bb.data.getVar('TARGET_OS', d, 1))
}
+PROVIDES += "virtual/libintl virtual/libiconv"
+
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+INHIBIT_DEFAULT_DEPS = "1"
+
libc_baselibs = "/lib/libc* /lib/libm* /lib/ld* /lib/libpthread* /lib/libresolv* /lib/librt* /lib/libutil* /lib/libnsl* /lib/libnss_files* /lib/libnss_compat* /lib/libnss_dns* /lib/libdl* /lib/libanl* /lib/libBrokenLocale*"
FILES_${PN} = "${sysconfdir} ${libc_baselibs} /sbin/ldconfig ${libexecdir} ${datadir}/zoneinfo"
@@ -106,6 +114,8 @@ SRC_URI = "ftp://ftp.gnu.org/gnu/glibc/glibc-${PV}.tar.gz \
S = "${WORKDIR}/glibc-${PV}"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -202,3 +212,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_2.3.3+cvs20041128.bb b/packages/glibc/glibc_2.3.3+cvs20041128.bb
index bfd37e641b..9286fce398 100644
--- a/packages/glibc/glibc_2.3.3+cvs20041128.bb
+++ b/packages/glibc/glibc_2.3.3+cvs20041128.bb
@@ -6,6 +6,7 @@ FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
PR = "r7"
GLIBC_ADDONS ?= "linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
DEFAULT_PREFERENCE = "-1"
DEFAULT_PREFERENCE_i686 = "0"
@@ -28,6 +29,12 @@ python __anonymous () {
bb.data.getVar('TARGET_OS', d, 1))
}
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+INHIBIT_DEFAULT_DEPS = "1"
+
# file://noinfo.patch;patch=1
# file://ldconfig.patch;patch=1;pnum=0
SRC_URI = "cvs://anoncvs@sources.redhat.com/cvs/glibc;module=libc;date=${@bb.data.getVar('PV', d, 1)[9:]} \
@@ -50,6 +57,8 @@ SRC_URI_append_openmn = " file://ldsocache-varrun.patch;patch=1"
S = "${WORKDIR}/libc"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -138,3 +147,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_2.3.3+cvs20050221.bb b/packages/glibc/glibc_2.3.3+cvs20050221.bb
index bfe88ae6eb..6382d12e57 100644
--- a/packages/glibc/glibc_2.3.3+cvs20050221.bb
+++ b/packages/glibc/glibc_2.3.3+cvs20050221.bb
@@ -6,12 +6,19 @@ FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
PR = "r7"
GLIBC_ADDONS ?= "linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
DEFAULT_PREFERENCE = "-1"
DEFAULT_PREFERENCE_i686 = "0"
DEFAULT_PREFERENCE_sh3 = "0"
DEFAULT_PREFERENCE_sh4 = "0"
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+INHIBIT_DEFAULT_DEPS = "1"
+
# file://noinfo.patch;patch=1
# file://ldconfig.patch;patch=1;pnum=0
SRC_URI = "cvs://anoncvs@sources.redhat.com/cvs/glibc;module=libc;date=${@bb.data.getVar('PV', d, 1)[9:]} \
@@ -35,6 +42,8 @@ SRC_URI_append_openmn = " file://ldsocache-varrun.patch;patch=1"
S = "${WORKDIR}/libc"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -121,3 +130,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_2.3.3+cvs20050420.bb b/packages/glibc/glibc_2.3.3+cvs20050420.bb
index 492a3edffc..f955a6e0a0 100644
--- a/packages/glibc/glibc_2.3.3+cvs20050420.bb
+++ b/packages/glibc/glibc_2.3.3+cvs20050420.bb
@@ -8,9 +8,16 @@ FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
PR = "r5"
GLIBC_ADDONS ?= "linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
DEFAULT_PREFERENCE = "-1"
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+INHIBIT_DEFAULT_DEPS = "1"
+
# file://noinfo.patch;patch=1
# file://ldconfig.patch;patch=1;pnum=0
SRC_URI = "cvs://anoncvs@sources.redhat.com/cvs/glibc;module=libc;date=${@bb.data.getVar('PV', d, 1)[9:]} \
@@ -36,6 +43,8 @@ SRC_URI_append_openmn = " file://ldsocache-varrun.patch;patch=1"
S = "${WORKDIR}/libc"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -122,3 +131,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_2.3.3.bb b/packages/glibc/glibc_2.3.3.bb
index 13973ea400..0db2616a75 100644
--- a/packages/glibc/glibc_2.3.3.bb
+++ b/packages/glibc/glibc_2.3.3.bb
@@ -8,6 +8,7 @@ DEFAULT_PREFERENCE = "-1"
DEFAULT_PREFERENCE_mipsel = "0"
GLIBC_ADDONS ?= "linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
#
# For now, we will skip building of a gcc package if it is a uclibc one
@@ -25,6 +26,12 @@ python __anonymous () {
bb.data.getVar('TARGET_OS', d, 1))
}
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+INHIBIT_DEFAULT_DEPS = "1"
+
libc_baselibs = "/lib/libc* /lib/libm* /lib/ld* /lib/libpthread* /lib/libresolv* /lib/librt* /lib/libutil* /lib/libnsl* /lib/libnss_files* /lib/libnss_compat* /lib/libnss_dns* /lib/libdl* /lib/libanl* /lib/libBrokenLocale*"
FILES_${PN} = "${sysconfdir} ${libc_baselibs} /sbin/ldconfig ${libexecdir} ${datadir}/zoneinfo"
@@ -51,6 +58,8 @@ SRC_URI = "ftp://ftp.gnu.org/gnu/glibc/glibc-${PV}.tar.gz \
S = "${WORKDIR}/glibc-${PV}"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -147,3 +156,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_2.3.5+cvs20050627.bb b/packages/glibc/glibc_2.3.5+cvs20050627.bb
index e2094321fb..985df1dfaa 100644
--- a/packages/glibc/glibc_2.3.5+cvs20050627.bb
+++ b/packages/glibc/glibc_2.3.5+cvs20050627.bb
@@ -8,6 +8,7 @@ PR = "r13"
DEFAULT_PREFERENCE_sh3="-1"
GLIBC_ADDONS ?= "ports,linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
GLIBC_BROKEN_LOCALES = "sid_ET tr_TR mn_MN"
@@ -27,7 +28,12 @@ python __anonymous () {
bb.data.getVar('TARGET_OS', d, 1))
}
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
RDEPENDS_${PN}-dev = "linux-libc-headers-dev"
+INHIBIT_DEFAULT_DEPS = "1"
# file://noinfo.patch;patch=1
# file://ldconfig.patch;patch=1;pnum=0
@@ -65,6 +71,8 @@ SRC_URI_append_sh4 = " file://no-z-defs.patch;patch=1 \
S = "${WORKDIR}/libc"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -174,3 +182,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_2.4.bb b/packages/glibc/glibc_2.4.bb
index 214e9cce90..4cf0b82b92 100644
--- a/packages/glibc/glibc_2.4.bb
+++ b/packages/glibc/glibc_2.4.bb
@@ -14,6 +14,7 @@ TARGET_CPPFLAGS = "-I${STAGING_DIR}/${TARGET_SYS}/include"
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-2.4"
GLIBC_ADDONS ?= "ports,nptl,libidn"
+GLIBC_EXTRA_OECONF ?= ""
GLIBC_BROKEN_LOCALES = "sid_ET tr_TR mn_MN gez_ET gez_ER bn_BD te_IN"
@@ -33,7 +34,12 @@ python __anonymous () {
bb.data.getVar('TARGET_OS', d, 1))
}
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
RDEPENDS_${PN}-dev = "linux-libc-headers-dev"
+INHIBIT_DEFAULT_DEPS = "1"
# file://noinfo.patch;patch=1
# file://ldconfig.patch;patch=1;pnum=0
@@ -70,6 +76,8 @@ SRC_URI_append_sh4 = " file://no-z-defs.patch;patch=1"
S = "${WORKDIR}/glibc-2.4"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -190,3 +198,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_2.5.bb b/packages/glibc/glibc_2.5.bb
index a54588e624..e34bf99a59 100644
--- a/packages/glibc/glibc_2.5.bb
+++ b/packages/glibc/glibc_2.5.bb
@@ -15,6 +15,7 @@ TARGET_CPPFLAGS = "-I${STAGING_DIR}/${TARGET_SYS}/include"
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-2.4"
GLIBC_ADDONS ?= "ports,nptl,libidn"
+GLIBC_EXTRA_OECONF ?= ""
GLIBC_BROKEN_LOCALES = "sid_ET tr_TR mn_MN gez_ET gez_ER bn_BD te_IN"
@@ -34,7 +35,12 @@ python __anonymous () {
bb.data.getVar('TARGET_OS', d, 1))
}
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
RDEPENDS_${PN}-dev = "linux-libc-headers-dev"
+INHIBIT_DEFAULT_DEPS = "1"
# file://noinfo.patch;patch=1
# file://ldconfig.patch;patch=1;pnum=0
@@ -78,6 +84,8 @@ SRC_URI_append_powerpc= " file://ppc-sfp-machine.patch;patch=1 \
S = "${WORKDIR}/glibc-${PV}"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -199,3 +207,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/glibc/glibc_cvs.bb b/packages/glibc/glibc_cvs.bb
index 8512bf3855..c85aa500f1 100644
--- a/packages/glibc/glibc_cvs.bb
+++ b/packages/glibc/glibc_cvs.bb
@@ -5,6 +5,7 @@ PR = "r5"
PV = "2.3.5+cvs${SRCDATE}"
GLIBC_ADDONS ?= "ports,linuxthreads"
+GLIBC_EXTRA_OECONF ?= ""
DEFAULT_PREFERENCE = "-1"
@@ -24,6 +25,11 @@ python __anonymous () {
bb.data.getVar('TARGET_OS', d, 1))
}
+# nptl needs unwind support in gcc, which can't be built without glibc.
+PROVIDES = "virtual/libc ${@['virtual/${TARGET_PREFIX}libc-for-gcc', '']['nptl' in '${GLIBC_ADDONS}']}"
+PROVIDES += "virtual/libintl virtual/libiconv"
+DEPENDS = "${@['virtual/${TARGET_PREFIX}gcc-initial', 'virtual/${TARGET_PREFIX}gcc']['nptl' in '${GLIBC_ADDONS}']} linux-libc-headers"
+INHIBIT_DEFAULT_DEPS = "1"
RDEPENDS_${PN}-dev = "linux-libc-headers-dev"
# file://noinfo.patch;patch=1
@@ -52,6 +58,8 @@ SRC_URI_append_arm = " file://dyn-ldconfig-20041128.patch;patch=1"
S = "${WORKDIR}/libc"
B = "${WORKDIR}/build-${TARGET_SYS}"
+inherit autotools
+
EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
--without-cvs --disable-profile --disable-debug --without-gd \
--enable-clocale=gnu \
@@ -145,3 +153,5 @@ do_stage() {
echo 'GROUP ( libpthread.so.0 libpthread_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libpthread.so
echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
}
+
+require glibc-package.bbclass
diff --git a/packages/lvm2/lvm2_2.01.15.bb b/packages/lvm2/lvm2_2.01.15.bb
index f4e84fb064..ee726f7e6b 100644
--- a/packages/lvm2/lvm2_2.01.15.bb
+++ b/packages/lvm2/lvm2_2.01.15.bb
@@ -1,7 +1,7 @@
SECTION = "utils"
DESCRIPTION = "LVM2 is a set of utilities to manage logical volumes in Linux."
LICENSE = "GPL"
-PR = ""
+PR = "r0"
DEPENDS = "device-mapper"
S = "${WORKDIR}/LVM2.${PV}"
diff --git a/packages/uboot-utils/files/fw_env.config b/packages/uboot-utils/files/fw_env.config
new file mode 100644
index 0000000000..2432bd866c
--- /dev/null
+++ b/packages/uboot-utils/files/fw_env.config
@@ -0,0 +1,7 @@
+# Configuration file for fw_(printenv/saveenv) utility.
+# Up to two entries are valid, in this case the redundand
+# environment sector is assumed present.
+
+# MTD device name Device offset Env. size Flash sector size
+/dev/mtd1 0x0000 0x4000 0x4000
+/dev/mtd2 0x0000 0x4000 0x4000