Hello community, here is the log from the commit of package usbutils for openSUSE:Factory checked in at Fri Jun 17 09:52:33 CEST 2011.
-------- --- usbutils/usbutils.changes 2010-12-15 01:49:28.000000000 +0100 +++ /mounts/work_src_done/STABLE/usbutils/usbutils.changes 2011-06-16 09:55:06.000000000 +0200 @@ -1,0 +2,13 @@ +Thu Mar 17 23:44:50 UTC 2011 - gre...@suse.de + +- usbutils 002 + Diego Elio Pettenò (2): + Simplify the configure script. + Print device class descriptors like it's done + for interface descriptors. + + Greg Kroah-Hartman (2): + Updated version of lsusb.py from Kurt Garloff. + add lsusb.py to the bin files + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- usbutils-001.tar.bz2 New: ---- usbutils-002.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ usbutils.spec ++++++ --- /var/tmp/diff_new_pack.iAttlt/_old 2011-06-17 09:46:53.000000000 +0200 +++ /var/tmp/diff_new_pack.iAttlt/_new 2011-06-17 09:46:53.000000000 +0200 @@ -1,7 +1,7 @@ # -# spec file for package usbutils (Version 001) +# spec file for package usbutils # -# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,7 +21,7 @@ Name: usbutils BuildRequires: libusb-1_0-devel pkg-config Url: http://sourceforge.net/projects/linux-usb/ -Version: 001 +Version: 002 Release: 1 License: GPLv2+ BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ usbutils-001.tar.bz2 -> usbutils-002.tar.bz2 ++++++ ++++ 4518 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/usbutils-001/Makefile.am new/usbutils-002/Makefile.am --- old/usbutils-001/Makefile.am 2010-11-16 23:12:53.000000000 +0100 +++ new/usbutils-002/Makefile.am 2011-01-13 00:09:34.000000000 +0100 @@ -17,7 +17,8 @@ update-usbids.sh bin_SCRIPTS = \ - usb-devices + usb-devices \ + lsusb.py lsusb_SOURCES = \ lsusb.c \ @@ -44,6 +45,7 @@ lsusb.8.in \ usb-devices.1.in \ usb-devices \ + lsusb.py \ usbutils.pc.in usb.ids.gz: $(srcdir)/usb.ids diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/usbutils-001/NEWS new/usbutils-002/NEWS --- old/usbutils-001/NEWS 2010-12-15 01:33:25.000000000 +0100 +++ new/usbutils-002/NEWS 2011-03-18 00:19:26.000000000 +0100 @@ -1,3 +1,15 @@ +usbutils 002 +============ + +Diego Elio Pettenò (2): + Simplify the configure script. + Print device class descriptors like it's done for interface descriptors. + +Greg Kroah-Hartman (2): + Updated version of lsusb.py from Kurt Garloff. + add lsusb.py to the bin files + + usbutils 001 ============ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/usbutils-001/config.h.in new/usbutils-002/config.h.in --- old/usbutils-001/config.h.in 2010-12-15 01:32:17.000000000 +0100 +++ new/usbutils-002/config.h.in 2011-03-18 00:19:48.000000000 +0100 @@ -6,9 +6,6 @@ /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H -/* Define to 1 if you have the `z' library (-lz). */ -#undef HAVE_LIBZ - /* Define to 1 if you have the <memory.h> header file. */ #undef HAVE_MEMORY_H diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/usbutils-001/configure.ac new/usbutils-002/configure.ac --- old/usbutils-001/configure.ac 2010-12-15 01:32:08.000000000 +0100 +++ new/usbutils-002/configure.ac 2011-03-18 00:19:40.000000000 +0100 @@ -1,5 +1,5 @@ AC_INIT([usbutils], - [001], + [002], [linux-...@vger.kernel.org]) AC_PREREQ(2.60) AM_INIT_AUTOMAKE([check-news foreign 1.9 dist-bzip2]) @@ -11,25 +11,15 @@ AC_CHECK_HEADERS([byteswap.h]) -USE_ZLIB=yes AC_ARG_ENABLE(zlib, - AS_HELP_STRING(--disable-zlib,disable support for zlib), - [ - if eval "test x$enable_zlib = xno"; then - USE_ZLIB= - fi - ]) -if test "$USE_ZLIB" = "yes" ; then - AC_CHECK_LIB(z, inflateEnd) - if test "${ac_cv_lib_z_inflateEnd}" = "yes" ; then - HAVE_ZLIB="yes" - fi -fi -AM_CONDITIONAL(HAVE_ZLIB, test x$HAVE_ZLIB = xyes) + AS_HELP_STRING(--disable-zlib,disable support for zlib)) + +HAVE_ZLIB=no +AS_IF([test "x$enable_zlib" != "xno"], + [AC_CHECK_LIB(z, inflateEnd, HAVE_ZLIB=yes)]) +AM_CONDITIONAL(HAVE_ZLIB, [test "$HAVE_ZLIB" = "yes"]) PKG_CHECK_MODULES(LIBUSB, libusb-1.0 >= 1.0.0) -AC_SUBST(LIBUSB_CFLAGS) -AC_SUBST(LIBUSB_LIBS) AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/usbutils-001/lsusb.c new/usbutils-002/lsusb.c --- old/usbutils-001/lsusb.c 2010-12-01 02:40:58.000000000 +0100 +++ new/usbutils-002/lsusb.c 2011-01-13 00:09:41.000000000 +0100 @@ -803,6 +803,17 @@ dump_bytes(buf, buf[0]); } break; + case USB_DT_CS_DEVICE: + /* MISPLACED DESCRIPTOR ... less indent */ + switch (interface->bInterfaceClass) { + case USB_CLASS_CCID: + dump_ccid_device(buf); + break; + default: + printf(" DEVICE CLASS: "); + dump_bytes(buf, buf[0]); + } + break; case USB_DT_OTG: /* handled separately */ break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/usbutils-001/lsusb.py new/usbutils-002/lsusb.py --- old/usbutils-001/lsusb.py 1970-01-01 01:00:00.000000000 +0100 +++ new/usbutils-002/lsusb.py 2010-12-16 01:07:09.000000000 +0100 @@ -0,0 +1,526 @@ +#!/usr/bin/env python +# lsusb.py +# Displays your USB devices in reasonable form. +# (c) Kurt Garloff <garl...@suse.de>, 2/2009, GPL v2 or v3. +# Usage: See usage() + +import os, sys, re, getopt + +# from __future__ import print_function + +# Global options +showint = False +showhubint = False +noemptyhub = False +nohub = False +warnsort = False + +prefix = "/sys/bus/usb/devices/" +usbids = "/usr/share/usb.ids" + +esc = chr(27) +norm = esc + "[0;0m" +bold = esc + "[0;1m" +red = esc + "[0;31m" +green= esc + "[0;32m" +amber= esc + "[0;33m" + +cols = ("", "", "", "", "") + +def readattr(path, name): + "Read attribute from sysfs and return as string" + f = open(prefix + path + "/" + name); + return f.readline().rstrip("\n"); + +def readlink(path, name): + "Read symlink and return basename" + return os.path.basename(os.readlink(prefix + path + "/" + name)); + +class UsbClass: + "Container for USB Class/Subclass/Protocol" + def __init__(self, cl, sc, pr, str = ""): + self.pclass = cl + self.subclass = sc + self.proto = pr + self.desc = str + def __repr__(self): + return self.desc + def __cmp__(self, oth): + # Works only on 64bit systems: + #return self.pclass*0x10000+self.subclass*0x100+self.proto \ + # - oth.pclass*0x10000-oth.subclass*0x100-oth.proto + if self.pclass != oth.pclass: + return self.pclass - oth.pclass + if self.subclass != oth.subclass: + return self.subclass - oth.subclass + return self.proto - oth.proto + +class UsbVendor: + "Container for USB Vendors" + def __init__(self, vid, vname = ""): + self.vid = vid + self.vname = vname + def __repr__(self): + return self.vname + def __cmp__(self, oth): + return self.vid - oth.vid + +class UsbProduct: + "Container for USB VID:PID devices" + def __init__(self, vid, pid, pname = ""): + self.vid = vid + self.pid = pid + self.pname = pname + def __repr__(self): + return self.pname + def __cmp__(self, oth): + # Works only on 64bit systems: + # return self.vid*0x10000 + self.pid \ + # - oth.vid*0x10000 - oth.pid + if self.vid != oth.vid: + return self.vid - oth.vid + return self.pid - oth.pid + +usbvendors = [] +usbproducts = [] +usbclasses = [] + +def ishexdigit(str): + "return True if all digits are valid hex digits" + for dg in str: + if not dg.isdigit() and not dg in 'abcdef': + return False + return True + +def parse_usb_ids(): + "Parse /usr/share/usb.ids and fill usbvendors, usbproducts, usbclasses" + id = 0 + sid = 0 + mode = 0 + strg = "" + cstrg = "" + for ln in file(usbids, "r").readlines(): + if ln[0] == '#': + continue + ln = ln.rstrip('\n') + if len(ln) == 0: + continue + if ishexdigit(ln[0:4]): + mode = 0 + id = int(ln[:4], 16) + usbvendors.append(UsbVendor(id, ln[6:])) + continue + if ln[0] == '\t' and ishexdigit(ln[1:3]): + sid = int(ln[1:5], 16) + # USB devices + if mode == 0: + usbproducts.append(UsbProduct(id, sid, ln[7:])) + continue + elif mode == 1: + nm = ln[5:] + if nm != "Unused": + strg = cstrg + ":" + nm + else: + strg = cstrg + ":" + usbclasses.append(UsbClass(id, sid, -1, strg)) + continue + if ln[0] == 'C': + mode = 1 + id = int(ln[2:4], 16) + cstrg = ln[6:] + usbclasses.append(UsbClass(id, -1, -1, cstrg)) + continue + if mode == 1 and ln[0] == '\t' and ln[1] == '\t' and ishexdigit(ln[2:4]): + prid = int(ln[2:4], 16) + usbclasses.append(UsbClass(id, sid, prid, strg + ":" + ln[6:])) + continue + mode = 2 + +def bin_search(first, last, item, list): + "binary search on list, returns -1 on fail, match idx otherwise, recursive" + #print "bin_search(%i,%i)" % (first, last) + if first == last: + return -1 + if first == last-1: + if item == list[first]: + return first + else: + return -1 + mid = (first+last) // 2 + if item == list[mid]: + return mid + elif item < list[mid]: + return bin_search(first, mid, item, list) + else: + return bin_search(mid, last, item, list) + + +def find_usb_prod(vid, pid): + "Return device name from USB Vendor:Product list" + strg = "" + dev = UsbVendor(vid, "") + lnvend = len(usbvendors) + ix = bin_search(0, lnvend, dev, usbvendors) + if ix != -1: + strg = usbvendors[ix].__repr__() + else: + return "" + dev = UsbProduct(vid, pid, "") + lnprod = len(usbproducts) + ix = bin_search(0, lnprod, dev, usbproducts) + if ix != -1: + return strg + " " + usbproducts[ix].__repr__() + return strg + +def find_usb_class(cid, sid, pid): + "Return USB protocol from usbclasses list" + if cid == 0xff and sid == 0xff and pid == 0xff: + return "Vendor Specific" + lnlst = len(usbclasses) + dev = UsbClass(cid, sid, pid, "") + ix = bin_search(0, lnlst, dev, usbclasses) + if ix != -1: + return usbclasses[ix].__repr__() + dev = UsbClass(cid, sid, -1, "") + ix = bin_search(0, lnlst, dev, usbclasses) + if ix != -1: + return usbclasses[ix].__repr__() + dev = UsbClass(cid, -1, -1, "") + ix = bin_search(0, lnlst, dev, usbclasses) + if ix != -1: + return usbclasses[ix].__repr__() + return "" + + +devlst = ( 'host', # usb-storage + 'video4linux/video', # uvcvideo et al. + 'sound/card', # snd-usb-audio + 'net/', # cdc_ether, ... + 'input/input', # usbhid + 'usb:hiddev', # usb hid + 'bluetooth/hci', # btusb + 'ttyUSB', # btusb + 'tty/', # cdc_acm + 'usb:lp', # usblp + #'usb/lp', # usblp + 'usb/', # hiddev, usblp + ) + +def find_storage(hostno): + "Return SCSI block dev names for host" + res = "" + for ent in os.listdir("/sys/class/scsi_device/"): + (host, bus, tgt, lun) = ent.split(":") + if host == hostno: + try: + for ent2 in os.listdir("/sys/class/scsi_device/%s/device/block" % ent): + res += ent2 + " " + except: + pass + return res + +def find_dev(driver, usbname): + "Return pseudo devname that's driven by driver" + res = "" + for nm in devlst: + dir = prefix + usbname + prep = "" + #print nm + idx = nm.find('/') + if idx != -1: + prep = nm[:idx+1] + dir += "/" + nm[:idx] + nm = nm[idx+1:] + ln = len(nm) + try: + for ent in os.listdir(dir): + if ent[:ln] == nm: + res += prep+ent+" " + if nm == "host": + res += "(" + find_storage(ent[ln:])[:-1] + ")" + except: + pass + return res + + +class UsbInterface: + "Container for USB interface info" + def __init__(self, parent = None, level = 1): + self.parent = parent + self.level = level + self.fname = "" + self.iclass = 0 + self.isclass = 0 + self.iproto = 0 + self.noep = 0 + self.driver = "" + self.devname = "" + self.protoname = "" + def read(self, fname): + fullpath = "" + if self.parent: + fullpath += self.parent.fname + "/" + fullpath += fname + #self.fname = fullpath + self.fname = fname + self.iclass = int(readattr(fullpath, "bInterfaceClass"),16) + self.isclass = int(readattr(fullpath, "bInterfaceSubClass"),16) + self.iproto = int(readattr(fullpath, "bInterfaceProtocol"),16) + self.noep = int(readattr(fullpath, "bNumEndpoints")) + try: + self.driver = readlink(fname, "driver") + self.devname = find_dev(self.driver, fname) + except: + pass + self.protoname = find_usb_class(self.iclass, self.isclass, self.iproto) + def __str__(self): + return "%-16s(IF) %02x:%02x:%02x %iEPs (%s) %s%s %s%s%s\n" % \ + (" " * self.level+self.fname, self.iclass, + self.isclass, self.iproto, self.noep, + self.protoname, + cols[3], self.driver, + cols[4], self.devname, cols[0]) + +class UsbDevice: + "Container for USB device info" + def __init__(self, parent = None, level = 0): + self.parent = parent + self.level = level + self.fname = "" + self.iclass = 0 + self.isclass = 0 + self.iproto = 0 + self.vid = 0 + self.pid = 0 + self.name = "" + self.usbver = "" + self.speed = "" + self.maxpower = "" + self.noports = 0 + self.nointerfaces = 0 + self.driver = "" + self.devname = "" + self.interfaces = [] + self.children = [] + + def read(self, fname): + self.fname = fname + self.iclass = int(readattr(fname, "bDeviceClass"), 16) + self.isclass = int(readattr(fname, "bDeviceSubClass"), 16) + self.iproto = int(readattr(fname, "bDeviceProtocol"), 16) + self.vid = int(readattr(fname, "idVendor"), 16) + self.pid = int(readattr(fname, "idProduct"), 16) + try: + self.name = readattr(fname, "manufacturer") + " " \ + + readattr(fname, "product") + #self.name += " " + readattr(fname, "serial") + if self.name[:5] == "Linux": + rx = re.compile(r"Linux [^ ]* (.hci_hcd) .HCI Host Controller") + mch = rx.match(self.name) + if mch: + self.name = mch.group(1) + + except: + pass + if not self.name: + self.name = find_usb_prod(self.vid, self.pid) + # Some USB Card readers have a better name then Generic ... + if self.name[:7] == "Generic": + oldnm = self.name + self.name = find_usb_prod(self.vid, self.pid) + if not self.name: + self.name = oldnm + try: + ser = readattr(fname, "serial") + # Some USB devs report "serial" as serial no. suppress + if (ser and ser != "serial"): + self.name += " " + ser + except: + pass + self.usbver = readattr(fname, "version") + self.speed = readattr(fname, "speed") + self.maxpower = readattr(fname, "bMaxPower") + self.noports = int(readattr(fname, "maxchild")) + try: + self.nointerfaces = int(readattr(fname, "bNumInterfaces")) + except: + #print "ERROR: %s/bNumInterfaces = %s" % (fname, + # readattr(fname, "bNumInterfaces"))a + self.nointerfaces = 0 + try: + self.driver = readlink(fname, "driver") + self.devname = find_dev(self.driver, fname) + except: + pass + + def readchildren(self): + if self.fname[0:3] == "usb": + fname = self.fname[3:] + else: + fname = self.fname + for dirent in os.listdir(prefix + self.fname): + if not dirent[0:1].isdigit(): + continue + #print dirent + if os.access(prefix + dirent + "/bInterfaceClass", os.R_OK): + iface = UsbInterface(self, self.level+1) + iface.read(dirent) + self.interfaces.append(iface) + else: + usbdev = UsbDevice(self, self.level+1) + usbdev.read(dirent) + usbdev.readchildren() + self.children.append(usbdev) + + def __str__(self): + #str = " " * self.level + self.fname + if self.iclass == 9: + col = cols[2] + if noemptyhub and len(self.children) == 0: + return "" + if nohub: + str = "" + else: + col = cols[1] + if not nohub or self.iclass != 9: + str = "%-16s%s%04x:%04x%s %02x %s%4sMBit/s %s %iIFs (%s%s%s)" % \ + (" " * self.level + self.fname, + cols[1], self.vid, self.pid, cols[0], + self.iclass, self.usbver, self.speed, self.maxpower, + self.nointerfaces, col, self.name, cols[0]) + #if self.driver != "usb": + # str += " %s" % self.driver + if self.iclass == 9 and not showhubint: + str += " %shub%s\n" % (cols[2], cols[0]) + else: + str += "\n" + if showint: + for iface in self.interfaces: + str += iface.__str__() + for child in self.children: + str += child.__str__() + return str + +def deepcopy(lst): + "Returns a deep copy from the list lst" + copy = [] + for item in lst: + copy.append(item) + return copy + +def display_diff(lst1, lst2, fmtstr, args): + "Compare lists (same length!) and display differences" + for idx in range(0, len(lst1)): + if lst1[idx] != lst2[idx]: + print "Warning: " + fmtstr % args(lst2[idx]) + +def fix_usbvend(): + "Sort USB vendor list and (optionally) display diffs" + if warnsort: + oldusbvend = deepcopy(usbvendors) + usbvendors.sort() + if warnsort: + display_diff(usbvendors, oldusbvend, + "Unsorted Vendor ID %04x", + lambda x: (x.vid,)) + +def fix_usbprod(): + "Sort USB products list" + if warnsort: + oldusbprod = deepcopy(usbproducts) + usbproducts.sort() + if warnsort: + display_diff(usbproducts, oldusbprod, + "Unsorted Vendor:Product ID %04x:%04x", + lambda x: (x.vid, x.pid)) + +def fix_usbclass(): + "Sort USB class list" + if warnsort: + oldusbcls = deepcopy(usbclasses) + usbclasses.sort() + if warnsort: + display_diff(usbclasses, oldusbcls, + "Unsorted USB class %02x:%02x:%02x", + lambda x: (x.pclass, x.subclass, x.proto)) + + +def usage(): + "Displays usage information" + print "Usage: lsusb.py [options]" + print "Options:" + print " -h display this help" + print " -i display interface information" + print " -I display interface information, even for hubs" + print " -u suppress empty hubs" + print " -U suppress all hubs" + print " -c use colors" + print " -w display warning if usb.ids is not sorted correctly" + print " -f FILE override filename for /usr/share/usb.ids" + return 2 + +def read_usb(): + "Read toplevel USB entries and print" + for dirent in os.listdir(prefix): + #print dirent, + if not dirent[0:3] == "usb": + continue + usbdev = UsbDevice(None, 0) + usbdev.read(dirent) + usbdev.readchildren() + os.write(sys.stdout.fileno(), usbdev.__str__()) + +def main(argv): + "main entry point" + global showint, showhubint, noemptyhub, nohub, warnsort, cols, usbids + try: + (optlist, args) = getopt.gnu_getopt(argv[1:], "hiIuUwcf:", ("help",)) + except getopt.GetoptError, exc: + print "Error:", exc + sys.exit(usage()) + for opt in optlist: + if opt[0] == "-h" or opt[0] == "--help": + usage() + sys.exit(0) + if opt[0] == "-i": + showint = True + continue + if opt[0] == "-I": + showint = True + showhubint = True + continue + if opt[0] == "-u": + noemptyhub = True + continue + if opt[0] == "-U": + noemptyhub = True + nohub = True + continue + if opt[0] == "-c": + cols = (norm, bold, red, green, amber) + continue + if opt[0] == "-w": + warnsort = True + continue + if opt[0] == "-f": + usbids = opt[1] + continue + if len(args) > 0: + print "Error: excess args %s ..." % args[0] + sys.exit(usage()) + + try: + parse_usb_ids() + fix_usbvend() + fix_usbprod() + fix_usbclass() + except: + print >>sys.stderr, " WARNING: Failure to read usb.ids" + print >>sys.stderr, sys.exc_info() + read_usb() + +# Entry point +if __name__ == "__main__": + main(sys.argv) + + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/usbutils-001/usbhid-dump/m4/libtool.m4 new/usbutils-002/usbhid-dump/m4/libtool.m4 --- old/usbutils-001/usbhid-dump/m4/libtool.m4 2010-07-01 12:44:35.000000000 +0200 +++ new/usbutils-002/usbhid-dump/m4/libtool.m4 2011-03-01 13:12:38.000000000 +0100 @@ -1020,7 +1020,7 @@ # to the aix ld manual. m4_defun([_LT_SYS_MODULE_PATH_AIX], [m4_require([_LT_DECL_SED])dnl -AC_LINK_IFELSE(AC_LANG_PROGRAM,[ +AC_LINK_IFELSE([AC_LANG_PROGRAM],[ lt_aix_libpath_sed=' /Import File Strings/,/^$/ { /^0/ { @@ -4825,9 +4825,18 @@ # implicitly export all symbols. save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" - AC_LINK_IFELSE(int foo(void) {}, + AC_LINK_IFELSE( + [AC_LANG_SOURCE( + [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], + [C++], [[int foo (void) { return 0; }]], + [Fortran 77], [[ + subroutine foo + end]], + [Fortran], [[ + subroutine foo + end]])])], [ _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' - ) + ]) LDFLAGS="$save_LDFLAGS" else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/usbutils-001/usbhid-dump/m4/ltversion.m4 new/usbutils-002/usbhid-dump/m4/ltversion.m4 --- old/usbutils-001/usbhid-dump/m4/ltversion.m4 2010-07-01 12:44:35.000000000 +0200 +++ new/usbutils-002/usbhid-dump/m4/ltversion.m4 2011-03-01 13:12:38.000000000 +0100 @@ -9,15 +9,15 @@ # Generated from ltversion.in. -# serial 3017 ltversion.m4 +# serial 3018 ltversion.m4 # This file is part of GNU Libtool m4_define([LT_PACKAGE_VERSION], [2.2.6b]) -m4_define([LT_PACKAGE_REVISION], [1.3017]) +m4_define([LT_PACKAGE_REVISION], [1.3018]) AC_DEFUN([LTVERSION_VERSION], [macro_version='2.2.6b' -macro_revision='1.3017' +macro_revision='1.3018' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org