diff options
Diffstat (limited to 'packages')
-rw-r--r-- | packages/fis/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/fis/files/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/fis/files/fis.cc | 372 | ||||
-rw-r--r-- | packages/fis/fis_1.0.bb | 35 | ||||
-rw-r--r-- | packages/glibc/glibc-package.bbclass | 2 | ||||
-rw-r--r-- | packages/glibc/glibc.inc | 15 | ||||
-rw-r--r-- | packages/glibc/glibc_2.2.5.bb | 11 | ||||
-rw-r--r-- | packages/glibc/glibc_2.3.2+cvs20040726.bb | 11 | ||||
-rw-r--r-- | packages/glibc/glibc_2.3.2.bb | 12 | ||||
-rw-r--r-- | packages/glibc/glibc_2.3.3+cvs20041128.bb | 11 | ||||
-rw-r--r-- | packages/glibc/glibc_2.3.3+cvs20050221.bb | 11 | ||||
-rw-r--r-- | packages/glibc/glibc_2.3.3+cvs20050420.bb | 11 | ||||
-rw-r--r-- | packages/glibc/glibc_2.3.3.bb | 11 | ||||
-rw-r--r-- | packages/glibc/glibc_2.3.5+cvs20050627.bb | 10 | ||||
-rw-r--r-- | packages/glibc/glibc_2.4.bb | 10 | ||||
-rw-r--r-- | packages/glibc/glibc_2.5.bb | 10 | ||||
-rw-r--r-- | packages/glibc/glibc_cvs.bb | 10 | ||||
-rw-r--r-- | packages/lvm2/lvm2_2.01.15.bb | 2 | ||||
-rw-r--r-- | packages/uboot-utils/files/fw_env.config | 7 |
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 |