diff options
author | Matthias Hentges <oe@hentges.net> | 2007-12-27 21:37:31 +0000 |
---|---|---|
committer | Matthias Hentges <oe@hentges.net> | 2007-12-27 21:37:31 +0000 |
commit | 807d2d6d72975b2de4bc47940004f792b39b7c94 (patch) | |
tree | 4e42476229a92c9e18a846d806dce14a57a1bcac | |
parent | c8ba91fe350a5b56d46baef35470bdbbaa5edaef (diff) | |
parent | 2118494c862cc7442fda5249394b924575a6f7ca (diff) |
merge of '65fefd8b14862b0291239d37729964b98069c038'
and 'fbb56d5a76093891efdc7abc682059fd0436d4be'
46 files changed, 771 insertions, 175 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index dc59ea204c..23ddce0fde 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -74,7 +74,7 @@ Person: Holger Hans Peter Freyther Mail: zecke@selfish.org Website: http://www.openembedded.org/~zecke Interests: icecream, insanity, QA -Recipes: qtopia*, sqlite3, xine +Recipes: qtopia*, qt*, qmake*, sqlite3, xine Person: Jamie Lenehan Mail: lenehan@twibble.org diff --git a/classes/autotools.bbclass b/classes/autotools.bbclass index 8e4fba9400..991e472b14 100644 --- a/classes/autotools.bbclass +++ b/classes/autotools.bbclass @@ -174,6 +174,8 @@ autotools_stage_all() { fi if [ -d ${STAGE_TEMP}/${libdir} ] then + find ${STAGE_TEMP}/${libdir} -name '*.la' -exec sed -i s,installed=yes,installed=no, {} \; + for i in ${STAGE_TEMP}/${libdir}/*.la do if [ ! -f "$i" ]; then diff --git a/classes/binconfig.bbclass b/classes/binconfig.bbclass index 4e425a76d6..5ce9ff6f0d 100644 --- a/classes/binconfig.bbclass +++ b/classes/binconfig.bbclass @@ -20,6 +20,8 @@ def get_binconfig_mangle(d): s += " -e 's:OEEXECPREFIX:${STAGING_DIR_HOST}${layout_exec_prefix}:'" s += " -e 's:-I${WORKDIR}:-I${STAGING_INCDIR}:'" s += " -e 's:-L${WORKDIR}:-L${STAGING_LIBDIR}:'" + if bb.data.getVar("OE_BINCONFIG_EXTRA_MANGLE", d): + s += bb.data.getVar("OE_BINCONFIG_EXTRA_MANGLE", d) return s BINCONFIG_GLOB ?= "*-config" diff --git a/classes/insane.bbclass b/classes/insane.bbclass index 473fe6ebbf..14acdb73fb 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -8,28 +8,25 @@ # -Check the RUNTIME path for the $TMPDIR # -Check if .la files wrongly point to workdir # -Check if .pc files wrongly point to workdir -# -Check if packages contains .debug directories or .so files where they should be in -dev or -dbg +# -Check if packages contains .debug directories or .so files +# where they should be in -dev or -dbg # -Check if config.log contains traces to broken autoconf tests -# # # We need to have the scanelf utility as soon as -# possible and this is contained within the pax-utils-native +# possible and this is contained within the pax-utils-native. +# The package.bbclass can help us here. # - - -# We play a special package function inherit package PACKAGE_DEPENDS += "pax-utils-native desktop-file-utils-native" -#PACKAGE_DEPENDS += chrpath-native" PACKAGEFUNCS += " do_package_qa " # # dictionary for elf headers # -# feel free to add and correct. +# feel free to add and correct. # # TARGET_OS TARGET_ARCH MACHINE, OSABI, ABIVERSION, Little Endian, 32bit? def package_qa_get_machine_dict(): @@ -75,7 +72,7 @@ def package_qa_get_machine_dict(): "arm" : (40, 0, 0, True, True), "armeb" : (40, 0, 0, False, True), }, - + } # factory for a class, embedded in a method @@ -102,11 +99,10 @@ def package_qa_get_elf(path, bits32): ELFDATA2LSB = 1 ELFDATA2MSB = 2 - def my_assert(expectation, result): + def my_assert(self, expectation, result): if not expectation == result: - #print "'%x','%x'" % (ord(expectation), ord(result)) + #print "'%x','%x' %s" % (ord(expectation), ord(result), self.name) raise Exception("This does not work as expected") - my_assert = staticmethod(my_assert) def __init__(self, name): self.name = name @@ -115,16 +111,16 @@ def package_qa_get_elf(path, bits32): self.file = file(self.name, "r") self.data = self.file.read(ELFFile.EI_NIDENT+4) - ELFFile.my_assert(len(self.data), ELFFile.EI_NIDENT+4) - ELFFile.my_assert(self.data[0], chr(0x7f) ) - ELFFile.my_assert(self.data[1], 'E') - ELFFile.my_assert(self.data[2], 'L') - ELFFile.my_assert(self.data[3], 'F') + self.my_assert(len(self.data), ELFFile.EI_NIDENT+4) + self.my_assert(self.data[0], chr(0x7f) ) + self.my_assert(self.data[1], 'E') + self.my_assert(self.data[2], 'L') + self.my_assert(self.data[3], 'F') if bits32 : - ELFFile.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS32)) # only 32 bits + self.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS32)) else: - ELFFile.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS64)) # only 64 bits - ELFFile.my_assert(self.data[ELFFile.EI_VERSION], chr(ELFFile.EV_CURRENT) ) + self.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS64)) + self.my_assert(self.data[ELFFile.EI_VERSION], chr(ELFFile.EV_CURRENT) ) self.sex = self.data[ELFFile.EI_DATA] if self.sex == chr(ELFFile.ELFDATANONE): @@ -160,20 +156,19 @@ def package_qa_get_elf(path, bits32): return ELFFile(path) -# -# # Known Error classes # 0 - non dev contains .so # 1 - package contains a dangerous RPATH # 2 - package depends on debug package # 3 - non dbg contains .so # 4 - wrong architecture -# 5 - .la contains installed=yes or reference to the workdir +# 5 - .la contains installed=yes # 6 - .pc contains reference to /usr/include or workdir -# -# +# 7 - the desktop file is not valid +# 8 - .la contains reference to the workdir def package_qa_clean_path(path,d): + """ Remove the common prefix from the path. In this case it is the TMPDIR""" import bb return path.replace(bb.data.getVar('TMPDIR',d,True),"") @@ -183,7 +178,7 @@ def package_qa_make_fatal_error(error_class, name, path,d): TODO: Load a whitelist of known errors """ - if error_class == 0: + if error_class in [0, 5, 8]: return False else: return True @@ -206,7 +201,8 @@ def package_qa_write_error(error_class, name, path, d): log_path = os.path.join( bb.data.getVar('T', d, True), "log.qa_package" ) f = file( log_path, "a+") - print >> f, "%s, %s, %s" % (ERROR_NAMES[error_class], name, package_qa_clean_path(path,d)) + print >> f, "%s, %s, %s" % \ + (ERROR_NAMES[error_class], name, package_qa_clean_path(path,d)) f.close() @@ -216,28 +212,21 @@ def package_qa_check_rpath(file,name,d): """ import bb, os scanelf = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True),'scanelf') - #chrpath = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True),'chrpath') bad_dir = bb.data.getVar('TMPDIR', d, True) + "/work" bad_dir_test = bb.data.getVar('TMPDIR', d, True) if not os.path.exists(scanelf): bb.fatal("Can not check RPATH, scanelf (part of pax-utils-native) not found") - #if not os.path.exists(chrpath): - # bb.fatal("Can not fix RPATH, chrpath (part of chrpath-native) not found") + if not bad_dir in bb.data.getVar('WORKDIR', d, True): bb.fatal("This class assumed that WORKDIR is ${TMPDIR}/work... Not doing any check") - #bb.note("%s -B -F%%r#F %s" % (scanelf,file)) output = os.popen("%s -B -F%%r#F '%s'" % (scanelf,file)) txt = output.readline().split() - #bb.note("???%s???" % bad_dir_test) for line in txt: - #bb.note("===%s===" % line) if bad_dir in line: package_qa_write_error( 1, name, file, d) - bb.error("QA Issue package %s contains bad RPATH %s in file %s" % (name, line, file)) - #bb.note("Fixing RPATH for you in %s" % file) - #os.popen("%s -r /lib %s" % (chrpath,file)) - #return False + bb.error("QA Issue package %s contains bad RPATH %s in file %s" % \ + (name, line, file)) return True def package_qa_check_devdbg(path, name,d): @@ -252,14 +241,16 @@ def package_qa_check_devdbg(path, name,d): if not "-dev" in name: if path[-3:] == ".so" and os.path.islink(path): package_qa_write_error( 0, name, path, d ) - bb.error("QA Issue: non -dev package contains symlink .so: %s path '%s'" % (name, package_qa_clean_path(path,d))) + bb.error("QA Issue: non -dev package contains symlink .so: %s path '%s'" % \ + (name, package_qa_clean_path(path,d))) if package_qa_make_fatal_error( 0, name, path, d ): sane = False if not "-dbg" in name: if '.debug' in path: package_qa_write_error( 3, name, path, d ) - bb.error("QA Issue: non debug package contains .debug directory: %s path %s" % (name, package_qa_clean_path(path,d))) + bb.error("QA Issue: non debug package contains .debug directory: %s path %s" % \ + (name, package_qa_clean_path(path,d))) if package_qa_make_fatal_error( 3, name, path, d ): sane = False @@ -279,7 +270,7 @@ def package_qa_check_arch(path,name,d): import bb, os target_os = bb.data.getVar('TARGET_OS', d, True) target_arch = bb.data.getVar('TARGET_ARCH', d, True) - + # FIXME: Cross package confuse this check, so just skip them if bb.data.inherits_class('cross', d) or bb.data.inherits_class('sdk', d): return True @@ -290,42 +281,38 @@ def package_qa_check_arch(path,name,d): return True #if this will throw an exception, then fix the dict above - (machine, osabi, abiversion, littleendian, bits32) = package_qa_get_machine_dict()[target_os][target_arch] + (machine, osabi, abiversion, littleendian, bits32) \ + = package_qa_get_machine_dict()[target_os][target_arch] elf = package_qa_get_elf(path, bits32) try: elf.open() except: - # just for debbugging to check the parser, remove once convinced... return True + # Check the architecture and endiannes of the binary if not machine == elf.machine(): - bb.error("Architecture did not match (%d to %d) on %s" %(machine, elf.machine(), package_qa_clean_path(path,d))) + bb.error("Architecture did not match (%d to %d) on %s" % \ + (machine, elf.machine(), package_qa_clean_path(path,d))) return not package_qa_make_fatal_error( 4, name, path, d ) elif not littleendian == elf.isLittleEndian(): - bb.error("Endiannes did not match (%d to %d) on %s" % (littleendian, elf.isLittleEndian(), package_qa_clean_path(path,d))) + bb.error("Endiannes did not match (%d to %d) on %s" % \ + (littleendian, elf.isLittleEndian(), package_qa_clean_path(path,d))) return not package_qa_make_fatal_error( 4, name, path, d ) return True -def package_qa_check_pcla(path,name,d): - """ - .pc and .la files should not point to the WORKDIR - """ - sane = True - # TODO - return sane - def package_qa_check_desktop(path, name, d): """ Run all desktop files through desktop-file-validate. """ import bb, os if path.endswith(".desktop"): - validate = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True), 'desktop-file-validate') + validate = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True), \ + 'desktop-file-validate') output = os.popen("%s %s" % (validate, path)) - # This only produces output on errors for l in output: bb.error(l.strip()) + return not package_qa_make_fatal_error(7, name, path, d) return True def package_qa_check_staged(path,d): @@ -355,14 +342,21 @@ def package_qa_check_staged(path,d): path = os.path.join(root,file) if file[-2:] == "la": file_content = open(path).read() - if installed in file_content or workdir in file_content: - bb.error("QA issue: %s failed sanity test (reference to workdir or installed)" % file ) + if installed in file_content: + bb.error("QA issue: %s failed sanity test (installed) in path %s" % \ + (file,root)) if package_qa_make_fatal_error( 5, "staging", path, d): - sane = True + sane = False + if workdir in file_content: + bb.error("QA issue: %s failed sanity test (workdir) in path %s" % \ + (file,root)) + if package_qa_make_fatal_error(8, "staging", path, d): + sane = False elif file[-2:] == "pc": file_content = open(path).read() if workdir in file_content: - bb.error("QA issue: %s failed sanity test (reference to workdir)" % file ) + bb.error("QA issue: %s failed sanity test (workdir) in path %s" % \ + (file,root)) if package_qa_make_fatal_error( 6, "staging", path, d): sane = False @@ -431,6 +425,9 @@ python do_package_qa () { if not packages: return + checks = [package_qa_check_rpath, package_qa_check_devdbg, + package_qa_check_perm, package_qa_check_arch, + package_qa_check_desktop] walk_sane = True rdepends_sane = True for package in packages.split(): @@ -440,7 +437,7 @@ python do_package_qa () { bb.note("Checking Package: %s" % package) path = "%s/install/%s" % (workdir, package) - if not package_qa_walk(path, [package_qa_check_rpath, package_qa_check_devdbg, package_qa_check_perm, package_qa_check_arch, package_qa_check_desktop], package, d): + if not package_qa_walk(path, checks, package, d): walk_sane = False if not package_qa_check_rdepends(package, workdir, d): rdepends_sane = False @@ -466,7 +463,11 @@ python do_qa_configure() { bb.note("Checking sanity of the config.log file") import os for root, dirs, files in os.walk(bb.data.getVar('WORKDIR', d, True)): + statement = "grep 'CROSS COMPILE Badness:' %s > /dev/null" % \ + os.path.join(root,"config.log") if "config.log" in files: - if os.system("grep 'CROSS COMPILE Badness:' %s > /dev/null" % (os.path.join(root,"config.log"))) == 0: - bb.fatal("This autoconf log indicates errors, it looked at host includes. Rerun configure task after fixing this. Path was '%s'" % root) + if os.system(statement) == 0: + bb.fatal("This autoconf log indicates errors, it looked at \ + host includes. Rerun configure task after fixing this. \ + Path was '%s'" % root) } diff --git a/classes/qtopia4core.bbclass b/classes/qtopia4core.bbclass index 181973d72d..fd8939a23f 100644 --- a/classes/qtopia4core.bbclass +++ b/classes/qtopia4core.bbclass @@ -4,8 +4,9 @@ inherit qmake2 # # override variables set by qmake-base to compile QtopiaCore apps # -export OE_QMAKE_INCDIR_QT = "${STAGING_INCDIR}/qtopiacore" -export OE_QMAKE_LIBDIR_QT = "${STAGING_LIBDIR}/qtopiacore" +export OE_QMAKE_INCDIR_QT = "${STAGING_INCDIR}/qtopia" +export OE_QMAKE_LIBDIR_QT = "${STAGING_LIBDIR}/qtopia" export OE_QMAKE_LIBS_QT = "qt" export OE_QMAKE_LIBS_X11 = "" export OE_QMAKE_EXTRA_MODULES = "network" +EXTRA_QMAKEVARS_PRE += " QT_LIBINFIX=E " diff --git a/conf/checksums.ini b/conf/checksums.ini index eadb6a09a9..5c6109ba17 100644 --- a/conf/checksums.ini +++ b/conf/checksums.ini @@ -9446,7 +9446,7 @@ sha256=c163e72cb002435d1d261a47acdcb23e59c10e4263f983a5f2c2d2ca40ede75b md5=8012acea71b35c18247bd92c4721589d sha256=abc37774d327a9b1d1d35e223f014c7e92168cd6c7baf66156badca68f8f1440 -[ftp://ftp.trolltech.com/pub/qt/source/qt-x11-opensource-src-4.3.3.tar.gz] +[ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-4.3.3.tar.gz] md5=19678fe35170559cd6a6fa531c57799c sha256=89934bacc5cee5cb35a231275b0f9948f29483faf9082bed0e7255ce41751570 diff --git a/conf/distro/angstrom-2008.1.conf b/conf/distro/angstrom-2008.1.conf index 44a7791ea2..ff7636e686 100644 --- a/conf/distro/angstrom-2008.1.conf +++ b/conf/distro/angstrom-2008.1.conf @@ -53,7 +53,7 @@ MACHINE_KERNEL_VERSION = "2.6" PCMCIA_MANAGER = "pcmciautils" #Preferred version for the kernel on various machines -PREFERRED_VERSION_linux-handhelds-2.6 ?= "2.6.21-hh19" +PREFERRED_VERSION_linux-handhelds-2.6 ?= "2.6.21-hh20" #This is unrelated to the kernel version, but userspace apps (e.g. HAL) require a recent version to build against PREFERRED_VERSION_linux-libc-headers = "2.6.23" diff --git a/contrib/angstrom/build-feeds.sh b/contrib/angstrom/build-feeds.sh index c7e70fa169..a0a21ed202 100755 --- a/contrib/angstrom/build-feeds.sh +++ b/contrib/angstrom/build-feeds.sh @@ -32,7 +32,7 @@ do_report_success() { echo "$(date -u +%s) $target $BUILD_MODE $machine" >> autobuilder-feed.log } -for machine in ep93xx gumstix-connex gumstix-verdex efika omap5912osk ixp4xxle ixp4xxbe c7x0 poodle tosa akita spitz collie simpad fic-gta01 a780 at91sam9263ek qemuarm h2200 h3900 h4000 hx4700 +for machine in ep93xx gumstix-connex gumstix-verdex efika dht-walnut omap5912osk ixp4xxle ixp4xxbe c7x0 poodle tosa akita spitz collie simpad fic-gta01 a780 at91sam9263ek qemuarm h2200 h3900 h4000 hx4700 do BUILD_MACHINE=$machine BUILD_CLEAN="libtool-cross qmake-native qmake2-native" @@ -41,17 +41,19 @@ do mono perl python ruby \ gtk+ qt-x11-free qt4-x11-free \ gpe-mini-browser midori minimo openmoko-browser2 webkit-gtklauncher \ - samba \ + samba meta-nas-server \ apache2 boa cherokee lighttpd thttpd \ gpe-gallery gpe-scap notecase \ pidgin irssi \ roadmap-gtk2 gpsdrive navit \ xmms mplayer quasar \ wpa-gui wifi-radar kismet aircrack-ng dsniff \ + iptables iperf \ gpe-bluetooth bluez-gnome python-pybluez \ abiword gnumeric evince epdfview gimp \ flite \ ctorrent \ + asterisk \ gnuplot mpfr gmp fftw fftwf fftwl \ gphoto2 gqview imagemagick ufraw \ tzdata \ diff --git a/packages/apr/apr-util_1.2.7.bb b/packages/apr/apr-util_1.2.7.bb index ea81607953..904e41f8a3 100644 --- a/packages/apr/apr-util_1.2.7.bb +++ b/packages/apr/apr-util_1.2.7.bb @@ -14,12 +14,19 @@ EXTRA_OECONF = "--with-apr=${STAGING_BINDIR_CROSS} --with-dbm=gdbm \ --without-sqlite3 \ --with-expat=${STAGING_DIR_HOST}${layout_prefix}" + inherit autotools lib_package binconfig +OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" + do_configure() { + cp ${STAGING_DATADIR}/apr_rules.mk ${S}/build/rules.mk oe_runconf } do_stage() { - autotools_stage_all + autotools_stage_all + sed -i s,/usr/lib/libgdbm.la,-lgdbm,g ${STAGING_LIBDIR}/libaprutil-1.la + sed -i s,/usr/lib/libexpat.la,-lexpat,g ${STAGING_LIBDIR}/libaprutil-1.la + sed -i s,/usr/lib/libapr-1.la,-lapr-1,g ${STAGING_LIBDIR}/libaprutil-1.la } diff --git a/packages/apr/apr_1.2.7.bb b/packages/apr/apr_1.2.7.bb index 2016ca0126..d0f2916bfa 100644 --- a/packages/apr/apr_1.2.7.bb +++ b/packages/apr/apr_1.2.7.bb @@ -9,10 +9,13 @@ SRC_URI = "${APACHE_MIRROR}/apr/${P}.tar.bz2" inherit autotools lib_package binconfig +OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" + do_configure() { oe_runconf } do_stage() { autotools_stage_all + cp ${S}/build/apr_rules.mk ${STAGING_DATADIR} } diff --git a/packages/kexec/kexec-tools-1.101/kexec-arm-atags.patch b/packages/kexec/kexec-tools-1.101/kexec-arm-atags.patch new file mode 100644 index 0000000000..bf6f640035 --- /dev/null +++ b/packages/kexec/kexec-tools-1.101/kexec-arm-atags.patch @@ -0,0 +1,294 @@ +--- + kexec/arch/arm/kexec-zImage-arm.c | 259 ++++++++++++++++++++++++++++++++++++-- + 1 file changed, 252 insertions(+), 7 deletions(-) + +Index: kexec-tools-1.101/kexec/arch/arm/kexec-zImage-arm.c +=================================================================== +--- kexec-tools-1.101.orig/kexec/arch/arm/kexec-zImage-arm.c 2007-12-26 21:17:07.000000000 +0000 ++++ kexec-tools-1.101/kexec/arch/arm/kexec-zImage-arm.c 2007-12-27 01:24:25.000000000 +0000 +@@ -1,11 +1,83 @@ ++/* ++ * - 08/21/2007 ATAG support added by Uli Luckas <u.luckas@road.de> ++ * ++ */ + #define _GNU_SOURCE + #include <stdio.h> + #include <string.h> + #include <stdlib.h> + #include <errno.h> + #include <limits.h> ++#include <stdint.h> ++#include <getopt.h> ++#include <arch/options.h> ++#include <asm/page.h> + #include "../../kexec.h" + ++#define COMMAND_LINE_SIZE 1024 ++#define BOOT_PARAMS_SIZE 1536 ++ ++struct tag_header { ++ uint32_t size; ++ uint32_t tag; ++}; ++ ++/* The list must start with an ATAG_CORE node */ ++#define ATAG_CORE 0x54410001 ++ ++struct tag_core { ++ uint32_t flags; /* bit 0 = read-only */ ++ uint32_t pagesize; ++ uint32_t rootdev; ++}; ++ ++/* it is allowed to have multiple ATAG_MEM nodes */ ++#define ATAG_MEM 0x54410002 ++ ++struct tag_mem32 { ++ uint32_t size; ++ uint32_t start; /* physical start address */ ++}; ++ ++/* describes where the compressed ramdisk image lives (virtual address) */ ++/* ++ * this one accidentally used virtual addresses - as such, ++ * it's deprecated. ++ */ ++#define ATAG_INITRD 0x54410005 ++ ++/* describes where the compressed ramdisk image lives (physical address) */ ++#define ATAG_INITRD2 0x54420005 ++ ++struct tag_initrd { ++ uint32_t start; /* physical start address */ ++ uint32_t size; /* size of compressed ramdisk image in bytes */ ++}; ++ ++/* command line: \0 terminated string */ ++#define ATAG_CMDLINE 0x54410009 ++ ++struct tag_cmdline { ++ char cmdline[1]; /* this is the minimum size */ ++}; ++ ++/* The list ends with an ATAG_NONE node. */ ++#define ATAG_NONE 0x00000000 ++ ++struct tag { ++ struct tag_header hdr; ++ union { ++ struct tag_core core; ++ struct tag_mem32 mem; ++ struct tag_initrd initrd; ++ struct tag_cmdline cmdline; ++ } u; ++}; ++ ++#define tag_next(t) ((struct tag *)((uint32_t *)(t) + (t)->hdr.size)) ++#define byte_size(t) ((t)->hdr.size << 2) ++#define tag_size(type) ((sizeof(struct tag_header) + sizeof(struct type) + 3) >> 2) ++ + int zImage_arm_probe(const char *buf, off_t len) + { + /* +@@ -14,21 +86,194 @@ int zImage_arm_probe(const char *buf, of + */ + return 0; + } ++ + void zImage_arm_usage(void) + { ++ printf( " --command-line=STRING Set the kernel command line to STRING.\n" ++ " --append=STRING Set the kernel command line to STRING.\n" ++ " --initrd=FILE Use FILE as the kernel's initial ramdisk.\n" ++ " --ramdisk=FILE Use FILE as the kernel's initial ramdisk.\n" ++ ); + } +-int zImage_arm_load(int argc, char **argv, const char *buf, off_t len, ++ ++static ++struct tag * atag_read_tags(void) ++{ ++ static unsigned long buf[BOOT_PARAMS_SIZE]; ++ const char fn[]= "/proc/atags"; ++ FILE *fp; ++ fp = fopen(fn, "r"); ++ if (!fp) { ++ fprintf(stderr, "Cannot open %s: %s\n", ++ fn, strerror(errno)); ++ return NULL; ++ } ++ ++ fread(buf, sizeof(buf[1]), BOOT_PARAMS_SIZE, fp); ++ if (ferror(fp)) { ++ fprintf(stderr, "Cannot read %s: %s\n", ++ fn, strerror(errno)); ++ fclose(fp); ++ return NULL; ++ } ++ ++ fclose(fp); ++ return (struct tag *) buf; ++} ++ ++ ++static ++int atag_arm_load(struct kexec_info *info, unsigned long base, ++ const char *command_line, off_t command_line_len, ++ const char *initrd, off_t initrd_len) ++{ ++ struct tag *saved_tags = atag_read_tags(); ++ char *buf; ++ off_t len; ++ struct tag *params; ++ uint32_t *initrd_start; ++ ++ buf = xmalloc(getpagesize()); ++ if (!buf) { ++ fprintf(stderr, "Compiling ATAGs: out of memory\n"); ++ return -1; ++ } ++ ++ memset(buf, 0xff, getpagesize()); ++ params = (struct tag *)buf; ++ ++ if (saved_tags) { ++ // Copy tags ++ saved_tags = (struct tag *) saved_tags; ++ while(byte_size(saved_tags)) { ++ switch (saved_tags->hdr.tag) { ++ case ATAG_INITRD: ++ case ATAG_INITRD2: ++ case ATAG_CMDLINE: ++ case ATAG_NONE: ++ // skip these tags ++ break; ++ default: ++ // copy all other tags ++ memcpy(params, saved_tags, byte_size(saved_tags)); ++ params = tag_next(params); ++ } ++ saved_tags = tag_next(saved_tags); ++ } ++ } else { ++ params->hdr.size = 2; ++ params->hdr.tag = ATAG_CORE; ++ params = tag_next(params); ++ } ++ ++ if (initrd) { ++ params->hdr.size = tag_size(tag_initrd); ++ params->hdr.tag = ATAG_INITRD2; ++ initrd_start = ¶ms->u.initrd.start; ++ params->u.initrd.size = initrd_len; ++ params = tag_next(params); ++ } ++ ++ if (command_line) { ++ params->hdr.size = (sizeof(struct tag_header) + command_line_len + 3) >> 2; ++ params->hdr.tag = ATAG_CMDLINE; ++ memcpy(params->u.cmdline.cmdline, command_line, ++ command_line_len); ++ params->u.cmdline.cmdline[command_line_len - 1] = '\0'; ++ params = tag_next(params); ++ } ++ ++ params->hdr.size = 0; ++ params->hdr.tag = ATAG_NONE; ++ ++ len = ((char *)params - buf) + sizeof(struct tag_header); ++ ++ add_segment(info, buf, len, base, len); ++ ++ if (initrd) { ++ struct memory_range *range; ++ int ranges; ++ get_memory_ranges(&range, &ranges); ++ *initrd_start = locate_hole(info, initrd_len, getpagesize(), range[0].start + 0x800000, ULONG_MAX, INT_MAX); ++ if (*initrd_start == ULONG_MAX) ++ return -1; ++ add_segment(info, initrd, initrd_len, *initrd_start, initrd_len); ++ } ++ ++ return 0; ++} ++ ++int zImage_arm_load(int argc, char **argv, const char *buf, off_t len, + struct kexec_info *info) + { + unsigned long base; +- unsigned int offset = 0x8000; /* 32k offset from memory start */ ++ unsigned int atag_offset = 0x1000; /* 4k offset from memory start */ ++ unsigned int offset = 0x8000; /* 32k offset from memory start */ ++ const char *command_line; ++ off_t command_line_len; ++ const char *ramdisk; ++ char *ramdisk_buf; ++ off_t ramdisk_length; ++ int opt; ++#define OPT_APPEND 'a' ++#define OPT_RAMDISK 'r' ++ static const struct option options[] = { ++ KEXEC_ARCH_OPTIONS ++ { "command-line", 1, 0, OPT_APPEND }, ++ { "append", 1, 0, OPT_APPEND }, ++ { "initrd", 1, 0, OPT_RAMDISK }, ++ { "ramdisk", 1, 0, OPT_RAMDISK }, ++ { 0, 0, 0, 0 }, ++ }; ++ static const char short_options[] = KEXEC_ARCH_OPT_STR "a:r:"; ++ ++ /* ++ * Parse the command line arguments ++ */ ++ command_line = 0; ++ command_line_len = 0; ++ ramdisk = 0; ++ ramdisk_buf = 0; ++ ramdisk_length = 0; ++ while((opt = getopt_long(argc, argv, short_options, options, 0)) != -1) { ++ switch(opt) { ++ default: ++ /* Ignore core options */ ++ if (opt < OPT_ARCH_MAX) { ++ break; ++ } ++ case '?': ++ usage(); ++ return -1; ++ case OPT_APPEND: ++ command_line = optarg; ++ break; ++ case OPT_RAMDISK: ++ ramdisk = optarg; ++ break; ++ } ++ } ++ if (command_line) { ++ command_line_len = strlen(command_line) + 1; ++ if (command_line_len > COMMAND_LINE_SIZE) ++ command_line_len = COMMAND_LINE_SIZE; ++ } ++ if (ramdisk) { ++ ramdisk_buf = slurp_file(ramdisk, &ramdisk_length); ++ } ++ + base = locate_hole(info,len+offset,0,0,ULONG_MAX,INT_MAX); + if (base == ULONG_MAX) +- { + return -1; +- } +- base += offset; +- add_segment(info,buf,len,base,len); +- info->entry = (void*)base; ++ ++ if (atag_arm_load(info, base + atag_offset, ++ command_line, command_line_len, ++ ramdisk_buf, ramdisk_length) == -1) ++ return -1; ++ ++ add_segment(info, buf, len, base + offset, len); ++ ++ info->entry = (void*)base + offset; ++ + return 0; + } diff --git a/packages/kexec/kexec-tools_1.101.bb b/packages/kexec/kexec-tools_1.101.bb index 4dfab1e06f..d152a678ed 100644 --- a/packages/kexec/kexec-tools_1.101.bb +++ b/packages/kexec/kexec-tools_1.101.bb @@ -4,12 +4,13 @@ HOMEPAGE = "http://www.xmission.com/~ebiederm/files/kexec/" SECTION = "kernel/userland" DEPENDS = "virtual/kernel zlib" LICENSE = "GPL" -PR = "r1" +PR = "r3" inherit autotools -EXTRA_OEMAKE = "LDFLAGS=-L${STAGING_LIBDIR} -Wl,--rpath-link,${STAGING_LIBDIR} " -EXTRA_OECONF = " --with-zlib=${STAGING_LIBDIR}/.." +export LDFLAGS = "-L${STAGING_LIBDIR}" +EXTRA_OECONF = " --with-zlib=yes" SRC_URI = "http://www.xmission.com/~ebiederm/files/kexec/kexec-tools-${PV}.tar.gz \ - file://kexec-tools-arm.patch;patch=1 " + file://kexec-tools-arm.patch;patch=1 \ + file://kexec-arm-atags.patch;patch=1" diff --git a/packages/libqanava/libqanava_0.0.7.bb b/packages/libqanava/libqanava_0.0.7.bb index dbec5c7001..5edf1417c1 100644 --- a/packages/libqanava/libqanava_0.0.7.bb +++ b/packages/libqanava/libqanava_0.0.7.bb @@ -1,4 +1,4 @@ -DESCRIPTION = "Qanava is a gtaph library based on the Qt4 Arthur framework." +DESCRIPTION = "Qanava is a graph library based on the Qt4 Arthur framework." SECTION = "x11/libs" HOMEPAGE = "http://www.libqanava.org/" # LGPL after 0.0.7 @@ -8,7 +8,7 @@ PR = "r0" SRC_URI = "http://www.libqanava.org/dl/qanava-${PV}.tar.gz" S = "${WORKDIR}/qanava-${PV}" -inherit qmake qt4x11 +inherit qt4x11 PARALLEL_MAKE = "" diff --git a/packages/linux/linux-rp-2.6.23/defconfig-akita b/packages/linux/linux-rp-2.6.23/defconfig-akita index 7d9adaf0e3..0941936439 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-akita +++ b/packages/linux/linux-rp-2.6.23/defconfig-akita @@ -244,6 +244,7 @@ CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 fbcon=rotate:1 dyntick=enable quiet" # CONFIG_XIP_KERNEL is not set CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y # # CPU Frequency scaling diff --git a/packages/linux/linux-rp-2.6.23/defconfig-bootcdx86 b/packages/linux/linux-rp-2.6.23/defconfig-bootcdx86 index 833f72ac9e..22923a1e85 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-bootcdx86 +++ b/packages/linux/linux-rp-2.6.23/defconfig-bootcdx86 @@ -217,7 +217,8 @@ CONFIG_HZ_250=y # CONFIG_HZ_300 is not set # CONFIG_HZ_1000 is not set CONFIG_HZ=250 -# CONFIG_KEXEC is not set +CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y CONFIG_PHYSICAL_START=0x100000 # CONFIG_RELOCATABLE is not set CONFIG_PHYSICAL_ALIGN=0x100000 diff --git a/packages/linux/linux-rp-2.6.23/defconfig-c7x0 b/packages/linux/linux-rp-2.6.23/defconfig-c7x0 index 40207886ec..715b2bd134 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-c7x0 +++ b/packages/linux/linux-rp-2.6.23/defconfig-c7x0 @@ -246,6 +246,7 @@ CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 dyntick=enable quiet" # CONFIG_XIP_KERNEL is not set CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y CONFIG_CPU_FREQ_PXA25x=y # @@ -1395,7 +1396,7 @@ CONFIG_RTC_DRV_SA1100=y CONFIG_EXT2_FS=y # CONFIG_EXT2_FS_XATTR is not set # CONFIG_EXT2_FS_XIP is not set -CONFIG_EXT3_FS=m +# CONFIG_EXT3_FS is not set # CONFIG_EXT4DEV_FS is not set # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set diff --git a/packages/linux/linux-rp-2.6.23/defconfig-collie b/packages/linux/linux-rp-2.6.23/defconfig-collie index e42b228b32..2672b796aa 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-collie +++ b/packages/linux/linux-rp-2.6.23/defconfig-collie @@ -222,6 +222,7 @@ CONFIG_ZBOOT_ROM_TEXT=0x0 CONFIG_ZBOOT_ROM_BSS=0x0 # CONFIG_XIP_KERNEL is not set CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y # # CPU Frequency scaling @@ -1459,7 +1460,7 @@ CONFIG_RTC_DRV_SA1100=y CONFIG_EXT2_FS=m # CONFIG_EXT2_FS_XATTR is not set # CONFIG_EXT2_FS_XIP is not set -CONFIG_EXT3_FS=m +# CONFIG_EXT3_FS is not set # CONFIG_EXT4DEV_FS is not set # CONFIG_REISERFS_FS is not set # CONFIG_JFS_FS is not set diff --git a/packages/linux/linux-rp-2.6.23/defconfig-htcuniversal b/packages/linux/linux-rp-2.6.23/defconfig-htcuniversal index 2b02621499..81a38a9d43 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-htcuniversal +++ b/packages/linux/linux-rp-2.6.23/defconfig-htcuniversal @@ -241,6 +241,7 @@ CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 dyntick=enable debug" # CONFIG_XIP_KERNEL is not set CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y # # CPU Frequency scaling diff --git a/packages/linux/linux-rp-2.6.23/defconfig-hx2000 b/packages/linux/linux-rp-2.6.23/defconfig-hx2000 index ee05db4e5a..e0596c4c56 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-hx2000 +++ b/packages/linux/linux-rp-2.6.23/defconfig-hx2000 @@ -210,7 +210,8 @@ CONFIG_ZBOOT_ROM_TEXT=0x0 CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/mtdblock2 rootfstype=jffs2 dyntick=enable debug" # CONFIG_XIP_KERNEL is not set -# CONFIG_KEXEC is not set +CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y # # CPU Frequency scaling diff --git a/packages/linux/linux-rp-2.6.23/defconfig-poodle b/packages/linux/linux-rp-2.6.23/defconfig-poodle index 503d13f315..46e4428d98 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-poodle +++ b/packages/linux/linux-rp-2.6.23/defconfig-poodle @@ -146,6 +146,7 @@ CONFIG_CPU_TLB_V4WBI=y CONFIG_ARM_THUMB=y CONFIG_XSCALE_PMU=y CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y CONFIG_SHARP_LOCOMO=y CONFIG_SHARP_PARAM=y CONFIG_SHARPSL_PM=y diff --git a/packages/linux/linux-rp-2.6.23/defconfig-qemuarm b/packages/linux/linux-rp-2.6.23/defconfig-qemuarm index 35cf3f5b17..355ecdf383 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-qemuarm +++ b/packages/linux/linux-rp-2.6.23/defconfig-qemuarm @@ -134,7 +134,8 @@ CONFIG_ARM_THUMB=y # CONFIG_CPU_DCACHE_DISABLE is not set # CONFIG_CPU_DCACHE_WRITETHROUGH is not set # CONFIG_CPU_CACHE_ROUND_ROBIN is not set -# CONFIG_KEXEC is not set +CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y CONFIG_ARM_VIC=y CONFIG_ICST307=y diff --git a/packages/linux/linux-rp-2.6.23/defconfig-qemux86 b/packages/linux/linux-rp-2.6.23/defconfig-qemux86 index e9eb83e2dd..e4a50304d2 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-qemux86 +++ b/packages/linux/linux-rp-2.6.23/defconfig-qemux86 @@ -177,7 +177,8 @@ CONFIG_SECCOMP=y CONFIG_HZ_250=y # CONFIG_HZ_1000 is not set CONFIG_HZ=250 -# CONFIG_KEXEC is not set +CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y CONFIG_PHYSICAL_START=0x100000 # CONFIG_HOTPLUG_CPU is not set diff --git a/packages/linux/linux-rp-2.6.23/defconfig-spitz b/packages/linux/linux-rp-2.6.23/defconfig-spitz index 8e044e6a14..e3b5a3ee29 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-spitz +++ b/packages/linux/linux-rp-2.6.23/defconfig-spitz @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.23-rc4 -# Tue Aug 28 22:32:38 2007 +# Linux kernel version: 2.6.23 +# Thu Dec 27 17:03:44 2007 # CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y @@ -66,7 +66,6 @@ CONFIG_FUTEX=y CONFIG_ANON_INODES=y CONFIG_EPOLL=y CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y CONFIG_EVENTFD=y CONFIG_SHMEM=y CONFIG_VM_EVENT_COUNTERS=y @@ -149,6 +148,7 @@ CONFIG_PXA_SHARPSL=y # CONFIG_MACH_TRIZEPS4 is not set # CONFIG_MACH_EM_X270 is not set # CONFIG_MACH_HX2750 is not set +# CONFIG_MACH_HTCUNIVERSAL is not set # CONFIG_PXA_SHARPSL_25x is not set CONFIG_PXA_SHARPSL_27x=y CONFIG_MACH_AKITA=y @@ -244,6 +244,7 @@ CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE="console=ttyS0,115200n8 console=tty1 noinitrd root=/dev/hda1 rootfstype=ext3 rootdelay=1 rw fbcon=rotate:1 dyntick=enable debug" # CONFIG_XIP_KERNEL is not set CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y # # CPU Frequency scaling @@ -275,6 +276,7 @@ CONFIG_PM=y # CONFIG_PM_LEGACY is not set # CONFIG_PM_DEBUG is not set CONFIG_PM_SLEEP=y +CONFIG_SUSPEND_UP_POSSIBLE=y CONFIG_SUSPEND=y CONFIG_APM_EMULATION=y @@ -493,7 +495,6 @@ CONFIG_MTD=m # CONFIG_MTD_CONCAT is not set CONFIG_MTD_PARTITIONS=y # CONFIG_MTD_REDBOOT_PARTS is not set -CONFIG_MTD_CMDLINE_PARTS=y # CONFIG_MTD_AFS_PARTS is not set # @@ -502,6 +503,7 @@ CONFIG_MTD_CMDLINE_PARTS=y CONFIG_MTD_CHAR=m CONFIG_MTD_BLKDEVS=m CONFIG_MTD_BLOCK=m +# CONFIG_MTD_BLOCK_RO is not set # CONFIG_FTL is not set # CONFIG_NFTL is not set # CONFIG_INFTL is not set @@ -524,7 +526,7 @@ CONFIG_MTD_CFI_I2=y # CONFIG_MTD_CFI_I4 is not set # CONFIG_MTD_CFI_I8 is not set # CONFIG_MTD_RAM is not set -CONFIG_MTD_ROM=y +CONFIG_MTD_ROM=m # CONFIG_MTD_ABSENT is not set # @@ -549,14 +551,14 @@ CONFIG_MTD_SHARP_SL=y # CONFIG_MTD_DOC2000 is not set # CONFIG_MTD_DOC2001 is not set # CONFIG_MTD_DOC2001PLUS is not set -CONFIG_MTD_NAND=y +CONFIG_MTD_NAND=m CONFIG_MTD_NAND_VERIFY_WRITE=y # CONFIG_MTD_NAND_ECC_SMC is not set # CONFIG_MTD_NAND_MUSEUM_IDS is not set # CONFIG_MTD_NAND_H1900 is not set -CONFIG_MTD_NAND_IDS=y +CONFIG_MTD_NAND_IDS=m # CONFIG_MTD_NAND_DISKONCHIP is not set -CONFIG_MTD_NAND_SHARPSL=y +CONFIG_MTD_NAND_SHARPSL=m # CONFIG_MTD_NAND_NANDSIM is not set # CONFIG_MTD_NAND_PLATFORM is not set # CONFIG_MTD_ONENAND is not set @@ -893,6 +895,7 @@ CONFIG_I2C_PXA=y # CONFIG_SPI is not set # CONFIG_SPI_MASTER is not set # CONFIG_W1 is not set +# CONFIG_POWER_SUPPLY is not set # CONFIG_HWMON is not set CONFIG_MISC_DEVICES=y # CONFIG_EEPROM_93CX6 is not set @@ -901,6 +904,8 @@ CONFIG_MISC_DEVICES=y # Multifunction device drivers # # CONFIG_MFD_SM501 is not set +# CONFIG_HTC_ASIC3 is not set +# CONFIG_HTC_ASIC3_DS1WM is not set # # Multi-Function Devices diff --git a/packages/linux/linux-rp-2.6.23/defconfig-tosa b/packages/linux/linux-rp-2.6.23/defconfig-tosa index 3bd537c93b..b2540c405e 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-tosa +++ b/packages/linux/linux-rp-2.6.23/defconfig-tosa @@ -143,6 +143,7 @@ CONFIG_CPU_TLB_V4WBI=y CONFIG_ARM_THUMB=y CONFIG_XSCALE_PMU=y CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y CONFIG_SHARP_PARAM=y CONFIG_SHARPSL_PM=y CONFIG_SHARP_SCOOP=y diff --git a/packages/linux/linux-rp-2.6.23/defconfig-zylonite b/packages/linux/linux-rp-2.6.23/defconfig-zylonite index 0321704a1f..65b0aeff4b 100644 --- a/packages/linux/linux-rp-2.6.23/defconfig-zylonite +++ b/packages/linux/linux-rp-2.6.23/defconfig-zylonite @@ -232,7 +232,8 @@ CONFIG_ZBOOT_ROM_TEXT=0x0 CONFIG_ZBOOT_ROM_BSS=0x0 CONFIG_CMDLINE="console=ttyS0,38400 root=/dev/mtdblock2 rootfstype=jffs2 mem=64M dyntick=enable debug" # CONFIG_XIP_KERNEL is not set -# CONFIG_KEXEC is not set +CONFIG_KEXEC=y +CONFIG_ATAGS_PROC=y # # CPU Frequency scaling diff --git a/packages/linux/linux-rp_2.6.23.bb b/packages/linux/linux-rp_2.6.23.bb index 7f12ad7c89..ba5f712bb8 100644 --- a/packages/linux/linux-rp_2.6.23.bb +++ b/packages/linux/linux-rp_2.6.23.bb @@ -1,6 +1,6 @@ require linux-rp.inc -PR = "r12" +PR = "r13" DEFAULT_PREFERENCE_qemuarm = "-1" DEFAULT_PREFERENCE_qemux86 = "-1" @@ -8,16 +8,16 @@ DEFAULT_PREFERENCE_poodle = "-99" # Handy URLs # git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git;protocol=git;tag=ef7d1b244fa6c94fb76d5f787b8629df64ea4046 -# http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2 -# http://www.kernel.org/pub/linux/kernel/v2.6/testing/linux-2.6.20-rc4.tar.bz2 -# http://www.kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.18-rc6.bz2;patch=1 -# http://www.kernel.org/pub/linux/kernel/v2.6/snapshots/patch-2.6.18-rc2-git1.bz2;patch=1 -# http://www.kernel.org/pub/linux/kernel/people/alan/linux-2.6/2.6.10/patch-2.6.10-ac8.gz;patch=1 -# http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.14-rc2/2.6.14-rc2-mm1/2.6.14-rc2-mm1.bz2;patch=1 +# ${KERNELORG_MIRROR}pub/linux/kernel/v2.6/linux-2.6.18.tar.bz2 +# ${KERNELORG_MIRROR}pub/linux/kernel/v2.6/testing/linux-2.6.20-rc4.tar.bz2 +# ${KERNELORG_MIRROR}pub/linux/kernel/v2.6/testing/patch-2.6.18-rc6.bz2;patch=1 +# ${KERNELORG_MIRROR}pub/linux/kernel/v2.6/snapshots/patch-2.6.18-rc2-git1.bz2;patch=1 +# ${KERNELORG_MIRROR}pub/linux/kernel/people/alan/linux-2.6/2.6.10/patch-2.6.10-ac8.gz;patch=1 +# ${KERNELORG_MIRROR}pub/linux/kernel/people/akpm/patches/2.6/2.6.14-rc2/2.6.14-rc2-mm1/2.6.14-rc2-mm1.bz2;patch=1 # Patches submitted upstream are towards top of this list # Hacks should clearly named and at the bottom -SRC_URI = "http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2 \ +SRC_URI = "${KERNELORG_MIRROR}pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2 \ ${RPSRC}/lzo_jffs2-r3.patch;patch=1 \ ${RPSRC}/lzo_crypto-r2.patch;patch=1 \ ${RPSRC}/lzo_jffs2_lzomode-r1.patch;patch=1 \ @@ -39,6 +39,8 @@ SRC_URI = "http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.23.tar.bz2 \ ${RPSRC}/pxa27x_overlay-r6.patch;patch=1 \ ${RPSRC}/w100_extaccel-r1.patch;patch=1 \ ${RPSRC}/w100_extmem-r1.patch;patch=1 \ + ${RPSRC}/spitzkbd_fix-r0.patch;patch=1 \ + ${RPSRC}/export_atags-r0.patch;patch=1 \ file://w100fb-unused-var.patch;patch=1 \ file://hostap-monitor-mode.patch;patch=1 \ file://serial-add-support-for-non-standard-xtals-to-16c950-driver.patch;patch=1 \ diff --git a/packages/mkbot/mkbot_0.3.bb b/packages/mkbot/mkbot_0.3.bb index 195d74ca52..92df433e45 100644 --- a/packages/mkbot/mkbot_0.3.bb +++ b/packages/mkbot/mkbot_0.3.bb @@ -8,6 +8,6 @@ SECTION = "network" SRC_URI = "http://files.fredemmott.co.uk/mkbot-${PV}.tar.bz2" S = "${WORKDIR}/MKbot-0.3" -inherit qmake qt4x11 +inherit qt4x11 #FIXME: lacks packaging diff --git a/packages/mtd/mtd-utils_1.0.0+git.bb b/packages/mtd/mtd-utils_1.0.0+git.bb index 33f95853f6..d4e67f3aae 100644 --- a/packages/mtd/mtd-utils_1.0.0+git.bb +++ b/packages/mtd/mtd-utils_1.0.0+git.bb @@ -3,7 +3,7 @@ SECTION = "base" DEPENDS = "zlib lzo" HOMEPAGE = "http://www.linux-mtd.infradead.org/" LICENSE = "GPLv2" -PR = "r6" +PR = "r7" # This is the default package, thus we lock to a specific git version so # upstream changes will not break builds. @@ -40,3 +40,7 @@ do_install () { install -m 0755 $binary ${D}${bindir} done } + +PACKAGES =+ "mkfs-jffs mkfs-jffs2" +FILES_mkfs-jffs = "${bindir}/mkfs.jffs" +FILES_mkfs-jffs2 = "${bindir}/mkfs.jffs2" diff --git a/packages/opie-reader/uqtreader_cvs.bb b/packages/opie-reader/uqtreader_cvs.bb index 9fb7af2db5..9b7ae57196 100644 --- a/packages/opie-reader/uqtreader_cvs.bb +++ b/packages/opie-reader/uqtreader_cvs.bb @@ -17,7 +17,7 @@ S = "${WORKDIR}/opie-reader" export OPIEDIR="${S}/opiedir" -inherit qmake_base qt4x11 +inherit qt4x11 do_configure() { ${OE_QMAKE_QMAKE} -recursive opie-reader.pro UQT_DATADIR="${datadir}/${PN}" UQT_LIBDIR="${libdir}/${PN}" diff --git a/packages/qmake/qmake2-native.inc b/packages/qmake/qmake2-native.inc index 058bf176f9..0a204bb535 100644 --- a/packages/qmake/qmake2-native.inc +++ b/packages/qmake/qmake2-native.inc @@ -10,6 +10,7 @@ QTVER = "qtopia-core-opensource-src-${QTVERSION}" FILESDIR += "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/qmake2-native" SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTVER}.tar.gz \ file://0001-fix-mkspecs.patch;patch=1 \ + file://0008-backport-qt-lib-infix.patch;patch=1 \ file://qt-config.patch;patch=1 \ file://use-lflags-last.patch;patch=1 \ file://linux-oe-qmake.conf" diff --git a/packages/qmake/qmake2-native/0001-fix-mkspecs.patch b/packages/qmake/qmake2-native/0001-fix-mkspecs.patch index faf0ba028a..e0ebe512c8 100644 --- a/packages/qmake/qmake2-native/0001-fix-mkspecs.patch +++ b/packages/qmake/qmake2-native/0001-fix-mkspecs.patch @@ -10,8 +10,8 @@ Subject: [PATCH] fix mkspecs Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/g++.conf =================================================================== ---- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/g++.conf 2007-12-26 02:58:15.000000000 +0100 -+++ qtopia-core-opensource-src-4.3.3/mkspecs/common/g++.conf 2007-12-26 02:58:21.000000000 +0100 +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/g++.conf 2007-12-04 18:07:53.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/common/g++.conf 2007-12-26 19:47:02.000000000 +0100 @@ -2,12 +2,12 @@ # qmake configuration for common gcc # @@ -63,8 +63,8 @@ Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/g++.conf Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/linux.conf =================================================================== ---- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/linux.conf 2007-12-26 02:58:15.000000000 +0100 -+++ qtopia-core-opensource-src-4.3.3/mkspecs/common/linux.conf 2007-12-26 02:58:21.000000000 +0100 +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/linux.conf 2007-12-04 18:07:53.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/common/linux.conf 2007-12-26 19:47:02.000000000 +0100 @@ -7,26 +7,26 @@ QMAKE_INCDIR = @@ -120,8 +120,8 @@ Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/linux.conf +include(unix.conf) Index: qtopia-core-opensource-src-4.3.3/mkspecs/linux-g++/qmake.conf =================================================================== ---- qtopia-core-opensource-src-4.3.3.orig/mkspecs/linux-g++/qmake.conf 2007-12-26 02:58:15.000000000 +0100 -+++ qtopia-core-opensource-src-4.3.3/mkspecs/linux-g++/qmake.conf 2007-12-26 03:00:49.000000000 +0100 +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/linux-g++/qmake.conf 2007-12-04 18:07:53.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/linux-g++/qmake.conf 2007-12-26 19:47:02.000000000 +0100 @@ -5,7 +5,7 @@ MAKEFILE_GENERATOR = UNIX TEMPLATE = app @@ -131,3 +131,16 @@ Index: qtopia-core-opensource-src-4.3.3/mkspecs/linux-g++/qmake.conf QMAKE_INCREMENTAL_STYLE = sublib include(../common/g++.conf) +Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/unix.conf +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/unix.conf 2007-12-26 19:48:20.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/common/unix.conf 2007-12-26 19:49:50.000000000 +0100 +@@ -10,6 +10,8 @@ + QMAKE_YACC_HEADER = $base.tab.h + QMAKE_YACC_SOURCE = $base.tab.c + ++QMAKE_RCC = $$(OE_QMAKE_RCC) ++ + QMAKE_SEPARATE_DEBUG_INFO = (test -z \"$(DESTDIR)\" || cd \"$(DESTDIR)\" ; targ=`basename $(TARGET)`; objcopy --only-keep-debug \"\$\$targ\" \"\$\$targ.debug\" && objcopy --strip-debug \"\$\$targ\" && objcopy --add-gnu-debuglink=\"\$\$targ.debug\" \"\$\$targ\" && chmod -x \"\$\$targ.debug\" ) ; + + QMAKE_INSTALL_SEPARATE_DEBUG_INFO = test -z "$(DESTDIR)" || cd \"$(DESTDIR)\" ; $(INSTALL_FILE) `basename $(TARGET)`.debug $(INSTALL_ROOT)/\$\$target_path/ diff --git a/packages/qmake/qmake2-native/0008-backport-qt-lib-infix.patch b/packages/qmake/qmake2-native/0008-backport-qt-lib-infix.patch new file mode 100644 index 0000000000..f87576a07b --- /dev/null +++ b/packages/qmake/qmake2-native/0008-backport-qt-lib-infix.patch @@ -0,0 +1,33 @@ +diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf +index 32a7fd5..48d584f 100644 +--- a/mkspecs/features/qt_functions.prf ++++ b/mkspecs/features/qt_functions.prf +@@ -28,7 +28,7 @@ defineTest(qtAddLibrary) { + INCLUDEPATH -= $$FRAMEWORK_INCLUDE + INCLUDEPATH = $$FRAMEWORK_INCLUDE $$INCLUDEPATH + } +- LINKAGE = -framework $${LIB_NAME} ++ LINKAGE = -framework $${LIB_NAME}$${QT_LIBINFIX} + } else:!qt_no_framework { #detection + for(frmwrk_dir, $$list($$QMAKE_LIBDIR_QT $$QMAKE_LIBDIR $$(DYLD_FRAMEWORK_PATH) /Library/Frameworks)) { + exists($${frmwrk_dir}/$${LIB_NAME}.framework) { +@@ -46,15 +46,15 @@ defineTest(qtAddLibrary) { + } + isEmpty(LINKAGE) { + CONFIG(debug, debug|release) { +- win32:LINKAGE = -l$${LIB_NAME}d +- mac:LINKAGE = -l$${LIB_NAME}_debug ++ win32:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}d ++ mac:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}_debug + } +- isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME} ++ isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX} + } + !isEmpty(QMAKE_LSB) { + QMAKE_LFLAGS *= --lsb-libpath=$$$$QMAKE_LIBDIR_QT + QMAKE_LFLAGS *= -L/opt/lsb/lib +- QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME} ++ QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME}${QT_LIBINFIX} + } + LIBS += $$LINKAGE + export(LIBS) diff --git a/packages/qsvn/qsvn-qte_0.3.0.bb b/packages/qsvn/qsvn-qte_0.3.0.bb new file mode 100644 index 0000000000..59b46edf9c --- /dev/null +++ b/packages/qsvn/qsvn-qte_0.3.0.bb @@ -0,0 +1,3 @@ +require qsvn.inc +FILESDIR += "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/qsvn" +inherit qtopia4core diff --git a/packages/qsvn/qsvn.inc b/packages/qsvn/qsvn.inc new file mode 100644 index 0000000000..c27bbab114 --- /dev/null +++ b/packages/qsvn/qsvn.inc @@ -0,0 +1,25 @@ +DESCRIPTION = "QSvn is a graphical Subversion client for Linux, UNIX, Mac OS X and Windows. \ +It is written in C++ using the Qt4 toolkit from Trolltech." +HOMEPAGE = "http://ar.oszine.de/projects/qsvn/" +AUTHOR = "Andreas Richter, Rajko Albrecht" +LICENSE = "GPL" +SECTION = "network" +DEPENDS = "apr-util subversion" +PR = "r0" + +def vars_from_file(filename): + import os + return os.path.splitext(os.path.basename(filename))[0] + +FN := "${@vars_from_file(bb.data.getVar('FILE',d))}" + +SRC_URI = "http://download2.berlios.de/${FN}/${FN}-${PV}-src.tar.gz \ + file://build.patch;patch=1" +S = "${WORKDIR}/${FN}-${PV}" + +EXTRA_QMAKEVARS_POST += "INCLUDEPATH+=${STAGING_INCDIR}/subversion-1" + +do_install() { + install -d ${D}${bindir} + install -m 0755 bin/qsvn ${D}${bindir}/${PN} +} diff --git a/packages/qsvn/qsvn_0.3.0.bb b/packages/qsvn/qsvn_0.3.0.bb index 575e9359b7..db3cc0918d 100644 --- a/packages/qsvn/qsvn_0.3.0.bb +++ b/packages/qsvn/qsvn_0.3.0.bb @@ -1,20 +1,2 @@ -DESCRIPTION = "QSvn is a graphical Subversion client for Linux, UNIX, Mac OS X and Windows. \ -It is written in C++ using the Qt4 toolkit from Trolltech." -HOMEPAGE = "http://ar.oszine.de/projects/qsvn/" -AUTHOR = "Andreas Richter, Rajko Albrecht" -LICENSE = "GPL" -SECTION = "network" -DEPENDS = "apr-util subversion" -PR = "r0" - -SRC_URI = "http://download2.berlios.de/qsvn/qsvn-${PV}-src.tar.gz \ - file://build.patch;patch=1" - -inherit qmake qt4x11 - -EXTRA_QMAKEVARS_POST += "INCLUDEPATH+=${STAGING_INCDIR}/subversion-1" - -do_install() { - install -d ${D}${bindir} - install -m 0755 bin/qsvn ${D}${bindir} -} +require qsvn.inc +inherit qt4x11 diff --git a/packages/qt4/files/0008-backport-qt-lib-infix.patch b/packages/qt4/files/0008-backport-qt-lib-infix.patch new file mode 100644 index 0000000000..c93f58ca41 --- /dev/null +++ b/packages/qt4/files/0008-backport-qt-lib-infix.patch @@ -0,0 +1,166 @@ +Index: qtopia-core-opensource-src-4.3.3/configure +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/configure 2007-12-27 17:26:19.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/configure 2007-12-27 17:26:19.000000000 +0100 +@@ -782,6 +782,11 @@ + VAR=endian + VAL=`echo $1 | sed "s,^-\(.*\)-.*,\1,"` + ;; ++ -qtlibinfix) ++ VAR="qtlibinfix" ++ shift ++ VAL="$1" ++ ;; + -D?*|-D) + VAR="add_define" + if [ "$1" = "-D" ]; then +@@ -903,6 +908,9 @@ + libdir) + QT_INSTALL_LIBS="$VAL" + ;; ++ qtlibinfix) ++ QT_LIBINFIX="$VAL" ++ ;; + translationdir) + QT_INSTALL_TRANSLATIONS="$VAL" + ;; +@@ -2606,6 +2614,8 @@ + -no-sse ............ Do not compile with use of SSE instructions. + -no-sse2 ........... Do not compile with use of SSE2 instructions. + ++ -qtlibinfix <infix> Renames all libQt*.so to libQt<infix>.so. ++ + -D <string> ........ Add an explicit define to the preprocessor. + -I <string> ........ Add an explicit include path. + -L <string> ........ Add an explicit library path. +@@ -5273,6 +5283,8 @@ + QT_MINOR_VERSION = $QT_MINOR_VERSION + QT_PATCH_VERSION = $QT_PATCH_VERSION + ++QT_LIBINFIX = $QT_LIBINFIX ++ + EOF + if [ "$CFG_RPATH" = "yes" ]; then + echo "QMAKE_RPATHDIR += \"$QT_INSTALL_LIBS\"" >> "$QTCONFIG.tmp" +Index: qtopia-core-opensource-src-4.3.3/mkspecs/features/qt_functions.prf +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/features/qt_functions.prf 2007-12-04 18:07:53.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/features/qt_functions.prf 2007-12-27 17:26:19.000000000 +0100 +@@ -28,7 +28,7 @@ + INCLUDEPATH -= $$FRAMEWORK_INCLUDE + INCLUDEPATH = $$FRAMEWORK_INCLUDE $$INCLUDEPATH + } +- LINKAGE = -framework $${LIB_NAME} ++ LINKAGE = -framework $${LIB_NAME}$${QT_LIBINFIX} + } else:!qt_no_framework { #detection + for(frmwrk_dir, $$list($$QMAKE_LIBDIR_QT $$QMAKE_LIBDIR $$(DYLD_FRAMEWORK_PATH) /Library/Frameworks)) { + exists($${frmwrk_dir}/$${LIB_NAME}.framework) { +@@ -46,15 +46,15 @@ + } + isEmpty(LINKAGE) { + CONFIG(debug, debug|release) { +- win32:LINKAGE = -l$${LIB_NAME}d +- mac:LINKAGE = -l$${LIB_NAME}_debug ++ win32:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}d ++ mac:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}_debug + } +- isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME} ++ isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX} + } + !isEmpty(QMAKE_LSB) { + QMAKE_LFLAGS *= --lsb-libpath=$$$$QMAKE_LIBDIR_QT + QMAKE_LFLAGS *= -L/opt/lsb/lib +- QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME} ++ QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME}${QT_LIBINFIX} + } + LIBS += $$LINKAGE + export(LIBS) +Index: qtopia-core-opensource-src-4.3.3/src/qbase.pri +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/src/qbase.pri 2007-12-04 18:08:13.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/src/qbase.pri 2007-12-27 17:26:19.000000000 +0100 +@@ -138,7 +138,7 @@ + contains(QT_CONFIG, qt3support):DEFINES *= QT3_SUPPORT + DEFINES *= QT_MOC_COMPAT #we don't need warnings from calling moc code in our generated code + +-TARGET = $$qtLibraryTarget($$TARGET) #do this towards the end ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #do this towards the end + + moc_dir.name = moc_location + moc_dir.variable = QMAKE_MOC +Index: qtopia-core-opensource-src-4.3.3/tools/assistant/lib/lib.pro +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/tools/assistant/lib/lib.pro 2007-12-04 18:08:19.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/tools/assistant/lib/lib.pro 2007-12-27 17:26:19.000000000 +0100 +@@ -52,7 +52,7 @@ + } + } + +-TARGET = $$qtLibraryTarget($$TARGET) #done towards the end ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #done towards the end + + target.path=$$[QT_INSTALL_LIBS] + INSTALLS += target +Index: qtopia-core-opensource-src-4.3.3/tools/designer/src/components/component.pri +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/tools/designer/src/components/component.pri 2007-12-04 18:08:43.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/tools/designer/src/components/component.pri 2007-12-27 17:26:19.000000000 +0100 +@@ -1,2 +1,2 @@ + +-TARGET = $$qtLibraryTarget($$TARGET) ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) +Index: qtopia-core-opensource-src-4.3.3/tools/qdbus/src/src.pro +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/tools/qdbus/src/src.pro 2007-12-04 18:08:18.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/tools/qdbus/src/src.pro 2007-12-27 17:26:19.000000000 +0100 +@@ -70,7 +70,7 @@ + } + } + +-TARGET = $$qtLibraryTarget($$TARGET) #done towards the end (after framework) ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #done towards the end (after framework) + + # Input + +Index: qtopia-core-opensource-src-4.3.3/tools/qtestlib/src/src.pro +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/tools/qtestlib/src/src.pro 2007-12-04 18:08:18.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/tools/qtestlib/src/src.pro 2007-12-27 17:26:19.000000000 +0100 +@@ -61,7 +61,7 @@ + } + } + +-TARGET = $$qtLibraryTarget($$TARGET) #done towards the end (after framework) ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #done towards the end (after framework) + + # Input + HEADERS = qtest_global.h qtestcase.h qtestdata.h qtesteventloop.h +Index: qtopia-core-opensource-src-4.3.3/tools/designer/src/uitools/uitools.pro +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/tools/designer/src/uitools/uitools.pro 2007-12-04 18:08:43.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/tools/designer/src/uitools/uitools.pro 2007-12-27 17:26:19.000000000 +0100 +@@ -1,5 +1,5 @@ + TEMPLATE = lib +-TARGET = $$qtLibraryTarget(QtUiTools) ++TARGET = $$qtLibraryTarget(QtUiTools$$QT_LIBINFIX) + QT += xml + CONFIG += qt staticlib + DESTDIR = ../../../../lib +Index: qtopia-core-opensource-src-4.3.3/mkspecs/features/uitools.prf +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/features/uitools.prf 2007-12-27 17:32:57.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/features/uitools.prf 2007-12-27 17:33:56.000000000 +0100 +@@ -2,10 +2,10 @@ + qt:load(qt) + + # Include the correct version of the UiLoader library +-QTUITOOLS_LINKAGE = -lQtUiTools ++QTUITOOLS_LINKAGE = -lQtUiTools$${QT_LIBINFIX} + CONFIG(debug, debug|release) { +- mac: QTUITOOLS_LINKAGE = -lQtUiTools_debug +- win32: QTUITOOLS_LINKAGE = -lQtUiToolsd ++ mac: QTUITOOLS_LINKAGE = -lQtUiTools$${QT_LIBINFIX}_debug ++ win32: QTUITOOLS_LINKAGE = -lQtUiTools$${QT_LIBINFIX}d + } + LIBS += $$QTUITOOLS_LINKAGE + diff --git a/packages/qt4/qt4-x11-free.inc b/packages/qt4/qt4-x11-free.inc index 75f7344e24..1647b07fd3 100644 --- a/packages/qt4/qt4-x11-free.inc +++ b/packages/qt4/qt4-x11-free.inc @@ -18,7 +18,6 @@ S = "${WORKDIR}/qt-x11-opensource-src-${PV}" QT_CONFIG_FLAGS += "-no-xinerama -no-tablet -no-xkb -no-opengl" QT_BASE_NAME = "qt4" QT_BASE_LIB = "libqt" -QT_LIBRARY_NAME = "Qt" QT_DIR_NAME = "qt4" require qt_depends.inc require qt_configuration.inc diff --git a/packages/qt4/qt_configuration.inc b/packages/qt4/qt_configuration.inc index aa4f8c6c5e..252a80a408 100644 --- a/packages/qt4/qt_configuration.inc +++ b/packages/qt4/qt_configuration.inc @@ -2,11 +2,11 @@ require qt4_arch.inc QT_ARCH := "${@qt_arch(d)}" QT_ENDIAN = "${@qt_endian(d)}" -QT_CONFIG_FLAGS = "-release -no-cups -no-accessibility -reduce-relocations \ - -shared -no-nas-sound -no-sm -no-nis \ - -qt-gif -system-libjpeg -system-libpng -system-zlib \ - -no-sql-ibase -no-sql-mysql -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 \ - -no-pch -qdbus -stl -glib" +QT_CONFIG_FLAGS += "-release -no-cups -no-accessibility -reduce-relocations \ + -shared -no-nas-sound -no-sm -no-nis \ + -qt-gif -system-libjpeg -system-libpng -system-zlib \ + -no-sql-ibase -no-sql-mysql -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 \ + -no-pch -qdbus -stl -glib" EXTRA_OEMAKE = "-e" diff --git a/packages/qt4/qt_packaging.inc b/packages/qt4/qt_packaging.inc index 472faa3da4..e610245c05 100644 --- a/packages/qt4/qt_packaging.inc +++ b/packages/qt4/qt_packaging.inc @@ -60,56 +60,56 @@ RDEPENDS_${PN}-dev = "${DEV_PACKAGES}" RDEPENDS_${PN}-dbg = "${DBG_PACKAGES}" def qt_default_dev(name): - return """${libdir}/lib${QT_LIBRARY_NAME}%(name)s.la - ${libdir}/lib${QT_LIBRARY_NAME}%(name)s.prl - ${libdir}/lib${QT_LIBRARY_NAME}%(name)s.so + return """${libdir}/libQt%(name)s${QT_LIBINFIX}.la + ${libdir}/libQt%(name)s${QT_LIBINFIX}.prl + ${libdir}/libQt%(name)s${QT_LIBINFIX}.so ${includedir}/${QT_DIR_NAME}/Qt%(name)s* - ${libdir}/pkgconfig/${QT_LIBRARY_NAME}%(name)s.pc""" % locals() + ${libdir}/pkgconfig/Qt%(name)s${QT_LIBINFIX}.pc""" % locals() -FILES_${QT_BASE_LIB}core4 = "${libdir}/lib${QT_LIBRARY_NAME}Core.so.*" +FILES_${QT_BASE_LIB}core4 = "${libdir}/libQtCore${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}core4-dev = "${@qt_default_dev('Core')}" -FILES_${QT_BASE_LIB}core4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Core*" -FILES_${QT_BASE_LIB}gui4 = "${libdir}/lib${QT_LIBRARY_NAME}Gui.so.*" +FILES_${QT_BASE_LIB}core4-dbg = "${libdir}/.debug/libQtCore*" +FILES_${QT_BASE_LIB}gui4 = "${libdir}/libQtGui${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}gui4-dev = "${@qt_default_dev('Gui')}" -FILES_${QT_BASE_LIB}gui4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Gui*" -FILES_${QT_BASE_LIB}network4 = "${libdir}/lib${QT_LIBRARY_NAME}Network.so.*" +FILES_${QT_BASE_LIB}gui4-dbg = "${libdir}/.debug/libQtGui*" +FILES_${QT_BASE_LIB}network4 = "${libdir}/libQtNetwork${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}network4-dev = "${@qt_default_dev('Network')}" -FILES_${QT_BASE_LIB}network4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Network*" -FILES_${QT_BASE_LIB}sql4 = "${libdir}/lib${QT_LIBRARY_NAME}Sql.so.*" +FILES_${QT_BASE_LIB}network4-dbg = "${libdir}/.debug/libQtNetwork${QT_LIBINFIX}*" +FILES_${QT_BASE_LIB}sql4 = "${libdir}/libQtSql${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}sql4-dev = "${@qt_default_dev('Sql')}" -FILES_${QT_BASE_LIB}sql4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Sql*" -FILES_${QT_BASE_LIB}svg4 = "${libdir}/lib${QT_LIBRARY_NAME}Svg.so.*" +FILES_${QT_BASE_LIB}sql4-dbg = "${libdir}/.debug/libQtSql*" +FILES_${QT_BASE_LIB}svg4 = "${libdir}/libQtSvg${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}svg4-dev = "${@qt_default_dev('Svg')}" -FILES_${QT_BASE_LIB}svg4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Svg*" -FILES_${QT_BASE_LIB}test4 = "${libdir}/lib${QT_LIBRARY_NAME}Test.so.*" +FILES_${QT_BASE_LIB}svg4-dbg = "${libdir}/.debug/libQtSvg*" +FILES_${QT_BASE_LIB}test4 = "${libdir}/libQtTest${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}test4-dev = "${@qt_default_dev('Test')}" -FILES_${QT_BASE_LIB}test4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Test*" -FILES_${QT_BASE_LIB}xml4 = "${libdir}/lib${QT_LIBRARY_NAME}Xml.so.*" +FILES_${QT_BASE_LIB}test4-dbg = "${libdir}/.debug/libQtTest*" +FILES_${QT_BASE_LIB}xml4 = "${libdir}/libQtXml${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}xml4-dev = "${@qt_default_dev('Xml')}" -FILES_${QT_BASE_LIB}xml4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Xml*" -FILES_${QT_BASE_LIB}designer4 = "${libdir}/lib${QT_LIBRARY_NAME}Designer.so.*" +FILES_${QT_BASE_LIB}xml4-dbg = "${libdir}/.debug/libQtXml*" +FILES_${QT_BASE_LIB}designer4 = "${libdir}/libQtDesigner${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}designer4-dev = "${@qt_default_dev('Designer')}" -FILES_${QT_BASE_LIB}designer4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Designer*" -FILES_${QT_BASE_LIB}designercomponents4 = "${libdir}/lib${QT_LIBRARY_NAME}DesignerComponents.so.*" +FILES_${QT_BASE_LIB}designer4-dbg = "${libdir}/.debug/libQtDesigner*" +FILES_${QT_BASE_LIB}designercomponents4 = "${libdir}/libQtDesignerComponents${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}designercomponents4-dev = "${@qt_default_dev('DesignerComponents')}" -FILES_${QT_BASE_LIB}designercomponents4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}DesignerComponents*" -FILES_${QT_BASE_LIB}3support4 = "${libdir}/lib${QT_LIBRARY_NAME}3Support.so.*" +FILES_${QT_BASE_LIB}designercomponents4-dbg = "${libdir}/.debug/libQtDesignerComponents*" +FILES_${QT_BASE_LIB}3support4 = "${libdir}/libQt3Support${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}3support4-dev = "${@qt_default_dev('3Support')}" -FILES_${QT_BASE_LIB}3support4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}3Support*" -FILES_${QT_BASE_LIB}assistantclient4 = "${libdir}/lib${QT_LIBRARY_NAME}AssistantClient.so.*" +FILES_${QT_BASE_LIB}3support4-dbg = "${libdir}/.debug/libQt3Support*" +FILES_${QT_BASE_LIB}assistantclient4 = "${libdir}/libQtAssistantClient${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}assistantclient4-dev = "${@qt_default_dev('AssistantClient')} ${includedir}/${QT_DIR_NAME}/QtAssistant*" -FILES_${QT_BASE_LIB}assistantclient4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}AssistantClient*" -FILES_${QT_BASE_LIB}script4 = "${libdir}/lib${QT_LIBRARY_NAME}Script.so.*" +FILES_${QT_BASE_LIB}assistantclient4-dbg = "${libdir}/.debug/libQtAssistantClient*" +FILES_${QT_BASE_LIB}script4 = "${libdir}/libQtScript${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}script4-dev = "${@qt_default_dev('Script')}" -FILES_${QT_BASE_LIB}script4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Script*" -FILES_${QT_BASE_LIB}dbus4 = "${libdir}/lib${QT_LIBRARY_NAME}DBus.so.*" +FILES_${QT_BASE_LIB}script4-dbg = "${libdir}/.debug/libQtScript*" +FILES_${QT_BASE_LIB}dbus4 = "${libdir}/libQtDBus${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}dbus4-dev = "${@qt_default_dev('DBus')}" -FILES_${QT_BASE_LIB}dbus4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}DBus*" -FILES_${QT_BASE_LIB}opengl4 = "${libdir}/lib${QT_LIBRARY_NAME}OpenGL.so.*" +FILES_${QT_BASE_LIB}dbus4-dbg = "${libdir}/.debug/libQtDBus*" +FILES_${QT_BASE_LIB}opengl4 = "${libdir}/libQtOpenGL${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}opengl4-dev = "${@qt_default_dev('OpenGL')}" -FILES_${QT_BASE_LIB}opengl4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}OpenGL*" -FILES_${QT_BASE_LIB}uitools4-dev = "${libdir}/lib${QT_LIBRARY_NAME}UiTools* ${includedir}/${QT_DIR_NAME}/QtUiTools* ${libdir}/pkgconfig/${QT_LIBRARY_NAME}UiTools.pc" +FILES_${QT_BASE_LIB}opengl4-dbg = "${libdir}/.debug/libQtOpenGL*" +FILES_${QT_BASE_LIB}uitools4-dev = "${libdir}/libQtUiTools* ${includedir}/${QT_DIR_NAME}/QtUiTools* ${libdir}/pkgconfig/QtUiTools${QT_LIBINFIX}.pc" FILES_${QT_BASE_NAME}-plugins-accessible = "${libdir}/${QT_DIR_NAME}/plugins/accessible/*.so" diff --git a/packages/qt4/qt_staging.inc b/packages/qt4/qt_staging.inc index 21f17590b5..ddc28720a3 100644 --- a/packages/qt4/qt_staging.inc +++ b/packages/qt4/qt_staging.inc @@ -18,8 +18,19 @@ do_stage() { for i in ${STAGE_TEMP}/${libdir}/*.la do + sed -i s,installed=yes,installed=no, $i + cp -fpPR $i ${STAGING_LIBDIR}/${QT_DIR_NAME}/ + cp -fpPR ${STAGE_TEMP}/${libdir}/$(basename $i .la).prl ${STAGING_LIBDIR}/${QT_DIR_NAME} oe_libinstall -C ${STAGE_TEMP}/${libdir} -so $(basename $i .la) ${STAGING_LIBDIR}/${QT_DIR_NAME} done + for i in libQtAssistantClient${QT_LIBINFIX} libQtDesignerComponents${QT_LIBINFIX} libQtUiTools${QT_LIBINFIX} libQtUiTools${QT_LIBINFIX} libQtDesigner${QT_LIBINFIX} + do + cp ${STAGE_TEMP}/${libdir}/$i.prl ${STAGING_LIBDIR}/${QT_DIR_NAME} || true + cp ${STAGE_TEMP}/${libdir}/$i.la ${STAGING_LIBDIR}/${QT_DIR_NAME} || true + oe_libinstall -C ${STAGE_TEMP}/${libdir} -so $i ${STAGING_LIBDIR}/${QT_DIR_NAME} || true + oe_libinstall -C ${STAGE_TEMP}/${libdir} -a $i ${STAGING_LIBDIR}/${QT_DIR_NAME} || true + done + rm -rf ${STAGE_TEMP} } diff --git a/packages/qt4/qtopia-core.inc b/packages/qt4/qtopia-core.inc index 06837787cf..05727b7c90 100644 --- a/packages/qt4/qtopia-core.inc +++ b/packages/qt4/qtopia-core.inc @@ -10,17 +10,18 @@ SRC_URI = "ftp://ftp.trolltech.com/qt/source/qtopia-core-opensource-src-${PV}.ta file://0001-cross-compile.patch;patch=1 \ file://0003-no-tools.patch;patch=1 \ file://0004-no-qmake.patch;patch=1 \ - file://0005-fix-mkspecs.patch;patch=1" + file://0005-fix-mkspecs.patch;patch=1 \ + file://build-tools.patch;patch=1" S = "${WORKDIR}/qtopia-core-opensource-src-${PV}" QT_CONFIG_FLAGS += " \ - -nomake demos -nomake examples -nomake tools \ + -nomake demos -nomake examples -nomake tools -qtlibinfix E\ -qt-mouse-tslib -qt-gfx-transformed -embedded ${QT_ARCH}" QT_BASE_NAME = "qtopiacore" QT_BASE_LIB = "libqtopiacore" -QT_LIBRARY_NAME = "Qt" QT_DIR_NAME = "qtopia" +QT_LIBINFIX="E" require qt_depends.inc require qt_configuration.inc require qt_packaging.inc diff --git a/packages/qt4/qtopia-core/build-tools.patch b/packages/qt4/qtopia-core/build-tools.patch new file mode 100644 index 0000000000..54ad666374 --- /dev/null +++ b/packages/qt4/qtopia-core/build-tools.patch @@ -0,0 +1,28 @@ +Do not disable tools, examples and demos for the QWS build. Use brute-force +to do this. + +Index: qtopia-core-opensource-src-4.3.3/configure +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/configure 2007-12-27 16:30:36.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/configure 2007-12-27 16:30:52.000000000 +0100 +@@ -2265,13 +2265,13 @@ + CFG_BUILD_PARTS="$QT_DEFAULT_BUILD_PARTS" + + # don't build tools by default when cross-compiling +- if [ "$PLATFORM" != "$XPLATFORM" ]; then +- CFG_BUILD_PARTS=`echo "$CFG_BUILD_PARTS" | sed "s, tools,,g"` +- fi +-fi +-for nobuild in $CFG_NOBUILD_PARTS; do +- CFG_BUILD_PARTS=`echo "$CFG_BUILD_PARTS" | sed "s, $nobuild,,g"` +-done ++ #if [ "$PLATFORM" != "$XPLATFORM" ]; then ++ # CFG_BUILD_PARTS=`echo "$CFG_BUILD_PARTS" | sed "s, tools,,g"` ++ #fi ++fi ++#for nobuild in $CFG_NOBUILD_PARTS; do ++# CFG_BUILD_PARTS=`echo "$CFG_BUILD_PARTS" | sed "s, $nobuild,,g"` ++#done + if echo $CFG_BUILD_PARTS | grep -v libs >/dev/null 2>&1; then + # echo + # echo "WARNING: libs is a required part of the build." diff --git a/packages/qt4/qtopia-core_4.3.3.bb b/packages/qt4/qtopia-core_4.3.3.bb index b903e2b06a..9dad97f49a 100644 --- a/packages/qt4/qtopia-core_4.3.3.bb +++ b/packages/qt4/qtopia-core_4.3.3.bb @@ -1,4 +1,5 @@ require qtopia-core.inc SRC_URI += " \ file://0006-freetype-host-includes.patch;patch=1 \ - file://0007-openssl-host-includes.patch;patch=1 " + file://0007-openssl-host-includes.patch;patch=1 \ + file://0008-backport-qt-lib-infix.patch;patch=1" diff --git a/packages/qxmp/qxmp_1.0.bb b/packages/qxmp/qxmp_1.0.bb index e0a1acab21..bad972d54f 100644 --- a/packages/qxmp/qxmp_1.0.bb +++ b/packages/qxmp/qxmp_1.0.bb @@ -6,7 +6,7 @@ RDEPENDS = "mplayer" SRC_URI = "http://www.xm1math.net/qxmp/qxmp-${PV}.tar.bz2" -inherit qmake qt4x11 +inherit qt4x11 do_install() { install -d ${D}${bindir} diff --git a/packages/tasks/task-base.bb b/packages/tasks/task-base.bb index cbb639ac3d..40ef6ddce8 100644 --- a/packages/tasks/task-base.bb +++ b/packages/tasks/task-base.bb @@ -1,5 +1,5 @@ DESCRIPTION = "Merge machine and distro options to create a basic machine task/package" -PR = "r55" +PR = "r56" inherit task @@ -226,8 +226,6 @@ RRECOMMENDS_task-base-pcmcia = "\ " task-base-pcmcia24 = "\ - ${@base_contains('DISTRO_FEATURES', 'wifi', 'hostap-modules-cs', '',d)} \ - ${@base_contains('DISTRO_FEATURES', 'wifi', 'orinoco-modules-cs', '',d)} \ " task-base-pcmcia26 = "\ diff --git a/packages/texmaker/texmaker_1.3.bb b/packages/texmaker/texmaker_1.3.bb index 5682338f31..b612302544 100644 --- a/packages/texmaker/texmaker_1.3.bb +++ b/packages/texmaker/texmaker_1.3.bb @@ -5,7 +5,7 @@ LICENSE = "GPL" SRC_URI = "http://www.xm1math.net/texmaker/texmaker-${PV}.tar.bz2" -inherit qmake qt4x11 +inherit qt4x11 do_install() { install -d ${D}${bindir} |