diff options
author | Rolf Leggewie <oe-devel@rolf.leggewie.biz> | 2007-03-17 17:57:46 +0000 |
---|---|---|
committer | Rolf Leggewie <oe-devel@rolf.leggewie.biz> | 2007-03-17 17:57:46 +0000 |
commit | 6142c77d5d691a59157f12d71bcb4f5c9e8837fd (patch) | |
tree | c6ca12b6f28200fdb87d17d0394369ebb5966871 | |
parent | 09bb585ba70bc7c651d62c9aa9ac0e57595df31c (diff) | |
parent | a828847f3281b8c4254cf89a551c9dcf3e0e4787 (diff) |
merge of '13300dbb95259891ffdb187402ac66a12e7f43c7'
and 'c18417178fcb2dac2e3931442dc1d0cf1ba2e5c8'
62 files changed, 5561 insertions, 598 deletions
diff --git a/classes/seppuku.bbclass b/classes/seppuku.bbclass index 8d5e234c49..4c0d4f9a82 100644 --- a/classes/seppuku.bbclass +++ b/classes/seppuku.bbclass @@ -15,6 +15,8 @@ def seppuku_spliturl(url): param = {} for par in query.split("&"): (key,value) = urllib.splitvalue(par) + if not key or len(key) == 0 or not value: + continue key = urllib.unquote(key) value = urllib.unquote(value) param[key] = value @@ -65,10 +67,13 @@ def seppuku_find_bug_report_old(): HTMLParser.__init__(self) self.state = self.STATE_NONE self.bugs = [] + self.bug = None def handle_starttag(self, tag, attr): if self.state == self.STATE_NONE and tag.lower() == "tr": - if len(attr) == 1 and attr[0] == ('class', 'bz_normal bz_P2 '): + if len(attr) == 1 and attr[0][0] == 'class' and \ + ('bz_normal' in attr[0][1] or 'bz_blocker' in attr[0][1] or 'bz_enhancement' in attr[0][1] or 'bz_major' in attr[0][1] or 'bz_minor' in attr[0][1] or 'bz_trivial' in attr[0][1] or 'bz_critical' in attr[0][1] or 'bz_wishlist' in attr[0][1]) \ + and 'bz_P' in attr[0][1]: self.state = self.STATE_FOUND_TR elif self.state == self.STATE_FOUND_TR and tag.lower() == "td": self.state += 1 @@ -78,6 +83,7 @@ def seppuku_find_bug_report_old(): if self.state != self.STATE_NONE: self.bugs.append( (self.bug,self.status) ) self.state = self.STATE_NONE + self.bug = None if self.state > 1 and tag.lower() == "td": self.state += 1 @@ -89,7 +95,11 @@ def seppuku_find_bug_report_old(): return if self.state == self.STATE_FOUND_NUMBER: - self.bug = data + """ + #1995 in bugs.oe.org has [SEC] additionally to the number and we want to ignore it + """ + if not self.bug: + self.bug = data elif self.state == self.STATE_FOUND_STATUS: self.status = data @@ -281,6 +291,7 @@ python seppuku_eventhandler() { else: print "Logged into the box" + file = None if name == "TaskFailed": bugname = "%(package)s-%(pv)s-%(pr)s-%(task)s" % { "package" : bb.data.getVar("PN", data, True), "pv" : bb.data.getVar("PV", data, True), @@ -288,11 +299,11 @@ python seppuku_eventhandler() { "task" : e.task } log_file = glob.glob("%s/log.%s.*" % (bb.data.getVar('T', event.data, True), event.task)) text = "The package failed to build at %s" % bb.data.getVar('DATETIME', data, True) - file = open(log_file[0], 'r') + if len(log_file) != 0: + file = open(log_file[0], 'r') elif name == "NoProvider": bugname = "noprovider for %s runtime: %s" % (event.getItem, event.getisRuntime) text = "Please fix it" - file = None else: assert False diff --git a/conf/distro/foonas.conf b/conf/distro/foonas.conf index bd2a0e4e5e..b0f47c6dc0 100644 --- a/conf/distro/foonas.conf +++ b/conf/distro/foonas.conf @@ -30,10 +30,12 @@ IMAGE_FSTYPES = "jffs2" PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "glibc-intermediate" PREFERRED_PROVIDER_virtual/arm-foonas-linux-gnueabi-libc-for-gcc = "glibc-intermediate" -#PREFERRED_PROVIDER_virtual/armeb-foonas-linux-gnueabi-libc-for-gcc = "glibc-intermediate" PREFERRED_PROVIDER_virtual/arm-linux-libc-for-gcc = "glibc-intermediate" -#PREFERRED_PROVIDER_virtual/armeb-linux-libc-for-gcc = "glibc-intermediate" PREFERRED_PROVIDER_virtual/powerpc-foonas-linux-libc-for-gcc = "glibc-intermediate" + +# not used yet +#PREFERRED_PROVIDER_virtual/armeb-linux-libc-for-gcc = "glibc-intermediate" +#PREFERRED_PROVIDER_virtual/armeb-foonas-linux-gnueabi-libc-for-gcc = "glibc-intermediate" #PREFERRED_PROVIDER_virtual/mipsel-foonas-linux-libc-for-gcc = "glibc-intermediate" #PREFERRED_PROVIDER_virtual/sparc-foonas-linux-libc-for-gcc = "glibc-intermediate" @@ -83,7 +85,6 @@ PREFERRED_VERSION_glibc-intermediate = "2.5" PREFERRED_VERSION_glibc-initial = "2.5" GLIBC_EXTRA_OECONF = "--with-tls" -PREFERRED_VERSION_glib-2.0 = "2.12.10" PREFERRED_VERSION_linux-libc-headers ?= "2.6.18" GLIBC_ADDONS ?= "ports,nptl,libidn" diff --git a/conf/machine/n2100.conf b/conf/machine/n2100.conf index 619b0f4339..554157ca85 100644 --- a/conf/machine/n2100.conf +++ b/conf/machine/n2100.conf @@ -3,7 +3,6 @@ TARGET_OS = "linux" TARGET_FPU = "soft" PACKAGE_EXTRA_ARCHS = "armv4 armv4t armv5e armv5te" -# terminal specs - console, but no other ports SERIAL_CONSOLE="115200 console" USE_VT="0" @@ -13,15 +12,15 @@ PREFERRED_PROVIDER_virtual/kernel = "linux" PREFERRED_VERSION_linux = "2.6.20" # Do we need any kernel modules? -#N2100_KERNEL = "" +FOONAS_KERNEL = "kernel-module-ext2 kernel-module-usb-storage" + +FOONAS_SUPPORT += "fis" # We want udev support in the image udevdir = "/dev" -N2100_SUPPORT ?= "cpio udev" BOOTSTRAP_EXTRA_RDEPENDS = "udev mdadm" -EXTRA_IMAGECMD_jffs2 += " --little-endian" -# Hardware stuff used in image generation +EXTRA_IMAGECMD_jffs2 += " --little-endian" ERASEBLOCK_SIZE = "0x20000" JFFS2_ROOTFS_SIZE = "0xC80000" KERNEL_IMAGE_SIZE = "0x280000" diff --git a/conf/machine/turbostation.conf b/conf/machine/turbostation.conf index 7f7d24c1e9..41dfd8d09e 100644 --- a/conf/machine/turbostation.conf +++ b/conf/machine/turbostation.conf @@ -11,16 +11,16 @@ USE_VT="0" MODUTILS=26 MACHINE_FEATURES= "kernel26 usbhost" PREFERRED_PROVIDER_virtual/kernel = "linux-turbostation" - -# Do we need any kernel modules? -OPENTURBOSTATION_KERNEL = "" +FOONAS_KERNEL = "kernel-module-ext3 kernel-module-minix \ + kernel-module-usb-storage" # We want udev support in the image udevdir = "/dev" -TURBOSTATION_SUPPORT ?= "cpio uboot-utils udev" BOOTSTRAP_EXTRA_RDEPENDS = "udev mdadm" +FOONAS_SUPPORT += "uboot-utils" # Hardware stuff used in image generation +EXTRA_IMAGECMD = "--big-endian" ERASEBLOCK_SIZE = "0x20000" JFFS2_ROOTFS_SIZE = "0xC80000" KERNEL_IMAGE_SIZE = "0x280000" diff --git a/contrib/qa/bugzilla.py b/contrib/qa/bugzilla.py index 1bc0ce9949..17849552b0 100644 --- a/contrib/qa/bugzilla.py +++ b/contrib/qa/bugzilla.py @@ -25,11 +25,16 @@ class BugQueryExtractor(HTMLParser): def __init__(self): HTMLParser.__init__(self) self.state = self.STATE_NONE + self.bug = None self.bugs = [] def handle_starttag(self, tag, attr): if self.state == self.STATE_NONE and tag.lower() == "tr": - if len(attr) == 1 and attr[0] == ('class', 'bz_normal bz_P2 '): + # check for bz_normal and bz_P2 as indicator in buglist.cgi + # use 'all' and 'map' on python2.5 + if len(attr) == 1 and attr[0][0] == 'class' and \ + ('bz_normal' in attr[0][1] or 'bz_blocker' in attr[0][1] or 'bz_enhancement' in attr[0][1] or 'bz_major' in attr[0][1] or 'bz_minor' in attr[0][1] or 'bz_trivial' in attr[0][1] or 'bz_critical' in attr[0][1] or 'bz_wishlist' in attr[0][1]) \ + and 'bz_P' in attr[0][1]: print "Found tr %s %s" % (tag, attr) self.state = self.STATE_FOUND_TR elif self.state == self.STATE_FOUND_TR and tag.lower() == "td": @@ -41,6 +46,7 @@ class BugQueryExtractor(HTMLParser): if self.state != self.STATE_NONE: self.bugs.append( (self.bug,self.status) ) self.state = self.STATE_NONE + self.bug = None if self.state > 1 and tag.lower() == "td": print "Next TD" self.state += 1 @@ -51,11 +57,17 @@ class BugQueryExtractor(HTMLParser): # skip garbage if len(data) == 0: return - + if self.state == self.STATE_FOUND_NUMBER: + """ + #1995 in bugs.oe.org has [SEC] additionally to the number and we want to ignore it + """ print "Bug Number '%s'" % data.strip() + if self.bug: + print "Ignoring bug data" + return self.bug = data - + elif self.state == self.STATE_FOUND_STATUS: print "Status Name '%s'" % data.strip() self.status = data @@ -65,267 +77,7 @@ class BugQueryExtractor(HTMLParser): return self.bugs # -site = """<!-- 1.0@bugzilla.org --> - - - - - - - - - - - -<!-- 1.0@bugzilla.org --> - - - - -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> - <title>Bug List</title> - - - - - - <link href="/style/style.css" rel="stylesheet" type="text/css" /> - - <link href="/bugzilla/css/buglist.css" rel="stylesheet" type="text/css"> - - </head> - - - - <body bgcolor="#FFFFFF" onload=""> - - -<!-- 1.0@bugzilla.org --> - - - - - <div id="header"> - <a href="http://bugzilla.openmoko.org/cgi-bin/bugzilla/" id="site_logo"><img src="/style/images/openmoko_logo.png" alt="openmoko.org" /></a> - - <div id="main_navigation"> - <ul> - <li><a href="http://www.openmoko.org/" class="nav_home"><span>Home</span></a></li> - <li><a href="http://wiki.openmoko.org/" class="nav_wiki"><span>Wiki</span></a></li> - <li><a href="http://bugzilla.openmoko.org/" class="nav_bugzilla selected"><span>Bugzilla</span></a></li> - <li><a href="http://planet.openmoko.org/" class="nav_planet"><span>Planet</span></a></li> - <li><a href="http://projects.openmoko.org/" class="nav_projects"><span>Projects</span></a></li> - <li><a href="http://lists.openmoko.org/" class="nav_lists"><span>Lists</span></a></li> - </ul> - </div> - </div> - - <div class="page_title"> - <strong>Bug List</strong> - </div> - - <div class="container"> - -<div align="center"> - <b>Tue Mar 6 19:01:13 CET 2007</b><br> - - - <a href="quips.cgi"><i>Free your problems -</i></a> - -</div> - - -<hr> - - - - - - - - - - - - - - - - - -<!-- 1.0@bugzilla.org --> - - - - - - - - - - - - - - - - - - - - - - - <table class="bz_buglist" cellspacing="0" cellpadding="4" width="100%"> - <colgroup> - <col class="bz_id_column"> - <col class="bz_severity_column"> - <col class="bz_priority_column"> - <col class="bz_platform_column"> - <col class="bz_owner_column"> - <col class="bz_status_column"> - <col class="bz_resolution_column"> - <col class="bz_summary_column"> - </colgroup> - - <tr align="left"> - <th colspan="1"> - <a href="buglist.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds&order=bugs.bug_id">ID</a> - </th> - -<th colspan="1"> - <a href="buglist.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds&order=bugs.bug_severity,bugs.bug_id">Sev</a> - </th><th colspan="1"> - <a href="buglist.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds&order=bugs.priority,bugs.bug_id">Pri</a> - </th><th colspan="1"> - <a href="buglist.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds&order=bugs.rep_platform,bugs.bug_id">Plt</a> - </th><th colspan="1"> - <a href="buglist.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds&order=map_assigned_to.login_name,bugs.bug_id">Owner</a> - </th><th colspan="1"> - <a href="buglist.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds&order=bugs.bug_status,bugs.bug_id">State</a> - </th><th colspan="1"> - <a href="buglist.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds&order=bugs.resolution,bugs.bug_id">Result</a> - </th><th colspan="1"> - <a href="buglist.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds&order=bugs.short_desc,bugs.bug_id">Summary</a> - </th> - - - </tr> - - <tr class="bz_normal bz_P2 "> - - <td> - <a href="show_bug.cgi?id=238">238</a> - </td> - - <td><nobr>nor</nobr> - </td> - <td><nobr>P2</nobr> - </td> - <td><nobr>Mac</nobr> - </td> - <td><nobr>mickey@vanille-media.de</nobr> - </td> - <td><nobr>NEW</nobr> - </td> - <td><nobr></nobr> - </td> - <td>manual test bug - </td> - - </tr> - - - </table> - - - - - - One bug found. - - -<br> - - - - - - - - - - - - - <form method="post" action="long_list.cgi"> - <input type="hidden" name="buglist" value="238"> - <input type="submit" value="Long Format"> - - <a href="query.cgi">Query Page</a> - <a href="enter_bug.cgi">Enter New Bug</a> - <a href="colchange.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds">Change Columns</a> - - - - <a href="query.cgi?short_desc_type=substring&short_desc=manual+test+bug&product=OpenMoko&component=autobuilds">Edit this Query</a> - - </form> - - - - - - -<!-- 1.0@bugzilla.org --> - - - - - - -</div> - -<div class="footer"> - <div class="group">This is <b>Bugzilla</b>: the Mozilla bug system. For more information about what Bugzilla is and what it can do, see <a href="http://www.bugzilla.org/">bugzilla.org</a>.</div> - <!-- 1.0@bugzilla.org --> - - - - - - -<form method="get" action="show_bug.cgi"> - <div class="group"> - <a href="enter_bug.cgi">New</a> | <a href="query.cgi">Query</a> | <input type="submit" value="Find"> bug # <input name="id" size="6"> | <a href="reports.cgi">Reports</a> | <a href="votes.cgi?action=show_user">My Votes</a> - </div> - - <div class="group"> - Edit <a href="userprefs.cgi">prefs</a> - | <a href="relogin.cgi">Log out</a> freyther@yahoo.com - </div> - - - - - <div class="group"> - Preset Queries: - - <a href="buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=freyther%40yahoo.com&emailtype1=exact&emailassigned_to1=1&emailreporter1=1">My Bugs</a> - - </div> -</form> -</div> - -</body> -</html> -""" - -all_bugs = """<!-- 1.0@bugzilla.org --> +bugs_openmoko = """<!-- 1.0@bugzilla.org --> @@ -390,10 +142,10 @@ all_bugs = """<!-- 1.0@bugzilla.org --> <div class="container"> <div align="center"> - <b>Tue Mar 6 20:23:16 CET 2007</b><br> + <b>Fri Mar 16 20:51:52 CET 2007</b><br> - <a href="quips.cgi"><i>Free your problems + <a href="quips.cgi"><i>It was a time of great struggle and heroic deeds </i></a> </div> @@ -405,7 +157,7 @@ all_bugs = """<!-- 1.0@bugzilla.org --> -228 bugs found. +282 bugs found. @@ -454,23 +206,23 @@ all_bugs = """<!-- 1.0@bugzilla.org --> <tr align="left"> <th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_id">ID</a> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_id">ID</a> </th> <th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_severity,bugs.bug_id">Sev</a> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_severity,bugs.bug_id">Sev</a> </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.priority,bugs.bug_id">Pri</a> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.priority,bugs.bug_id">Pri</a> </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.rep_platform,bugs.bug_id">Plt</a> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.rep_platform,bugs.bug_id">Plt</a> </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=map_assigned_to.login_name,bugs.bug_id">Owner</a> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=map_assigned_to.login_name,bugs.bug_id">Owner</a> </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_status,bugs.bug_id">State</a> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_status,bugs.bug_id">State</a> </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.resolution,bugs.bug_id">Result</a> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.resolution,bugs.bug_id">Result</a> </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.short_desc,bugs.bug_id">Summary</a> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.short_desc,bugs.bug_id">Summary</a> </th> @@ -535,6 +287,34 @@ all_bugs = """<!-- 1.0@bugzilla.org --> <tr class="bz_normal bz_P2 "> <td> + <a href="show_bug.cgi?id=3">3</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>CLOS</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>Debug Board trying to control GSM_EN / FA_19 + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> <a href="show_bug.cgi?id=4">4</a> </td> @@ -546,9 +326,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>laforge@openmoko.org</nobr> </td> - <td><nobr>ASSI</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>random crashes of gsmd </td> @@ -591,6 +371,34 @@ all_bugs = """<!-- 1.0@bugzilla.org --> <tr class="bz_normal bz_P2 "> <td> + <a href="show_bug.cgi?id=6">6</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>GSM_EN should be called nGSM_EN + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> <a href="show_bug.cgi?id=7">7</a> </td> @@ -840,6 +648,62 @@ all_bugs = """<!-- 1.0@bugzilla.org --> + <tr class="bz_blocker bz_P2 "> + + <td> + <a href="show_bug.cgi?id=16">16</a> + </td> + + <td><nobr>blo</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>bluetooth pullup / pulldown resistors + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=17">17</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>microSD socket still has mechanical contact problems + </td> + + </tr> + + + + + + <tr class="bz_normal bz_P2 "> <td> @@ -1274,9 +1138,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>laforge@openmoko.org</nobr> </td> - <td><nobr>ASSI</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>incoming call status report causes gsmd to crash. </td> @@ -1302,9 +1166,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>laforge@openmoko.org</nobr> </td> - <td><nobr>ASSI</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>WORK</nobr> </td> <td>Need to decide if lgsm_handle is still valid. </td> @@ -2786,9 +2650,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>laforge@openmoko.org</nobr> </td> - <td><nobr>NEW</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>define and implement how headphone jack routing/signallin... </td> @@ -3160,9 +3024,45 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </tr> + </table> + <table class="bz_buglist" cellspacing="0" cellpadding="4" width="100%"> + <colgroup> + <col class="bz_id_column"> + <col class="bz_severity_column"> + <col class="bz_priority_column"> + <col class="bz_platform_column"> + <col class="bz_owner_column"> + <col class="bz_status_column"> + <col class="bz_resolution_column"> + <col class="bz_summary_column"> + </colgroup> + + <tr align="left"> + <th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_id">ID</a> + </th> + +<th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_severity,bugs.bug_id">Sev</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.priority,bugs.bug_id">Pri</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.rep_platform,bugs.bug_id">Plt</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=map_assigned_to.login_name,bugs.bug_id">Owner</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_status,bugs.bug_id">State</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.resolution,bugs.bug_id">Result</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.short_desc,bugs.bug_id">Summary</a> + </th> + + + </tr> <tr class="bz_major bz_P2 "> @@ -3272,45 +3172,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </tr> - </table> - <table class="bz_buglist" cellspacing="0" cellpadding="4" width="100%"> - <colgroup> - <col class="bz_id_column"> - <col class="bz_severity_column"> - <col class="bz_priority_column"> - <col class="bz_platform_column"> - <col class="bz_owner_column"> - <col class="bz_status_column"> - <col class="bz_resolution_column"> - <col class="bz_summary_column"> - </colgroup> - - <tr align="left"> - <th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_id">ID</a> - </th> - -<th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_severity,bugs.bug_id">Sev</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.priority,bugs.bug_id">Pri</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.rep_platform,bugs.bug_id">Plt</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=map_assigned_to.login_name,bugs.bug_id">Owner</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_status,bugs.bug_id">State</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.resolution,bugs.bug_id">Result</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.short_desc,bugs.bug_id">Summary</a> - </th> - - - </tr> <tr class="bz_enhancement bz_P2 "> @@ -4304,7 +4168,7 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>Neo</nobr> </td> - <td><nobr>mickey@vanille-media.de</nobr> + <td><nobr>stefan@openmoko.org</nobr> </td> <td><nobr>NEW</nobr> </td> @@ -4698,9 +4562,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>sunzhiyong@fic-sh.com.cn</nobr> </td> - <td><nobr>ASSI</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>mainmenu crashes when clicking wheel the 2nd time </td> @@ -5723,6 +5587,34 @@ all_bugs = """<!-- 1.0@bugzilla.org --> <tr class="bz_enhancement bz_P2 "> <td> + <a href="show_bug.cgi?id=191">191</a> + </td> + + <td><nobr>enh</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>investigate if we can set CPU voltage to 1.8V on 200MHz o... + </td> + + </tr> + + + + + + + <tr class="bz_enhancement bz_P2 "> + + <td> <a href="show_bug.cgi?id=192">192</a> </td> @@ -5748,6 +5640,34 @@ all_bugs = """<!-- 1.0@bugzilla.org --> + <tr class="bz_enhancement bz_P3 "> + + <td> + <a href="show_bug.cgi?id=193">193</a> + </td> + + <td><nobr>enh</nobr> + </td> + <td><nobr>P3</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Information about current charging status when AC is online + </td> + + </tr> + + + + + + <tr class="bz_minor bz_P2 "> <td> @@ -5760,7 +5680,7 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>Neo</nobr> </td> - <td><nobr>laforge@openmoko.org</nobr> + <td><nobr>stefan@openmoko.org</nobr> </td> <td><nobr>NEW</nobr> </td> @@ -5940,9 +5860,45 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </tr> + </table> + <table class="bz_buglist" cellspacing="0" cellpadding="4" width="100%"> + <colgroup> + <col class="bz_id_column"> + <col class="bz_severity_column"> + <col class="bz_priority_column"> + <col class="bz_platform_column"> + <col class="bz_owner_column"> + <col class="bz_status_column"> + <col class="bz_resolution_column"> + <col class="bz_summary_column"> + </colgroup> + + <tr align="left"> + <th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_id">ID</a> + </th> + +<th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_severity,bugs.bug_id">Sev</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.priority,bugs.bug_id">Pri</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.rep_platform,bugs.bug_id">Plt</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=map_assigned_to.login_name,bugs.bug_id">Owner</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.bug_status,bugs.bug_id">State</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.resolution,bugs.bug_id">Result</a> + </th><th colspan="1"> + <a href="buglist.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=&order=bugs.short_desc,bugs.bug_id">Summary</a> + </th> + + + </tr> <tr class="bz_normal bz_P2 "> @@ -6000,6 +5956,62 @@ all_bugs = """<!-- 1.0@bugzilla.org --> + <tr class="bz_major bz_P2 "> + + <td> + <a href="show_bug.cgi?id=203">203</a> + </td> + + <td><nobr>maj</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>All</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>fix the web site: http://openmoko.com/ + </td> + + </tr> + + + + + + + <tr class="bz_minor bz_P2 "> + + <td> + <a href="show_bug.cgi?id=204">204</a> + </td> + + <td><nobr>min</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>All</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Fatal error in Special:Newimages + </td> + + </tr> + + + + + + <tr class="bz_minor bz_P2 "> <td> @@ -6108,45 +6120,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </tr> - </table> - <table class="bz_buglist" cellspacing="0" cellpadding="4" width="100%"> - <colgroup> - <col class="bz_id_column"> - <col class="bz_severity_column"> - <col class="bz_priority_column"> - <col class="bz_platform_column"> - <col class="bz_owner_column"> - <col class="bz_status_column"> - <col class="bz_resolution_column"> - <col class="bz_summary_column"> - </colgroup> - - <tr align="left"> - <th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_id">ID</a> - </th> - -<th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_severity,bugs.bug_id">Sev</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.priority,bugs.bug_id">Pri</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.rep_platform,bugs.bug_id">Plt</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=map_assigned_to.login_name,bugs.bug_id">Owner</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_status,bugs.bug_id">State</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.resolution,bugs.bug_id">Result</a> - </th><th colspan="1"> - <a href="buglist.cgi?product=OpenMoko&order=bugs.short_desc,bugs.bug_id">Summary</a> - </th> - - - </tr> <tr class="bz_normal bz_P2 "> @@ -6235,6 +6211,34 @@ all_bugs = """<!-- 1.0@bugzilla.org --> <tr class="bz_normal bz_P2 "> <td> + <a href="show_bug.cgi?id=212">212</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Oth</nobr> + </td> + <td><nobr>werner@openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Charging seems completely broken + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> <a href="show_bug.cgi?id=213">213</a> </td> @@ -6302,9 +6306,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>mickey@vanille-media.de</nobr> </td> - <td><nobr>NEW</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>fingerwheel crashes mainmenu when touching the black part </td> @@ -6694,9 +6698,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>davewu01@seed.net.tw</nobr> </td> - <td><nobr>ASSI</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>outgoing call/incoming call/talking status should be more... </td> @@ -6764,6 +6768,34 @@ all_bugs = """<!-- 1.0@bugzilla.org --> + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=232">232</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Oth</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>n-plicate buglog mails + </td> + + </tr> + + + + + + <tr class="bz_critical bz_P2 "> <td> @@ -6778,9 +6810,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>werner@openmoko.org</nobr> </td> - <td><nobr>NEW</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>power-off timer should be halted in DFU mode </td> @@ -6832,11 +6864,11 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>PC</nobr> </td> - <td><nobr>mickey@vanille-media.de</nobr> + <td><nobr>laforge@openmoko.org</nobr> </td> - <td><nobr>NEW</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>Deploy openocd-native, not openocd, and make openocd-nati... </td> @@ -6890,9 +6922,9 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>mickey@vanille-media.de</nobr> </td> - <td><nobr>NEW</nobr> + <td><nobr>RESO</nobr> </td> - <td><nobr></nobr> + <td><nobr>FIXE</nobr> </td> <td>Fix remaining https urls in bitbake recipes. </td> @@ -6918,208 +6950,1254 @@ all_bugs = """<!-- 1.0@bugzilla.org --> </td> <td><nobr>mickey@vanille-media.de</nobr> </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>LATE</nobr> + </td> + <td>manual test bug + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=239">239</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>LATE</nobr> + </td> + <td>foo + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=240">240</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>INVA</nobr> + </td> + <td>broken-1.0-r0-do_fetch + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=241">241</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>CLOS</nobr> + </td> + <td><nobr>LATE</nobr> + </td> + <td>broken-1.0-r0-do_fetch + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=242">242</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>INVA</nobr> + </td> + <td>broken-1.0-r0-do_compile + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=243">243</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>INVA</nobr> + </td> + <td>broken-1.0-r0-do_configure + </td> + + </tr> + + + + + + + <tr class="bz_major bz_P2 "> + + <td> + <a href="show_bug.cgi?id=244">244</a> + </td> + + <td><nobr>maj</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> <td><nobr>NEW</nobr> </td> <td><nobr></nobr> </td> - <td>manual test bug + <td>I can't build Xorg7.1 from MokoMakefile </td> </tr> - </table> + + <tr class="bz_normal bz_P2 "> -228 bugs found. + <td> + <a href="show_bug.cgi?id=245">245</a> + </td> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>laforge@openmoko.org</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>Neo crashes when writing large amounts of data to SD + </td> -<br> + </tr> + + + <tr class="bz_normal bz_P2 "> + <td> + <a href="show_bug.cgi?id=246">246</a> + </td> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Debug board needs to be recognized by mainline linux kernel. + </td> + </tr> + + + <tr class="bz_major bz_P2 "> - <form method="post" action="long_list.cgi"> - <input type="hidden" name="buglist" value="1,2,4,5,7,8,9,10,11,12,13,14,15,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,192,194,195,196,197,198,199,200,201,202,205,206,207,208,209,210,211,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,233,234,235,236,237,238"> - <input type="submit" value="Long Format"> + <td> + <a href="show_bug.cgi?id=247">247</a> + </td> - <a href="query.cgi">Query Page</a> - <a href="enter_bug.cgi">Enter New Bug</a> - <a href="colchange.cgi?product=OpenMoko">Change Columns</a> + <td><nobr>maj</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>thomas@openedhand.com</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>openmoko-dates svn rev. 335 does no longer build + </td> - <a href="buglist.cgi?product=OpenMoko&order=bugs.bug_id&tweak=1">Change Several - Bugs at Once</a> - + </tr> - <a href="mailto:stefan@openmoko.org,sean_mosko@fic.com.tw,songcw@fic-sh.com.cn,buglog@lists.openmoko.org,henryk@ploetzli.ch,davewu01@seed.net.tw,thomas@openedhand.com,ken_zhao@fic-sh.com.cn,gordon_hsu@fic-sh.com.cn,teddy@fic-sh.com.cn,marcel@holtmann.org,cj_steven@fic-sh.com.cn,mickey@vanille-media.de,laforge@openmoko.org,tonyguan@fic-sh.com.cn,sean_chiang@fic.com.tw,werner@openmoko.org,sunzhiyong@fic-sh.com.cn,graeme.gregory@wolfsonmicro.com">Send Mail to Bug Owners</a> + - <a href="query.cgi?product=OpenMoko">Edit this Query</a> - </form> + + <tr class="bz_normal bz_P2 "> + <td> + <a href="show_bug.cgi?id=248">248</a> + </td> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Buttons disappear under zoom + </td> + </tr> + -<!-- 1.0@bugzilla.org --> + + + <tr class="bz_enhancement bz_P2 "> + + <td> + <a href="show_bug.cgi?id=249">249</a> + </td> + + <td><nobr>enh</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>All</nobr> + </td> + <td><nobr>laforge@openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>add command to print gsmd version number + </td> + </tr> + -</div> -<div class="footer"> - <div class="group">This is <b>Bugzilla</b>: the Mozilla bug system. For more information about what Bugzilla is and what it can do, see <a href="http://www.bugzilla.org/">bugzilla.org</a>.</div> - <!-- 1.0@bugzilla.org --> + <tr class="bz_normal bz_P2 "> + <td> + <a href="show_bug.cgi?id=250">250</a> + </td> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>INVA</nobr> + </td> + <td>broken-1.0-r0-do_compile + </td> + </tr> + -<form method="get" action="show_bug.cgi"> - <div class="group"> - <a href="enter_bug.cgi">New</a> | <a href="query.cgi">Query</a> | <input type="submit" value="Find"> bug # <input name="id" size="6"> | <a href="reports.cgi">Reports</a> | <a href="votes.cgi?action=show_user">My Votes</a> - </div> - - <div class="group"> - Edit <a href="userprefs.cgi">prefs</a> - | <a href="relogin.cgi">Log out</a> freyther@yahoo.com - </div> + - - - - <div class="group"> - Preset Queries: + <tr class="bz_normal bz_P2 "> - <a href="buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=freyther%40yahoo.com&emailtype1=exact&emailassigned_to1=1&emailreporter1=1">My Bugs</a> + <td> + <a href="show_bug.cgi?id=251">251</a> + </td> - </div> -</form> -</div> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>INVA</nobr> + </td> + <td>broken-1.0-r0-do_compile + </td> -</body> -</html> -""" + </tr> -no_bugs = """<!-- 1.0@bugzilla.org --> + + + <tr class="bz_normal bz_P2 "> + <td> + <a href="show_bug.cgi?id=252">252</a> + </td> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>REOP</nobr> + </td> + <td><nobr></nobr> + </td> + <td>openmoko-devel-image-1.0-r0-do_rootfs + </td> + </tr> + + + <tr class="bz_normal bz_P2 "> -<!-- 1.0@bugzilla.org --> + <td> + <a href="show_bug.cgi?id=253">253</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Mount /tmp as tmpfs + </td> + </tr> + -<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> -<html> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> - <title>Bug List</title> + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=254">254</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Oth</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>bug with "patch" on arklinux 2006.1?? + </td> + + </tr> - - - - <link href="/style/style.css" rel="stylesheet" type="text/css" /> - - <link href="/bugzilla/css/buglist.css" rel="stylesheet" type="text/css"> - </head> + + + <tr class="bz_normal bz_P2 "> - <body bgcolor="#FFFFFF" onload=""> + <td> + <a href="show_bug.cgi?id=255">255</a> + </td> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>tony_tu@fiwin.com.tw</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>battery voltage scale is not correct + </td> -<!-- 1.0@bugzilla.org --> + </tr> + + - <div id="header"> - <a href="http://bugzilla.openmoko.org/cgi-bin/bugzilla/" id="site_logo"><img src="/style/images/openmoko_logo.png" alt="openmoko.org" /></a> - - <div id="main_navigation"> - <ul> - <li><a href="http://www.openmoko.org/" class="nav_home"><span>Home</span></a></li> - <li><a href="http://wiki.openmoko.org/" class="nav_wiki"><span>Wiki</span></a></li> - <li><a href="http://bugzilla.openmoko.org/" class="nav_bugzilla selected"><span>Bugzilla</span></a></li> - <li><a href="http://planet.openmoko.org/" class="nav_planet"><span>Planet</span></a></li> - <li><a href="http://projects.openmoko.org/" class="nav_projects"><span>Projects</span></a></li> - <li><a href="http://lists.openmoko.org/" class="nav_lists"><span>Lists</span></a></li> - </ul> - </div> - </div> + <tr class="bz_critical bz_P2 "> - <div class="page_title"> - <strong>Bug List</strong> - </div> - - <div class="container"> + <td> + <a href="show_bug.cgi?id=256">256</a> + </td> -<div align="center"> - <b>Tue Mar 6 20:13:26 CET 2007</b><br> + <td><nobr>cri</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>GSM Modem doesn't seem to work on some devices + </td> + </tr> - <a href="quips.cgi"><i>GOT THE MESSAGE OF no match -</i></a> + -</div> + -<hr> + <tr class="bz_normal bz_P2 "> + <td> + <a href="show_bug.cgi?id=257">257</a> + </td> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Oth</nobr> + </td> + <td><nobr>sean_chiang@fic.com.tw</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>AUX button sticking + </td> + </tr> + + + <tr class="bz_major bz_P2 "> + <td> + <a href="show_bug.cgi?id=258">258</a> + </td> + <td><nobr>maj</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>All</nobr> + </td> + <td><nobr>cj_steven@fic-sh.com.cn</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Main Menu needs to have Single Instance functionality + </td> + </tr> + + + <tr class="bz_normal bz_P2 "> + <td> + <a href="show_bug.cgi?id=259">259</a> + </td> + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>stefan@openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>implement 500mA charging in u-boot + </td> -<!-- 1.0@bugzilla.org --> + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=260">260</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>stefan@openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>implement 100mA charging in Linux + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=261">261</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>stefan@openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Implement 500mA charging using wall-outlet charger + </td> + + </tr> + + + + + + + <tr class="bz_enhancement bz_P2 "> + + <td> + <a href="show_bug.cgi?id=262">262</a> + </td> + + <td><nobr>enh</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>Indicate different charging mode in battery applet + </td> + + </tr> + + + + + + + <tr class="bz_blocker bz_P2 "> + + <td> + <a href="show_bug.cgi?id=263">263</a> + </td> + + <td><nobr>blo</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>laforge@openmoko.org</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>gsmd doesn't receive AT reply from the modem properly. + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=264">264</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>package libelf-0.8.6-r0: task do_populate_staging: failed + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=265">265</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>MokoMakefile: perl-native fix + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=266">266</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>ftdi-eeprom-native missing confuse-native dependency + </td> + + </tr> + + + + + + <tr class="bz_enhancement bz_P4 "> + + <td> + <a href="show_bug.cgi?id=267">267</a> + </td> + + <td><nobr>enh</nobr> + </td> + <td><nobr>P4</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>internal function duplicates strstr(3) + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=268">268</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>openmoko-today crashes when one of the buttons is pressed + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=269">269</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>openmoko-contacts-0.1+svnnow-r3_0_200703151745-do_unpack + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=270">270</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>does our xserver need security updates? + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=271">271</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>laforge@openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>It would be nice if ppp was supported by kernel + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=272">272</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>openmoko-contacts-0.1+svnnow-r3_0_200703152250-do_unpack + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=273">273</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>openmoko-contacts-0.1+svnnow-r3_0_200703160254-do_unpack + </td> + + </tr> + + - Zarro Boogs found. - <p> - <a href="query.cgi">Query Page</a> - <a href="enter_bug.cgi">Enter New Bug</a> - <a href="query.cgi?short_desc_type=substring&short_desc=foo+test+bug&product=OpenMoko&component=autobuilds">Edit this query</a> - </p> + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=274">274</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>openmoko-contacts-0.1+svnnow-r3_0_200703160321-do_unpack + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=275">275</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>openmoko-contacts-0.1+svnnow-r3_0_200703160350-do_unpack + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P3 "> + + <td> + <a href="show_bug.cgi?id=276">276</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P3</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>songcw@fic-sh.com.cn</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>The open file window is too ugly + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=277">277</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>openmoko-contacts-0.1+svnnow-r3_0_200703160712-do_unpack + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=278">278</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>mickey@vanille-media.de</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>openmoko-contacts-0.1+svnnow-r3_0_200703160805-do_unpack + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=279">279</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>RESO</nobr> + </td> + <td><nobr>FIXE</nobr> + </td> + <td>Appmanager crush when install packages + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=280">280</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>songcw@fic-sh.com.cn</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>openmoko-appmanager not refresh the packages list after r... + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P3 "> + + <td> + <a href="show_bug.cgi?id=281">281</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P3</nobr> + </td> + <td><nobr>PC</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>implicit declaration of function `strdup' + </td> + + </tr> + + + + + + + <tr class="bz_normal bz_P2 "> + + <td> + <a href="show_bug.cgi?id=282">282</a> + </td> + + <td><nobr>nor</nobr> + </td> + <td><nobr>P2</nobr> + </td> + <td><nobr>Neo</nobr> + </td> + <td><nobr>buglog@lists.openmoko.org</nobr> + </td> + <td><nobr>NEW</nobr> + </td> + <td><nobr></nobr> + </td> + <td>microSD Problem + </td> + + </tr> + + + </table> + + + + +282 bugs found. <br> @@ -7135,6 +8213,20 @@ no_bugs = """<!-- 1.0@bugzilla.org --> + <form method="post" action="long_list.cgi"> + <input type="hidden" name="buglist" value="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282"> + <input type="submit" value="Long Format"> + + <a href="query.cgi">Query Page</a> + <a href="enter_bug.cgi">Enter New Bug</a> + <a href="colchange.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=">Change Columns</a> + + + + <a href="query.cgi?short_desc_type=allwordssubstr&short_desc=&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&changedin=&chfieldfrom=&chfieldto=Now&chfieldvalue=&field0-0-0=noop&type0-0-0=noop&value0-0-0=">Edit this Query</a> + + </form> + @@ -7150,8 +8242,8 @@ no_bugs = """<!-- 1.0@bugzilla.org --> </div> <div class="footer"> - <div class="group">This is <b>Bugzilla</b>: the Mozilla bug system. For more information about what Bugzilla is and what it can do, see <a href="http://www.bugzilla.org/">bugzilla.org</a>.</div> - <!-- 1.0@bugzilla.org --> + <div class="group">This is <b>Bugzilla</b>: the Mozilla bug system. For more information about what Bugzilla is and what it can do, see <a href="http://www.bugzilla.org/">bugzilla.org</a>.</div> + <!-- 1.0@bugzilla.org --> @@ -7159,24 +8251,13 @@ no_bugs = """<!-- 1.0@bugzilla.org --> <form method="get" action="show_bug.cgi"> - <div class="group"> - <a href="enter_bug.cgi">New</a> | <a href="query.cgi">Query</a> | <input type="submit" value="Find"> bug # <input name="id" size="6"> | <a href="reports.cgi">Reports</a> | <a href="votes.cgi?action=show_user">My Votes</a> - </div> - - <div class="group"> - Edit <a href="userprefs.cgi">prefs</a> - | <a href="relogin.cgi">Log out</a> freyther@yahoo.com - </div> - - - - <div class="group"> - Preset Queries: - - <a href="buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&email1=freyther%40yahoo.com&emailtype1=exact&emailassigned_to1=1&emailreporter1=1">My Bugs</a> - + <a href="enter_bug.cgi">New</a> | <a href="query.cgi">Query</a> | <input type="submit" value="Find"> bug # <input name="id" size="6"> | <a href="reports.cgi">Reports</a> </div> + + <div> + <a href="createaccount.cgi">New Account</a> | <a href="query.cgi?GoAheadAndLogIn=1">Log In</a> + </div> </form> </div> @@ -7185,7 +8266,14 @@ no_bugs = """<!-- 1.0@bugzilla.org --> """ bugfinder =BugQueryExtractor() -#bugfinder.feed(site) -bugfinder.feed(all_bugs) -#bugfinder.feed(no_bugs) +bugfinder.feed(bugs_openmoko) print bugfinder.result() +print len(bugfinder.result()) + +seen_numbers = {} +for (number,_) in bugfinder.result(): + seen_numbers[number] = "Yes" + +for i in range(1,283): + if not seen_numbers.has_key(str(i)): + print "Not seen %d" % i diff --git a/packages/dfu-util/dfu-util-native_svn.bb b/packages/dfu-util/dfu-util-native_svn.bb index af6603ddd1..9bfe4bae2c 100644 --- a/packages/dfu-util/dfu-util-native_svn.bb +++ b/packages/dfu-util/dfu-util-native_svn.bb @@ -5,7 +5,8 @@ inherit native DEPENDS = "libusb-native" do_stage() { - install -m 0755 src/dfu-util ${STAGING_BINDIR_NATIVE} + install -d ${STAGING_BINDIR_NATIVE} + install -m 0755 src/dfu-util ${STAGING_BINDIR_NATIVE}/ } do_deploy() { diff --git a/packages/directfb/directfb_0.9.99+1.0.0rc3.bb b/packages/directfb/directfb_1.0.0.bb index 5bb6aa362e..2e5dcbd086 100644 --- a/packages/directfb/directfb_0.9.99+1.0.0rc3.bb +++ b/packages/directfb/directfb_1.0.0.bb @@ -10,24 +10,23 @@ DEPENDS = "jpeg libpng freetype zlib tslib" PR = "r1" RV = "1.0-0" -SRC_URI = "http://www.directfb.org/download/DirectFB/DirectFB-1.0.0-rc3.tar.gz \ - file://fix-pkgconfig-specs.patch;patch=1 \ +SRC_URI = "http://www.directfb.org/download/DirectFB/DirectFB-${PV}.tar.gz \ + file://fix-pkgconfig-cflags.patch;patch=1 \ file://mkdfiff.patch;patch=1" -S = "${WORKDIR}/DirectFB-1.0.0-rc3" +S = "${WORKDIR}/DirectFB-1.0.0" LDFLAGS_append =" -lts -lm" inherit autotools pkgconfig -EXTRA_OECONF = "--with-gfxdrivers=none --enable-libmpeg3=no --enable-freetype=yes --enable-sdl=no" -PARALLEL_MAKE = "" +EXTRA_OECONF = "--with-gfxdrivers=none \ + --enable-libmpeg3=no \ + --enable-freetype=yes \ + --enable-sdl=no \ + " do_stage() { - autotools_stage_all -} - -do_install() { oe_runmake 'DESTDIR=${D}' install } @@ -45,5 +44,5 @@ FILES_directfb_append = " ${libdir}/directfb-${RV}/systems/*.so \ ${libdir}/directfb-${RV}/inputdrivers/*.so \ ${libdir}/directfb-${RV}/interfaces/*/*.so \ ${libdir}/directfb-${RV}/wm/*.so \ - ${datadir}/directfb-1.0.0-rc3 \ + ${datadir}/directfb-1.0.0 \ " diff --git a/packages/directfb/files/fix-pkgconfig-specs.patch b/packages/directfb/files/fix-pkgconfig-specs.patch index 401d7fa443..0273b58ec5 100644 --- a/packages/directfb/files/fix-pkgconfig-specs.patch +++ b/packages/directfb/files/fix-pkgconfig-specs.patch @@ -1,13 +1,45 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- DirectFB-0.9.25.1/directfb.pc.in~fix-pkgconfig-specs 2005-10-19 01:14:04.000000000 +0200 -+++ DirectFB-0.9.25.1/directfb.pc.in 2006-05-20 01:02:37.000000000 +0200 +diff -ur DirectFB-1.0.0~org/directfb-internal.pc.in DirectFB-1.0.0/directfb-internal.pc.in +--- DirectFB-1.0.0~org/directfb-internal.pc.in 2003-07-04 13:30:22.000000000 -0400 ++++ DirectFB-1.0.0/directfb-internal.pc.in 2007-03-16 22:34:17.000000000 -0400 +@@ -8,4 +8,4 @@ + Description: Third party module support package for DirectFB. + Version: @VERSION@ + Requires: directfb = @VERSION@ +-Cflags: @DFB_INTERNAL_CFLAGS@ -I@INTERNALINCLUDEDIR@ ++Cflags: @DFB_INTERNAL_CFLAGS@ -I${includedir} +diff -ur DirectFB-1.0.0~org/directfb.pc.in DirectFB-1.0.0/directfb.pc.in +--- DirectFB-1.0.0~org/directfb.pc.in 2004-08-04 12:28:20.000000000 -0400 ++++ DirectFB-1.0.0/directfb.pc.in 2007-03-16 22:31:33.000000000 -0400 @@ -8,4 +8,4 @@ Version: @VERSION@ Requires: fusion direct Libs: -L${libdir} -ldirectfb @THREADLIB@ @DYNLIB@ @ZLIB_LIBS@ @OSX_LIBS@ -Cflags: @THREADFLAGS@ -I@INCLUDEDIR@ -+Cflags: @THREADFLAGS@ -I${includedir}/directfb ++Cflags: @THREADFLAGS@ -I${includedir} +diff -ur DirectFB-1.0.0~org/lib/direct/direct.pc.in DirectFB-1.0.0/lib/direct/direct.pc.in +--- DirectFB-1.0.0~org/lib/direct/direct.pc.in 2005-11-23 09:18:59.000000000 -0500 ++++ DirectFB-1.0.0/lib/direct/direct.pc.in 2007-03-16 22:32:13.000000000 -0400 +@@ -7,4 +7,4 @@ + Description: DirectFB base development library + Version: @VERSION@ + Libs: -L${libdir} -ldirect @THREADLIB@ @DYNLIB@ +-Cflags: @THREADFLAGS@ -I@INCLUDEDIR@ ++Cflags: @THREADFLAGS@ -I${includedir} +diff -ur DirectFB-1.0.0~org/lib/fusion/fusion.pc.in DirectFB-1.0.0/lib/fusion/fusion.pc.in +--- DirectFB-1.0.0~org/lib/fusion/fusion.pc.in 2004-05-19 07:30:56.000000000 -0400 ++++ DirectFB-1.0.0/lib/fusion/fusion.pc.in 2007-03-16 22:32:34.000000000 -0400 +@@ -8,4 +8,4 @@ + Version: @VERSION@ + Requires: direct + Libs: -L${libdir} -lfusion +-Cflags: -I@INCLUDEDIR@ ++Cflags: -I${includedir} +diff -ur DirectFB-1.0.0~org/lib/voodoo/voodoo.pc.in DirectFB-1.0.0/lib/voodoo/voodoo.pc.in +--- DirectFB-1.0.0~org/lib/voodoo/voodoo.pc.in 2004-05-19 07:31:28.000000000 -0400 ++++ DirectFB-1.0.0/lib/voodoo/voodoo.pc.in 2007-03-16 22:32:55.000000000 -0400 +@@ -8,4 +8,4 @@ + Version: @VERSION@ + Requires: direct + Libs: -L${libdir} -lvoodoo +-Cflags: -I@INCLUDEDIR@ ++Cflags: -I${includedir} diff --git a/packages/fis/fis_1.0.bb b/packages/fis/fis_1.0.bb index 404955cb75..ea4c0af6c8 100644 --- a/packages/fis/fis_1.0.bb +++ b/packages/fis/fis_1.0.bb @@ -1,4 +1,6 @@ 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" @@ -6,8 +8,11 @@ SRC_URI = "http://svn.chezphil.org/utils/trunk/fis.cc \ 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 +} + +do_install() { ${STRIP} ${WORKDIR}/fis-${PV}/fis -# ${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 -# ${STRIP} ${WORKDIR}/fis-${PV}/fis-static -}
\ No newline at end of file + + install -d ${D}/${sbindir} + install -m 755 ${WORKDIR}/fis-${PV}/fis ${D}/${sbindir} +} diff --git a/packages/gnome/goffice_0.2.1.bb b/packages/gnome/goffice_0.2.1.bb index 59372fa5ec..2048cdd34d 100644 --- a/packages/gnome/goffice_0.2.1.bb +++ b/packages/gnome/goffice_0.2.1.bb @@ -1,9 +1,11 @@ DESCRIPTION="Gnome Office Library" LICENSE="GPLv2" -PR="r0" +PR="r1" DEPENDS="glib-2.0 gtk+ pango libgnomeprint libgsf libglade libxml2 libart-lgpl" +FILES_${PN}-dbg += "${libdir}/goffice/${PV}/plugins/*/.debug" + inherit gnome pkgconfig do_stage() { diff --git a/packages/gnome/goffice_0.3.2.bb b/packages/gnome/goffice_0.3.2.bb index 59503a7b43..a81f96910c 100644 --- a/packages/gnome/goffice_0.3.2.bb +++ b/packages/gnome/goffice_0.3.2.bb @@ -1,12 +1,12 @@ DESCRIPTION="Gnome Office Library" LICENSE="GPLv2" -PR="r0" +PR="r1" DEFAULT_PREFERENCE = "-1" DEPENDS="glib-2.0 gtk+ pango cairo libgnomeprint libgsf libglade libxml2 libart-lgpl" -FILES_${PN}-dbg += "${libdir}/goffice/0.2.1/plugins/*/.debug" +FILES_${PN}-dbg += "${libdir}/goffice/${PV}/plugins/*/.debug" inherit gnome pkgconfig diff --git a/packages/gspcav1/.mtn2git_empty b/packages/gspcav1/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/gspcav1/.mtn2git_empty diff --git a/packages/gspcav1/gspcav1-20070110/.mtn2git_empty b/packages/gspcav1/gspcav1-20070110/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/gspcav1/gspcav1-20070110/.mtn2git_empty diff --git a/packages/gspcav1/gspcav1-20070110/MS.patch b/packages/gspcav1/gspcav1-20070110/MS.patch new file mode 100644 index 0000000000..588a4bc3da --- /dev/null +++ b/packages/gspcav1/gspcav1-20070110/MS.patch @@ -0,0 +1,29 @@ +--- gspcav1-20070110/gspca_core.c.orig 2007-03-16 23:24:37.000000000 +0000 ++++ gspcav1-20070110/gspca_core.c 2007-03-16 23:24:43.000000000 +0000 +@@ -398,7 +398,7 @@ + Sonyc002, + Vimicro0321, + Orbicam, +- M$VX1000, ++ MSVX1000, + Trust610LCDPowerCamZoom, + Sonyc001, + LastCamera +@@ -580,7 +580,7 @@ + {Sonyc002,"Vc0321"}, + {Vimicro0321,"Vc0321"}, + {Orbicam,"Logitech Orbicam"}, +- {M$VX1000,"MicroSoft VX1000"}, ++ {MSVX1000,"MicroSoft VX1000"}, + {Trust610LCDPowerCamZoom, "Trust 610 LCD PowerC@m Zoom"}, + {Sonyc001,"Sony Visual Communication VGP-VCC1"}, + {-1, NULL} +@@ -3124,7 +3124,7 @@ + case 0x045e: + switch(product){ + case 0x00f7: +- spca50x->desc = M$VX1000; ++ spca50x->desc = MSVX1000; + spca50x->bridge = BRIDGE_SN9CXXX; + spca50x->sensor = SENSOR_OV7660; + spca50x->customid = SN9C105; diff --git a/packages/gspcav1/gspcav1-20070110/Makefile.patch b/packages/gspcav1/gspcav1-20070110/Makefile.patch new file mode 100644 index 0000000000..87262686cb --- /dev/null +++ b/packages/gspcav1/gspcav1-20070110/Makefile.patch @@ -0,0 +1,11 @@ +--- gspcav1-20070110/Makefile.orig 2007-03-16 23:20:18.000000000 +0000 ++++ gspcav1-20070110/Makefile 2007-03-16 23:20:44.000000000 +0000 +@@ -41,7 +41,7 @@ + MODULE_INSTALLDIR2 = /lib/modules/$(KERNEL_VERSION)/kernel/drivers/media/video/ + + default: +- $(MAKE) -C $(KERNELDIR) SUBDIRS=$(PWD) CC=$(CC) modules ++ $(MAKE) -C $(KERNELDIR) SUBDIRS=$(PWD) CC="$(CC)" modules + + install: + mkdir -p $(MODULE_INSTALLDIR) diff --git a/packages/gspcav1/gspcav1_20070110.bb b/packages/gspcav1/gspcav1_20070110.bb new file mode 100644 index 0000000000..86cb1010df --- /dev/null +++ b/packages/gspcav1/gspcav1_20070110.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "USB Webcam driver for spca5xx chipset family supporting \ +over 100 models of camera" +PRIORITY = "optional" +SECTION = "kernel/modules" +LICENSE = "GPL" + +SRC_URI = "http://mxhaard.free.fr/spca50x/Download/${PN}-${PV}.tar.gz \ + file://Makefile.patch;patch=1 \ + file://MS.patch;patch=1" + +S = "${WORKDIR}/${PN}-${PV}" + +inherit module + +do_compile () { + unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS + oe_runmake 'KERNELDIR=${STAGING_KERNEL_DIR}' \ + 'CC=${KERNEL_CC}' \ + 'LD=${KERNEL_LD}' +} + +do_install() { + install -d ${D}${base_libdir}/modules/${KERNEL_VERSION}/kernel/drivers/usb/media + install -m 0644 *${KERNEL_OBJECT_SUFFIX} ${D}${base_libdir}/modules/${KERNEL_VERSION}/kernel/drivers/usb/media +} diff --git a/packages/gtk+/gtk+-1.2_1.2.10.bb b/packages/gtk+/gtk+-1.2_1.2.10.bb index 8025beb75c..b3d0a61bad 100644 --- a/packages/gtk+/gtk+-1.2_1.2.10.bb +++ b/packages/gtk+/gtk+-1.2_1.2.10.bb @@ -4,7 +4,7 @@ HOMEPAGE = "http://www.gtk.org" SECTION = "libs" PRIORITY = "optional" DEPENDS = "glib-1.2 jpeg libpng libxext" -PR = "r2" +PR = "r3" SRC_URI = "ftp://ftp.gtk.org/pub/gtk/v1.2/gtk+-${PV}.tar.gz \ file://timezone-fix.patch;patch=1 \ @@ -48,7 +48,7 @@ do_stage () { mkdir -p ${STAGING_LIBDIR}/gtk-1.2/include install -m 0644 gtk.m4 ${STAGING_DATADIR}/aclocal/ - install -m 0755 gtk-config ${STAGING_BINDIR_CROSS} + install -m 0755 gtk-config ${STAGING_BINDIR_CROSS}/ } do_install_append () { diff --git a/packages/images/foonas-image.bb b/packages/images/foonas-image.bb index 23059d9bca..3d2c621438 100644 --- a/packages/images/foonas-image.bb +++ b/packages/images/foonas-image.bb @@ -2,48 +2,21 @@ DESCRIPTION = "Foonas image" LICENSE = "GPL" PR = "r0" -DEPENDS = "${MACHINE_TASK_PROVIDER}" -EXTRA_IMAGECMD_turbostation = "--big-endian" -EXTRA_IMAGECMD_n2100 = "--little-endian" -EXTRA_IMAGECMD_jffs2 += " --eraseblock=${ERASEBLOCK_SIZE} -D ${SLUGOS_DEVICE_TABLE}" -IMAGE_LINGUAS = "" +inherit image -# This is passed to the image command to build the correct /dev -# directory (because only the image program can make actual -# dev entries!) -SLUGOS_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-slugos.txt')}" +DEPENDS = "${MACHINE_TASK_PROVIDER} makedevs-native mtd-utils-native" +DEPENDS_n2100 += "openssl-native" -# IMAGE_PREPROCESS_COMMAND is run before making the image. -# We use this to do a few things: -# . remove the uImage, which is in a separate part of the flash already. -# . adjust the default run level (sysvinit is 5 by default, we like 3) -# . set a default root password, which is no more secure than a blank one -# (since it is documented, in case you were wondering) -# . make the boot more verbose -# -IMAGE_PREPROCESS_COMMAND += "sed -i -es,^id:5:initdefault:,id:3:initdefault:, ${IMAGE_ROOTFS}/etc/inittab;" -IMAGE_PREPROCESS_COMMAND += "sed -i -es,^root::0,root:BTMzOOAQfESg6:0, ${IMAGE_ROOTFS}/etc/passwd;" -IMAGE_PREPROCESS_COMMAND += "sed -i -es,^VERBOSE=no,VERBOSE=very, ${IMAGE_ROOTFS}/etc/default/rcS;" -# Always just make a new flash image. -PACK_IMAGE = '${MACHINE}_pack_image;' IMAGE_POSTPROCESS_COMMAND += "${PACK_IMAGE}" PACK_IMAGE_DEPENDS = "" -#EXTRA_IMAGEDEPENDS += "${PACK_IMAGE_DEPENDS}" - -# These depends define native utilities - they do not get put in the flash and -# are not required to build the image. -IMAGE_TOOLS = "" -#EXTRA_IMAGEDEPENDS += "${IMAGE_TOOLS}" - -FOONAS_SUPPORT += "diffutils cpio findutils udev" -FOONAS_SUPPORT_turbostation += "uboot-utils" - -# this gets /lib/modules made.... -FOONAS_KERNEL_turbostation = "kernel-module-ext3 kernel-module-minix \ - kernel-module-usb-storage" - -FOONAS_KERNEL_n2100 = "kernel-module-ext2 kernel-module-usb-storage" +PACK_IMAGE = '${MACHINE}_pack_image;' +IMAGE_PREPROCESS_COMMAND += "sed -i -es,^id:5:initdefault:,id:3:initdefault:, ${IMAGE_ROOTFS}/etc/inittab;" +IMAGE_PREPROCESS_COMMAND += "sed -i -es,^root::0,root:BTMzOOAQfESg6:0, ${IMAGE_ROOTFS}/etc/passwd;" +IMAGE_PREPROCESS_COMMAND += "sed -i -es,^VERBOSE=no,VERBOSE=very, ${IMAGE_ROOTFS}/etc/default/rcS;" +FOONAS_DEVICE_TABLE = "${@bb.which(bb.data.getVar('BBPATH', d, 1), 'files/device_table-slugos.txt')}" +EXTRA_IMAGECMD_jffs2 += " --eraseblock=${ERASEBLOCK_SIZE} -D ${FOONAS_DEVICE_TABLE}" +IMAGE_LINGUAS = "" RDEPENDS = " \ base-files base-passwd netbase \ @@ -51,7 +24,7 @@ RDEPENDS = " \ update-modules sysvinit tinylogin \ module-init-tools-depmod modutils-initscripts \ ipkg-collateral ipkg ipkg-link \ - libgcc1 \ + libgcc1 diffutils cpio findutils\ portmap \ dropbear \ e2fsprogs-blkid \ @@ -64,8 +37,6 @@ RDEPENDS = " \ PACKAGE_INSTALL = "${RDEPENDS}" -inherit image - # At this point you have to make a ${MACHINE}_pack_image for your machine. turbostation_pack_image() { diff --git a/packages/iproute2/iproute2-2.6.20/.mtn2git_empty b/packages/iproute2/iproute2-2.6.20/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/iproute2/iproute2-2.6.20/.mtn2git_empty diff --git a/packages/iproute2/iproute2-2.6.20/ip6tunnel.patch b/packages/iproute2/iproute2-2.6.20/ip6tunnel.patch new file mode 100644 index 0000000000..371de01c16 --- /dev/null +++ b/packages/iproute2/iproute2-2.6.20/ip6tunnel.patch @@ -0,0 +1,10 @@ +--- iproute-2.6.20-070313/ip/ip6tunnel.c 2007/03/17 03:44:27 1.1 ++++ iproute-2.6.20-070313/ip/ip6tunnel.c 2007/03/17 03:43:14 +@@ -33,6 +33,7 @@ + #include <sys/socket.h> + #include <arpa/inet.h> + #include <sys/ioctl.h> ++#include <linux/types.h> + #include <linux/ip.h> + #include <linux/if.h> + #include <linux/if_arp.h> diff --git a/packages/iproute2/iproute2-2.6.20/man-pages-fix.patch b/packages/iproute2/iproute2-2.6.20/man-pages-fix.patch new file mode 100644 index 0000000000..924d0ed4dc --- /dev/null +++ b/packages/iproute2/iproute2-2.6.20/man-pages-fix.patch @@ -0,0 +1,13 @@ +--- iproute-2.6.20-070313/Makefile 2007/03/17 04:24:45 1.1 ++++ iproute-2.6.20-070313/Makefile 2007/03/17 04:27:39 +@@ -52,8 +52,8 @@ + install -m 0644 $(shell find etc/iproute2 -maxdepth 1 -type f) $(DESTDIR)$(CONFDIR) + install -m 0755 -d $(DESTDIR)$(MANDIR)/man8 + install -m 0644 $(shell find man/man8 -maxdepth 1 -type f) $(DESTDIR)$(MANDIR)/man8 +- ln -sf tc-pbfifo.8 $(DESTDIR)$(MANDIR)/man8/tc-bfifo.8 +- ln -sf tc-pbfifo.8 $(DESTDIR)$(MANDIR)/man8/tc-pfifo.8 ++ ln -sf tc-bfifo.8 $(DESTDIR)$(MANDIR)/man8/tc-pfifo.8 ++ ln -sf tc-bfifo.8 $(DESTDIR)$(MANDIR)/man8/tc-pbfifo.8 + install -m 0755 -d $(DESTDIR)$(MANDIR)/man3 + install -m 0644 $(shell find man/man3 -maxdepth 1 -type f) $(DESTDIR)$(MANDIR)/man3 + diff --git a/packages/iproute2/iproute2-2.6.20/new-flex-fix.patch b/packages/iproute2/iproute2-2.6.20/new-flex-fix.patch new file mode 100644 index 0000000000..af7272163e --- /dev/null +++ b/packages/iproute2/iproute2-2.6.20/new-flex-fix.patch @@ -0,0 +1,83 @@ +The tc command was failing to build due to flex errors. These errors are +caused by an incompatible change to flex in recent versions, including the +version shipped with OE. + +This fix is as per the one used by opensure: + + http://lists.opensuse.org/opensuse-commit/2006-04/msg00090.html + +and simple renames str to prevent it conflicting. + +--- iproute-2.6.20-070313/tc/emp_ematch.l 2007/03/17 02:52:20 1.1 ++++ iproute-2.6.20-070313/tc/emp_ematch.l 2007/03/17 02:54:01 +@@ -63,7 +63,7 @@ + + %} + +-%x str ++%x STR + + %option 8bit stack warn noyywrap prefix="ematch_" + %% +@@ -78,17 +78,17 @@ + } + strbuf_index = 0; + +- BEGIN(str); ++ BEGIN(STR); + } + +-<str>\" { ++<STR>\" { + BEGIN(INITIAL); + yylval.b = bstr_new(strbuf, strbuf_index); + yylval.b->quoted = 1; + return ATTRIBUTE; + } + +-<str>\\[0-7]{1,3} { /* octal escape sequence */ ++<STR>\\[0-7]{1,3} { /* octal escape sequence */ + int res; + + sscanf(yytext + 1, "%o", &res); +@@ -100,12 +100,12 @@ + strbuf_append_char((unsigned char) res); + } + +-<str>\\[0-9]+ { /* catch wrong octal escape seq. */ ++<STR>\\[0-9]+ { /* catch wrong octal escape seq. */ + fprintf(stderr, "error: invalid octale escape sequence\n"); + return ERROR; + } + +-<str>\\x[0-9a-fA-F]{1,2} { ++<STR>\\x[0-9a-fA-F]{1,2} { + int res; + + sscanf(yytext + 2, "%x", &res); +@@ -118,16 +118,16 @@ + strbuf_append_char((unsigned char) res); + } + +-<str>\\n strbuf_append_char('\n'); +-<str>\\r strbuf_append_char('\r'); +-<str>\\t strbuf_append_char('\t'); +-<str>\\v strbuf_append_char('\v'); +-<str>\\b strbuf_append_char('\b'); +-<str>\\f strbuf_append_char('\f'); +-<str>\\a strbuf_append_char('\a'); ++<STR>\\n strbuf_append_char('\n'); ++<STR>\\r strbuf_append_char('\r'); ++<STR>\\t strbuf_append_char('\t'); ++<STR>\\v strbuf_append_char('\v'); ++<STR>\\b strbuf_append_char('\b'); ++<STR>\\f strbuf_append_char('\f'); ++<STR>\\a strbuf_append_char('\a'); + +-<str>\\(.|\n) strbuf_append_char(yytext[1]); +-<str>[^\\\n\"]+ strbuf_append_charp(yytext); ++<STR>\\(.|\n) strbuf_append_char(yytext[1]); ++<STR>[^\\\n\"]+ strbuf_append_charp(yytext); + + [aA][nN][dD] return AND; + [oO][rR] return OR; diff --git a/packages/iproute2/iproute2-2.6.20/no-strip.patch b/packages/iproute2/iproute2-2.6.20/no-strip.patch new file mode 100644 index 0000000000..6490dadb07 --- /dev/null +++ b/packages/iproute2/iproute2-2.6.20/no-strip.patch @@ -0,0 +1,36 @@ +--- iproute-2.6.20-070313/ip/Makefile 2007/03/17 05:17:30 1.1 ++++ iproute-2.6.20-070313/ip/Makefile 2007/03/17 05:17:37 +@@ -16,7 +16,7 @@ + rtmon: $(RTMONOBJ) $(LIBNETLINK) + + install: all +- install -m 0755 -s $(TARGETS) $(DESTDIR)$(SBINDIR) ++ install -m 0755 $(TARGETS) $(DESTDIR)$(SBINDIR) + install -m 0755 $(SCRIPTS) $(DESTDIR)$(SBINDIR) + + clean: +--- iproute-2.6.20-070313/misc/Makefile 2007/03/17 05:18:20 1.1 ++++ iproute-2.6.20-070313/misc/Makefile 2007/03/17 05:18:26 +@@ -27,7 +27,7 @@ + lnstat: $(LNSTATOBJ) + + install: all +- install -m 0755 -s $(TARGETS) $(DESTDIR)$(SBINDIR) ++ install -m 0755 $(TARGETS) $(DESTDIR)$(SBINDIR) + ln -sf lnstat $(DESTDIR)$(SBINDIR)/rtstat + ln -sf lnstat $(DESTDIR)$(SBINDIR)/ctstat + +--- iproute-2.6.20-070313/tc/Makefile 2007/03/17 05:17:42 1.1 ++++ iproute-2.6.20-070313/tc/Makefile 2007/03/17 05:17:54 +@@ -70,9 +70,9 @@ + + install: all + mkdir -p $(DESTDIR)/usr/lib/tc +- install -m 0755 -s tc $(DESTDIR)$(SBINDIR) ++ install -m 0755 tc $(DESTDIR)$(SBINDIR) + for i in $(TCSO); \ +- do install -m 755 -s $$i $(DESTDIR)/usr/lib/tc; \ ++ do install -m 755 $$i $(DESTDIR)/usr/lib/tc; \ + done + + clean: diff --git a/packages/iproute2/iproute2.inc b/packages/iproute2/iproute2.inc index 006b27b60f..e14bfdeefe 100644 --- a/packages/iproute2/iproute2.inc +++ b/packages/iproute2/iproute2.inc @@ -3,12 +3,20 @@ SECTION = "base" LICENSE = "GPL" DEPENDS = "flex-native bison-native" -# Set DATE in the .bb file +# This changed from iproute2 to iproute with version 2.6.20, so set to +# iproute in the recipe for 2.6.20 and newer versions. +DIRNAME ?= "${PN}" + +# Set the DATE in the .bb file SRC_URI = "http://developer.osdl.org/dev/iproute2/download/${P}-${DATE}.tar.gz" -S = "${WORKDIR}/${P}-${DATE}" +S = "${WORKDIR}/${DIRNAME}-${PV}-${DATE}" -EXTRA_OEMAKE = "CC='${CC}' KERNEL_INCLUDE=${STAGING_KERNEL_DIR}/include DOCDIR=${docdir}/iproute2 SUBDIRS='lib tc ip' SBINDIR=/sbin" +EXTRA_OEMAKE = "CC='${CC}' \ + KERNEL_INCLUDE=${STAGING_KERNEL_DIR}/include \ + DOCDIR=${docdir}/iproute2 \ + SUBDIRS='lib tc ip' \ + SBINDIR=/sbin" do_install () { oe_runmake DESTDIR=${D} install diff --git a/packages/iproute2/iproute2_2.6.16.bb b/packages/iproute2/iproute2_2.6.16.bb index ddd5ef71dd..fc87b9e3b5 100644 --- a/packages/iproute2/iproute2_2.6.16.bb +++ b/packages/iproute2/iproute2_2.6.16.bb @@ -1,7 +1,7 @@ -PR = "r1" +PR = "r2" -SRC_URI += "file://iproute2-2.6.15_no_strip.diff;patch=1;pnum=0 \ - file://new-flex-fix.patch;patch=1" +SRC_URI_append = " file://iproute2-2.6.15_no_strip.diff;patch=1;pnum=0 \ + file://new-flex-fix.patch;patch=1" require iproute2.inc diff --git a/packages/iproute2/iproute2_2.6.18.bb b/packages/iproute2/iproute2_2.6.18.bb index ee3ff29550..9d85126b68 100644 --- a/packages/iproute2/iproute2_2.6.18.bb +++ b/packages/iproute2/iproute2_2.6.18.bb @@ -1,7 +1,7 @@ -PR = "r0" +PR = "r1" -SRC_URI += "file://iproute2-2.6.15_no_strip.diff;patch=1;pnum=0 \ - file://new-flex-fix.patch;patch=1" +SRC_URI_append = " file://iproute2-2.6.15_no_strip.diff;patch=1;pnum=0 \ + file://new-flex-fix.patch;patch=1" require iproute2.inc diff --git a/packages/libftdi/ftdi-eeprom-native_0.2.bb b/packages/libftdi/ftdi-eeprom-native_0.2.bb index 1b48bd08f7..56613969d9 100644 --- a/packages/libftdi/ftdi-eeprom-native_0.2.bb +++ b/packages/libftdi/ftdi-eeprom-native_0.2.bb @@ -3,6 +3,7 @@ require ftdi-eeprom_${PV}.bb DEPENDS = "libftdi-native confuse-native" do_stage() { - install -m 0755 ftdi_eeprom/ftdi_eeprom ${STAGING_BINDIR_NATIVE} + install -d ${STAGING_BINDIR_NATIVE} + install -m 0755 ftdi_eeprom/ftdi_eeprom ${STAGING_BINDIR_NATIVE}/ } diff --git a/packages/libol/libol_0.3.18.bb b/packages/libol/libol_0.3.18.bb index 3ddaaa62a3..9484f8e99e 100644 --- a/packages/libol/libol_0.3.18.bb +++ b/packages/libol/libol_0.3.18.bb @@ -1,4 +1,4 @@ -PR = "r5" +PR = "r6" SRC_URI = "http://www.balabit.com/downloads/libol/0.3/${P}.tar.gz" @@ -7,9 +7,10 @@ S = "${WORKDIR}/${PN}-${PV}" inherit autotools do_stage() { + install -d ${STAGING_BINDIR_CROSS} install -d ${STAGING_INCDIR}/libol - install -m 0755 ${S}/libol-config ${STAGING_BINDIR_CROSS} - install -m 0755 ${S}/src/.libs/libol.so.0.0.0 ${STAGING_LIBDIR} + install -m 0755 ${S}/libol-config ${STAGING_BINDIR_CROSS}/ + install -m 0755 ${S}/src/.libs/libol.so.0.0.0 ${STAGING_LIBDIR}/ ln -fs ${STAGING_LIBDIR}/libol.so.0.0.0 ${STAGING_LIBDIR}/libol.so.0 install ${S}/src/*.h ${STAGING_INCDIR}/libol/ } diff --git a/packages/libsdl/libsdl-qpe-1.2.9/.mtn2git_empty b/packages/libsdl/libsdl-qpe-1.2.9/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/.mtn2git_empty diff --git a/packages/libsdl/libsdl-qpe-1.2.9/SDL-Akita-1.2.9.patch b/packages/libsdl/libsdl-qpe-1.2.9/SDL-Akita-1.2.9.patch new file mode 100644 index 0000000000..56ffe468e8 --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/SDL-Akita-1.2.9.patch @@ -0,0 +1,51 @@ +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_sysvideo.cc SDL-1.2.9/src/video/qtopia/SDL_sysvideo.cc +--- SDL-1.2.9-orig/src/video/qtopia/SDL_sysvideo.cc 2007-03-12 20:58:19.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_sysvideo.cc 2007-03-12 20:58:27.000000000 +0100 +@@ -109,6 +109,7 @@ + MACHINE_SHARP_SLC760, + MACHINE_SHARP_SLC860, + MACHINE_SHARP_SL6000, ++ MACHINE_SHARP_SLC1000, + MACHINE_IPAQ, + MACHINE_MAX + } machine_t; +@@ -123,6 +124,7 @@ + { "Sharp", "SL-C760", 0 }, + { "Sharp", "SL-C860", 0 }, + { "Sharp", "SL-6000", 0 }, ++ { "Sharp", "SL-C1000", 0 }, + { "HP", "HP IPAQ", 0 }, + }; + +@@ -428,6 +430,8 @@ + machine = MACHINE_SHARP_SLC760; + else if (strstr(buf, "SHARP Boxer") != NULL) + machine = MACHINE_SHARP_SLC860; ++ else if (strstr(buf, "SHARP Akita") != NULL) ++ machine = MACHINE_SHARP_SLC1000; + else if ( ODevice::inst ( )-> series ( ) == Model_iPAQ ) + machine = MACHINE_IPAQ; + else +@@ -522,17 +526,18 @@ + if (machine == MACHINE_SHARP_SLC700 || + machine == MACHINE_SHARP_SLC750 || + machine == MACHINE_SHARP_SLC760 || +- machine == MACHINE_SHARP_SLC860 || // ¾Ü¤·¤¤¤³¤È¤ï¤«¤é¤ó¤±¤É¤È¤ê¤¢¤¨¤º +- machine == MACHINE_SHARP_SL6000 ) { // ¾Ü¤·¤¤¤³¤È¤ï¤«¤é¤ó¤±¤É¤È¤ê¤¢¤¨¤º ++ machine == MACHINE_SHARP_SLC860 || ++ machine == MACHINE_SHARP_SL6000 || ++ machine == MACHINE_SHARP_SLC1000 ) { + is_VGA_machine = true; + }else { + is_VGA_machine = false; + } + +- // qte ¤Ç¤Î²óž³ÑÅÙ¤ò¼èÆÀ ++ // qte + QT_GetQteServerSpec(_this, &qteRotation, &isQteQvga); + +- // SL-C700 ¤Î¥¹¥¿¥¤¥ë ++ // SL-C700 + bool isInputStyle = false; + if (is_VGA_machine) { + int status = system("/home/QtPalmtop/bin/chkhinge"); diff --git a/packages/libsdl/libsdl-qpe-1.2.9/acinclude.m4 b/packages/libsdl/libsdl-qpe-1.2.9/acinclude.m4 new file mode 100644 index 0000000000..30597ccc45 --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/acinclude.m4 @@ -0,0 +1,332 @@ +# Local macros for the SDL configure.in script + +dnl Function to link an architecture specific file +dnl LINK_ARCH_SRC(source_dir, arch, source_file) +AC_DEFUN([COPY_ARCH_SRC], +[ + old="$srcdir/$1/$2/$3" + new="$1/$3" + if test ! -d $1; then + echo "Creating directory $1" + mkdir -p $1 + fi + echo "Copying $old -> $new" + cat >$new <<__EOF__ +/* WARNING: This file was automatically generated! + * Original: $old + */ +__EOF__ + cat >>$new <$old +]) +############################################################################## +dnl Configure Paths for Alsa +dnl Some modifications by Richard Boulton <richard-alsa@tartarus.org> +dnl Christopher Lansdown <lansdoct@cs.alfred.edu> +dnl Jaroslav Kysela <perex@suse.cz> +dnl Last modification: alsa.m4,v 1.23 2004/01/16 18:14:22 tiwai Exp +dnl AM_PATH_ALSA([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) +dnl Test for libasound, and define ALSA_CFLAGS and ALSA_LIBS as appropriate. +dnl enables arguments --with-alsa-prefix= +dnl --with-alsa-enc-prefix= +dnl --disable-alsatest +dnl +dnl For backwards compatibility, if ACTION_IF_NOT_FOUND is not specified, +dnl and the alsa libraries are not found, a fatal AC_MSG_ERROR() will result. +dnl +AC_DEFUN([AM_PATH_ALSA], +[dnl Save the original CFLAGS, LDFLAGS, and LIBS +alsa_save_CFLAGS="$CFLAGS" +alsa_save_LDFLAGS="$LDFLAGS" +alsa_save_LIBS="$LIBS" +alsa_found=yes + +dnl +dnl Get the cflags and libraries for alsa +dnl +AC_ARG_WITH(alsa-prefix, +[ --with-alsa-prefix=PFX Prefix where Alsa library is installed(optional)], +[alsa_prefix="$withval"], [alsa_prefix=""]) +AC_ARG_WITH(alsa-inc-prefix, +[ --with-alsa-inc-prefix=PFX Prefix where include libraries are (optional)], +[alsa_inc_prefix="$withval"], [alsa_inc_prefix=""]) + +dnl FIXME: this is not yet implemented +AC_ARG_ENABLE(alsatest, +[ --disable-alsatest Do not try to compile and run a test Alsa program], +[enable_alsatest="$enableval"], +[enable_alsatest=yes]) + +dnl Add any special include directories +AC_MSG_CHECKING(for ALSA CFLAGS) +if test "$alsa_inc_prefix" != "" ; then + ALSA_CFLAGS="$ALSA_CFLAGS -I$alsa_inc_prefix" + CFLAGS="$CFLAGS -I$alsa_inc_prefix" +fi +AC_MSG_RESULT($ALSA_CFLAGS) + +dnl add any special lib dirs +AC_MSG_CHECKING(for ALSA LDFLAGS) +if test "$alsa_prefix" != "" ; then + ALSA_LIBS="$ALSA_LIBS -L$alsa_prefix" + LDFLAGS="$LDFLAGS $ALSA_LIBS" +fi + +dnl add the alsa library +ALSA_LIBS="$ALSA_LIBS -lasound -lm -ldl -lpthread" +LIBS=`echo $LIBS | sed 's/-lm//'` +LIBS=`echo $LIBS | sed 's/-ldl//'` +LIBS=`echo $LIBS | sed 's/-lpthread//'` +LIBS=`echo $LIBS | sed 's/ //'` +LIBS="$ALSA_LIBS $LIBS" +AC_MSG_RESULT($ALSA_LIBS) + +dnl Check for a working version of libasound that is of the right version. +min_alsa_version=ifelse([$1], ,0.1.1,$1) +AC_MSG_CHECKING(for libasound headers version >= $min_alsa_version) +no_alsa="" + alsa_min_major_version=`echo $min_alsa_version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + alsa_min_minor_version=`echo $min_alsa_version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` + alsa_min_micro_version=`echo $min_alsa_version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` + +AC_LANG_SAVE +AC_LANG_C +AC_TRY_COMPILE([ +#include <alsa/asoundlib.h> +], [ +/* ensure backward compatibility */ +#if !defined(SND_LIB_MAJOR) && defined(SOUNDLIB_VERSION_MAJOR) +#define SND_LIB_MAJOR SOUNDLIB_VERSION_MAJOR +#endif +#if !defined(SND_LIB_MINOR) && defined(SOUNDLIB_VERSION_MINOR) +#define SND_LIB_MINOR SOUNDLIB_VERSION_MINOR +#endif +#if !defined(SND_LIB_SUBMINOR) && defined(SOUNDLIB_VERSION_SUBMINOR) +#define SND_LIB_SUBMINOR SOUNDLIB_VERSION_SUBMINOR +#endif + +# if(SND_LIB_MAJOR > $alsa_min_major_version) + exit(0); +# else +# if(SND_LIB_MAJOR < $alsa_min_major_version) +# error not present +# endif + +# if(SND_LIB_MINOR > $alsa_min_minor_version) + exit(0); +# else +# if(SND_LIB_MINOR < $alsa_min_minor_version) +# error not present +# endif + +# if(SND_LIB_SUBMINOR < $alsa_min_micro_version) +# error not present +# endif +# endif +# endif +exit(0); +], + [AC_MSG_RESULT(found.)], + [AC_MSG_RESULT(not present.) + ifelse([$3], , [AC_MSG_ERROR(Sufficiently new version of libasound not found.)]) + alsa_found=no] +) +AC_LANG_RESTORE + +dnl Now that we know that we have the right version, let's see if we have the library and not just the headers. +if test "x$enable_alsatest" = "xyes"; then +AC_CHECK_LIB([asound], [snd_ctl_open],, + [ifelse([$3], , [AC_MSG_ERROR(No linkable libasound was found.)]) + alsa_found=no] +) +fi +if test "x$alsa_found" = "xyes" ; then + ifelse([$2], , :, [$2]) + LIBS=`echo $LIBS | sed 's/-lasound//g'` + LIBS=`echo $LIBS | sed 's/ //'` + LIBS="-lasound $LIBS" +fi +if test "x$alsa_found" = "xno" ; then + ifelse([$3], , :, [$3]) + CFLAGS="$alsa_save_CFLAGS" + LDFLAGS="$alsa_save_LDFLAGS" + LIBS="$alsa_save_LIBS" + ALSA_CFLAGS="" + ALSA_LIBS="" +fi + +dnl That should be it. Now just export out symbols: +AC_SUBST(ALSA_CFLAGS) +AC_SUBST(ALSA_LIBS) +]) + +# +# --- esd.m4 --- +# +# Configure paths for ESD +# Manish Singh 98-9-30 +# stolen back from Frank Belew +# stolen from Manish Singh +# Shamelessly stolen from Owen Taylor + +dnl AM_PATH_ESD([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) +dnl Test for ESD, and define ESD_CFLAGS and ESD_LIBS +dnl +AC_DEFUN([AM_PATH_ESD], +[dnl +dnl Get the cflags and libraries from the esd-config script +dnl +AC_ARG_WITH(esd-prefix,[ --with-esd-prefix=PFX Prefix where ESD is installed (optional)], + esd_prefix="$withval", esd_prefix="") +AC_ARG_WITH(esd-exec-prefix,[ --with-esd-exec-prefix=PFX Exec prefix where ESD is installed (optional)], + esd_exec_prefix="$withval", esd_exec_prefix="") +AC_ARG_ENABLE(esdtest, [ --disable-esdtest Do not try to compile and run a test ESD program], + , enable_esdtest=yes) + + if test x$esd_exec_prefix != x ; then + esd_args="$esd_args --exec-prefix=$esd_exec_prefix" + if test x${ESD_CONFIG+set} != xset ; then + ESD_CONFIG=$esd_exec_prefix/bin/esd-config + fi + fi + if test x$esd_prefix != x ; then + esd_args="$esd_args --prefix=$esd_prefix" + if test x${ESD_CONFIG+set} != xset ; then + ESD_CONFIG=$esd_prefix/bin/esd-config + fi + fi + + AC_PATH_PROG(ESD_CONFIG, esd-config, no) + min_esd_version=ifelse([$1], ,0.2.7,$1) + AC_MSG_CHECKING(for ESD - version >= $min_esd_version) + no_esd="" + if test "$ESD_CONFIG" = "no" ; then + no_esd=yes + else + ESD_CFLAGS=`$ESD_CONFIG $esdconf_args --cflags` + ESD_LIBS=`$ESD_CONFIG $esdconf_args --libs` + + esd_major_version=`$ESD_CONFIG $esd_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + esd_minor_version=`$ESD_CONFIG $esd_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` + esd_micro_version=`$ESD_CONFIG $esd_config_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` + if test "x$enable_esdtest" = "xyes" ; then + ac_save_CFLAGS="$CFLAGS" + ac_save_LIBS="$LIBS" + CFLAGS="$CFLAGS $ESD_CFLAGS" + LIBS="$LIBS $ESD_LIBS" +dnl +dnl Now check if the installed ESD is sufficiently new. (Also sanity +dnl checks the results of esd-config to some extent +dnl + rm -f conf.esdtest + AC_TRY_RUN([ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <esd.h> + +char* +my_strdup (char *str) +{ + char *new_str; + + if (str) + { + new_str = malloc ((strlen (str) + 1) * sizeof(char)); + strcpy (new_str, str); + } + else + new_str = NULL; + + return new_str; +} + +int main () +{ + int major, minor, micro; + char *tmp_version; + + system ("touch conf.esdtest"); + + /* HP/UX 9 (%@#!) writes to sscanf strings */ + tmp_version = my_strdup("$min_esd_version"); + if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { + printf("%s, bad version string\n", "$min_esd_version"); + exit(1); + } + + if (($esd_major_version > major) || + (($esd_major_version == major) && ($esd_minor_version > minor)) || + (($esd_major_version == major) && ($esd_minor_version == minor) && ($esd_micro_version >= micro))) + { + return 0; + } + else + { + printf("\n*** 'esd-config --version' returned %d.%d.%d, but the minimum version\n", $esd_major_version, $esd_minor_version, $esd_micro_version); + printf("*** of ESD required is %d.%d.%d. If esd-config is correct, then it is\n", major, minor, micro); + printf("*** best to upgrade to the required version.\n"); + printf("*** If esd-config was wrong, set the environment variable ESD_CONFIG\n"); + printf("*** to point to the correct copy of esd-config, and remove the file\n"); + printf("*** config.cache before re-running configure\n"); + return 1; + } +} + +],, no_esd=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" + fi + fi + if test "x$no_esd" = x ; then + AC_MSG_RESULT(yes) + ifelse([$2], , :, [$2]) + else + AC_MSG_RESULT(no) + if test "$ESD_CONFIG" = "no" ; then + echo "*** The esd-config script installed by ESD could not be found" + echo "*** If ESD was installed in PREFIX, make sure PREFIX/bin is in" + echo "*** your path, or set the ESD_CONFIG environment variable to the" + echo "*** full path to esd-config." + else + if test -f conf.esdtest ; then + : + else + echo "*** Could not run ESD test program, checking why..." + CFLAGS="$CFLAGS $ESD_CFLAGS" + LIBS="$LIBS $ESD_LIBS" + AC_TRY_LINK([ +#include <stdio.h> +#include <esd.h> +], [ return 0; ], + [ echo "*** The test program compiled, but did not run. This usually means" + echo "*** that the run-time linker is not finding ESD or finding the wrong" + echo "*** version of ESD. If it is not finding ESD, you'll need to set your" + echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" + echo "*** to the installed location Also, make sure you have run ldconfig if that" + echo "*** is required on your system" + echo "***" + echo "*** If you have an old version installed, it is best to remove it, although" + echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], + [ echo "*** The test program failed to compile or link. See the file config.log for the" + echo "*** exact error that occured. This usually means ESD was incorrectly installed" + echo "*** or that you have moved ESD since it was installed. In the latter case, you" + echo "*** may want to edit the esd-config script: $ESD_CONFIG" ]) + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" + fi + fi + ESD_CFLAGS="" + ESD_LIBS="" + ifelse([$3], , :, [$3]) + fi + AC_SUBST(ESD_CFLAGS) + AC_SUBST(ESD_LIBS) + rm -f conf.esdtest +]) + diff --git a/packages/libsdl/libsdl-qpe-1.2.9/agawa-piro-mickey-1.2.9.patch b/packages/libsdl/libsdl-qpe-1.2.9/agawa-piro-mickey-1.2.9.patch new file mode 100644 index 0000000000..d7c561402f --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/agawa-piro-mickey-1.2.9.patch @@ -0,0 +1,2054 @@ +diff -Naur SDL-1.2.9-orig/src/video/fbcon/SDL_fbevents.c SDL-1.2.9/src/video/fbcon/SDL_fbevents.c +--- SDL-1.2.9-orig/src/video/fbcon/SDL_fbevents.c 2005-01-04 20:04:14.000000000 +0100 ++++ SDL-1.2.9/src/video/fbcon/SDL_fbevents.c 2007-03-12 20:54:14.000000000 +0100 +@@ -60,7 +60,13 @@ + #ifndef GPM_NODE_FIFO + #define GPM_NODE_FIFO "/dev/gpmdata" + #endif ++#define POINTERCAL "/etc/pointercal" + ++static struct SDL_cal { ++ long ok; ++ long a, b, c, d, e, f, s; ++ long rotate; ++} cal = { 0 }; + + /* The translation tables from a console scancode to a SDL keysym */ + #define NUM_VGAKEYMAPS (1<<KG_CAPSSHIFT) +@@ -317,6 +323,7 @@ + MOUSE_MS, + MOUSE_BM, + MOUSE_ELO, ++ TS_SLC7X0, + NUM_MOUSE_DRVS + } mouse_drv = MOUSE_NONE; + +@@ -500,6 +507,9 @@ + mousedev = getenv("SDL_MOUSEDEV"); + mouse_fd = -1; + ++ const char *sdl_rot_flag; ++ sdl_rot_flag = getenv("SDL_FBROT"); ++ + /* ELO TOUCHSCREEN SUPPORT */ + + if( (mousedrv != NULL) && (strcmp(mousedrv, "ELO") == 0) ) { +@@ -601,9 +611,39 @@ + mouse_drv = MOUSE_MS; + } + } ++ /* Default to a SLC7X0 touch screen */ ++ if ( mouse_fd < 0 ) { ++ mousedev = "/dev/ts"; ++ mouse_fd = open(mousedev, O_RDONLY, 0); ++ if ( mouse_fd >= 0 ) { ++ FILE *pcal; ++ cal.ok = 0; ++ pcal = fopen(POINTERCAL, "r"); ++ if(pcal == NULL){ ++ fprintf(stderr, "Warning: cannot open " POINTERCAL ".\n"); ++ }else{ ++ int n; ++ n = fscanf(pcal, "%d %d %d %d %d %d %d", ++ &cal.a, &cal.b, &cal.c, &cal.d, &cal.e, &cal.f, &cal.s); ++ if(n != 7){ ++ fprintf(stderr, "Warning: " POINTERCAL " is unknown format.\n"); ++ }else{ ++ cal.ok = 1; ++ } ++ fclose(pcal); ++ } ++ if ( sdl_rot_flag == NULL ) { ++ cal.rotate = 0; ++ } else { ++ cal.rotate = atoi(sdl_rot_flag); ++ } ++ mouse_drv = TS_SLC7X0; ++ } ++ } + if ( mouse_fd < 0 ) { + mouse_drv = MOUSE_NONE; + } ++ + return(mouse_fd); + } + +@@ -678,6 +718,10 @@ + packetsize = ELO_PACKET_SIZE; + relative = 0; + break; ++ case TS_SLC7X0: ++ packetsize = 8; ++ relative = 0; ++ break; + case NUM_MOUSE_DRVS: + /* Uh oh.. */ + packetsize = 0; +@@ -810,6 +854,25 @@ + */ + + case MOUSE_ELO: ++ case TS_SLC7X0: ++ /* Get current mouse state */ ++ button = ((mousebuf[i+1] << 8)+mousebuf[i])/500; ++ dx = (mousebuf[i+3] << 8)+mousebuf[i+2]; ++ dy = (mousebuf[i+5] << 8)+mousebuf[i+4]; ++ if(cal.ok){ ++ long X, Y; ++ X = (cal.a * dx + cal.b * dy + cal.c) / cal.s; ++ Y = (cal.d * dx + cal.e * dy + cal.f) / cal.s; ++ dx = X; ++ dy = Y; ++ } ++ if(cal.rotate == 3){ ++ int tmp; ++ tmp=dx; ++ dx = dy; ++ dy = 480-tmp; ++ } ++ break; + case NUM_MOUSE_DRVS: + /* Uh oh.. */ + dx = 0; +diff -Naur SDL-1.2.9-orig/src/video/fbcon/SDL_fbvideo.c SDL-1.2.9/src/video/fbcon/SDL_fbvideo.c +--- SDL-1.2.9-orig/src/video/fbcon/SDL_fbvideo.c 2005-02-12 19:03:54.000000000 +0100 ++++ SDL-1.2.9/src/video/fbcon/SDL_fbvideo.c 2007-03-12 20:54:14.000000000 +0100 +@@ -51,7 +51,7 @@ + #include "SDL_fbmatrox.h" + #include "SDL_fbriva.h" + +- ++/* #define FBCON_DEBUG 1 */ + #if defined(i386) && defined(FB_TYPE_VGA_PLANES) + #define VGA16_FBCON_SUPPORT + #ifndef FB_AUX_VGA_PLANES_VGA4 +@@ -76,9 +76,11 @@ + { 0, 0, 720, 576 }, /* PAL */ + { 0, 0, 720, 480 }, /* NTSC */ + { 0, 0, 640, 480 }, /* 16 bpp: 0x111, or 273 */ ++ { 0, 0, 480, 640 }, + { 0, 0, 640, 400 }, /* 8 bpp: 0x100, or 256 */ + { 0, 0, 512, 384 }, + { 0, 0, 320, 240 }, ++ { 0, 0, 240, 320 }, + { 0, 0, 320, 200 } + }; + static const struct { +@@ -112,9 +114,11 @@ + */ + { 320, 200, 79440, 16, 16, 20, 4, 48, 1, 0, 2 }, /* 70 Hz */ + { 320, 240, 63492, 16, 16, 16, 4, 48, 2, 0, 2 }, /* 72 Hz */ ++ { 240, 320, 63492, 16, 16, 16, 4, 48, 3, 0, 2 }, /* 72 Hz */ + { 512, 384, 49603, 48, 16, 16, 1, 64, 3, 0, 0 }, /* 78 Hz */ + { 640, 400, 31746, 96, 32, 41, 1, 64, 3, 2, 0 }, /* 85 Hz */ + { 640, 480, 31746, 120, 16, 16, 1, 64, 3, 0, 0 }, /* 75 Hz */ ++ { 480, 640, 31746, 120, 16, 16, 1, 64, 4, 0, 0 }, /* 75 Hz */ + { 768, 576, 26101, 144, 16, 28, 6, 112, 4, 0, 0 }, /* 60 Hz */ + { 800, 600, 20000, 64, 56, 23, 37, 120, 6, 3, 0 }, /* 72 Hz */ + { 960, 720, 17686, 144, 24, 28, 8, 112, 4, 0, 0 }, /* 60 Hz */ +@@ -152,6 +156,10 @@ + struct fb_var_screeninfo *vinfo); + static void FB_RestorePalette(_THIS); + ++static char *console_fd_buf; ++static char *mapped_mem_fb; ++static int rotation_flag; ++ + /* FB driver bootstrap functions */ + + static int FB_Available(void) +@@ -241,18 +249,30 @@ + + mode_okay = 0; + vinfo->bits_per_pixel = (index+1)*8; +- vinfo->xres = *w; +- vinfo->xres_virtual = *w; +- vinfo->yres = *h; +- vinfo->yres_virtual = *h; ++ if ((rotation_flag == 0) || (rotation_flag == 2)) { ++ vinfo->xres = *w; ++ vinfo->xres_virtual = *w; ++ vinfo->yres = *h; ++ vinfo->yres_virtual = *h; ++ } else { ++ vinfo->xres = *h; ++ vinfo->xres_virtual = *h; ++ vinfo->yres = *w; ++ vinfo->yres_virtual = *w; ++ } + vinfo->activate = FB_ACTIVATE_TEST; + if ( ioctl(console_fd, FBIOPUT_VSCREENINFO, vinfo) == 0 ) { + #ifdef FBCON_DEBUG + fprintf(stderr, "Checked mode %dx%d at %d bpp, got mode %dx%d at %d bpp\n", *w, *h, (index+1)*8, vinfo->xres, vinfo->yres, vinfo->bits_per_pixel); + #endif + if ( (((vinfo->bits_per_pixel+7)/8)-1) == index ) { +- *w = vinfo->xres; +- *h = vinfo->yres; ++ if ((rotation_flag == 0) || (rotation_flag == 2)) { ++ *w = vinfo->xres; ++ *h = vinfo->yres; ++ } else { ++ *h = vinfo->xres; ++ *w = vinfo->yres; ++ } + mode_okay = 1; + } + } +@@ -332,6 +352,7 @@ + unsigned int current_w; + unsigned int current_h; + const char *SDL_fbdev; ++ const char *SDL_rot_flag; + + /* Initialize the library */ + SDL_fbdev = getenv("SDL_FBDEV"); +@@ -344,6 +365,14 @@ + return(-1); + } + ++ SDL_rot_flag = getenv("SDL_FBROT"); ++ if ( SDL_rot_flag == NULL ) { ++ rotation_flag = 0; ++ } else { ++ rotation_flag = atoi(SDL_rot_flag); ++ } ++ ++ + #ifndef DISABLE_THREADS + /* Create the hardware surface lock mutex */ + hw_lock = SDL_CreateMutex(); +@@ -407,13 +436,33 @@ + mapped_offset = (((long)finfo.smem_start) - + (((long)finfo.smem_start)&~(PAGE_SIZE-1))); + mapped_memlen = finfo.smem_len+mapped_offset; +- mapped_mem = mmap(NULL, mapped_memlen, +- PROT_READ|PROT_WRITE, MAP_SHARED, console_fd, 0); +- if ( mapped_mem == (char *)-1 ) { +- SDL_SetError("Unable to memory map the video hardware"); +- mapped_mem = NULL; +- FB_VideoQuit(this); +- return(-1); ++ if (rotation_flag == 0) { ++ mapped_mem = mmap(NULL, mapped_memlen, ++ PROT_READ|PROT_WRITE, MAP_SHARED, console_fd, 0); ++ if ( mapped_mem == (char *)-1 ) { ++ SDL_SetError("Unable to memory map the video hardware"); ++ mapped_mem = NULL; ++ FB_VideoQuit(this); ++ return(-1); ++ } ++ } else { ++ ++ console_fd_buf = (char *)malloc(640*480*2); ++ ++ if (console_fd_buf == NULL){ ++ SDL_SetError("Unable to memory for buffer"); ++ return(-1); ++ } ++ ++ mapped_mem_fb = mmap(NULL, mapped_memlen, ++ PROT_READ|PROT_WRITE, MAP_SHARED, console_fd, 0); ++ if ( mapped_mem_fb == (char *)-1 ) { ++ SDL_SetError("Unable to memory map the video hardware"); ++ mapped_mem_fb = NULL; ++ FB_VideoQuit(this); ++ return(-1); ++ } ++ mapped_mem = console_fd_buf; + } + + /* Determine the current screen depth */ +@@ -555,6 +604,7 @@ + + /* Various screen update functions available */ + static void FB_DirectUpdate(_THIS, int numrects, SDL_Rect *rects); ++static void FB_RotationUpdate(_THIS, int numrects, SDL_Rect *rects); + #ifdef VGA16_FBCON_SUPPORT + static void FB_VGA16Update(_THIS, int numrects, SDL_Rect *rects); + #endif +@@ -725,7 +775,7 @@ + Uint32 Bmask; + char *surfaces_mem; + int surfaces_len; +- ++ + /* Set the terminal into graphics mode */ + if ( FB_EnterGraphicsMode(this) < 0 ) { + return(NULL); +@@ -734,6 +784,8 @@ + /* Restore the original palette */ + FB_RestorePalette(this); + ++ flags &= ~SDL_DOUBLEBUF; ++ + /* Set the video mode and get the final screen format */ + if ( ioctl(console_fd, FBIOGET_VSCREENINFO, &vinfo) < 0 ) { + SDL_SetError("Couldn't get console screen info"); +@@ -748,13 +800,24 @@ + vinfo.activate = FB_ACTIVATE_NOW; + vinfo.accel_flags = 0; + vinfo.bits_per_pixel = bpp; +- vinfo.xres = width; +- vinfo.xres_virtual = width; +- vinfo.yres = height; +- if ( flags & SDL_DOUBLEBUF ) { +- vinfo.yres_virtual = height*2; ++ if ((rotation_flag == 0) || (rotation_flag == 2)) { ++ vinfo.xres = width; ++ vinfo.xres_virtual = width; ++ vinfo.yres = height; ++ if ( flags & SDL_DOUBLEBUF ) { ++ vinfo.yres_virtual = height*2; ++ } else { ++ vinfo.yres_virtual = height; ++ } + } else { +- vinfo.yres_virtual = height; ++ vinfo.xres = height; ++ vinfo.xres_virtual = height; ++ vinfo.yres = width; ++ if ( flags & SDL_DOUBLEBUF ) { ++ vinfo.yres_virtual = width*2; ++ } else { ++ vinfo.yres_virtual = width; ++ } + } + vinfo.xoffset = 0; + vinfo.yoffset = 0; +@@ -776,6 +839,15 @@ + return(NULL); + } + } ++ vinfo.xres = width; ++ vinfo.xres_virtual = width; ++ vinfo.yres = height; ++ if ( flags & SDL_DOUBLEBUF ) { ++ vinfo.yres_virtual = height*2; ++ } else { ++ vinfo.yres_virtual = height; ++ } ++ + } else { + int maxheight; + +@@ -821,7 +893,9 @@ + SDL_SetError("Couldn't get console hardware info"); + return(NULL); + } +- ++#ifdef FBCON_DEBUG ++ print_finfo(&finfo); ++#endif + /* Save hardware palette, if needed */ + FB_SavePalette(this, &finfo, &vinfo); + +@@ -829,7 +903,11 @@ + current->flags = (SDL_FULLSCREEN|SDL_HWSURFACE); + current->w = vinfo.xres; + current->h = vinfo.yres; +- current->pitch = finfo.line_length; ++ if ((rotation_flag == 0) || (rotation_flag == 2) ) { ++ current->pitch = finfo.line_length; ++ } else { ++ current->pitch = vinfo.xres*2; ++ } + current->pixels = mapped_mem+mapped_offset; + + /* Set up the information for hardware surfaces */ +@@ -863,7 +941,7 @@ + } + + /* Set the update rectangle function */ +- this->UpdateRects = FB_DirectUpdate; ++ this->UpdateRects = FB_RotationUpdate; + + /* We're done */ + return(current); +@@ -1123,6 +1201,89 @@ + return; + } + ++static void FB_RotationUpdate(_THIS, int numrects, SDL_Rect *rects) ++{ ++ unsigned short *pDst; ++ unsigned short *pSrc; ++ unsigned int width; ++ unsigned int height; ++ unsigned int srcYAdd; ++ unsigned int dstXAdd; ++ unsigned int dstYSub; ++ unsigned int i; ++ unsigned int dstH; ++ unsigned int dstW; ++ ++#ifdef FBCON_DEBUG ++ fprintf(stderr,"rotation_flag = %d \n",rotation_flag); ++#endif ++ switch (rotation_flag) { ++ case 0: ++ break; ++ case 1: ++ memcpy(mapped_mem_fb,mapped_mem,640*480*2); ++ break; ++ case 2: ++ memcpy(mapped_mem_fb,mapped_mem,640*480*2); ++ break; ++ case 3: ++ dstW=cache_vinfo.xres; ++ dstH=cache_vinfo.yres; ++#ifdef FBCON_DEBUG ++ fprintf(stderr,"dstH = %d : dstW = %d : rects->x = %d : rects->y = %d\n",dstH,dstW); ++ fprintf(stderr,"rects->x = %d : rects->y = %d : rects->w = %d : rects->h = %d\n",rects->x,rects->y,rects->w,rects->h); ++#endif ++ while (numrects) { ++ if (rects->w != dstW || rects->h != dstH) { ++ pSrc = mapped_mem + (rects->x + rects->y * dstW)*2; ++ pDst = mapped_mem_fb + (dstH-1+rects->x * dstH - rects->y)*2; ++ ++ width = rects->w; ++ height = rects->h; ++ ++ srcYAdd = dstW - rects->w; ++ dstXAdd = dstH; ++ dstYSub = (dstH * rects->w) + 1; ++ ++ while (height--) { ++ i = width; ++ while (i--) { ++ *pDst = *pSrc ++; ++ pDst += dstXAdd; ++ } ++ pSrc += srcYAdd; ++ pDst -= dstYSub; ++ } ++ ++ } else { ++ pDst=mapped_mem_fb+dstH*2-2; ++ pSrc=mapped_mem; ++ height=dstH; ++ width=dstW; ++ dstXAdd=height; ++ dstYSub=dstW*dstH+1; ++ ++ while (height--) { ++ i = width; ++ while (i--) { ++ *pDst = *pSrc ++; ++ pDst += dstXAdd; ++ } ++ pDst -= dstYSub; ++ } ++ } ++ numrects--; ++ rects++; ++ } ++ break; ++ default: ++ break; ++ } ++ ++ ++ ++} ++ + #ifdef VGA16_FBCON_SUPPORT + /* Code adapted with thanks from the XFree86 VGA16 driver! :) */ + #define writeGr(index, value) \ +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_QWin.cc SDL-1.2.9/src/video/qtopia/SDL_QWin.cc +--- SDL-1.2.9-orig/src/video/qtopia/SDL_QWin.cc 2004-01-04 17:49:26.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_QWin.cc 2007-03-12 20:54:14.000000000 +0100 +@@ -1,3 +1,4 @@ ++ + /* + SDL - Simple DirectMedia Layer + Copyright (C) 1997-2004 Sam Lantinga +@@ -27,15 +28,24 @@ + + #include "SDL_QWin.h" + #include <qapplication.h> ++#include <qpe/qpeapplication.h> + #include <qdirectpainter_qws.h> + ++extern int fb_hwrot; ++extern int fb_direct; ++extern bool is_VGA_machine; ++static int mouse_button_mode=1; ++ + screenRotationT screenRotation = SDL_QT_NO_ROTATION; + + SDL_QWin::SDL_QWin(const QSize& size) + : QWidget(0, "SDL_main"), my_painter(0), my_image(0), + my_inhibit_resize(false), my_mouse_pos(-1,-1), my_flags(0), +- my_has_fullscreen(false), my_locked(0) ++ my_has_fullscreen(false), my_locked(0), ++ rotation_(0), qteRotation_(0), keyRotation_(0), qteKeyRotation_(0), ++ isSLA300InputFix_(0) + { ++ for (int i = 0; i < 5; i++) curAxis_[i] = 0; + setBackgroundMode(NoBackground); + } + +@@ -84,6 +94,7 @@ + } + + void SDL_QWin::setMousePos(const QPoint &pos) { ++#if 0 + if(my_image->width() == height()) { + if (screenRotation == SDL_QT_ROTATION_90) + my_mouse_pos = QPoint(height()-pos.y(), pos.x()); +@@ -92,6 +103,66 @@ + } else { + my_mouse_pos = pos; + } ++#else ++ QPoint realPos; ++ ++ if (is_VGA_machine) { ++ realPos = pos; ++ my_mouse_pos = realPos; ++ }else { ++ switch (qteRotation_) { ++ case 0: ++ realPos = pos; ++ break; ++ case 1: ++ realPos.setX(pos.y()); ++ realPos.setY(fbSize_.height() - 1 - pos.x()); ++ break; ++ case 2: ++ realPos.setX(fbSize_.width() - 1 - pos.x()); ++ realPos.setY(fbSize_.height() - 1 - pos.y()); ++ break; ++ case 3: ++ realPos.setX(fbSize_.width() - 1 - pos.y()); ++ realPos.setY(pos.x()); ++ break; ++ }; ++ ++ // fprintf(stderr, "setMousePos: realPos(%d, %d)\n", realPos.x(), realPos.y()); ++ ++ int borderWidth = (fbSize_.width() - my_image->width()) >> 1; ++ int borderHeight = (fbSize_.height() - my_image->height()) >> 1; ++ if ( rotation_ & 1 ){ ++ borderWidth = (fbSize_.height() - my_image->width()) >> 1; ++ borderHeight = (fbSize_.width() - my_image->height()) >> 1; ++ } ++ realPos.setX(realPos.x() - borderWidth); ++ realPos.setY(realPos.y() - borderHeight); ++ ++ fprintf(stderr, "setMousePos: realPos2(%d, %d)\n", realPos.x(), realPos.y()); ++ ++ switch (rotation_) { ++ case 0: ++ my_mouse_pos = realPos; ++ break; ++ case 1: ++ my_mouse_pos.setX(realPos.y()); ++ my_mouse_pos.setY(my_image->height() - 1 - realPos.x()); ++ break; ++ case 2: ++ my_mouse_pos.setX(my_image->width() - 1 - realPos.x()); ++ my_mouse_pos.setY(my_image->height() - 1 - realPos.y()); ++ break; ++ case 3: ++ my_mouse_pos.setX(realPos.y());//my_image->width() - 1 - realPos.y()); ++ my_mouse_pos.setY(my_image->height() - realPos.x()); ++ break; ++ } ++ } ++ ++// fprintf(stderr, "setMousePos: mymousePos(%d, %d)\n", (short)my_mouse_pos.x(), (short)my_mouse_pos.y()); ++ ++#endif + } + + void SDL_QWin::mouseMoveEvent(QMouseEvent *e) { +@@ -113,269 +184,318 @@ + void SDL_QWin::mousePressEvent(QMouseEvent *e) { + mouseMoveEvent(e); + Qt::ButtonState button = e->button(); +- SDL_PrivateMouseButton(SDL_PRESSED, +- (button & Qt::LeftButton) ? 1 : +- ((button & Qt::RightButton) ? 2 : 3), ++ SDL_PrivateMouseButton(SDL_PRESSED,mouse_button_mode, + my_mouse_pos.x(), my_mouse_pos.y()); + } + + void SDL_QWin::mouseReleaseEvent(QMouseEvent *e) { + setMousePos(e->pos()); + Qt::ButtonState button = e->button(); +- SDL_PrivateMouseButton(SDL_RELEASED, +- (button & Qt::LeftButton) ? 1 : +- ((button & Qt::RightButton) ? 2 : 3), ++ SDL_PrivateMouseButton(SDL_RELEASED,mouse_button_mode, + my_mouse_pos.x(), my_mouse_pos.y()); + my_mouse_pos = QPoint(-1, -1); + } + +-static inline void +-gs_fastRotateBlit_3 ( unsigned short *fb, +- unsigned short *bits, +- const QRect& rect ) ++#ifndef __i386__ ++ ++static void ++blitRotate3(Uint16 *dstBits, const QSize& dstSize, ++ const Uint16 *srcBits, const QSize& srcSize, ++ const QRect& srcBlitRect); ++ ++static void ++blitRotate0(Uint16 *dstBits, const QSize& dstSize, ++ const Uint16 *srcBits, const QSize& srcSize, ++ const QRect& srcBlitRect) + { +- // FIXME: this only works correctly for 240x320 displays +- int startx, starty; +- int width, height; +- +- startx = rect.left() >> 1; +- starty = rect.top() >> 1; +- width = ((rect.right() - rect.left()) >> 1) + 2; +- height = ((rect.bottom() - rect.top()) >> 1) + 2; +- +- if((startx+width) > 120) { +- width = 120 - startx; // avoid horizontal overflow +- } +- if((starty+height) > 160) { +- height = 160 - starty; // avoid vertical overflow +- } +- +- ulong *sp1, *sp2, *dp1, *dp2; +- ulong stop, sbot, dtop, dbot; +- +- sp1 = (ulong*)bits + startx + starty*240; +- sp2 = sp1 + 120; +- dp1 = (ulong *)fb + (159 - starty) + startx*320; +- dp2 = dp1 + 160; +- int rowadd = (-320*width) - 1; +- int rowadd2 = 240 - width; +- // transfer in cells of 2x2 pixels in words +- for (int y=0; y<height; y++) { +- for (int x=0; x<width; x++) { +- // read source pixels +- stop = *sp1; +- sbot = *sp2; +- // rotate pixels +- dtop = (sbot & 0xffff) + ((stop & 0xffff)<<16); +- dbot = ((sbot & 0xffff0000)>>16) + (stop & 0xffff0000); +- // write to framebuffer +- *dp1 = dtop; +- *dp2 = dbot; +- // update source ptrs +- sp1++; sp2++; +- // update dest ptrs - 2 pix at a time +- dp1 += 320; +- dp2 += 320; +- } +- // adjust src ptrs - skip a row as we work in pairs +- sp1 += rowadd2; +- sp2 += rowadd2; +- // adjust dest ptrs for rotation +- dp1 += rowadd; +- dp2 += rowadd; ++ srcBits += srcBlitRect.left() + srcBlitRect.top() * srcSize.width(); ++ dstBits += ((dstSize.width() - srcSize.width()) >> 1) ++ + (((dstSize.height() - srcSize.height()) >> 1) * dstSize.width()); ++ dstBits += srcBlitRect.left() + srcBlitRect.top() * dstSize.width(); ++ int w = srcBlitRect.width() << 1; ++ int h = srcBlitRect.height(); ++ ++ while (h--) { ++ memcpy(dstBits, srcBits, w); ++ dstBits += dstSize.width(); ++ srcBits += srcSize.width(); + } + } + +-static inline void +-gs_fastRotateBlit_1 ( unsigned short *fb, +- unsigned short *bits, +- const QRect& rect ) { +- // FIXME: this only works correctly for 240x320 displays +- int startx, starty; +- int width, height; +- +- startx = rect.left() >> 1; +- starty = rect.top() >> 1; +- width = ((rect.right() - rect.left()) >> 1) + 2; +- height = ((rect.bottom() - rect.top()) >> 1) + 2; +- +- if((startx+width) > 120) { +- width = 120 - startx; // avoid horizontal overflow +- } +- if((starty+height) > 160) { +- height = 160 - starty; // avoid vertical overflow +- } +- +- ulong *sp1, *sp2, *dp1, *dp2; +- ulong stop, sbot, dtop, dbot; +- fb += 320*239; // Move "fb" to top left corner +- sp1 = (ulong*)bits + startx + starty*240; +- sp2 = sp1 + 120; +- dp1 = (ulong*)fb - startx * 320 - starty; +- dp2 = dp1 - 160; +- int rowadd = (320*width) + 1; +- int rowadd2 = 240 - width; +- // transfer in cells of 2x2 pixels in words +- for (int y=0; y<height; y++) { +- for (int x=0; x<width; x++) { +- // read +- stop = *sp1; +- sbot = *sp2; +- // rotate +- dtop = (stop & 0xffff) + ((sbot & 0xffff)<<16); +- dbot = ((stop & 0xffff0000)>>16) + (sbot & 0xffff0000); +- // write +- *dp1 = dtop; +- *dp2 = dbot; +- // update source ptrs +- sp1++; sp2++; +- // update dest ptrs - 2 pix at a time +- dp1 -= 320; +- dp2 -= 320; +- } +- // adjust src ptrs - skip a row as we work in pairs +- sp1 += rowadd2; +- sp2 += rowadd2; +- // adjust dest ptrs for rotation +- dp1 += rowadd; +- dp2 += rowadd; +- } ++static void ++blitRotate1(Uint16 *dstBits, const QSize& dstSize, ++ const Uint16 *srcBits, const QSize& srcSize, ++ const QRect& srcBlitRect) ++{ ++// fprintf(stdout, "SDL_QT_ROTATION (1) is not implemented.\n"); ++ blitRotate3(dstBits, dstSize, srcBits, srcSize, srcBlitRect); + } + +-// desktop, SL-A300 etc +-bool SDL_QWin::repaintRotation0(const QRect& rect) { +- if(my_image->width() == width()) { +- uchar *fb = (uchar*)my_painter->frameBuffer(); +- uchar *buf = (uchar*)my_image->bits(); +- if(rect == my_image->rect()) { +- memcpy(fb, buf, width()*height()*2); +- } else { +- int h = rect.height(); +- int wd = rect.width()<<1; +- int fblineadd = my_painter->lineStep(); +- int buflineadd = my_image->bytesPerLine(); +- fb += (rect.left()<<1) + rect.top() * my_painter->lineStep(); +- buf += (rect.left()<<1) + rect.top() * my_image->bytesPerLine(); +- while(h--) { +- memcpy(fb, buf, wd); +- fb += fblineadd; +- buf += buflineadd; +- } ++static void ++blitRotate2(Uint16 *dstBits, const QSize& dstSize, ++ const Uint16 *srcBits, const QSize& srcSize, ++ QRect srcBlitRect) ++{ ++// if (srcBlitRect.left() & 1) ++// srcBlitRect.setLeft(srcBlitRect.left() - 1); ++// if (srcBlitRect.right() & 1) ++// srcBlitRect.setRight(srcBlitRect.right() - 1); ++ ++ int dstBorderLeftRight = (dstSize.width() - srcSize.width()) >>1; ++ int dstBorderTopBottom = (dstSize.height() - srcSize.height()) >>1; ++ int dstStartOffsetX = dstSize.width() - dstBorderLeftRight - 2; ++ int dstStartOffsetY = dstSize.height() - dstBorderTopBottom - 1; ++ int left = srcBlitRect.left() & ~(int)1; // to be 32bit aligned ++ srcBits += left + srcBlitRect.top() * srcSize.width(); ++ dstBits += dstStartOffsetY * dstSize.width() + dstStartOffsetX; ++ dstBits -= left; ++ dstBits -= srcBlitRect.top() * dstSize.width(); ++ ++ Uint32 *pSrc = (Uint32 *)srcBits; ++ Uint32 *pDst = (Uint32 *)dstBits; ++ ++ int width = srcBlitRect.width(), width2 = srcBlitRect.width(), w; ++ if ( srcBlitRect.left() & 1 ){ ++ width--; width2++; ++ } ++ if ( (srcBlitRect.left()+srcBlitRect.width()) & 1 ){ ++ width--; width2++; ++ } ++ width >>= 1; ++ int height = srcBlitRect.height(); ++ int srcYAdd = srcSize.width() - width2; ++ int dstYSub = dstSize.width() - width2; ++ ++ while (height--) { ++ w = width; ++ if (srcBlitRect.left() & 1){ ++ *((Uint16 *)pDst) = *(((Uint16 *)pSrc) + 1); ++ pDst--; pSrc++; + } +- } else { +- return false; // FIXME: Landscape ++ while (w--) { ++ *pDst-- = (*pSrc << 16) | (*pSrc >> 16); ++ ++pSrc; ++ } ++ if ((srcBlitRect.left()+srcBlitRect.width()) & 1){ ++ *(((Uint16 *)pDst) + 1) = *((Uint16 *)pSrc); ++ pDst--; pSrc++; ++ } ++ pSrc += srcYAdd; ++ pDst -= dstYSub; + } +-#ifdef __i386__ +- my_painter->fillRect( rect, QBrush( Qt::NoBrush ) ); +-#endif +- return true; + } + +- +-// Sharp Zaurus SL-5500 etc +-bool SDL_QWin::repaintRotation3(const QRect& rect) { +- if(my_image->width() == width()) { +- ushort *fb = (ushort*)my_painter->frameBuffer(); +- ushort *buf = (ushort*)my_image->bits(); +- gs_fastRotateBlit_3(fb, buf, rect); ++#define BLIT_ROTATE_3_MOV32 ++ ++static void ++blitRotate3(Uint16 *dstBits, const QSize& dstSize, ++ const Uint16 *srcBits, const QSize& srcSize, ++ const QRect& srcBlitRect) ++{ ++ if (srcBlitRect.width() != dstSize.height() || ++ srcBlitRect.height() != dstSize.width()) { ++ // partial update ++ const Uint16 *pSrc = srcBits + ++ (srcBlitRect.left() + srcBlitRect.top() * srcSize.width()); ++ ++ int dstBorderLeftRight = (dstSize.width() - srcSize.height()) >>1; ++ int dstBorderTopBottom = (dstSize.height() - srcSize.width()) >>1; ++ int dstStartOffsetX = dstSize.width() - dstBorderLeftRight - 1; ++ int dstStartOffsetY = dstBorderTopBottom; ++ Uint16 *pDst = dstBits + ++ (dstStartOffsetY * dstSize.width() + dstStartOffsetX); ++ pDst += srcBlitRect.left() * dstSize.width(); ++ pDst -= srcBlitRect.top(); ++ ++ int width = srcBlitRect.width(), height = srcBlitRect.height(), w; ++ int srcYAdd = srcSize.width() - srcBlitRect.width(); ++ int dstXAdd = dstSize.width(); ++ int dstYSub = (dstSize.width() * srcBlitRect.width()) + 1; ++ ++#if 0 ++ fprintf(stderr, "---- Blit begin\n"); ++ fprintf(stderr, "srcSize.width: %d srcSize.height:%d\n", ++ srcSize.width(), srcSize.height()); ++ fprintf(stderr, "srcBlitRect.left:%d srcBlitRect.right:%d srcBlitRect.top:%d srcBlitRect.bottom:%d srcBlitRect.width:%d srcBlitRect.height:%d\n", ++ srcBlitRect.left(), srcBlitRect.right(), srcBlitRect.top(), srcBlitRect.bottom(), srcBlitRect.width(), srcBlitRect.height()); ++ ++ fprintf(stderr, "dstSize.width: %d dstSize.height:%d\n", ++ dstSize.width(), dstSize.height()); ++ fprintf(stderr, "dstBorderLeftRight:%d dstBorderTopBottom:%d dstStartOffsetX:%d dstStartOffsetY:%d\n", ++ dstBorderLeftRight, dstBorderTopBottom, dstStartOffsetX, dstStartOffsetY); ++ fprintf(stderr, "srcYAdd:%d dstXAdd:%d dstYSub:%d\n", srcYAdd, dstXAdd, dstYSub); ++#endif ++ ++ while (height--) { ++ w = width; ++ while (w--) { ++ *pDst = *pSrc ++; ++ pDst += dstXAdd; ++ } ++ pSrc += srcYAdd; ++ pDst -= dstYSub; ++ } ++ // fprintf(stderr, "---- Blit end\n"); + } else { +- // landscape mode +- if (screenRotation == SDL_QT_ROTATION_90) { +- uchar *fb = (uchar*)my_painter->frameBuffer(); +- uchar *buf = (uchar*)my_image->bits(); +- if(rect == my_image->rect()) { +- memcpy(fb, buf, width()*height()*2); +- } else { +- int h = rect.height(); +- int wd = rect.width()<<1; +- int fblineadd = my_painter->lineStep(); +- int buflineadd = my_image->bytesPerLine(); +- fb += (rect.left()<<1) + rect.top() * my_painter->lineStep(); +- buf += (rect.left()<<1) + rect.top() * my_image->bytesPerLine(); +- while(h--) { +- memcpy(fb, buf, wd); +- fb += fblineadd; +- buf += buflineadd; +- } ++ // full update ++#if !defined(BLIT_ROTATE_3_MOV32) ++ const Uint16 *src = srcBits; ++ Uint16 *dst = dstBits + (dstSize.width() - 1); ++ int w = srcBlitRect.width(); ++ int h = srcBlitRect.height(); ++ int i, dstSub = dstSize.width() * w + 1; ++ int dstAdd = dstSize.width(); ++ ++ while (h--) { ++ i = w; ++ while (i--) { ++ *dst = *src ++; ++ dst += dstAdd; + } +- } else if (screenRotation == SDL_QT_ROTATION_270) { +- int h = rect.height(); +- int wd = rect.width(); +- int fblineadd = my_painter->lineStep() - (rect.width() << 1); +- int buflineadd = my_image->bytesPerLine() - (rect.width() << 1); +- int w; +- +- uchar *fb = (uchar*)my_painter->frameBuffer(); +- uchar *buf = (uchar*)my_image->bits(); +- +- fb += ((my_painter->width() - (rect.top() + rect.height())) * +- my_painter->lineStep()) + ((my_painter->height() - ((rect.left() + +- rect.width()))) << 1); +- +- buf += my_image->bytesPerLine() * (rect.top() + rect.height()) - +- (((my_image->width() - (rect.left() + rect.width())) << 1) + 2); +- +- while(h--) { +- w = wd; +- while(w--) *((unsigned short*)fb)++ = *((unsigned short*)buf)--; +- fb += fblineadd; +- buf -= buflineadd; ++ dst -= dstSub; ++ } ++#else // BLIT_ROTATE_3_MOV32 ++ Uint32 *src1 = (Uint32 *)(srcBits); ++ Uint32 *src2 = (Uint32 *)(srcBits + srcSize.width()); ++ Uint32 *dst1 = (Uint32 *)(dstBits + (dstSize.width() - 2)); ++ Uint32 *dst2 = (Uint32 *)(dstBits + (dstSize.width() + dstSize.width() - 2)); ++ int w = srcBlitRect.width() >> 3; ++ int h = srcBlitRect.height() >> 1; ++ int i, dstSub = ((dstSize.width() * srcBlitRect.width()) >> 1) + 1; ++ int dstAdd = dstSize.width(); ++ ++ Uint32 a, b; ++ while (h--) { ++ i = w; ++ while (i--) { ++ a = *src1 ++; ++ b = *src2 ++; ++ *dst1 = (a << 16) | (b & 0xFFFF); ++ *dst2 = (a & 0xFFFF0000) | (b >> 16); ++ dst1 += dstAdd; ++ dst2 += dstAdd; ++ ++ a = *src1 ++; ++ b = *src2 ++; ++ *dst1 = (a << 16) | (b & 0xFFFF); ++ *dst2 = (a & 0xFFFF0000) | (b >> 16); ++ dst1 += dstAdd; ++ dst2 += dstAdd; ++ ++ a = *src1 ++; ++ b = *src2 ++; ++ *dst1 = (a << 16) | (b & 0xFFFF); ++ *dst2 = (a & 0xFFFF0000) | (b >> 16); ++ dst1 += dstAdd; ++ dst2 += dstAdd; ++ ++ a = *src1 ++; ++ b = *src2 ++; ++ *dst1 = (a << 16) | (b & 0xFFFF); ++ *dst2 = (a & 0xFFFF0000) | (b >> 16); ++ dst1 += dstAdd; ++ dst2 += dstAdd; + } ++ src1 += srcSize.width() >> 1; ++ src2 += srcSize.width() >> 1; ++ dst1 -= dstSub; ++ dst2 -= dstSub; + } ++#endif // BLIT_ROTATE_3_MOV32 + } +- return true; + } + +-// ipaq 3800... +-bool SDL_QWin::repaintRotation1(const QRect& rect) { +- if(my_image->width() == width()) { +- ushort *fb = (ushort*)my_painter->frameBuffer(); +- ushort *buf = (ushort*)my_image->bits(); +- gs_fastRotateBlit_1(fb, buf, rect); +- } else { +- return false; // FIXME: landscape mode +- } +- return true; +-} ++#endif // __i386__ + + void SDL_QWin::repaintRect(const QRect& rect) { + if(!my_painter || !rect.width() || !rect.height()) { + return; + } +- +- if(QPixmap::defaultDepth() == 16) { +- switch(my_painter->transformOrientation()) { +- case 3: +- if(repaintRotation3(rect)) { return; } ++#ifndef __i386__ ++ if (QPixmap::defaultDepth() == 16 && my_painter->numRects() >= 0) { ++ Uint16 *fb = (Uint16*)my_painter->frameBuffer(); ++ Uint16 *buf = (Uint16*)my_image->bits(); ++ switch (rotation_) { ++ case 0: ++ blitRotate0(fb, fbSize_, ++ buf, QSize(my_image->width(), my_image->height()), ++ rect); + break; + case 1: +- if(repaintRotation1(rect)) { return; } ++ blitRotate1(fb, fbSize_, ++ buf, QSize(my_image->width(), my_image->height()), ++ rect); + break; +- case 0: +- if(repaintRotation0(rect)) { return; } ++ case 2: ++ blitRotate2(fb, fbSize_, ++ buf, QSize(my_image->width(), my_image->height()), ++ rect); ++ break; ++ case 3: ++ blitRotate3(fb, fbSize_, ++ buf, QSize(my_image->width(), my_image->height()), ++ rect); + break; + } +- } +- my_painter->drawImage(rect.topLeft(), *my_image, rect); ++ } else { ++#endif // __i386__ ++ QDirectPainter pp(this); ++ pp.drawImage(rect.topLeft(), *my_image, rect); ++// pp.end(); ++#ifndef __i386__ ++ } ++#endif // __i386__ + } + + // This paints the current buffer to the screen, when desired. + void SDL_QWin::paintEvent(QPaintEvent *ev) { +- if(my_image) { ++ if(my_image && isVisible() && isActiveWindow()) { ++ // TODO: better handling + lockScreen(true); + repaintRect(ev->rect()); + unlockScreen(); + } + } + ++int SDL_QWin::ApplyKeyRotation(int key) ++{ ++ int c; ++ int sdlScancode[] = { SDLK_LEFT, SDLK_DOWN, SDLK_RIGHT, SDLK_UP }; ++ ++ switch (key) { ++ case Qt::Key_Left: ++ c = 0; ++ break; ++ case Qt::Key_Down: ++ c = 1; ++ break; ++ case Qt::Key_Right: ++ c = 2; ++ break; ++ case Qt::Key_Up: ++ c = 3; ++ break; ++ default: ++ return 0; ++ } ++ ++// c = (c + qteKeyRotation_) & 3; ++// return sdlScancode[(c - keyRotation_) & 3]; ++ return sdlScancode[(c + qteKeyRotation_ - keyRotation_) & 3]; ++} ++ + /* Function to translate a keyboard transition and queue the key event + * This should probably be a table although this method isn't exactly + * slow. + */ + void SDL_QWin::QueueKey(QKeyEvent *e, int pressed) +-{ ++{ ++ if (e->isAutoRepeat()) ++ return; ++ + SDL_keysym keysym; + int scancode = e->key(); ++ + /* Set the keysym information */ + if(scancode >= 'A' && scancode <= 'Z') { + // Qt sends uppercase, SDL wants lowercase +@@ -396,26 +516,12 @@ + case Qt::Key_Home: scancode = SDLK_HOME; break; + case Qt::Key_End: scancode = SDLK_END; break; + // We want the control keys to rotate with the screen +- case Qt::Key_Left: +- if (screenRotation == SDL_QT_ROTATION_90) scancode = SDLK_UP; +- else if (screenRotation == SDL_QT_ROTATION_270) scancode = SDLK_DOWN; +- else scancode = SDLK_LEFT; +- break; +- case Qt::Key_Up: +- if (screenRotation == SDL_QT_ROTATION_90) scancode = SDLK_RIGHT; +- else if (screenRotation == SDL_QT_ROTATION_270) scancode = SDLK_LEFT; +- else scancode = SDLK_UP; +- break; +- case Qt::Key_Right: +- if (screenRotation == SDL_QT_ROTATION_90) scancode = SDLK_DOWN; +- else if (screenRotation == SDL_QT_ROTATION_270) scancode = SDLK_UP; +- else scancode = SDLK_RIGHT; +- break; ++ case Qt::Key_Left: ++ case Qt::Key_Up: ++ case Qt::Key_Right: + case Qt::Key_Down: +- if (screenRotation == SDL_QT_ROTATION_90) scancode = SDLK_LEFT; +- else if (screenRotation == SDL_QT_ROTATION_270) scancode = SDLK_RIGHT; +- else scancode = SDLK_DOWN; +- break; ++ scancode = ApplyKeyRotation(scancode); ++ break; + case Qt::Key_Prior: scancode = SDLK_PAGEUP; break; + case Qt::Key_Next: scancode = SDLK_PAGEDOWN; break; + case Qt::Key_Shift: scancode = SDLK_LSHIFT; break; +@@ -434,9 +540,18 @@ + case Qt::Key_F7: scancode = SDLK_F7; break; + case Qt::Key_F8: scancode = SDLK_F8; break; + case Qt::Key_F9: scancode = SDLK_F9; break; +- case Qt::Key_F10: scancode = SDLK_F10; break; +- case Qt::Key_F11: scancode = SDLK_F11; break; +- case Qt::Key_F12: scancode = SDLK_F12; break; ++ case Qt::Key_F10: ++ scancode = SDLK_F10; ++ mouse_button_mode=1; ++ break; ++ case Qt::Key_F11: ++ scancode = SDLK_F11; ++ mouse_button_mode=3; ++ break; ++ case Qt::Key_F12: ++ scancode = SDLK_F12; ++ mouse_button_mode=2; ++ break; + case Qt::Key_F13: scancode = SDLK_F13; break; + case Qt::Key_F14: scancode = SDLK_F14; break; + case Qt::Key_F15: scancode = SDLK_F15; break; +@@ -452,13 +567,14 @@ + // david@hedbor.org + scancode = SDLK_RETURN; + break; ++ + default: + scancode = SDLK_UNKNOWN; + break; + } +- keysym.sym = static_cast<SDLKey>(scancode); ++ keysym.sym = static_cast<SDLKey>(scancode); + } else { +- keysym.sym = static_cast<SDLKey>(scancode); ++ keysym.sym = static_cast<SDLKey>(scancode); + } + keysym.scancode = scancode; + keysym.mod = KMOD_NONE; +@@ -478,11 +594,82 @@ + // pressed = 1; + // } + ++ if (isSLA300InputFix_ && ++ (keysym.sym == SDLK_SPACE || (keysym.sym >= 273 && keysym.sym <= 276))) { ++ if (keysym.sym >= 273) curAxis_[keysym.sym-273] = pressed; ++ else curAxis_[4] = pressed; ++ } ++ + /* Queue the key event */ + if ( pressed ) { +- SDL_PrivateKeyboard(SDL_PRESSED, &keysym); ++ /* fprintf(stderr, "press %d\n", keysym.sym); */ ++ SDL_PrivateKeyboard(SDL_PRESSED, &keysym); ++ if (isSLA300InputFix_ && ++ (keysym.sym >= 273 && keysym.sym <= 276)) { ++ if (keysym.sym == SDLK_UP) { ++ if (curAxis_[1]) { ++ keysym.sym = SDLK_DOWN; ++ keysym.scancode = Qt::Key_Down; ++ curAxis_[1] = 0; ++ /* fprintf(stderr, "force release %d\n", keysym.sym); */ ++ SDL_PrivateKeyboard(SDL_RELEASED, &keysym); ++ } ++ } ++ else if (keysym.sym == SDLK_DOWN) { ++ if (curAxis_[0]) { ++ keysym.sym = SDLK_UP; ++ keysym.scancode = Qt::Key_Up; ++ curAxis_[0] = 0; ++ /* fprintf(stderr, "force release %d\n", keysym.sym); */ ++ SDL_PrivateKeyboard(SDL_RELEASED, &keysym); ++ } ++ } ++ else if (keysym.sym == SDLK_RIGHT) { ++ if (curAxis_[3]) { ++ keysym.sym = SDLK_LEFT; ++ keysym.scancode = Qt::Key_Left; ++ curAxis_[3] = 0; ++ /* fprintf(stderr, "force release %d\n", keysym.sym); */ ++ SDL_PrivateKeyboard(SDL_RELEASED, &keysym); ++ } ++ } ++ else if (keysym.sym == SDLK_LEFT) { ++ if (curAxis_[2]) { ++ keysym.sym = SDLK_RIGHT; ++ keysym.scancode = Qt::Key_Right; ++ curAxis_[2] = 0; ++ /* fprintf(stderr, "force release %d\n", keysym.sym); */ ++ SDL_PrivateKeyboard(SDL_RELEASED, &keysym); ++ } ++ } ++ } + } else { +- SDL_PrivateKeyboard(SDL_RELEASED, &keysym); ++ /* fprintf(stderr, "release %d\n", keysym.sym); */ ++ SDL_PrivateKeyboard(SDL_RELEASED, &keysym); ++ ++ if (isSLA300InputFix_ && ++ (keysym.sym == SDLK_SPACE || ++ (keysym.sym >= 273 && keysym.sym <= 276))) { ++ for (int i = 0; i < 4; i++) { ++ if (curAxis_[i]) { ++ int sym = i+273; ++ keysym.sym = static_cast<SDLKey>(sym); ++ if (sym == SDLK_UP) keysym.scancode = Qt::Key_Up; ++ else if (sym == SDLK_RIGHT) keysym.scancode = Qt::Key_Right; ++ else if (sym == SDLK_DOWN) keysym.scancode = Qt::Key_Down; ++ else if (sym == SDLK_LEFT) keysym.scancode = Qt::Key_Left; ++ curAxis_[i] = 0; ++ /* fprintf(stderr, "force release %d\n", keysym.sym); */ ++ SDL_PrivateKeyboard(SDL_RELEASED, &keysym); ++ } ++ } ++ if (curAxis_[4]) { ++ keysym.scancode = keysym.sym = SDLK_SPACE; ++ curAxis_[4] = 0; ++ /* fprintf(stderr, "force release %d\n", keysym.sym); */ ++ SDL_PrivateKeyboard(SDL_RELEASED, &keysym); ++ } ++ } + } + } + +@@ -524,7 +711,7 @@ + my_locked--; // decrease lock refcount; + } + if(!my_locked && my_painter) { +- my_painter->end(); ++// my_painter->end(); + delete my_painter; + my_painter = 0; + } +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_QWin.h SDL-1.2.9/src/video/qtopia/SDL_QWin.h +--- SDL-1.2.9-orig/src/video/qtopia/SDL_QWin.h 2004-01-04 17:49:26.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_QWin.h 2007-03-12 20:54:14.000000000 +0100 +@@ -1,3 +1,4 @@ ++ + /* + SDL - Simple DirectMedia Layer + Copyright (C) 1997-2004 Sam Lantinga +@@ -52,6 +53,7 @@ + class SDL_QWin : public QWidget + { + void QueueKey(QKeyEvent *e, int pressed); ++ int ApplyKeyRotation(int key); + public: + SDL_QWin(const QSize& size); + virtual ~SDL_QWin(); +@@ -71,7 +73,7 @@ + y = my_offset.y(); + } + QImage *image(void) { return my_image; } +- ++ + void setWFlags(WFlags flags) { + QWidget::setWFlags(flags); + my_flags = flags; +@@ -83,6 +85,15 @@ + bool lockScreen(bool force=false); + void unlockScreen(); + void repaintRect(const QRect& rect); ++ void setScreenRotation(int sdlr, int qter) { ++ rotation_ = sdlr; qteRotation_ = qter; ++ } ++ void setKeyRotation(int sdlr, int qter) { ++ keyRotation_ = sdlr; qteKeyRotation_ = qter; ++ } ++ void setFBSize(QSize& s) { fbSize_ = s; } ++// void setSLC700InputFix(bool isEnable) { isSLC700InputFix_ = isEnable; } ++ void setSLA300InputFix(bool isEnable) { isSLA300InputFix_ = isEnable; } + protected: + /* Handle resizing of the window */ + virtual void resizeEvent(QResizeEvent *e); +@@ -95,10 +106,8 @@ + void paintEvent(QPaintEvent *ev); + void keyPressEvent(QKeyEvent *e) { QueueKey(e, 1); } + void keyReleaseEvent(QKeyEvent *e) { QueueKey(e, 0); } ++ + private: +- bool repaintRotation0(const QRect& rect); +- bool repaintRotation1(const QRect& rect); +- bool repaintRotation3(const QRect& rect); + void enableFullscreen(); + QDirectPainter *my_painter; + QImage *my_image; +@@ -108,6 +117,12 @@ + WFlags my_flags; + WFlags my_has_fullscreen; + unsigned int my_locked; ++ int rotation_, qteRotation_; ++ int keyRotation_, qteKeyRotation_; ++ QSize fbSize_; ++// bool isSLC700InputFix_; ++ bool isSLA300InputFix_; ++ int curAxis_[5]; // 0: up, 1: down, 2: right, 3: left, 4: center + }; + + #endif /* _SDL_QWin_h */ +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_sysmouse.cc SDL-1.2.9/src/video/qtopia/SDL_sysmouse.cc +--- SDL-1.2.9-orig/src/video/qtopia/SDL_sysmouse.cc 2004-01-04 17:49:26.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_sysmouse.cc 2007-03-12 20:54:14.000000000 +0100 +@@ -60,6 +60,7 @@ + void QT_WarpWMCursor(_THIS, Uint16 x, Uint16 y) + { + SDL_Win->setMousePos(QPoint(x, y)); ++ SDL_PrivateMouseMotion( 0, 0, x, y ); + } + + }; /* Extern C */ +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_sysvideo.cc SDL-1.2.9/src/video/qtopia/SDL_sysvideo.cc +--- SDL-1.2.9-orig/src/video/qtopia/SDL_sysvideo.cc 2004-01-04 17:49:26.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_sysvideo.cc 2007-03-12 20:54:14.000000000 +0100 +@@ -1,3 +1,4 @@ ++ + /* + SDL - Simple DirectMedia Layer + Copyright (C) 1997-2004 Sam Lantinga +@@ -29,17 +30,32 @@ + + #include <stdlib.h> + #include <string.h> ++#include <stdarg.h> ++#include <fcntl.h> ++#include <sys/ioctl.h> + + #include <stdio.h> + #include <unistd.h> ++#include <sys/types.h> ++#include <sys/wait.h> ++#include <linux/fb.h> ++#include <sys/mman.h> ++#include <asm/page.h> + + #include <qapplication.h> + #include <qpe/qpeapplication.h> ++#include <qpe/qcopenvelope_qws.h> ++#include <qgfx_qws.h> ++#include <qwindowsystem_qws.h> ++#include <qwidget.h> ++#include <qwidgetlist.h> ++#include <qdirectpainter_qws.h> + + #include "SDL.h" + #include "SDL_timer.h" + + #include "SDL_QWin.h" ++#include "SDL_sysvideo.h" + + extern "C" { + +@@ -51,14 +67,67 @@ + #include "SDL_lowvideo.h" + + //#define QTOPIA_DEBUG ++#define QTOPIA_LOG + #define QT_HIDDEN_SIZE 32 /* starting hidden window size */ + ++#ifdef QTOPIA_LOG ++ static FILE *st_logfp = NULL; ++#endif ++ static inline void LOG(char *fmt, ...) ++ { ++#ifdef QTOPIA_LOG ++ va_list ap; ++ ++ va_start(ap, fmt); ++ vfprintf(st_logfp, fmt, ap); ++ if (st_logfp != stderr) { ++ fflush(st_logfp); ++ vfprintf(stderr, fmt, ap); ++ } ++ va_end(ap); ++#endif ++ } ++ ++ typedef struct machine_spec { ++ const char *manif; ++ const char *name; ++ int qpe_server_rotation; ++ int init_screen_rot; ++ int init_key_rot; ++ } machine_spec_t; ++ ++ typedef enum { ++ MACHINE_SHARP_SL5000D, ++ MACHINE_SHARP_SL5500, ++ MACHINE_SHARP_SLA300, ++ MACHINE_SHARP_SLB500, ++ MACHINE_SHARP_SLC700, ++ MACHINE_SHARP_SLC750, ++ MACHINE_SHARP_SLC760, ++ MACHINE_SHARP_SLC860, ++ MACHINE_SHARP_SL6000, ++ MACHINE_MAX ++ } machine_t; ++ ++ static const machine_spec_t st_machine_spec[] = { ++ { "Sharp", "SL-5000D", 0 }, ++ { "Sharp", "SL-5500", 0 }, ++ { "Sharp", "SL-A300", 0 }, ++ { "Sharp", "SL-B500", 0 }, ++ { "Sharp", "SL-C700", 0 }, ++ { "Sharp", "SL-C750", 0 }, ++ { "Sharp", "SL-C760", 0 }, ++ { "Sharp", "SL-C860", 0 }, ++ { "Sharp", "SL-6000", 0 }, ++ }; ++ + /* Name of the environment variable used to invert the screen rotation or not: + Possible values: +- !=0 : Screen is 270° rotated +- 0: Screen is 90° rotated*/ +-#define SDL_QT_ROTATION_ENV_NAME "SDL_QT_INVERT_ROTATION" +- ++ !=0 : Screen is 270- rotated ++ 0: Screen is 90- rotated*/ ++#define SDL_QT_ROTATION_ENV_NAME "SDL_QT_ROTATION" ++#define SDL_QT_INVERT_ROTATION_ENV_NAME "SDL_QT_INVERT_ROTATION" ++ + /* Initialization/Query functions */ + static int QT_VideoInit(_THIS, SDL_PixelFormat *vformat); + static SDL_Rect **QT_ListModes(_THIS, SDL_PixelFormat *format, Uint32 flags); +@@ -78,6 +147,20 @@ + static int QT_IconifyWindow(_THIS); + static SDL_GrabMode QT_GrabInput(_THIS, SDL_GrabMode mode); + ++ static int console_fd; ++ struct fb_var_screeninfo saved_vinfo; ++ int fb_hwrot; ++ int fb_direct; ++ static int isKHloaded; ++ bool is_VGA_machine; ++ ++#define W100FB_CONFIG 0x57415200 /* WAL\00 */ ++#define W100INIT_ITEM 0 ++#define W100INIT_ALL 1 ++#define W100INIT_ITEM_WITH_VAL 2 ++#define W100FB_CONFIG_EX 0x57415202 /* WAL\02 */ ++ ++ + /* FB driver bootstrap functions */ + + static int QT_Available(void) +@@ -222,13 +305,34 @@ + + int QT_VideoInit(_THIS, SDL_PixelFormat *vformat) + { +- /* Initialize the QPE Application */ ++ const char *SDL_fbdev; ++ struct fb_var_screeninfo vinfo; ++ ++ /* Initialize the QPE Application */ + /* Determine the screen depth */ + vformat->BitsPerPixel = QPixmap::defaultDepth(); + + // For now we hardcode the current depth because anything else + // might as well be emulated by SDL rather than by Qtopia. +- ++ ++ //frame buffer device open. ++ SDL_fbdev = getenv("SDL_FBDEV"); ++ if ( SDL_fbdev == NULL ) { ++ SDL_fbdev = "/dev/fb0"; ++ } ++ console_fd = open(SDL_fbdev, O_RDWR, 0); ++ if ( console_fd < 0 ) { ++ SDL_SetError("Unable to open %s", SDL_fbdev); ++ return(-1); ++ } ++ ++ if ( ioctl(console_fd, FBIOGET_VSCREENINFO, &vinfo) < 0 ) { ++ SDL_SetError("Couldn't get console pixel format"); ++ QT_VideoQuit(_this); ++ return(-1); ++ } ++ saved_vinfo = vinfo; ++ + QSize desktop_size = qApp->desktop()->size(); + QT_AddMode(_this, ((vformat->BitsPerPixel+7)/8)-1, + desktop_size.width(), desktop_size.height()); +@@ -241,7 +345,24 @@ + /* Fill in some window manager capabilities */ + _this->info.wm_available = 0; + +- /* We're done! */ ++#ifdef QTOPIA_LOG ++ st_logfp = fopen("/tmp/sdl-qt-debug", "w"); ++ if (!st_logfp) ++ st_logfp = stderr; ++#endif ++ ++ QT_GrabInput(_this, SDL_GRAB_ON); ++/* ++ { ++ QCopEnvelope e("QPE/KeyHelper", "repeater(int)"); ++ e << 2; ++ } ++*/ ++ isKHloaded=(fopen("/home/zaurus/Settings/keyhelper_SDL.xml","r") != NULL) ? 1 : 0; ++ if (isKHloaded) { ++ system("qcop QPE/KeyHelper \"reload(QString)\" keyhelper_SDL.xml"); //QcopEnvelope can't use. ++ LOG("keyhelper_SDL.xml loaded\n"); ++ } + return(0); + } + +@@ -264,6 +385,7 @@ + + /* Various screen update functions available */ + static void QT_NormalUpdate(_THIS, int numrects, SDL_Rect *rects); ++ static void QT_DirectUpdate(_THIS, int numrects, SDL_Rect *rects); + + + static int QT_SetFullScreen(_THIS, SDL_Surface *screen, int fullscreen) +@@ -276,47 +398,428 @@ + return -1; + } + ++ static machine_t QT_GetMachine(_THIS) ++ { ++ FILE *fp; ++ machine_t machine = MACHINE_SHARP_SL5000D; ++ char buf[1024]; ++ ++ ++ fp = fopen("/proc/cpuinfo", "rb"); ++ if (fp) { ++ if (fread(buf, 1, sizeof(buf), fp) > 0) { ++ LOG("QT_GetMachine: /proc/cpuinfo is %s\n", buf); ++ if (strstr(buf, "SHARP Tosa") != NULL) ++ machine = MACHINE_SHARP_SL6000; ++ else if (strstr(buf, "Collie") != NULL) ++ machine = MACHINE_SHARP_SL5500; ++ else if (strstr(buf, "SHARP Poodle") != NULL) ++ machine = MACHINE_SHARP_SLB500; ++ else if (strstr(buf, "SHARP Corgi") !=NULL) ++ machine = MACHINE_SHARP_SLC700; ++ else if (strstr(buf, "SHARP Shepherd") !=NULL) ++ machine = MACHINE_SHARP_SLC750; ++ else if (strstr(buf, "SHARP Husky") !=NULL) ++ machine = MACHINE_SHARP_SLC760; ++ else if (strstr(buf, "SHARP Boxer") != NULL) ++ machine = MACHINE_SHARP_SLC860; ++ } ++ fclose(fp); ++ } else { ++ LOG("QT_GetMachine: Couldn't read /proc/deviceinfo/product.\n"); ++ LOG(" Now set machine variable to default (SL-5000D)\n"); ++ } ++ ++ LOG(" detected machine is '%s %s'\n", ++ st_machine_spec[machine].manif, st_machine_spec[machine].name); ++ return machine; ++ } ++ ++ static void QT_GetQteServerSpec(_THIS, int *rotation, bool *isQvga) ++ { ++ const char *user; ++ char buf[FILENAME_MAX]; ++ FILE *fp; ++ int rot = 0, is_qvga = 0; ++ ++ user = getenv("USER"); ++ snprintf(buf, sizeof(buf), "/tmp/qtembedded-%s/QtEmbedded-0.spec", ++ user ? user : "root"); ++ LOG("QT_GetRotation: Read spec from '%s'\n", buf); ++ ++ fp = fopen(buf, "rb"); ++ if (fp) { ++ int size; ++ if ((size = fread(buf, 1, sizeof(buf) - 1, fp)) > 0) { ++ buf[size] = '\0'; ++ LOG(" spec is '%s'\n", buf); ++ // get rotation value ++ if (strstr(buf, "Rot")) { ++ rot = atoi(strstr(buf, "Rot") + 3); ++ rot /= 90; ++ if (rot < 0 || rot > 3) { ++ rot = 0; ++ } ++ } else ++ rot = 0; ++ ++ // get qvga mode in SL-C700 ++ if (strstr(buf, "Qvga")) ++ is_qvga = 1; ++ } ++ fclose(fp); ++ } ++ ++ LOG(" Rot=%d, Qvga=%d\n", rot, is_qvga); ++ ++ if (rotation) ++ *rotation = rot; ++ if (isQvga) ++ *isQvga = is_qvga; ++ } ++ + /* FIXME: check return values and cleanup here */ + SDL_Surface *QT_SetVideoMode(_THIS, SDL_Surface *current, + int width, int height, int bpp, Uint32 flags) + { +- + QImage *qimage; +- QSize desktop_size = qApp->desktop()->size(); ++ QSize qteSize = qApp->desktop()->size(); ++ QSize fbSize; ++ QSize userSize; ++ int fb_xres; ++ int fb_yres; ++ struct fb_var_screeninfo vinfo; ++ struct fb_fix_screeninfo finfo; ++ int tmp_ioctl_data; ++ char fb_size_fix = ' '; ++ bool isW100patch_kernel = false; ++ int numFb_Size; ++ ++ int mapped_memlen; ++ int mapped_offset; ++ void *mapped_mem; ++ int fb_offset; ++ ++ ++ machine_t machine = QT_GetMachine(_this); ++ machine_spec_t machineSpec = st_machine_spec[machine]; ++ int qteRotation, userRotation, sdlRotation; ++ int qteKeyRotation, sdlKeyRotation; ++ bool isQteQvga; ++ ++ if (machine == MACHINE_SHARP_SLC700 || ++ machine == MACHINE_SHARP_SLC750 || ++ machine == MACHINE_SHARP_SLC760 || ++ machine == MACHINE_SHARP_SLC860 || // ¾Ü¤·¤¤¤³¤È¤ï¤«¤é¤ó¤±¤É¤È¤ê¤¢¤¨¤º ++ machine == MACHINE_SHARP_SL6000 ) { // ¾Ü¤·¤¤¤³¤È¤ï¤«¤é¤ó¤±¤É¤È¤ê¤¢¤¨¤º ++ is_VGA_machine = true; ++ }else { ++ is_VGA_machine = false; ++ } ++ ++ // qte ¤Ç¤Î²óž³ÑÅÙ¤ò¼èÆÀ ++ QT_GetQteServerSpec(_this, &qteRotation, &isQteQvga); ++ ++ // SL-C700 ¤Î¥¹¥¿¥¤¥ë ++ bool isInputStyle = false; ++ if (is_VGA_machine) { ++ int status = system("/home/QtPalmtop/bin/chkhinge"); ++ if (WEXITSTATUS(status) != 2) ++ isInputStyle = true; ++ LOG("QT_SetVideoMode: SL-C700 Style is %s\n", ++ isInputStyle ? "Input style" : "View style"); ++ } + + +- current->flags = 0; //SDL_FULLSCREEN; // We always run fullscreen. ++ // specity screen setting ++ if (is_VGA_machine) { ++ ++ // w100 rotation pached kernel check ++ isW100patch_kernel = (fopen("/proc/driver/w100/rotation","r") != NULL) ? true : false; ++ LOG("Your Kernel is %s\n",isW100patch_kernel ? "Special Kernel" : "Normal Kernel"); ++ ++ const char *envFb_Size = getenv("SDL_FB_SIZE"); ++ if (envFb_Size !=NULL) { ++ numFb_Size=sscanf(envFb_Size,"%dx%d%c",&fb_xres,&fb_yres,&fb_size_fix); ++ } else { ++ numFb_Size=0; ++ } + +- if(width <= desktop_size.width() +- && height <= desktop_size.height()) { +- current->w = desktop_size.width(); +- current->h = desktop_size.height(); +- } else if(width <= desktop_size.height() && height <= desktop_size.width()) { +- // Landscape mode +- char * envString = getenv(SDL_QT_ROTATION_ENV_NAME); +- int envValue = envString ? atoi(envString) : 0; +- screenRotation = envValue ? SDL_QT_ROTATION_270 : SDL_QT_ROTATION_90; +- current->h = desktop_size.width(); +- current->w = desktop_size.height(); ++ if (numFb_Size >=2) { ++ ++ // specity screen mode ++ if ( ioctl(console_fd, FBIOGET_VSCREENINFO, &vinfo) < 0 ) { ++ SDL_SetError("Couldn't get console pixel format"); ++ QT_VideoQuit(_this); ++ return(NULL); ++ } ++ ++ vinfo.xres = fb_xres; ++ vinfo.xres_virtual = fb_xres; ++ vinfo.yres = fb_yres; ++ vinfo.yres_virtual = fb_yres; ++ ++ if (fb_size_fix == '@') { ++ width = fb_xres; ++ height = fb_yres; ++ } ++ ++ if ( ioctl(console_fd, FBIOPUT_VSCREENINFO, &vinfo) < 0 ) { ++ SDL_SetError("Couldn't set console screen info"); ++ return(NULL); ++ } ++ ++ ++ if (isW100patch_kernel) { ++ qteSize.setWidth(vinfo.xres); ++ qteSize.setHeight(vinfo.yres); ++ qteRotation=0; ++ }else if(vinfo.xres == 320){ ++ qteSize.setWidth(vinfo.xres); ++ qteSize.setHeight(vinfo.yres); ++ qteRotation=2; ++ }else { ++ qteSize.setWidth(vinfo.yres); ++ qteSize.setHeight(vinfo.xres); ++ qteRotation=3; ++ } ++ ++ if (isW100patch_kernel && (vinfo.xres == 320) && (vinfo.yres == 240)) { ++ tmp_ioctl_data=121; ++ ioctl(console_fd, W100FB_CONFIG_EX, &tmp_ioctl_data); ++ fb_hwrot=1; ++ } ++ ++ LOG("FBVideoMode: %dx%d%c\n", vinfo.xres, vinfo.yres,fb_size_fix ); ++ ++ }else { ++ ++ // auto screen mode ++ if ( ioctl(console_fd, FBIOGET_VSCREENINFO, &vinfo) < 0 ) { ++ SDL_SetError("Couldn't get console pixel format"); ++ QT_VideoQuit(_this); ++ return(NULL); ++ } ++ ++ if (isW100patch_kernel && (isInputStyle == false) && (vinfo.xres == 240) && (vinfo.yres == 320)) { ++ vinfo.xres = 240; ++ vinfo.xres_virtual = 240; ++ vinfo.yres = 320; ++ vinfo.yres_virtual = 320; ++ qteRotation=0; ++ }else if ((width <= 320) && (height <= 240)) { ++ vinfo.xres = 320; ++ vinfo.xres_virtual = 320; ++ vinfo.yres = 240; ++ vinfo.yres_virtual = 240; ++ }else if (isW100patch_kernel && (isInputStyle == true)){ ++ vinfo.xres = 640; ++ vinfo.xres_virtual = 640; ++ vinfo.yres = 480; ++ vinfo.yres_virtual = 480; ++ qteRotation=0; ++ }else { ++ vinfo.xres = 480; ++ vinfo.xres_virtual = 480; ++ vinfo.yres = 640; ++ vinfo.yres_virtual = 640; ++ } ++ ++ if ( ioctl(console_fd, FBIOPUT_VSCREENINFO, &vinfo) < 0 ) { ++ SDL_SetError("Couldn't set console screen info"); ++ return(NULL); ++ } ++ ++ if (isW100patch_kernel) { ++ qteSize.setWidth(vinfo.xres); ++ qteSize.setHeight(vinfo.yres); ++ qteRotation=0; ++ fb_direct=1; ++ }else if(vinfo.xres == 320){ ++ qteSize.setWidth(vinfo.xres); ++ qteSize.setHeight(vinfo.yres); ++ qteRotation=2; ++ }else { ++ qteSize.setWidth(vinfo.yres); ++ qteSize.setHeight(vinfo.xres); ++ qteRotation=3; ++ } ++ ++ if (isW100patch_kernel && (vinfo.xres == 320) && (vinfo.yres == 240)) { ++ tmp_ioctl_data=121; ++ ioctl(console_fd, W100FB_CONFIG_EX, &tmp_ioctl_data); ++ fb_hwrot=1; ++ qteRotation=0; ++ } ++ ++ LOG("FBVideoMode: %dx%d%c\n", vinfo.xres, vinfo.yres,fb_size_fix ); ++ } ++ } ++ ++ // direct paint setting ++ const char *envFb_Direct = getenv("SDL_FB_DIRECT"); ++ if (envFb_Direct !=NULL) ++ fb_direct = envFb_Direct ? atoi(envFb_Direct) : -1; ++ ++ if (fb_direct == 1){ ++ if ( ioctl(console_fd, FBIOGET_FSCREENINFO, &finfo) < 0 ) { ++ SDL_SetError("Couldn't get console hardware info"); ++ QT_VideoQuit(_this); ++ return(NULL); ++ } ++ if ( ioctl(console_fd, FBIOGET_VSCREENINFO, &vinfo) < 0 ) { ++ SDL_SetError("Couldn't get console pixel format"); ++ QT_VideoQuit(_this); ++ return(NULL); ++ } ++ LOG("Direct paint mode\n"); ++ } ++ ++ // hack for SL-5500 ++ if (machine == MACHINE_SHARP_SL5500) ++ qteRotation = 3; ++ ++ // SL-B500 Íѥϥå¯(¤È¤ê¤¢¤¨¤º¡¢¤Í) ++ if (machine == MACHINE_SHARP_SLB500) ++ qteRotation = 3; ++ ++ // À¸¥Õ¥ì¡¼¥à¥Ð¥Ã¥Õ¥¡¤Î¥µ¥¤¥º¤òÆÀ¤ë ++ if (qteRotation & 1) { ++ fbSize.setWidth(qteSize.height()); ++ fbSize.setHeight(qteSize.width()); ++ } else { ++ fbSize = qteSize; ++ } ++ ++ // ++ const char *envRotStr = getenv(SDL_QT_ROTATION_ENV_NAME); ++ userRotation = envRotStr ? atoi(envRotStr) : -1; ++ if ((userRotation >= 0 ? userRotation : qteRotation) & 1) { ++ userSize.setWidth(fbSize.height()); ++ userSize.setHeight(fbSize.width()); ++ } else { ++ userSize = fbSize; ++ } ++ ++ if (width <= userSize.width() && height <= userSize.height()) { ++ // ´Ä¶ÊÑ¿ô¤Ç²óž³ÑÅÙ¤¬»ØÄꤵ¤ì¤Æ¤¤¤ì¤Ð¡¢¤½¤ì¤òºÇÍ¥À褹¤ë ++ if (userRotation >= 0) ++ sdlRotation = userRotation; ++ else { ++ // ¤Ç¡¢¤½¤Î»ØÄ̵꤬¤¤¤Î¤Ç¤¢¤ì¤Ð qte ¤Î²óž³ÑÅ٤˹ç¤ï¤»¤ë¤À¤± ++ // ¤Ê¤ó¤À¤±¤É¡¢SL-C700 ¤Ç¤Ï¤Á¤ç¤¤Ê£»¨¡£ ++ if (is_VGA_machine && (fbSize.width() == 320) && (fbSize.height() == 240)) { ++ if (isInputStyle) ++ sdlRotation = 2; ++ else ++ sdlRotation = qteRotation; ++ } else { ++ sdlRotation = qteRotation; ++ } ++ } ++ } else if (width <= fbSize.width() && height <= fbSize.height()) { ++ sdlRotation = 0; ++ if (is_VGA_machine && (fbSize.width() == 320) && (fbSize.height() == 240) && isInputStyle) ++ sdlRotation = 2; ++ } else if (width <= fbSize.height() && height <= fbSize.width()) { ++ sdlRotation = 1; + } else { + SDL_SetError("Unsupported resolution, %dx%d\n", width, height); ++ return NULL; + } ++ ++ if (fb_hwrot == 1) ++ sdlRotation = 0; ++ ++ if (getenv(SDL_QT_INVERT_ROTATION_ENV_NAME) != NULL) { ++ sdlRotation = (sdlRotation + 2) & 3; ++ } ++ ++ LOG("QT_SetVideoMode: argSize=%dx%d\n", width, height); ++ LOG("QT_SetVideoMode: qteSize=%dx%d\n", ++ qteSize.width(), qteSize.height()); ++ LOG("QT_SetVideoMode: fbSize=%dx%d\n", ++ fbSize.width(), fbSize.height()); ++ LOG("QT_SetVideoMode: qteRotation=%d\n", qteRotation); ++ LOG("QT_SetVideoMode: userRotation=%d\n", userRotation); ++ LOG("QT_SetVideoMode: sdlRotation=%d\n", sdlRotation); ++ ++ current->flags = 0;//SDL_FULLSCREEN; // We always run fullscreen. ++ current->w = width; ++ current->h = height; ++ SDL_Win->setScreenRotation(sdlRotation, qteRotation); ++ SDL_Win->setFBSize(fbSize); ++ ++ if (machine == MACHINE_SHARP_SLA300) ++ SDL_Win->setSLA300InputFix(true); ++ ++ // keyboard rotation ++ qteKeyRotation = qteRotation; ++// fprintf(stderr, "%d\n", (machine == MACHINE_SHARP_SLC700)); ++// fprintf(stderr, "%d\n", isQteQvga); ++ if (isQteQvga && is_VGA_machine) ++ qteKeyRotation = 3; ++ else if (machine == MACHINE_SHARP_SLB500) ++ qteKeyRotation = 3; ++ ++ if (isQteQvga && fb_hwrot == 1) ++ qteKeyRotation = 1; ++ ++ sdlKeyRotation = sdlRotation; ++ ++ SDL_Win->setKeyRotation(sdlKeyRotation, qteKeyRotation); ++ ++ LOG("QT_SetVideoMode: qteKeyRotation=%d\n", qteKeyRotation); ++ LOG("QT_SetVideoMode: sdlKeyRotation=%d\n", sdlKeyRotation); ++ + if ( flags & SDL_OPENGL ) { + SDL_SetError("OpenGL not supported"); + return(NULL); +- } ++ } + /* Create the QImage framebuffer */ +- qimage = new QImage(current->w, current->h, bpp); +- if (qimage->isNull()) { +- SDL_SetError("Couldn't create screen bitmap"); +- delete qimage; +- return(NULL); ++ ++ // frame buffer memory mapping ++ if (fb_direct == 1) { ++ current->pitch = finfo.line_length; ++ current->flags = (SDL_FULLSCREEN|SDL_HWSURFACE); ++ mapped_offset = (((long)finfo.smem_start) - ++ (((long)finfo.smem_start)&~(PAGE_SIZE-1))); ++ mapped_memlen = finfo.smem_len+mapped_offset; ++ if(console_fd >0 ) { ++ mapped_mem = mmap(NULL, mapped_memlen,PROT_READ|PROT_WRITE, MAP_SHARED, console_fd, 0); ++ fb_offset=(vinfo.xres-width)+(vinfo.yres-height)*vinfo.xres; ++ current->pixels = (void *)((int )mapped_mem+fb_offset); ++ _this->UpdateRects = QT_DirectUpdate; ++ } else { ++ qimage = new QImage(current->w, current->h, bpp); ++ if (qimage->isNull()) { ++ SDL_SetError("Couldn't create screen bitmap"); ++ delete qimage; ++ return(NULL); ++ } ++ current->pixels = (void *)qimage->bits(); ++ _this->UpdateRects = QT_NormalUpdate; ++ SDL_Win->setImage(qimage); ++// SDL_Win->setFullscreen(true); //comment to non update taskbar ++ } ++ } else { ++ qimage = new QImage(current->w, current->h, bpp); ++ if (qimage->isNull()) { ++ SDL_SetError("Couldn't create screen bitmap"); ++ delete qimage; ++ return(NULL); ++ } ++ current->pitch = qimage->bytesPerLine(); ++ current->pixels = (void *)qimage->bits(); ++ _this->UpdateRects = QT_NormalUpdate; ++ SDL_Win->setImage(qimage); ++// SDL_Win->setFullscreen(true); //comment to non update taskbar ++ + } +- current->pitch = qimage->bytesPerLine(); +- current->pixels = (void *)qimage->bits(); +- SDL_Win->setImage(qimage); +- _this->UpdateRects = QT_NormalUpdate; +- SDL_Win->setFullscreen(true); ++ ++ ++ // fprintf(stderr,"QT_SetVideoMode() qImage:%dx%d %d\n", ++ // qimage->width(), qimage->height(), qimage->bytesPerLine()); + /* We're done */ + return(current); + } +@@ -361,13 +864,19 @@ + { + if(SDL_Win->lockScreen()) { + for(int i=0; i<numrects; ++i ) { +- QRect rect(rects[i].x, rects[i].y, +- rects[i].w, rects[i].h); +- SDL_Win->repaintRect(rect); ++ QRect rect(rects[i].x, rects[i].y, ++ rects[i].w, rects[i].h); ++ SDL_Win->repaintRect(rect); + } + SDL_Win->unlockScreen(); + } + } ++ ++ static void QT_DirectUpdate(_THIS, int numrects, SDL_Rect *rects) ++ { ++ ++ } ++ + /* Is the system palette settable? */ + int QT_SetColors(_THIS, int firstcolor, int ncolors, SDL_Color *colors) + { +@@ -383,10 +892,36 @@ + // -- David Hedbor + // delete SDL_Win; + // SDL_Win = 0; ++ ++ if ( console_fd > 0 ) { ++ /* Restore the original video mode and palette */ ++ if (fb_hwrot == 1) { ++ int tmp_ioctl_data=120; ++ ioctl(console_fd, W100FB_CONFIG_EX, &tmp_ioctl_data); ++ } ++ ++ ioctl(console_fd, FBIOPUT_VSCREENINFO, &saved_vinfo); ++ ++ /* We're all done with the framebuffer */ ++ close(console_fd); ++ console_fd = -1; ++ } ++ + _this->screen->pixels = NULL; + QT_GrabInput(_this, SDL_GRAB_OFF); ++/* ++ { ++ QCopEnvelope e("QPE/KeyHelper", "repeater(int)"); ++ e << 1; ++ } ++*/ ++ if (isKHloaded) ++ system("qcop QPE/KeyHelper \"reload()\""); //QcopEnvelope can't use. ++ + } + ++ ++ + static int QT_IconifyWindow(_THIS) { + SDL_Win->hide(); + diff --git a/packages/libsdl/libsdl-qpe-1.2.9/fixlibs-1.2.9.patch b/packages/libsdl/libsdl-qpe-1.2.9/fixlibs-1.2.9.patch new file mode 100644 index 0000000000..ebc6ec7769 --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/fixlibs-1.2.9.patch @@ -0,0 +1,27 @@ +diff -Naur SDL-1.2.9-orig/configure.in SDL-1.2.9/configure.in +--- SDL-1.2.9-orig/configure.in 2007-03-12 20:56:23.000000000 +0100 ++++ SDL-1.2.9/configure.in 2007-03-12 20:59:28.000000000 +0100 +@@ -1593,8 +1593,8 @@ + AC_MSG_RESULT($video_qtopia) + if test x$video_qtopia = xyes; then + CFLAGS="$CFLAGS -DENABLE_QTOPIA -DQT_QWS_EBX -DQT_QWS_CUSTOM -DQWS -I${QPEDIR}/include -I${QTDIR}/include/ -DNO_DEBUG -fno-rtti -fno-exceptions" +- SDL_LIBS="$SDL_LIBS -L${QPEDIR}/lib -L${QTDIR}/lib/ -lqpe -lqte" +- SDL_CFLAGS="$SDL_CFLAGS -DQWS" ++ SDL_LIBS="$SDL_LIBS -Wl,-rpath-link -Wl,${QPEDIR}/lib -Wl,-rpath-link -Wl,${QTDIR}/lib" ++ SYSTEM_LIBS="$SYSTEM_LIBS -L${QPEDIR}/lib -L${QTDIR}/lib/ -lqpe -lqte-mt" + VIDEO_SUBDIRS="$VIDEO_SUBDIRS qtopia" + VIDEO_DRIVERS="$VIDEO_DRIVERS qtopia/libvideo_qtopia.la" + else +@@ -1908,12 +1908,6 @@ + CheckAltivec + CheckLinuxVersion + CheckRPATH +- +- # Set up files for the main() stub +- if test "x$video_qtopia" = "xyes"; then +- SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main" +- +- fi + # Set up files for the audio library + # We use the OSS and ALSA API's, not the Sun audio API + #if test x$enable_audio = xyes; then diff --git a/packages/libsdl/libsdl-qpe-1.2.9/ipaq-1.2.9.patch b/packages/libsdl/libsdl-qpe-1.2.9/ipaq-1.2.9.patch new file mode 100644 index 0000000000..0ad182bae6 --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/ipaq-1.2.9.patch @@ -0,0 +1,140 @@ +diff -Naur SDL-1.2.9-orig/src/video/qtopia/Makefile.am SDL-1.2.9/src/video/qtopia/Makefile.am +--- SDL-1.2.9-orig/src/video/qtopia/Makefile.am 2007-03-12 20:57:23.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/Makefile.am 2007-03-12 20:58:02.000000000 +0100 +@@ -22,4 +22,4 @@ + # overwrite USER variables + CXXLD = $(CC) + CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \ +- $(AM_LDFLAGS) $(LDFLAGS) -o $@ ++ $(AM_LDFLAGS) $(LDFLAGS) -lopiecore2 -o $@ +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_QWin.cc SDL-1.2.9/src/video/qtopia/SDL_QWin.cc +--- SDL-1.2.9-orig/src/video/qtopia/SDL_QWin.cc 2007-03-12 20:57:00.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_QWin.cc 2007-03-12 20:58:02.000000000 +0100 +@@ -29,8 +29,11 @@ + #include "SDL_QWin.h" + #include <qapplication.h> + #include <qpe/qpeapplication.h> ++#include <opie2/odevice.h> + #include <qdirectpainter_qws.h> + ++using namespace Opie::Core; ++ + extern int fb_hwrot; + extern int fb_direct; + extern bool is_VGA_machine; +@@ -545,18 +548,32 @@ + case Qt::Key_F7: scancode = SDLK_F7; break; + case Qt::Key_F8: scancode = SDLK_F8; break; + case Qt::Key_F9: +- scancode = SDLK_F9; +- mouse_button_mode=1; ++ if ( ODevice::inst ( )-> series ( ) == Model_iPAQ ) { ++ scancode = SDLK_y; } ++ else { ++ scancode = SDLK_F9; ++ mouse_button_mode=1; } + break; + case Qt::Key_F10: +- scancode = SDLK_F10; +- mouse_button_mode=2; ++ if ( ODevice::inst ( )-> series ( ) == Model_iPAQ ) { ++ scancode = SDLK_LALT; } ++ else { ++ scancode = SDLK_F10; ++ mouse_button_mode=2; } + break; + case Qt::Key_F11: scancode = SDLK_F11; break; +- case Qt::Key_F12: scancode = SDLK_F12; break; ++ case Qt::Key_F12: ++ if ( ODevice::inst ( )-> series ( ) == Model_iPAQ ) { ++ scancode = SDLK_RETURN; } ++ else { ++ scancode = SDLK_F12; } ++ break; + case Qt::Key_F13: +- scancode = SDLK_F13; +- mouse_button_mode=3; ++ if ( ODevice::inst ( )-> series ( ) == Model_iPAQ ) { ++ scancode = SDLK_ESCAPE; } ++ else { ++ scancode = SDLK_F13; ++ mouse_button_mode=3; } + break; + case Qt::Key_F14: scancode = SDLK_F14; break; + case Qt::Key_F15: scancode = SDLK_F15; break; +@@ -573,6 +590,9 @@ + scancode = SDLK_RETURN; + break; + ++ // To use record button on ipaq ++ case Qt::Key_F24: scancode = SDLK_LSHIFT; break; ++ + default: + scancode = SDLK_UNKNOWN; + break; +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_sysvideo.cc SDL-1.2.9/src/video/qtopia/SDL_sysvideo.cc +--- SDL-1.2.9-orig/src/video/qtopia/SDL_sysvideo.cc 2007-03-12 20:55:07.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_sysvideo.cc 2007-03-12 20:58:02.000000000 +0100 +@@ -45,6 +45,7 @@ + #include <qapplication.h> + #include <qpe/qpeapplication.h> + #include <qpe/qcopenvelope_qws.h> ++#include <opie2/odevice.h> + #include <qgfx_qws.h> + #include <qwindowsystem_qws.h> + #include <qwidget.h> +@@ -66,6 +67,8 @@ + #include "SDL_syswm_c.h" + #include "SDL_lowvideo.h" + ++using namespace Opie::Core; ++ + //#define QTOPIA_DEBUG + #define QTOPIA_LOG + #define QT_HIDDEN_SIZE 32 /* starting hidden window size */ +@@ -106,6 +109,7 @@ + MACHINE_SHARP_SLC760, + MACHINE_SHARP_SLC860, + MACHINE_SHARP_SL6000, ++ MACHINE_IPAQ, + MACHINE_MAX + } machine_t; + +@@ -119,6 +123,7 @@ + { "Sharp", "SL-C760", 0 }, + { "Sharp", "SL-C860", 0 }, + { "Sharp", "SL-6000", 0 }, ++ { "HP", "HP IPAQ", 0 }, + }; + + /* Name of the environment variable used to invert the screen rotation or not: +@@ -423,6 +428,13 @@ + machine = MACHINE_SHARP_SLC760; + else if (strstr(buf, "SHARP Boxer") != NULL) + machine = MACHINE_SHARP_SLC860; ++ else if ( ODevice::inst ( )-> series ( ) == Model_iPAQ ) ++ machine = MACHINE_IPAQ; ++ else ++ { ++ machine = MACHINE_SHARP_SL5000D; ++ LOG("Can't detect machine defaulting to SL5000D"); ++ } + } + fclose(fp); + } else { +@@ -679,6 +691,15 @@ + if (machine == MACHINE_SHARP_SL5500) + qteRotation = 3; + ++ // HP IPaq ++ if ( ODevice::inst( )-> series ( ) == Model_iPAQ ) { ++ qteRotation = 3; ++ } ++ if ( ODevice::inst ( )-> model ( ) == Model_iPAQ_H38xx ) { ++ qteRotation = 1; ++ } ++ ++ + // SL-B500 Íѥϥå¯(¤È¤ê¤¢¤¨¤º¡¢¤Í) + if (machine == MACHINE_SHARP_SLB500) + qteRotation = 3; diff --git a/packages/libsdl/libsdl-qpe-1.2.9/kill-stdc++-1.2.9.patch b/packages/libsdl/libsdl-qpe-1.2.9/kill-stdc++-1.2.9.patch new file mode 100644 index 0000000000..884cb2191c --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/kill-stdc++-1.2.9.patch @@ -0,0 +1,422 @@ +diff -Naur SDL-1.2.9-orig/acinclude.m4 SDL-1.2.9/acinclude.m4 +--- SDL-1.2.9-orig/acinclude.m4 2004-08-24 08:32:50.000000000 +0200 ++++ SDL-1.2.9/acinclude.m4 2007-03-12 20:57:08.000000000 +0100 +@@ -1473,11 +1473,11 @@ + case $host_os in + aix3*) + version_type=linux +- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' ++ library_names_spec='${libname}${release}${shrext}$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. +- soname_spec='${libname}${release}${shared_ext}$major' ++ soname_spec='${libname}${release}${shrext}$major' + ;; + + aix4* | aix5*) +@@ -1487,7 +1487,7 @@ + hardcode_into_libs=yes + if test "$host_cpu" = ia64; then + # AIX 5 supports IA64 +- library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' ++ library_names_spec='${libname}${release}${shrext}$major ${libname}${release}${shrext}$versuffix $libname${shrext}' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file +@@ -1513,12 +1513,12 @@ + # If using run time linking (on AIX 4.2 or later) use lib<name>.so + # instead of lib<name>.a to let people know that these are not + # typical AIX shared libraries. +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' + else + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='${libname}${release}.a $libname.a' +- soname_spec='${libname}${release}${shared_ext}$major' ++ soname_spec='${libname}${release}${shrext}$major' + fi + shlibpath_var=LIBPATH + fi +@@ -1531,7 +1531,7 @@ + ;; + + beos*) +- library_names_spec='${libname}${shared_ext}' ++ library_names_spec='${libname}${shrext}' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; +@@ -1539,8 +1539,8 @@ + bsdi[[45]]*) + version_type=linux + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" +@@ -1573,14 +1573,14 @@ + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' +- #soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' +- soname_spec='`echo ${libname} | sed -e 's/^lib//'`${shared_ext}' ++ #soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shrext}' ++ soname_spec='`echo ${libname} | sed -e 's/^lib//'`${shrext}' + sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; + mingw*) + # MinGW DLLs use traditional 'lib' prefix +- #soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}' +- soname_spec='`echo ${libname} | sed -e 's/^lib//'`${shared_ext}' ++ #soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shrext}' ++ soname_spec='`echo ${libname} | sed -e 's/^lib//'`${shrext}' + sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` + if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then + # It is most probably a Windows format PATH printed by +@@ -1596,13 +1596,13 @@ + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' +- library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ++ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shrext}' + ;; + esac + ;; + + *) +- library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib' ++ library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shrext} $libname.lib' + ;; + esac + dynamic_linker='Win32 ld.exe' +@@ -1615,8 +1615,8 @@ + version_type=darwin + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext' +- soname_spec='${libname}${release}${major}$shared_ext' ++ library_names_spec='${libname}${release}${versuffix}$shrext ${libname}${release}${major}$shrext ${libname}$shrext' ++ soname_spec='${libname}${release}${major}$shrext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='$(test .$module = .yes && echo .so || echo .dylib)' +@@ -1633,8 +1633,8 @@ + version_type=linux + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname$shrext' ++ soname_spec='${libname}${release}${shrext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +@@ -1646,8 +1646,8 @@ + version_type=linux + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major ${libname}${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes +@@ -1659,12 +1659,12 @@ + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext} $libname${shrext}' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) +- library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' ++ library_names_spec='${libname}${release}${shrext}$versuffix $libname${shrext}$versuffix' + need_version=yes + ;; + esac +@@ -1688,8 +1688,8 @@ + version_type=linux + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}${major} ${libname}${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + shlibpath_var=LD_LIBRARY_PATH + hardcode_into_libs=yes + ;; +@@ -1707,8 +1707,8 @@ + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + if test "X$HPUX_IA64_MODE" = X32; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + else +@@ -1722,8 +1722,8 @@ + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; +@@ -1732,8 +1732,8 @@ + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555. +@@ -1752,8 +1752,8 @@ + esac + need_lib_prefix=no + need_version=no +- soname_spec='${libname}${release}${shared_ext}$major' +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' ++ soname_spec='${libname}${release}${shrext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major ${libname}${release}${shrext} $libname${shrext}' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= +@@ -1787,8 +1787,8 @@ + version_type=linux + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no +@@ -1816,8 +1816,8 @@ + version_type=linux + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major ${libname}${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes +@@ -1829,12 +1829,12 @@ + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${shrext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major ${libname}${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH +@@ -1844,7 +1844,7 @@ + + newsos6) + version_type=linux +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; +@@ -1853,8 +1853,8 @@ + version_type=linux + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; +@@ -1863,7 +1863,7 @@ + version_type=sunos + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${shrext}$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then +@@ -1884,7 +1884,7 @@ + libname_spec='$name' + shrext_cmds=".dll" + need_lib_prefix=no +- library_names_spec='$libname${shared_ext} $libname.a' ++ library_names_spec='$libname${shrext} $libname.a' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=LIBPATH + ;; +@@ -1893,8 +1893,8 @@ + version_type=osf + need_lib_prefix=no + need_version=no +- soname_spec='${libname}${release}${shared_ext}$major' +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ++ soname_spec='${libname}${release}${shrext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" +@@ -1902,8 +1902,8 @@ + + sco3.2v5*) + version_type=osf +- soname_spec='${libname}${release}${shared_ext}$major' +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' ++ soname_spec='${libname}${release}${shrext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' + shlibpath_var=LD_LIBRARY_PATH + ;; + +@@ -1911,8 +1911,8 @@ + version_type=linux + need_lib_prefix=no + need_version=no +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes +@@ -1922,7 +1922,7 @@ + + sunos4*) + version_type=sunos +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${shrext}$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes +@@ -1934,8 +1934,8 @@ + + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + version_type=linux +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) +@@ -1959,16 +1959,16 @@ + sysv4*MP*) + if test -d /usr/nec ;then + version_type=linux +- library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' +- soname_spec='$libname${shared_ext}.$major' ++ library_names_spec='$libname${shrext}.$versuffix $libname${shrext}.$major $libname${shrext}' ++ soname_spec='$libname${shrext}.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + + uts4*) + version_type=linux +- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' +- soname_spec='${libname}${release}${shared_ext}$major' ++ library_names_spec='${libname}${release}${shrext}$versuffix ${libname}${release}${shrext}$major $libname${shrext}' ++ soname_spec='${libname}${release}${shrext}$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +@@ -3471,8 +3471,8 @@ + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. +- _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' +- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' ++ _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shrext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' ++ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shrext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. +@@ -3481,7 +3481,7 @@ + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. +- output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' ++ output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shrext 2>&1 | grep "ld"`; rm -f libconftest$shrext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir' + _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic' +@@ -3585,7 +3585,7 @@ + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. +- _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' ++ _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shrext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: +@@ -3645,7 +3645,7 @@ + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. +- _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' ++ _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shrext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir' + _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=: +@@ -4596,7 +4596,7 @@ + # Whether we need a single -rpath flag with a separated argument. + hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1) + +-# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the ++# Set to yes if using DIR/libNAME${shrext} during linking hardcodes DIR into the + # resulting binary. + hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1) + +diff -Naur SDL-1.2.9-orig/src/main/Makefile.am SDL-1.2.9/src/main/Makefile.am +--- SDL-1.2.9-orig/src/main/Makefile.am 2007-03-12 20:56:23.000000000 +0100 ++++ SDL-1.2.9/src/main/Makefile.am 2007-03-12 20:57:08.000000000 +0100 +@@ -46,3 +46,9 @@ + (cd $(distdir) && rm -f $(BUILT_SOURCES)) + cp -rp $(ARCH_SUBDIRS) $(distdir) + (cd $(distdir) && rm -rf `find . -name CVS`) ++ ++# overwrite USER variables ++CXXLD = $(CC) ++CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \ ++ $(AM_LDFLAGS) $(LDFLAGS) -o $@ ++ +diff -Naur SDL-1.2.9-orig/src/video/qtopia/Makefile.am SDL-1.2.9/src/video/qtopia/Makefile.am +--- SDL-1.2.9-orig/src/video/qtopia/Makefile.am 2007-03-12 20:56:23.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/Makefile.am 2007-03-12 20:57:08.000000000 +0100 +@@ -17,3 +17,9 @@ + SDL_sysevents.cc \ + SDL_sysevents_c.h \ + SDL_qmain.cc ++ ++ ++# overwrite USER variables ++CXXLD = $(CC) ++CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \ ++ $(AM_LDFLAGS) $(LDFLAGS) -o $@ diff --git a/packages/libsdl/libsdl-qpe-1.2.9/mouse-1.2.9.patch b/packages/libsdl/libsdl-qpe-1.2.9/mouse-1.2.9.patch new file mode 100644 index 0000000000..7f88956d94 --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/mouse-1.2.9.patch @@ -0,0 +1,48 @@ +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_QWin.cc SDL-1.2.9/src/video/qtopia/SDL_QWin.cc +--- SDL-1.2.9-orig/src/video/qtopia/SDL_QWin.cc 2007-03-12 20:55:07.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_QWin.cc 2007-03-12 20:56:36.000000000 +0100 +@@ -169,7 +169,12 @@ + Qt::ButtonState button = e->button(); + int sdlstate = 0; + if( (button & Qt::LeftButton)) { +- sdlstate |= SDL_BUTTON_LMASK; ++ if (mouse_button_mode == 3) ++ sdlstate |= SDL_BUTTON_RMASK; ++ else if (mouse_button_mode == 2) ++ sdlstate |= SDL_BUTTON_MMASK; ++ else ++ sdlstate |= SDL_BUTTON_LMASK; + } + if( (button & Qt::RightButton)) { + sdlstate |= SDL_BUTTON_RMASK; +@@ -539,20 +544,20 @@ + case Qt::Key_F6: scancode = SDLK_F6; break; + case Qt::Key_F7: scancode = SDLK_F7; break; + case Qt::Key_F8: scancode = SDLK_F8; break; +- case Qt::Key_F9: scancode = SDLK_F9; break; +- case Qt::Key_F10: +- scancode = SDLK_F10; ++ case Qt::Key_F9: ++ scancode = SDLK_F9; + mouse_button_mode=1; + break; +- case Qt::Key_F11: +- scancode = SDLK_F11; +- mouse_button_mode=3; +- break; +- case Qt::Key_F12: +- scancode = SDLK_F12; ++ case Qt::Key_F10: ++ scancode = SDLK_F10; + mouse_button_mode=2; + break; +- case Qt::Key_F13: scancode = SDLK_F13; break; ++ case Qt::Key_F11: scancode = SDLK_F11; break; ++ case Qt::Key_F12: scancode = SDLK_F12; break; ++ case Qt::Key_F13: ++ scancode = SDLK_F13; ++ mouse_button_mode=3; ++ break; + case Qt::Key_F14: scancode = SDLK_F14; break; + case Qt::Key_F15: scancode = SDLK_F15; break; + case Qt::Key_Super_L: scancode = SDLK_LSUPER; break; diff --git a/packages/libsdl/libsdl-qpe-1.2.9/pygame-1.2.9.patch b/packages/libsdl/libsdl-qpe-1.2.9/pygame-1.2.9.patch new file mode 100644 index 0000000000..4073de25bf --- /dev/null +++ b/packages/libsdl/libsdl-qpe-1.2.9/pygame-1.2.9.patch @@ -0,0 +1,191 @@ +diff -Naur SDL-1.2.9-orig/configure.in SDL-1.2.9/configure.in +--- SDL-1.2.9-orig/configure.in 2005-08-28 08:31:18.000000000 +0200 ++++ SDL-1.2.9/configure.in 2007-03-12 20:55:18.000000000 +0100 +@@ -1912,7 +1912,7 @@ + # Set up files for the main() stub + if test "x$video_qtopia" = "xyes"; then + SDL_CFLAGS="$SDL_CFLAGS -Dmain=SDL_main" +- SDL_LIBS="-lSDLmain $SDL_LIBS" ++ + fi + # Set up files for the audio library + # We use the OSS and ALSA API's, not the Sun audio API +diff -Naur SDL-1.2.9-orig/src/main/Makefile.am SDL-1.2.9/src/main/Makefile.am +--- SDL-1.2.9-orig/src/main/Makefile.am 2004-02-12 07:21:13.000000000 +0100 ++++ SDL-1.2.9/src/main/Makefile.am 2007-03-12 20:55:18.000000000 +0100 +@@ -21,11 +21,7 @@ + if TARGET_MACOSX + MAINLIB_ARCH_SRCS = macosx/SDLMain.m macosx/SDLMain.h + else +-if TARGET_QTOPIA +-MAINLIB_ARCH_SRCS = qtopia/SDL_qtopia_main.cc +-else + MAINLIB_ARCH_SRCS = dummy/SDL_dummy_main.c +-endif # !TARGET_QTOPIA + endif # !TARGET_MACOSX + endif # !TARGET_WIN32 + libSDLmain_a_SOURCES = $(MAINLIB_ARCH_SRCS) +diff -Naur SDL-1.2.9-orig/src/main/qtopia/SDL_qtopia_main.cc SDL-1.2.9/src/main/qtopia/SDL_qtopia_main.cc +--- SDL-1.2.9-orig/src/main/qtopia/SDL_qtopia_main.cc 2003-12-14 07:25:53.000000000 +0100 ++++ SDL-1.2.9/src/main/qtopia/SDL_qtopia_main.cc 1970-01-01 01:00:00.000000000 +0100 +@@ -1,47 +0,0 @@ +- +-/* Include the SDL main definition header */ +-#include "SDL_main.h" +-#include <stdlib.h> +-#include <unistd.h> +-#ifdef main +-#undef main +-#endif +-#ifdef QWS +-#include <qpe/qpeapplication.h> +-#include <qapplication.h> +-#include <qpe/qpeapplication.h> +-#include <stdlib.h> +- +-// Workaround for OPIE to remove taskbar icon. Also fixes +-// some issues in Qtopia where there are left-over qcop files in /tmp/. +-// I'm guessing this will also clean up the taskbar in the Sharp version +-// of Qtopia. +-static inline void cleanupQCop() { +- QString appname(qApp->argv()[0]); +- int slash = appname.findRev("/"); +- if(slash != -1) { appname = appname.mid(slash+1); } +- QString cmd = QPEApplication::qpeDir() + "bin/qcop QPE/System 'closing(QString)' '"+appname+"'"; +- system(cmd.latin1()); +- cmd = "/tmp/qcop-msg-"+appname; +- unlink(cmd.latin1()); +-} +- +-static QPEApplication *app; +-#endif +- +-extern int SDL_main(int argc, char *argv[]); +- +-int main(int argc, char *argv[]) +-{ +-#ifdef QWS +- // This initializes the Qtopia application. It needs to be done here +- // because it parses command line options. +- app = new QPEApplication(argc, argv); +- QWidget dummy; +- app->showMainWidget(&dummy); +- atexit(cleanupQCop); +-#endif +- // Exit here because if return is used, the application +- // doesn't seem to quit correctly. +- exit(SDL_main(argc, argv)); +-} +diff -Naur SDL-1.2.9-orig/src/video/qtopia/Makefile.am SDL-1.2.9/src/video/qtopia/Makefile.am +--- SDL-1.2.9-orig/src/video/qtopia/Makefile.am 2002-05-28 21:24:11.000000000 +0200 ++++ SDL-1.2.9/src/video/qtopia/Makefile.am 2007-03-12 20:55:18.000000000 +0100 +@@ -15,4 +15,5 @@ + SDL_syswm.cc \ + SDL_syswm_c.h \ + SDL_sysevents.cc \ +- SDL_sysevents_c.h ++ SDL_sysevents_c.h \ ++ SDL_qmain.cc +diff -Naur SDL-1.2.9-orig/src/video/qtopia/SDL_qmain.cc SDL-1.2.9/src/video/qtopia/SDL_qmain.cc +--- SDL-1.2.9-orig/src/video/qtopia/SDL_qmain.cc 1970-01-01 01:00:00.000000000 +0100 ++++ SDL-1.2.9/src/video/qtopia/SDL_qmain.cc 2007-03-12 20:55:18.000000000 +0100 +@@ -0,0 +1,99 @@ ++/* Include the SDL main definition header */ ++#include "SDL_main.h" ++#include <stdlib.h> ++ ++#include <sys/types.h> ++#include <fcntl.h> ++#include <unistd.h> ++ ++ ++#ifdef QWS ++#include <qpe/qpeapplication.h> ++#include <stdlib.h> ++#include <string.h> ++ ++ ++ ++static QWidget *dummyW = 0; ++static QPEApplication *theApp = 0; ++static char **cmdline= 0; ++static int size = 0; ++ ++static void parse_cmd_line() { ++ /* ++ * find the number ++ */ ++ char buf[1024]; ++ int available = 0; ++ char *string_start = 0; ++ int fd = ::open( "/proc/self/cmdline", O_RDONLY ); ++ if ( fd < 0 ) { ++ qWarning( "Error getting the cmdline, can't be" ); ++ goto error_out; ++ } ++ ++ available = ::read( fd, &buf, sizeof(buf) ); ++ if ( available <= 0 ) ++ goto error_out; ++ ++ /* ++ * find out the number of arguments ++ */ ++ size = 0; ++ for (int i = 0; i < available; ++i ) ++ if ( buf[i] == '\0' ) ++ ++size; ++ ++ /* now create a the cmdline */ ++ cmdline = new char*[size+1]; ++ cmdline[size] = '\0'; // parnoid... ++ ++ string_start = &buf[0]; ++ for ( int i = 0; i < size; ++i ) { ++ /* ++ * find the end of the string ++ */ ++ size_t sz = ::strlen(string_start); ++ cmdline[i] = new char[sz+1]; ++ memcpy( cmdline[i], string_start, sz+1 ); ++ string_start += (sz+1); // +1 for '\0' +1 to set it beyond ++ } ++ ++ ::close(fd); ++ ++ return; ++ ++/* error code */ ++error_out: ++ cmdline = new char*[2]; ++ cmdline[0] = "unknown_app"; ++ cmdline[1] = '\0'; ++ size = 1; ++} ++ ++static void free_cmd_line() { ++ /* ++ * free each string and then free the array ++ */ ++ for ( int i = 0; i < size; ++i ) ++ delete [] cmdline[i]; ++ ++ delete [] cmdline; ++} ++ ++static void __attribute__((constructor)) initialize_qpe_app() { ++ parse_cmd_line(); ++ ++ theApp = new QPEApplication( size, cmdline ); ++ dummyW = new QWidget; ++ theApp->showMainWidget(dummyW); ++} ++ ++static void __attribute__((destructor)) deinitialize_qpe_app() { ++ free_cmd_line(); ++ delete dummyW; ++ delete theApp; ++} ++ ++ ++#endif diff --git a/packages/libsdl/libsdl-qpe_1.2.9.bb b/packages/libsdl/libsdl-qpe_1.2.9.bb new file mode 100644 index 0000000000..eaca6b88aa --- /dev/null +++ b/packages/libsdl/libsdl-qpe_1.2.9.bb @@ -0,0 +1,67 @@ +DESCRIPTION = "Simple DirectMedia Layer - QtE-based Palmtop Environments Edition" +SECTION = "opie/libs" +PRIORITY = "optional" +DEPENDS = "virtual/libqpe1 libopie2" +PROVIDES = "virtual/libsdl" +LICENSE = "LGPL" + +# NOTE: make sure to keep PR in sync with libsdl-x11 +PR = "r0" + +SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \ + file://agawa-piro-mickey-1.2.9.patch;patch=1 \ + file://pygame-1.2.9.patch;patch=1 \ + file://mouse-1.2.9.patch;patch=1 \ + file://kill-stdc++-1.2.9.patch;patch=1 \ + file://ipaq-1.2.9.patch;patch=1 \ + file://SDL-Akita-1.2.9.patch;patch=1 \ + file://fixlibs-1.2.9.patch;patch=1 \ + file://acinclude.m4" +S = "${WORKDIR}/SDL-${PV}" + +inherit autotools binconfig + +EXTRA_OECONF = "--disable-static --disable-debug --enable-cdrom --enable-threads --enable-timers --enable-endian \ + --enable-file --enable-oss --disable-alsa --disable-esd --disable-arts \ + --disable-diskaudio --disable-nas --disable-esd-shared --disable-esdtest \ + --disable-mintaudio --disable-nasm --disable-video-x11 --disable-video-dga \ + --disable-video-fbcon --disable-video-directfb --disable-video-ps2gs \ + --disable-video-xbios --disable-video-gem --disable-video-dummy \ + --disable-video-opengl --enable-input-events --enable-pthreads \ + --disable-video-picogui --enable-video-qtopia --enable-dlopen" + +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev += "${bindir}/*config" + +do_compile_prepend() { + rm -f ${S}/acinclude.m4 + cp ${WORKDIR}/acinclude.m4 ${S}/ + if [ "${PALMTOP_USE_MULTITHREADED_QT}" == "yes" ] + then + sed -i s,-lqte,-lqte-mt, src/Makefile + fi +} + +do_configure_append () { + cd ${S} + + # prevent libtool from linking libs against libstdc++, libgcc, ... + cat ${TARGET_PREFIX}libtool | sed -e 's/postdeps=".*"/postdeps=""/' > ${TARGET_PREFIX}libtool.tmp + mv ${TARGET_PREFIX}libtool.tmp ${TARGET_PREFIX}libtool +} + +do_stage() { + oe_libinstall -so -C src libSDL ${STAGING_LIBDIR} + rm ${STAGING_LIBDIR}/libSDL.la + ln -sf libSDL.so ${STAGING_LIBDIR}/libSDL-1.2.so + install -m 0655 src/main/libSDLmain.a src/main/.libs/ + oe_libinstall -a -C src/main libSDLmain ${STAGING_LIBDIR} + + install -d ${STAGING_INCDIR}/SDL + for f in include/*.h + do + install -m 0644 $f ${STAGING_INCDIR}/SDL/ + done + + install -m 0644 *.m4 ${STAGING_DATADIR}/aclocal/ +} diff --git a/packages/lrzsz/lrzsz_0.12.20.bb b/packages/lrzsz/lrzsz_0.12.20.bb index 8110661ac1..0a194f9a05 100644 --- a/packages/lrzsz/lrzsz_0.12.20.bb +++ b/packages/lrzsz/lrzsz_0.12.20.bb @@ -3,7 +3,7 @@ SECTION = "console/network" PRIORITY = "standard" DESCRIPTION = "Tools for zmodem/xmodem/ymodem file transfer" DEPENDS = "" -PR = "r2" +PR = "r3" SRC_URI = "http://www.ohse.de/uwe/releases/lrzsz-${PV}.tar.gz \ file://autotools.patch;patch=1 \ @@ -15,10 +15,16 @@ inherit autotools gettext do_install() { install -d ${D}${bindir}/ install -m 0755 src/lrz src/lsz ${D}${bindir}/ - ln -sf ./lrz ${D}${bindir}/rz - ln -sf ./lrz ${D}${bindir}/rx - ln -sf ./lrz ${D}${bindir}/rb - ln -sf ./lsz ${D}${bindir}/sz - ln -sf ./lsz ${D}${bindir}/sx - ln -sf ./lsz ${D}${bindir}/sb } + +pkg_postinst() { + for util in rz rx rb sz sx sb; do + update-alternatives --install ${bindir}/$util $util lrz 100 + done +} + +pkg_postrm() { + for util in rz rx rb sz sx sb; do + update-alternatives --remove $util ${bindir}/lrz + done +}
\ No newline at end of file diff --git a/packages/netatalk/.mtn2git_empty b/packages/netatalk/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/netatalk/.mtn2git_empty diff --git a/packages/netatalk/files/.mtn2git_empty b/packages/netatalk/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/netatalk/files/.mtn2git_empty diff --git a/packages/netatalk/files/init b/packages/netatalk/files/init new file mode 100755 index 0000000000..926f9bbb1e --- /dev/null +++ b/packages/netatalk/files/init @@ -0,0 +1,111 @@ +#!/sbin/runscript + +# AppleTalk daemons. Make sure not to start atalkd in the background: +# its data structures must have time to stablize before running the +# other processes. + +depend() { + need net + use logger dns +} + +atalk_startup () { +# . /etc/netatalk/netatalk.conf + + if [ "${ATALKD_RUN}" != "no" ]; then + ebegin "Starting atalkd" + start-stop-daemon --start --quiet --exec /usr/sbin/atalkd + eend $? + + for reg in \ + "${ATALK_NAME}:Workstation${ATALK_ZONE}" \ + "${ATALK_NAME}:netatalk${ATALK_ZONE}" + do + ebegin " Registering $reg" + /usr/bin/nbprgstr "$reg" + eend $? + done + + if [ "${PAPD_RUN}" = "yes" ]; then + ebegin " Starting papd" + start-stop-daemon --start --quiet --exec /usr/sbin/papd + eend $? + fi + + fi + + if [ "${CNID_METAD_RUN}" = "yes" ] ; then + ebegin "Starting cnid_metad" + start-stop-daemon --start --quiet --exec /usr/sbin/cnid_metad + eend $? + fi + + + if [ "${AFPD_RUN}" = "yes" ]; then + ebegin "Starting afpd" + start-stop-daemon --start --quiet --exec /usr/sbin/afpd -- \ + ${AFPD_UAMLIST} -g ${AFPD_GUEST} -c ${AFPD_MAX_CLIENTS} \ + -n "${ATALK_NAME}${ATALK_ZONE}" + eend $? + fi + + if [ "${TIMELORD_RUN}" = "yes" ]; then + ebegin "Starting timelord" + start-stop-daemon --start --quiet --exec /usr/sbin/timelord + eend $? + fi +} + +start () { + . /etc/netatalk/netatalk.conf + + if [ x"${ATALK_BGROUND}" = x"yes" ]; then + echo "Starting netatalk in the background ... " + atalk_startup >& /dev/null & + else + atalk_startup + fi +} + +stop () { + . /etc/netatalk/netatalk.conf + + if [ "${AFPD_RUN}" = "yes" ]; then + ebegin "Stopping afpd" + start-stop-daemon --stop --quiet --exec /usr/sbin/afpd + eend $? + fi + + if [ "${TIMELORD_RUN}" = "yes" ]; then + ebegin "Stopping timelord" + start-stop-daemon --stop --quiet --exec /usr/sbin/timelord + eend $? + fi + + if [ "${ATALKD_RUN}" != "no" ]; then + if [ "${PAPD_RUN}" = "yes" ]; then + ebegin "Stopping papd" + start-stop-daemon --stop --quiet --exec /usr/sbin/papd + eend $? + fi + + for reg in \ + "${ATALK_NAME}:Workstation${ATALK_ZONE}" \ + "${ATALK_NAME}:netatalk${ATALK_ZONE}" + do + ebegin "Unregistering $reg" + /usr/bin/nbpunrgstr "$reg" + eend $? + done + + ebegin "Stopping atalkd" + start-stop-daemon --stop --quiet --exec /usr/sbin/atalkd + eend $? + fi + + if [ "${CNID_METAD_RUN}" = "yes" ] ; then + ebegin "Stopping cnid_metad" + start-stop-daemon --stop --quiet --exec /usr/sbin/cnid_metad + eend $? + fi +} diff --git a/packages/netatalk/netatalk-2.0.3/.mtn2git_empty b/packages/netatalk/netatalk-2.0.3/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/netatalk/netatalk-2.0.3/.mtn2git_empty diff --git a/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-db43.patch b/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-db43.patch new file mode 100644 index 0000000000..93d3e4b9ea --- /dev/null +++ b/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-db43.patch @@ -0,0 +1,32 @@ +Index: netatalk-2.0.3/bin/cnid/cnid_index.c +=================================================================== +--- netatalk-2.0.3.orig/bin/cnid/cnid_index.c ++++ netatalk-2.0.3/bin/cnid/cnid_index.c +@@ -274,7 +274,11 @@ static int dbif_count(const int dbi, u_i + DB_BTREE_STAT *sp; + DB *db = db_table[dbi].db; + ++#if DB_VERSION_MAJOR > 4 || ( DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 3 ) ++ ret = db->stat(db, db_txn, &sp, 0); ++#else + ret = db->stat(db, &sp, 0); ++#endif + + if (ret) { + LOG(log_error, logtype_cnid, "error getting stat infotmation on database: %s", db_strerror(errno)); +Index: netatalk-2.0.3/etc/cnid_dbd/dbif.c +=================================================================== +--- netatalk-2.0.3.orig/etc/cnid_dbd/dbif.c ++++ netatalk-2.0.3/etc/cnid_dbd/dbif.c +@@ -514,7 +514,11 @@ int dbif_count(const int dbi, u_int32_t + DB_BTREE_STAT *sp; + DB *db = db_table[dbi].db; + ++#if DB_VERSION_MAJOR > 4 || ( DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 3 ) ++ ret = db->stat(db, db_txn, &sp, 0); ++#else + ret = db->stat(db, &sp, 0); ++#endif + + if (ret) { + LOG(log_error, logtype_cnid, "error getting stat infotmation on database: %s", db_strerror(errno)); diff --git a/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-newerdb.patch b/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-newerdb.patch new file mode 100644 index 0000000000..f64c8cf5eb --- /dev/null +++ b/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-newerdb.patch @@ -0,0 +1,28 @@ +Index: netatalk-2.0.3/macros/db3-check.m4 +=================================================================== +--- netatalk-2.0.3.orig/macros/db3-check.m4 ++++ netatalk-2.0.3/macros/db3-check.m4 +@@ -115,6 +115,14 @@ int main(void) { + AC_DEFUN([NETATALK_BERKELEY_LINK], + [ + atalk_cv_lib_db=no ++NETATALK_BDB_LINK_TRY(atalk_cv_db_db_4_dot_4,[-ldb-4.4]) ++NETATALK_BDB_LINK_TRY(atalk_cv_db_db44,[-ldb44]) ++NETATALK_BDB_LINK_TRY(atalk_cv_db_db_44,[-ldb-44]) ++NETATALK_BDB_LINK_TRY(atalk_cv_db_db_4_4,[-ldb-4-4]) ++NETATALK_BDB_LINK_TRY(atalk_cv_db_db_4_dot_3,[-ldb-4.3]) ++NETATALK_BDB_LINK_TRY(atalk_cv_db_db43,[-ldb43]) ++NETATALK_BDB_LINK_TRY(atalk_cv_db_db_43,[-ldb-43]) ++NETATALK_BDB_LINK_TRY(atalk_cv_db_db_4_3,[-ldb-4-3]) + NETATALK_BDB_LINK_TRY(atalk_cv_db_db_4_dot_2,[-ldb-4.2]) + NETATALK_BDB_LINK_TRY(atalk_cv_db_db42,[-ldb42]) + NETATALK_BDB_LINK_TRY(atalk_cv_db_db_42,[-ldb-42]) +@@ -134,7 +142,7 @@ AC_DEFUN([AC_PATH_BDB], + trybdbdir="" + dobdbsearch=yes + bdb_search_dirs="/usr/local/include /usr/include" +- search_subdirs="/db4.2 /db42 /db4.1 /db41 /db4 /" ++ search_subdirs="/db4.4 /db44 /db4.3 /db43 /db4.2 /db42 /db4.1 /db41 /db4 /" + + dnl required BDB version + DB_MAJOR_REQ=4 diff --git a/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-setXid.patch b/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-setXid.patch new file mode 100644 index 0000000000..70170c134d --- /dev/null +++ b/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-setXid.patch @@ -0,0 +1,14 @@ +Index: netatalk-2.0.3/bin/afppasswd/Makefile.am +=================================================================== +--- netatalk-2.0.3.orig/bin/afppasswd/Makefile.am ++++ netatalk-2.0.3/bin/afppasswd/Makefile.am +@@ -12,7 +12,8 @@ afppasswd_SOURCES = afppasswd.c + afppasswd_LDADD = $(top_builddir)/libatalk/libatalk.la @SSL_LIBS@ + + CFLAGS = @CFLAGS@ @SSL_CFLAGS@ -I$(top_srcdir)/sys \ +- -D_PATH_AFPDPWFILE=\"$(pkgconfdir)/afppasswd\" ++ -D_PATH_AFPDPWFILE=\"$(pkgconfdir)/afppasswd\" \ ++ @BINDNOW_FLAGS@ + + install-exec-hook: + if USE_DHX diff --git a/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-xfs.patch b/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-xfs.patch new file mode 100644 index 0000000000..e91ebcebd2 --- /dev/null +++ b/packages/netatalk/netatalk-2.0.3/netatalk-2.0.3-xfs.patch @@ -0,0 +1,22 @@ +Index: netatalk-2.0.3/configure.in +=================================================================== +--- netatalk-2.0.3.orig/configure.in ++++ netatalk-2.0.3/configure.in +@@ -694,12 +694,16 @@ fi + # AC_MSG_RESULT([enabling quotactl wrapper]) + # ) + ++AC_ARG_WITH([xfs], ++ AS_HELP_STRING([--without-xfs], [Build without XFS filesystem quota support])) ++ ++if test "x$with_xfs" != "xno"; then + # For quotas on Linux XFS filesystems + AC_CHECK_HEADERS(linux/xqm.h linux/xfs_fs.h) + AC_CHECK_HEADERS(xfs/libxfs.h xfs/xqm.h xfs/xfs_fs.h) + # For linux > 2.5.56 + AC_CHECK_HEADERS(linux/dqblk_xfs.h) +- ++fi + + dnl ----- as far as I can tell, dbtob always does the wrong thing + dnl ----- on every single version of linux I've ever played with. diff --git a/packages/netatalk/netatalk_2.0.3.bb b/packages/netatalk/netatalk_2.0.3.bb new file mode 100644 index 0000000000..74cfd84042 --- /dev/null +++ b/packages/netatalk/netatalk_2.0.3.bb @@ -0,0 +1,39 @@ +DESCRIPTION = "Appletalk protocol suite" +SECTION = "net" +PR = "r0" +LICENSE = "GPL" + +DEPENDS = "cups db openssl libpam" + +SRC_URI = "http://ovh.dl.sourceforge.net/sourceforge/netatalk/netatalk-${PV}.tar.gz \ + file://netatalk-2.0.3-db43.patch;patch=1 \ + file://netatalk-2.0.3-newerdb.patch;patch=1 \ + file://netatalk-2.0.3-xfs.patch;patch=1 \ + file://init \ + " +INITSCRIPT_NAME = "atalk" +INITSCRIPT_PARAMS = "defaults 65" + +inherit autotools update-rc.d + +do_configure () { + autoreconf + ac_cv_header_rpcsvc_rquota_h=no LDFLAGS="-lpthread -L${STAGING_DIR}/${TARGET_SYS}/lib" ./configure \ + --build=${BUILD_SYS} \ + --host=${HOST_SYS} \ + --target=${TARGET_SYS} \ + --prefix=${prefix} \ + --with-bdb=${STAGING_DIR}/${TARGET_SYS} \ + --with-ssl-dir=${STAGING_DIR}/${TARGET_SYS} \ + --without-shadow \ + --sysconfdir=${sysconfdir} \ + --disable-nls \ + --disable-static \ + --with-pam \ + --mandir=${mandir} + cp ${STAGING_DIR}/${BUILD_SYS}/bin/${TARGET_SYS}-libtool ./${TARGET_SYS}-libtool +} + +do_install_append() { + install -D -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/atalk +} diff --git a/packages/netbase/netbase/slugos/.mtn2git_empty b/packages/netbase/netbase/slugos/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/netbase/netbase/slugos/.mtn2git_empty diff --git a/packages/netbase/netbase/slugos/if-down.d/.mtn2git_empty b/packages/netbase/netbase/slugos/if-down.d/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/netbase/netbase/slugos/if-down.d/.mtn2git_empty diff --git a/packages/netbase/netbase/slugos/if-post-down.d/.mtn2git_empty b/packages/netbase/netbase/slugos/if-post-down.d/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/netbase/netbase/slugos/if-post-down.d/.mtn2git_empty diff --git a/packages/netbase/netbase/slugos/if-pre-up.d/.mtn2git_empty b/packages/netbase/netbase/slugos/if-pre-up.d/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/netbase/netbase/slugos/if-pre-up.d/.mtn2git_empty diff --git a/packages/netbase/netbase/slugos/if-pre-up.d/udhcpc-fix b/packages/netbase/netbase/slugos/if-pre-up.d/udhcpc-fix new file mode 100644 index 0000000000..7d2e9705ea --- /dev/null +++ b/packages/netbase/netbase/slugos/if-pre-up.d/udhcpc-fix @@ -0,0 +1,12 @@ +#!/bin/sh + +# This works around a problem where udhcpc times out w/o getting a lease +# due to slow auto-negotiate. + +if test "$IFACE" = "eth0" -a "$METHOD" = "dhcp" +then + echo -n "[sleeping 5s]..." + ifconfig eth0 up + sleep 5 +fi + diff --git a/packages/netbase/netbase/slugos/if-up.d/.mtn2git_empty b/packages/netbase/netbase/slugos/if-up.d/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/netbase/netbase/slugos/if-up.d/.mtn2git_empty diff --git a/packages/netbase/netbase_4.21.bb b/packages/netbase/netbase_4.21.bb index 265da46360..f97d8986aa 100644 --- a/packages/netbase/netbase_4.21.bb +++ b/packages/netbase/netbase_4.21.bb @@ -2,7 +2,7 @@ DESCRIPTION = "This package provides the necessary \ infrastructure for basic TCP/IP based networking." SECTION = "base" LICENSE = "GPL" -PR = "r14" +PR = "r15" inherit update-rc.d @@ -18,7 +18,11 @@ SRC_URI = "${DEBIAN_MIRROR}/main/n/netbase/netbase_${PV}.tar.gz \ file://options \ file://init \ file://hosts \ - file://interfaces" + file://interfaces \ + file://if-pre-up.d \ + file://if-up.d \ + file://if-down.d \ + file://if-post-down.d" do_install () { install -d ${D}${sysconfdir}/init.d \ @@ -28,6 +32,15 @@ do_install () { ${D}${sysconfdir}/network/if-up.d \ ${D}${sysconfdir}/network/if-down.d \ ${D}${sysconfdir}/network/if-post-down.d + + for dir in if-pre-up.d if-up.d if-down.d if-post-down.d + do + for script in `ls -1 "${WORKDIR}/${dir}"` + do + install -m 0755 "${WORKDIR}/${dir}/${script}" "${D}${sysconfdir}/network/${dir}" + done + done + install -m 0644 ${WORKDIR}/options ${D}${sysconfdir}/network/options install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/networking install -m 0644 ${WORKDIR}/hosts ${D}${sysconfdir}/hosts diff --git a/packages/tzcode/tzcode-native_2007c.bb b/packages/tzcode/tzcode-native_2007c.bb index 126658bd39..aed4253e81 100644 --- a/packages/tzcode/tzcode-native_2007c.bb +++ b/packages/tzcode/tzcode-native_2007c.bb @@ -1,6 +1,6 @@ DESCRIPTION = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect" -PR = "r1" +PR = "r2" SRC_URI = "ftp://elsie.nci.nih.gov/pub/tzcode${PV}.tar.gz \ ftp://elsie.nci.nih.gov/pub/tzdata${PV}.tar.gz" @@ -10,9 +10,10 @@ S = "${WORKDIR}" inherit native do_stage () { - install -m 755 zic ${STAGING_BINDIR_NATIVE} - install -m 755 zdump ${STAGING_BINDIR_NATIVE} - install -m 755 tzselect ${STAGING_BINDIR_NATIVE} + install -d ${STAGING_BINDIR_NATIVE} + install -m 755 zic ${STAGING_BINDIR_NATIVE}/ + install -m 755 zdump ${STAGING_BINDIR_NATIVE}/ + install -m 755 tzselect ${STAGING_BINDIR_NATIVE}/ } do_install () { diff --git a/packages/uboot-utils/uboot-utils_1.1.2.bb b/packages/uboot-utils/uboot-utils_1.1.2.bb index 292c97f134..621a55c964 100644 --- a/packages/uboot-utils/uboot-utils_1.1.2.bb +++ b/packages/uboot-utils/uboot-utils_1.1.2.bb @@ -3,7 +3,7 @@ SECTION = "bootloaders" PRIORITY = "optional" LICENSE = "GPL" DEPENDS = "mtd-utils" -PR = "r3" +PR = "r4" SRC_URI = "${SOURCEFORGE_MIRROR}/u-boot/u-boot-${PV}.tar.bz2 \ file://fw_env.c.patch;patch=1 \ @@ -30,7 +30,8 @@ do_compile () { # install mkimage for the kernel makefile do_stage() { - install -m 755 ${S}/tools/mkimage ${STAGING_BINDIR_NATIVE} + install -d ${STAGING_BINDIR_NATIVE} + install -m 755 ${S}/tools/mkimage ${STAGING_BINDIR_NATIVE}/ } do_install () { diff --git a/packages/uboot/u-boot.inc b/packages/uboot/u-boot.inc index 3b26e55f1b..d9b2f7b7c9 100644 --- a/packages/uboot/u-boot.inc +++ b/packages/uboot/u-boot.inc @@ -26,5 +26,6 @@ do_deploy[dirs] = "${S}" addtask deploy before do_build after do_compile do_stage() { - install -m755 tools/mkimage ${STAGING_BINDIR_NATIVE} + install -d ${STAGING_BINDIR_NATIVE} + install -m755 tools/mkimage ${STAGING_BINDIR_NATIVE}/ } diff --git a/packages/webcam-server/.mtn2git_empty b/packages/webcam-server/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/webcam-server/.mtn2git_empty diff --git a/packages/webcam-server/webcam-server_0.50.bb b/packages/webcam-server/webcam-server_0.50.bb new file mode 100644 index 0000000000..737ef75977 --- /dev/null +++ b/packages/webcam-server/webcam-server_0.50.bb @@ -0,0 +1,23 @@ +#! /bin/sh +# +# Copyright Matthias Hentges <devel@hentges.net> (c) 2007 +# License: MIT (see http://www.opensource.org/licenses/mit-license.php +# for a copy of the license) +# +# Filename: Untitled +# Date: 20070317 (YMD) + +DESCRIPTION = "webcam_server is a program that allows others to view your webcam from a web browser." +MAINTAINER = "Matthias 'CoreDump' Hentges <oe@hentges.net>" +HOMEPAGE = "http://webcamserver.sourceforge.net/" +LICENSE = "GPL" + +###################################################################################### + +SRC_URI = "${SOURCEFORGE_MIRROR}/webcamserver/webcam_server-${PV}.tar.gz" + +S = "${WORKDIR}/webcam_server-${PV}" + +###################################################################################### + +inherit autotools diff --git a/packages/xserver-common/xserver-common_1.14.bb b/packages/xserver-common/xserver-common_1.14.bb index d608231348..48320ba006 100644 --- a/packages/xserver-common/xserver-common_1.14.bb +++ b/packages/xserver-common/xserver-common_1.14.bb @@ -2,7 +2,7 @@ DESCRIPTION = "Common X11 scripts and support files" LICENSE = "GPL" SECTION = "x11" RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo" -PR = "r1" +PR = "r2" PACKAGE_ARCH = "all" @@ -10,7 +10,8 @@ PACKAGE_ARCH = "all" inherit gpe SRC_URI_append = " file://setDPI.sh \ - file://xserver-imageon.patch;patch=1" + file://xserver-imageon.patch;patch=1 \ + file://calibrate-only-if-ts.patch;patch=1" do_install_append() { install -m 0755 "${WORKDIR}/setDPI.sh" "${D}/etc/X11/Xinit.d/50setdpi" diff --git a/packages/xserver-common/xserver-common_1.15.bb b/packages/xserver-common/xserver-common_1.15.bb index d608231348..48320ba006 100644 --- a/packages/xserver-common/xserver-common_1.15.bb +++ b/packages/xserver-common/xserver-common_1.15.bb @@ -2,7 +2,7 @@ DESCRIPTION = "Common X11 scripts and support files" LICENSE = "GPL" SECTION = "x11" RDEPENDS_${PN} = "xmodmap xrandr xdpyinfo" -PR = "r1" +PR = "r2" PACKAGE_ARCH = "all" @@ -10,7 +10,8 @@ PACKAGE_ARCH = "all" inherit gpe SRC_URI_append = " file://setDPI.sh \ - file://xserver-imageon.patch;patch=1" + file://xserver-imageon.patch;patch=1 \ + file://calibrate-only-if-ts.patch;patch=1" do_install_append() { install -m 0755 "${WORKDIR}/setDPI.sh" "${D}/etc/X11/Xinit.d/50setdpi" |