diff options
445 files changed, 31990 insertions, 17119 deletions
diff --git a/community-staging/dsniff/PKGBUILD b/community-staging/dsniff/PKGBUILD deleted file mode 100644 index f7428aa09..000000000 --- a/community-staging/dsniff/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id: PKGBUILD 49679 2011-06-19 07:23:27Z andrea $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: ViNS <gladiator@fastwebnet.it> - -pkgname=dsniff -pkgver=2.4b1 -pkgrel=20 -pkgdesc="Collection of tools for network auditing and penetration testing" -url="http://www.monkey.org/~dugsong/dsniff/" -arch=('i686' 'x86_64') -license=('BSD') -depends=('libpcap' 'openssl' 'libxmu' 'glib2' 'libnet' 'libnids') -source=("http://www.monkey.org/~dugsong/${pkgname}/beta/$pkgname-$pkgver.tar.gz" - "http://ftp.de.debian.org/debian/pool/main/d/${pkgname}/${pkgname}_2.4b1+debian-18.diff.gz") -md5sums=('2f761fa3475682a7512b0b43568ee7d6' - 'fbc9f62f9ab2f98f24f53ad497c1ce5d') - -build() { - cd $srcdir/$pkgname-2.4 - patch -N < "${srcdir}"/dsniff_2.4b1+debian-18.diff - for i in *.dpatch; do - patch -N < "$i" - done - - LDFLAGS="-lresolv -lglib-2.0 -lgthread-2.0 $LDFLAGS" ./configure --prefix=/usr - make -} - -package() { - cd "$srcdir"/$pkgname-2.4 - make prefix="$pkgdir"/usr install - install -D -m0644 LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE - - install -d "$pkgdir"/usr/share - mv "$pkgdir"/usr/man "$pkgdir"/usr/share/ -} diff --git a/community-staging/exim/PKGBUILD b/community-staging/exim/PKGBUILD deleted file mode 100644 index d30452d45..000000000 --- a/community-staging/exim/PKGBUILD +++ /dev/null @@ -1,74 +0,0 @@ -# $Id: PKGBUILD 49455 2011-06-16 18:57:50Z angvp $ -# Maintainer: Angel Velasquez <angvp@archlinux.org> -# Maintainer: judd <jvinet@zeroflux.org> -pkgname=exim -pkgver=4.76 -pkgrel=2 -pkgdesc="A Message Transfer Agent" -arch=(i686 x86_64) -url="http://www.exim.org/" -license=('GPL') -backup=(etc/mail/aliases etc/mail/exim.conf \ - etc/logrotate.d/exim etc/conf.d/exim) -install=exim.install -changelog=exim.changelog -depends=('db' 'pcre' 'pam' 'tcp_wrappers' 'openssl' 'libldap') -provides=('smtp-server') -conflicts=('smtp-server') -options=('!makeflags') -source=(ftp://mirrors.24-7-solutions.net/pub/exim/ftp/exim/exim4/exim-${pkgver}.tar.bz2 - aliases - exim - exim.logrotate - exim.conf.d - exim.Makefile - ) -md5sums=('58e784b33c7a2ab335ec6400346d6362' - '4874006f0585253ddab027d441009757' - '9aed772e87223213e8da9ca5e7376869' - 'd788c26f86a9d72a0aebb3b849fe74f2' - 'b75fe4c6e960a59a25b5f51e8f61ba3a' - '61e76543476f52f136c1d6c80ac1c5a1') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - sed -i 's|tail -1|tail -n -1|g' scripts/Configure-config.h - # Make some configuration changes - cp ${srcdir}/${pkgname}.Makefile Local/Makefile - make -} - -package() { - cd $srcdir/$pkgname-$pkgver - install -D -m644 ../exim.logrotate ${pkgdir}/etc/logrotate.d/exim - install -D -m644 ../exim.conf.d ${pkgdir}/etc/conf.d/exim - install -D -m644 doc/exim.8 ${pkgdir}/usr/share/man/man8/exim.8 - install -D -m755 ../exim ${pkgdir}/etc/rc.d/exim - mkdir -p ${pkgdir}/var/spool/exim/db ${pkgdir}/etc/mail \ - ${pkgdir}/var/log/exim ${pkgdir}/usr/{lib,sbin} - chmod 770 ${pkgdir}/var/spool/exim ${pkgdir}/var/spool/exim/db ${pkgdir}/var/log/exim - cd build-Linux-* - for i in exicyclog exim_checkaccess exim_dumpdb exim_lock\ - exim_tidydb exipick exiqsumm exigrep exim_dbmbuild exim\ - exim_fixdb eximstats exinext exiqgrep exiwhat - do - install -m 0755 $i ${pkgdir}/usr/sbin - done - - cd ${srcdir}/exim-${pkgver}/src - sed "s|/etc/aliases|/etc/mail/aliases|g" configure.default | \ - sed "s|SYSTEM_ALIASES_FILE|/etc/mail/aliases|g" \ - >${pkgdir}/etc/mail/exim.conf - - cp ${srcdir}/aliases ${pkgdir}/etc/mail - cd ${pkgdir}/usr/sbin - for i in mailq rmail rsmtp runq sendmail - do - ln -s exim $i - done - # fhs compliancy - ln -s ../sbin/exim ../lib/sendmail - - mkdir -p ${pkgdir}/etc/rc.d - cp ${srcdir}/exim ${pkgdir}/etc/rc.d -} diff --git a/community-staging/exim/aliases b/community-staging/exim/aliases deleted file mode 100644 index 5a76ff7d5..000000000 --- a/community-staging/exim/aliases +++ /dev/null @@ -1,35 +0,0 @@ -# -# /etc/mail/aliases -# -# NOTE: Make sure you run 'newaliases' after modifying this file -# - -# Basic system aliases -- these MUST be present. -MAILER-DAEMON: postmaster -postmaster: root -hostmaster: root -webmaster: hostmaster -ftpmaster: hostmaster -admin: hostmaster -administrator: hostmaster - -# General redirections for pseudo accounts. -bin: root -daemon: root -games: root -ingres: root -nobody: root -system: root -toor: root -uucp: root - -# Well-known aliases. -manager: root -dumper: root -operator: root - -# trap decode to catch security attacks -decode: root - -# Person who should get root's mail -#root: diff --git a/community-staging/exim/exim b/community-staging/exim/exim deleted file mode 100755 index 8e9640b32..000000000 --- a/community-staging/exim/exim +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -# source application-specific settings -[ -f /etc/conf.d/exim ] && . /etc/conf.d/exim - -# general config -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/sbin/exim` - -case "$1" in - start) - stat_busy "Starting Exim" - [ -z "$PID" ] && /usr/sbin/exim $EXIM_ARGS - if [ $? -gt 0 ]; then - stat_fail - else - add_daemon exim - stat_done - fi - ;; - stop) - stat_busy "Stopping Exim" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm /var/run/exim.pid - rm_daemon exim - stat_done - fi - ;; - restart) - $0 stop - sleep 2 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/community-staging/exim/exim.Makefile b/community-staging/exim/exim.Makefile deleted file mode 100644 index 125f87dfb..000000000 --- a/community-staging/exim/exim.Makefile +++ /dev/null @@ -1,1227 +0,0 @@ -# $Cambridge: exim/src/src/EDITME,v 1.27 2010/06/12 15:21:25 jetmore Exp $ - -################################################## -# The Exim mail transport agent # -################################################## - -# This is the template for Exim's main build-time configuration file. It -# contains settings that are independent of any operating system. These are -# things that are mostly sysadmin choices. The items below are divided into -# those you must specify, those you probably want to specify, those you might -# often want to specify, and those that you almost never need to mention. - -# Edit this file and save the result to a file called Local/Makefile within the -# Exim distribution directory before running the "make" command. - -# Things that depend on the operating system have default settings in -# OS/Makefile-Default, but these are overridden for some OS by files called -# called OS/Makefile-<osname>. You can further override these by creating files -# called Local/Makefile-<osname>, where "<osname>" stands for the name of your -# operating system - look at the names in the OS directory to see which names -# are recognized. - -# However, if you are building Exim for a single OS only, you don't need to -# worry about setting up Local/Makefile-<osname>. Any build-time configuration -# settings you require can in fact be placed in the one file called -# Local/Makefile. It is only if you are building for several OS from the same -# source files that you need to worry about splitting off your own OS-dependent -# settings into separate files. (There's more explanation about how this all -# works in the toplevel README file, under "Modifying the building process", as -# well as in the Exim specification.) - -# One OS-specific thing that may need to be changed is the command for running -# the C compiler; the overall default is gcc, but some OS Makefiles specify cc. -# You can override anything that is set by putting CC=whatever in your -# Local/Makefile. - -# NOTE: You should never need to edit any of the distributed Makefiles; all -# overriding can be done in your Local/Makefile(s). This will make it easier -# for you when the next release comes along. - -# The location of the X11 libraries is something else that is quite variable -# even between different versions of the same operating system (and indeed -# there are different versions of X11 as well, of course). The four settings -# concerned here are X11, XINCLUDE, XLFLAGS (linking flags) and X11_LD_LIB -# (dynamic run-time library). You need not worry about X11 unless you want to -# compile the Exim monitor utility. Exim itself does not use X11. - -# Another area of variability between systems is the type and location of the -# DBM library package. Exim has support for ndbm, gdbm, tdb, and Berkeley DB. -# By default the code assumes ndbm; this often works with gdbm or DB, provided -# they are correctly installed, via their compatibility interfaces. However, -# Exim can also be configured to use the native calls for Berkeley DB (obsolete -# versions 1.85, 2.x, 3.x, or the current 4.x version) and also for gdbm. - -# For some operating systems, a default DBM library (other than ndbm) is -# selected by a setting in the OS-specific Makefile. Most modern OS now have -# a DBM library installed as standard, and in many cases this will be selected -# for you by the OS-specific configuration. If Exim compiles without any -# problems, you probably do not have to worry about the DBM library. If you -# do want or need to change it, you should first read the discussion in the -# file doc/dbm.discuss.txt, which also contains instructions for testing Exim's -# interface to the DBM library. - -# In Local/Makefiles blank lines and lines starting with # are ignored. It is -# also permitted to use the # character to add a comment to a setting, for -# example -# -# EXIM_GID=42 # the "mail" group -# -# However, with some versions of "make" this works only if there is no white -# space between the end of the setting and the #, so perhaps it is best -# avoided. A consequence of this facility is that it is not possible to have -# the # character present in any setting, but I can't think of any cases where -# this would be wanted. -############################################################################### - - - -############################################################################### -# THESE ARE THINGS YOU MUST SPECIFY # -############################################################################### - -# Exim will not build unless you specify BIN_DIRECTORY, CONFIGURE_FILE, and -# EXIM_USER. You also need EXIM_GROUP if EXIM_USER specifies a uid by number. - -# If you don't specify SPOOL_DIRECTORY, Exim won't fail to build. However, it -# really is a very good idea to specify it here rather than at run time. This -# is particularly true if you let the logs go to their default location in the -# spool directory, because it means that the location of the logs is known -# before Exim has read the run time configuration file. - -#------------------------------------------------------------------------------ -# BIN_DIRECTORY defines where the exim binary will be installed by "make -# install". The path is also used internally by Exim when it needs to re-invoke -# itself, either to send an error message, or to recover root privilege. Exim's -# utility binaries and scripts are also installed in this directory. There is -# no "standard" place for the binary directory. Some people like to keep all -# the Exim files under one directory such as /usr/exim; others just let the -# Exim binaries go into an existing directory such as /usr/sbin or -# /usr/local/sbin. The installation script will try to create this directory, -# and any superior directories, if they do not exist. - -BIN_DIRECTORY=/usr/sbin - - -#------------------------------------------------------------------------------ -# CONFIGURE_FILE defines where Exim's run time configuration file is to be -# found. It is the complete pathname for the file, not just a directory. The -# location of all other run time files and directories can be changed in the -# run time configuration file. There is a lot of variety in the choice of -# location in different OS, and in the preferences of different sysadmins. Some -# common locations are in /etc or /etc/mail or /usr/local/etc or -# /usr/local/etc/mail. Another possibility is to keep all the Exim files under -# a single directory such as /usr/exim. Whatever you choose, the installation -# script will try to make the directory and any superior directories if they -# don't exist. It will also install a default runtime configuration if this -# file does not exist. - -CONFIGURE_FILE=/etc/mail/exim.conf - -# It is possible to specify a colon-separated list of files for CONFIGURE_FILE. -# In this case, Exim will use the first of them that exists when it is run. -# However, if a list is specified, the installation script no longer tries to -# make superior directories or to install a default runtime configuration. - - -#------------------------------------------------------------------------------ -# The Exim binary must normally be setuid root, so that it starts executing as -# root, but (depending on the options with which it is called) it does not -# always need to retain the root privilege. These settings define the user and -# group that is used for Exim processes when they no longer need to be root. In -# particular, this applies when receiving messages and when doing remote -# deliveries. (Local deliveries run as various non-root users, typically as the -# owner of a local mailbox.) Specifying these values as root is not supported. - -EXIM_USER=ref:exim - -# If you specify EXIM_USER as a name, this is looked up at build time, and the -# uid number is built into the binary. However, you can specify that this -# lookup is deferred until runtime. In this case, it is the name that is built -# into the binary. You can do this by a setting of the form: - -# EXIM_USER=ref:exim - -# In other words, put "ref:" in front of the user name. If you set EXIM_USER -# like this, any value specified for EXIM_GROUP is also passed "by reference". -# Although this costs a bit of resource at runtime, it is convenient to use -# this feature when building binaries that are to be run on multiple systems -# where the name may refer to different uids. It also allows you to build Exim -# on a system where there is no Exim user defined. - -# If the setting of EXIM_USER is numeric (e.g. EXIM_USER=42), there must -# also be a setting of EXIM_GROUP. If, on the other hand, you use a name -# for EXIM_USER (e.g. EXIM_USER=exim), you don't need to set EXIM_GROUP unless -# you want to use a group other than the default group for the given user. - -# EXIM_GROUP= - -# Many sites define a user called "exim", with an appropriate default group, -# and use -# -# EXIM_USER=exim -# -# while leaving EXIM_GROUP unspecified (commented out). - - -#------------------------------------------------------------------------------ -# SPOOL_DIRECTORY defines the directory where all the data for messages in -# transit is kept. It is strongly recommended that you define it here, though -# it is possible to leave this till the run time configuration. - -# Exim creates the spool directory if it does not exist. The owner and group -# will be those defined by EXIM_USER and EXIM_GROUP, and this also applies to -# all the files and directories that are created in the spool directory. - -# Almost all installations choose this: - -SPOOL_DIRECTORY=/var/spool/exim - - - -############################################################################### -# THESE ARE THINGS YOU PROBABLY WANT TO SPECIFY # -############################################################################### - -# If you need extra header file search paths on all compiles, put the -I -# options in INCLUDE. If you want the extra searches only for certain -# parts of the build, see more specific xxx_INCLUDE variables below. - -# INCLUDE=-I/example/include - -# You need to specify some routers and transports if you want the Exim that you -# are building to be capable of delivering mail. You almost certainly need at -# least one type of lookup. You should consider whether you want to build -# the Exim monitor or not. - - -#------------------------------------------------------------------------------ -# These settings determine which individual router drivers are included in the -# Exim binary. There are no defaults in the code; those routers that are wanted -# must be defined here by setting the appropriate variables to the value "yes". -# Including a router in the binary does not cause it to be used automatically. -# It has also to be configured in the run time configuration file. By -# commenting out those you know you don't want to use, you can make the binary -# a bit smaller. If you are unsure, leave all of these included for now. - -ROUTER_ACCEPT=yes -ROUTER_DNSLOOKUP=yes -ROUTER_IPLITERAL=yes -ROUTER_MANUALROUTE=yes -ROUTER_QUERYPROGRAM=yes -ROUTER_REDIRECT=yes - -# This one is very special-purpose, so is not included by default. - -# ROUTER_IPLOOKUP=yes - - -#------------------------------------------------------------------------------ -# These settings determine which individual transport drivers are included in -# the Exim binary. There are no defaults; those transports that are wanted must -# be defined here by setting the appropriate variables to the value "yes". -# Including a transport in the binary does not cause it to be used -# automatically. It has also to be configured in the run time configuration -# file. By commenting out those you know you don't want to use, you can make -# the binary a bit smaller. If you are unsure, leave all of these included for -# now. - -TRANSPORT_APPENDFILE=yes -TRANSPORT_AUTOREPLY=yes -TRANSPORT_PIPE=yes -TRANSPORT_SMTP=yes - -# This one is special-purpose, and commonly not required, so it is not -# included by default. - -TRANSPORT_LMTP=yes - - -#------------------------------------------------------------------------------ -# The appendfile transport can write messages to local mailboxes in a number -# of formats. The code for three specialist formats, maildir, mailstore, and -# MBX, is included only when requested. If you do not know what this is about, -# leave these settings commented out. - -SUPPORT_MAILDIR=yes -# SUPPORT_MAILSTORE=yes -# SUPPORT_MBX=yes - - -#------------------------------------------------------------------------------ -# See below for dynamic lookup modules. -# LOOKUP_MODULE_DIR=/usr/lib/exim/lookups/ -# If not using package management but using this anyway, then think about how -# you perform upgrades and revert them. You should consider the benefit of -# embedding the Exim version number into LOOKUP_MODULE_DIR, so that you can -# maintain two concurrent sets of modules. - -# To build a module dynamically, you'll need to define CFLAGS_DYNAMIC for -# your platform. Eg: -# CFLAGS_DYNAMIC=-shared -rdynamic -# CFLAGS_DYNAMIC=-shared -rdynamic -fPIC - -#------------------------------------------------------------------------------ -# These settings determine which file and database lookup methods are included -# in the binary. See the manual chapter entitled "File and database lookups" -# for discussion. DBM and lsearch (linear search) are included by default. If -# you are unsure about the others, leave them commented out for now. -# LOOKUP_DNSDB does *not* refer to general mail routing using the DNS. It is -# for the specialist case of using the DNS as a general database facility (not -# common). -# If set to "2" instead of "yes" then the corresponding lookup will be -# built as a module and must be installed into LOOKUP_MODULE_DIR. You need to -# add -export-dynamic -rdynamic to EXTRALIBS. You may also need to add -ldl to -# EXTRALIBS so that dlopen() is available to Exim. You need to define -# LOOKUP_MODULE_DIR above so the exim binary actually loads dynamic lookup -# modules. -# Also, instead of adding all the libraries/includes to LOOKUP_INCLUDE and -# LOOKUP_LIBS, add them to the respective LOOKUP_*_INCLUDE and LOOKUP_*_LIBS -# (where * is the name as given here in this list). That ensures that only -# the dynamic library and not the exim binary will be linked against the -# library. -# NOTE: LDAP cannot be built as a module! - -LOOKUP_DBM=yes -LOOKUP_LSEARCH=yes -LOOKUP_DNSDB=yes - -# LOOKUP_CDB=yes -LOOKUP_DSEARCH=yes -# LOOKUP_IBASE=yes -LOOKUP_LDAP=yes -# LOOKUP_MYSQL=yes -# LOOKUP_NIS=yes -# LOOKUP_NISPLUS=yes -# LOOKUP_ORACLE=yes -# LOOKUP_PASSWD=yes -# LOOKUP_PGSQL=yes -# LOOKUP_SQLITE=yes -# LOOKUP_WHOSON=yes - -# These two settings are obsolete; all three lookups are compiled when -# LOOKUP_LSEARCH is enabled. However, we retain these for backward -# compatibility. Setting one forces LOOKUP_LSEARCH if it is not set. - -# LOOKUP_WILDLSEARCH=yes -# LOOKUP_NWILDLSEARCH=yes - - -#------------------------------------------------------------------------------ -# If you have set LOOKUP_LDAP=yes, you should set LDAP_LIB_TYPE to indicate -# which LDAP library you have. Unfortunately, though most of their functions -# are the same, there are minor differences. Currently Exim knows about four -# LDAP libraries: the one from the University of Michigan (also known as -# OpenLDAP 1), OpenLDAP 2, the Netscape SDK library, and the library that comes -# with Solaris 7 onwards. Uncomment whichever of these you are using. - -# LDAP_LIB_TYPE=OPENLDAP1 -LDAP_LIB_TYPE=OPENLDAP2 -# LDAP_LIB_TYPE=NETSCAPE -# LDAP_LIB_TYPE=SOLARIS - -# If you don't set any of these, Exim assumes the original University of -# Michigan (OpenLDAP 1) library. - - -#------------------------------------------------------------------------------ -# The PCRE library is required for exim. There is no longer an embedded -# version of the PCRE library included with the source code, instead you -# must use a system library or build your own copy of PCRE. -# In either case you must specify the library link info here. If the -# PCRE header files are not in the standard search path you must also -# modify the INCLUDE path (above) -# The default setting of PCRE_LIBS should work on the vast majority of -# systems - -PCRE_LIBS=-lpcre - - -#------------------------------------------------------------------------------ -# Additional libraries and include directories may be required for some -# lookup styles (e.g. LDAP, MYSQL or PGSQL). LOOKUP_LIBS is included only on -# the command for linking Exim itself, not on any auxiliary programs. You -# don't need to set LOOKUP_INCLUDE if the relevant directories are already -# specified in INCLUDE. The settings below are just examples; -lpq is for -# PostgreSQL, -lgds is for Interbase, -lsqlite3 is for SQLite. - -# LOOKUP_INCLUDE=-I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -# LOOKUP_LIBS=-L/usr/local/lib -lldap -llber -lmysqlclient -lpq -lgds -lsqlite3 - - -#------------------------------------------------------------------------------ -# Compiling the Exim monitor: If you want to compile the Exim monitor, a -# program that requires an X11 display, then EXIM_MONITOR should be set to the -# value "eximon.bin". Comment out this setting to disable compilation of the -# monitor. The locations of various X11 directories for libraries and include -# files are defaulted in the OS/Makefile-Default file, but can be overridden in -# local OS-specific make files. - - - - -#------------------------------------------------------------------------------ -# Compiling Exim with content scanning support: If you want to compile Exim -# with support for message body content scanning, set WITH_CONTENT_SCAN to -# the value "yes". This will give you malware and spam scanning in the DATA ACL, -# and the MIME ACL. Please read the documentation to learn more about these -# features. - -WITH_CONTENT_SCAN=yes - -# If you want to use the deprecated "demime" condition in the DATA ACL, -# uncomment the line below. Doing so will also explicitly turn on the -WITH_CONTENT_SCAN=yes -# the "demime" condition. - -WITH_OLD_DEMIME=yes - -# If you're using ClamAV and are backporting fixes to an old version, instead -# of staying current (which is the more usual approach) then you may need to -# use an older API which uses a STREAM command, now deprecated, instead of -# zINSTREAM. If you need to set this, please let the Exim developers know, as -# if nobody reports a need for it, we'll remove this option and clean up the -# code. zINSTREAM was introduced with ClamAV 0.95. -# -# WITH_OLD_CLAMAV_STREAM=yes - -#------------------------------------------------------------------------------ -# By default Exim includes code to support DKIM (DomainKeys Identified -# Mail, RFC4871) signing and verification. Verification of signatures is -# turned on by default. See the spec for information on conditionally -# disabling it. To disable the inclusion of the entire feature, set -# DISABLE_DKIM to "yes" - -# DISABLE_DKIM=yes - - -#------------------------------------------------------------------------------ -# Compiling Exim with experimental features. These are documented in -# experimental-spec.txt. "Experimental" means that the way these features are -# implemented may still change. Backward compatibility is not guaranteed. - -# Uncomment the following lines to add SPF support. You need to have libspf2 -# installed on your system (www.libspf2.org). Depending on where it is installed -# you may have to edit the CFLAGS and LDFLAGS lines. - -# EXPERIMENTAL_SPF=yes -# CFLAGS += -I/usr/local/include -# LDFLAGS += -lspf2 - -# Uncomment the following lines to add SRS (Sender rewriting scheme) support. -# You need to have libsrs_alt installed on your system (srs.mirtol.com). -# Depending on where it is installed you may have to edit the CFLAGS and -# LDFLAGS lines. - -# EXPERIMENTAL_SRS=yes -# CFLAGS += -I/usr/local/include -# LDFLAGS += -lsrs_alt - -# Uncomment the following lines to add Brightmail AntiSpam support. You need -# to have the Brightmail client SDK installed. Please check the experimental -# documentation for implementation details. You need to edit the CFLAGS and -# LDFLAGS lines. - -# EXPERIMENTAL_BRIGHTMAIL=yes -# CFLAGS += -I/opt/brightmail/bsdk-6.0/include -# LDFLAGS += -lxml2_single -lbmiclient_single -L/opt/brightmail/bsdk-6.0/lib - - - -############################################################################### -# THESE ARE THINGS YOU MIGHT WANT TO SPECIFY # -############################################################################### - -# The items in this section are those that are commonly changed according to -# the sysadmin's preferences, but whose defaults are often acceptable. The -# first five are concerned with security issues, where differing levels of -# paranoia are appropriate in different environments. Sysadmins also vary in -# their views on appropriate levels of defence in these areas. If you do not -# understand these issues, go with the defaults, which are used by many sites. - - -#------------------------------------------------------------------------------ -# Although Exim is normally a setuid program, owned by root, it refuses to run -# local deliveries as root by default. There is a runtime option called -# "never_users" which lists the users that must never be used for local -# deliveries. There is also the setting below, which provides a list that -# cannot be overridden at runtime. This guards against problems caused by -# unauthorized changes to the runtime configuration. You are advised not to -# remove "root" from this option, but you can add other users if you want. The -# list is colon-separated. It must NOT contain any spaces. - -# FIXED_NEVER_USERS=root:bin:daemon -FIXED_NEVER_USERS=root - - -#------------------------------------------------------------------------------ -# By default, Exim insists that its configuration file be owned by root. You -# can specify one additional permitted owner here. - -# CONFIGURE_OWNER= - -# If the configuration file is group-writeable, Exim insists by default that it -# is owned by root. You can specify one additional permitted group owner here. - -# CONFIGURE_GROUP= - -# If you specify CONFIGURE_OWNER or CONFIGURE_GROUP as a name, this is looked -# up at build time, and the uid or gid number is built into the binary. -# However, you can specify that the lookup is deferred until runtime. In this -# case, it is the name that is built into the binary. You can do this by a -# setting of the form: - -# CONFIGURE_OWNER=ref:mail -# CONFIGURE_GROUP=ref:sysadmin - -# In other words, put "ref:" in front of the user or group name. Although this -# costs a bit of resource at runtime, it is convenient to use this feature when -# building binaries that are to be run on multiple systems where the names may -# refer to different uids or gids. It also allows you to build Exim on a system -# where the relevant user or group is not defined. - - -#------------------------------------------------------------------------------ -# The -C option allows Exim to be run with an alternate runtime configuration -# file. When this is used by root, root privilege is retained by the binary -# (for any other caller including the Exim user, it is dropped). You can -# restrict the location of alternate configurations by defining a prefix below. -# Any file used with -C must then start with this prefix (except that /dev/null -# is also permitted if the caller is root, because that is used in the install -# script). If the prefix specifies a directory that is owned by root, a -# compromise of the Exim account does not permit arbitrary alternate -# configurations to be used. The prefix can be more restrictive than just a -# directory (the second example). - -# ALT_CONFIG_PREFIX=/some/directory/ -# ALT_CONFIG_PREFIX=/some/directory/exim.conf- - - -#------------------------------------------------------------------------------ -# When a user other than root uses the -C option to override the configuration -# file (including the Exim user when re-executing Exim to regain root -# privileges for local message delivery), this will normally cause Exim to -# drop root privileges. The TRUSTED_CONFIG_LIST option, specifies a file which -# contains a list of trusted configuration filenames, one per line. If the -C -# option is used by the Exim user or by the user specified in the -# CONFIGURE_OWNER setting, to specify a configuration file which is listed in -# the TRUSTED_CONFIG_LIST file, then root privileges are not dropped by Exim. - -# TRUSTED_CONFIG_LIST=/usr/exim/trusted_configs - - -#------------------------------------------------------------------------------ -# Uncommenting this option disables the use of the -D command line option, -# which changes the values of macros in the runtime configuration file. -# This is another protection against somebody breaking into the Exim account. - -# DISABLE_D_OPTION=yes - - -#------------------------------------------------------------------------------ -# By contrast, you might be maintaining a system which relies upon the ability -# to override values with -D and assumes that these will be passed through to -# the delivery processes. As of Exim 4.73, this is no longer the case by -# default. Going forward, we strongly recommend that you use a shim Exim -# configuration file owned by root stored under TRUSTED_CONFIG_LIST. -# That shim can set macros before .include'ing your main configuration file. -# -# As a strictly transient measure to ease migration to 4.73, the -# WHITELIST_D_MACROS value definies a colon-separated list of macro-names -# which are permitted to be overriden from the command-line which will be -# honoured by the Exim user. So these are macros that can persist to delivery -# time. -# Examples might be -DTLS or -DSPOOL=/some/dir. The values on the -# command-line are filtered to only permit: [A-Za-z0-9_/.-]* -# -# This option is highly likely to be removed in a future release. It exists -# only to make 4.73 as easy as possible to migrate to. If you use it, we -# encourage you to schedule time to rework your configuration to not depend -# upon it. Most people should not need to use this. -# -# By default, no macros are whitelisted for -D usage. - -# WHITELIST_D_MACROS=TLS:SPOOL - -#------------------------------------------------------------------------------ -# Exim has support for the AUTH (authentication) extension of the SMTP -# protocol, as defined by RFC 2554. If you don't know what SMTP authentication -# is, you probably won't want to include this code, so you should leave these -# settings commented out. If you do want to make use of SMTP authentication, -# you must uncomment at least one of the following, so that appropriate code is -# included in the Exim binary. You will then need to set up the run time -# configuration to make use of the mechanism(s) selected. - -AUTH_CRAM_MD5=yes -# AUTH_CYRUS_SASL=yes -AUTH_DOVECOT=yes -AUTH_PLAINTEXT=yes -AUTH_SPA=yes - - -#------------------------------------------------------------------------------ -# If you specified AUTH_CYRUS_SASL above, you should ensure that you have the -# Cyrus SASL library installed before trying to build Exim, and you probably -# want to uncomment the following line: - -# AUTH_LIBS=-lsasl2 - - -#------------------------------------------------------------------------------ -# When Exim is decoding MIME "words" in header lines, most commonly for use -# in the $header_xxx expansion, it converts any foreign character sets to the -# one that is set in the headers_charset option. The default setting is -# defined by this setting: - -HEADERS_CHARSET="ISO-8859-1" - -# If you are going to make use of $header_xxx expansions in your configuration -# file, or if your users are going to use them in filter files, and the normal -# character set on your host is something other than ISO-8859-1, you might -# like to specify a different default here. This value can be overridden in -# the runtime configuration, and it can also be overridden in individual filter -# files. -# -# IMPORTANT NOTE: The iconv() function is needed for character code -# conversions. Please see the next item... - - -#------------------------------------------------------------------------------ -# Character code conversions are possible only if the iconv() function is -# installed on your operating system. There are two places in Exim where this -# is relevant: (a) The $header_xxx expansion (see the previous item), and (b) -# the Sieve filter support. For those OS where iconv() is known to be installed -# as standard, the file in OS/Makefile-xxxx contains -# -# HAVE_ICONV=yes -# -# If you are not using one of those systems, but have installed iconv(), you -# need to uncomment that line above. In some cases, you may find that iconv() -# and its header file are not in the default places. You might need to use -# something like this: -# -# HAVE_ICONV=yes -# CFLAGS=-O -I/usr/local/include -# EXTRALIBS_EXIM=-L/usr/local/lib -liconv -# -# but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM -# as well. - - -#------------------------------------------------------------------------------ -# The passwords for user accounts are normally encrypted with the crypt() -# function. Comparisons with encrypted passwords can be done using Exim's -# "crypteq" expansion operator. (This is commonly used as part of the -# configuration of an authenticator for use with SMTP AUTH.) At least one -# operating system has an extended function called crypt16(), which uses up to -# 16 characters of a password (the normal crypt() uses only the first 8). Exim -# supports the use of crypt16() as well as crypt() but note the warning below. - -# You can always indicate a crypt16-encrypted password by preceding it with -# "{crypt16}". If you want the default handling (without any preceding -# indicator) to use crypt16(), uncomment the following line: - -# DEFAULT_CRYPT=crypt16 - -# If you do that, you can still access the basic crypt() function by preceding -# an encrypted password with "{crypt}". For more details, see the description -# of the "crypteq" condition in the manual chapter on string expansions. - -# Some operating systems do not include a crypt16() function, so Exim has one -# of its own, which it uses unless HAVE_CRYPT16 is defined. Normally, that will -# be set in an OS-specific Makefile for the OS that have such a function, so -# you should not need to bother with it. - -# *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** -# It turns out that the above is not entirely accurate. As well as crypt16() -# there is a function called bigcrypt() that some operating systems have. This -# may or may not use the same algorithm, and both of them may be different to -# Exim's built-in crypt16() that is used unless HAVE_CRYPT16 is defined. -# -# However, since there is now a move away from the traditional crypt() -# functions towards using SHA1 and other algorithms, tidying up this area of -# Exim is seen as very low priority. In practice, if you need to, you can -# define DEFAULT_CRYPT to the name of any function that has the same interface -# as the traditional crypt() function. -# *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** - - -#------------------------------------------------------------------------------ -# Exim can be built to support the SMTP STARTTLS command, which implements -# Transport Layer Security using SSL (Secure Sockets Layer). To do this, you -# must install the OpenSSL library package or the GnuTLS library. Exim contains -# no cryptographic code of its own. Uncomment the following lines if you want -# to build Exim with TLS support. If you don't know what this is all about, -# leave these settings commented out. - -# This setting is required for any TLS support (either OpenSSL or GnuTLS) -SUPPORT_TLS=yes - -# Uncomment this setting if you are using OpenSSL -TLS_LIBS=-L/usr/lib -lssl -lcrypto - -# Uncomment these settings if you are using GnuTLS -# USE_GNUTLS=yes -TLS_LIBS=-L/usr/lib -lssl -lcrypto - -# If you are running Exim as a server, note that just building it with TLS -# support is not all you need to do. You also need to set up a suitable -# certificate, and tell Exim about it by means of the tls_certificate -# and tls_privatekey run time options. You also need to set tls_advertise_hosts -# to specify the hosts to which Exim advertises TLS support. On the other hand, -# if you are running Exim only as a client, building it with TLS support -# is all you need to do. - -# Additional libraries and include files are required for both OpenSSL and -# GnuTLS. The TLS_LIBS settings above assume that the libraries are installed -# with all your other libraries. If they are in a special directory, you may -# need something like - -TLS_LIBS=-L/usr/lib -lssl -lcrypto -# or -TLS_LIBS=-L/usr/lib -lssl -lcrypto - -TLS_LIBS=-L/usr/lib -lssl -lcrypto -# auxiliary programs. If the include files are not in a standard place, you can -# set TLS_INCLUDE to specify where they are, for example: - -TLS_INCLUDE=-I/usr/include/openssl -# or -TLS_INCLUDE=-I/usr/include/openssl - -# You don't need to set TLS_INCLUDE if the relevant directories are already -# specified in INCLUDE. - - -#------------------------------------------------------------------------------ -# The default distribution of Exim contains only the plain text form of the -# documentation. Other forms are available separately. If you want to install -# the documentation in "info" format, first fetch the Texinfo documentation -# sources from the ftp directory and unpack them, which should create files -# with the extension "texinfo" in the doc directory. You may find that the -# version number of the texinfo files is different to your Exim version number, -# because the main documentation isn't updated as often as the code. For -# example, if you have Exim version 4.43, the source tarball upacks into a -# directory called exim-4.43, but the texinfo tarball unpacks into exim-4.40. -# In this case, move the contents of exim-4.40/doc into exim-4.43/doc after you -# have unpacked them. Then set INFO_DIRECTORY to the location of your info -# directory. This varies from system to system, but is often /usr/share/info. -# Once you have done this, "make install" will build the info files and -# install them in the directory you have defined. - -# INFO_DIRECTORY=/usr/share/info - - -#------------------------------------------------------------------------------ -# Exim log directory and files: Exim creates several log files inside a -# single log directory. You can define the directory and the form of the -# log file name here. If you do not set anything, Exim creates a directory -# called "log" inside its spool directory (see SPOOL_DIRECTORY above) and uses -# the filenames "mainlog", "paniclog", and "rejectlog". If you want to change -# this, you can set LOG_FILE_PATH to a path name containing one occurrence of -# %s. This will be replaced by one of the strings "main", "panic", or "reject" -# to form the final file names. Some installations may want something like this: - -LOG_FILE_PATH=/var/log/exim/%slog - -# which results in files with names /var/log/exim_mainlog, etc. The directory -# in which the log files are placed must exist; Exim does not try to create -# it for itself. It is also your responsibility to ensure that Exim is capable -# of writing files using this path name. The Exim user (see EXIM_USER above) -# must be able to create and update files in the directory you have specified. - -# You can also configure Exim to use syslog, instead of or as well as log -# files, by settings such as these - -# LOG_FILE_PATH=syslog -# LOG_FILE_PATH=syslog:/var/log/exim_%slog - -# The first of these uses only syslog; the second uses syslog and also writes -# to log files. Do not include white space in such a setting as it messes up -# the building process. - - -#------------------------------------------------------------------------------ -# When logging to syslog, the following option caters for syslog replacements -# that are able to accept log entries longer than the 1024 characters allowed -# by RFC 3164. It is up to you to make sure your syslog daemon can handle this. -# Non-printable characters are usually unacceptable regardless, so log entries -# are still split on newline characters. - -# SYSLOG_LONG_LINES=yes - -# If you are not interested in the process identifier (pid) of the Exim that is -# making the call to syslog, then comment out the following line. - -SYSLOG_LOG_PID=yes - - -#------------------------------------------------------------------------------ -# Cycling log files: this variable specifies the maximum number of old -# log files that are kept by the exicyclog log-cycling script. You don't have -# to use exicyclog. If your operating system has other ways of cycling log -# files, you can use them instead. The exicyclog script isn't run by default; -# you have to set up a cron job for it if you want it. - -EXICYCLOG_MAX=10 - - -#------------------------------------------------------------------------------ -# The compress command is used by the exicyclog script to compress old log -# files. Both the name of the command and the suffix that it adds to files -# need to be defined here. See also the EXICYCLOG_MAX configuration. - -COMPRESS_COMMAND=/bin/gzip -COMPRESS_SUFFIX=gz - - -#------------------------------------------------------------------------------ -# If the exigrep utility is fed compressed log files, it tries to uncompress -# them using this command. - -ZCAT_COMMAND=/bin/zcat - - -#------------------------------------------------------------------------------ -# Compiling in support for embedded Perl: If you want to be able to -# use Perl code in Exim's string manipulation language and you have Perl -# (version 5.004 or later) installed, set EXIM_PERL to perl.o. Using embedded -# Perl costs quite a lot of resources. Only do this if you really need it. - -# EXIM_PERL=perl.o - - -#------------------------------------------------------------------------------ -# Support for dynamically-loaded string expansion functions via ${dlfunc. If -# you are using gcc the dynamically-loaded object must be compiled with the -# -shared option, and you will need to add -export-dynamic to EXTRALIBS so -# that the local_scan API is made available by the linker. You may also need -# to add -ldl to EXTRALIBS so that dlopen() is available to Exim. - -# EXPAND_DLFUNC=yes - - -#------------------------------------------------------------------------------ -# Exim has support for PAM (Pluggable Authentication Modules), a facility -# which is available in the latest releases of Solaris and in some GNU/Linux -# distributions (see http://ftp.kernel.org/pub/linux/libs/pam/). The Exim -# support, which is intended for use in conjunction with the SMTP AUTH -# facilities, is included only when requested by the following setting: - -SUPPORT_PAM=yes - -# You probably need to add -lpam to EXTRALIBS, and in some releases of -# GNU/Linux -ldl is also needed. - - -#------------------------------------------------------------------------------ -# Support for authentication via Radius is also available. The Exim support, -# which is intended for use in conjunction with the SMTP AUTH facilities, -# is included only when requested by setting the following parameter to the -# location of your Radius configuration file: - -# RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf -# RADIUS_CONFIG_FILE=/etc/radius.conf - -# If you have set RADIUS_CONFIG_FILE, you should also set one of these to -# indicate which RADIUS library is used: - -# RADIUS_LIB_TYPE=RADIUSCLIENT -# RADIUS_LIB_TYPE=RADIUSCLIENTNEW -# RADIUS_LIB_TYPE=RADLIB - -# RADIUSCLIENT is the radiusclient library; you probably need to add -# -lradiusclient to EXTRALIBS. -# -# The API for the radiusclient library was changed at release 0.4.0. -# Unfortunately, the header file does not define a version number that clients -# can use to support both the old and new APIs. If you are using version 0.4.0 -# or later of the radiusclient library, you should use RADIUSCLIENTNEW. -# -# RADLIB is the Radius library that comes with FreeBSD (the header file is -# called radlib.h); you probably need to add -lradius to EXTRALIBS. -# -# If you do not set RADIUS_LIB_TYPE, Exim assumes the radiusclient library, -# using the original API. - - -#------------------------------------------------------------------------------ -# Support for authentication via the Cyrus SASL pwcheck daemon is available. -# Note, however, that pwcheck is now deprecated in favour of saslauthd (see -# next item). The Exim support for pwcheck, which is intented for use in -# conjunction with the SMTP AUTH facilities, is included only when requested by -# setting the following parameter to the location of the pwcheck daemon's -# socket. -# -# There is no need to install all of SASL on your system. You just need to run -# ./configure --with-pwcheck, cd to the pwcheck directory within the sources, -# make and make install. You must create the socket directory (default -# /var/pwcheck) and chown it to exim's user and group. Once you have installed -# pwcheck, you should arrange for it to be started by root at boot time. - -# CYRUS_PWCHECK_SOCKET=/var/pwcheck/pwcheck - - -#------------------------------------------------------------------------------ -# Support for authentication via the Cyrus SASL saslauthd daemon is available. -# The Exim support, which is intented for use in conjunction with the SMTP AUTH -# facilities, is included only when requested by setting the following -# parameter to the location of the saslauthd daemon's socket. -# -# There is no need to install all of SASL on your system. You just need to run -# ./configure --with-saslauthd (and any other options you need, for example, to -# select or deselect authentication mechanisms), cd to the saslauthd directory -# within the sources, make and make install. You must create the socket -# directory (default /var/state/saslauthd) and chown it to exim's user and -# group. Once you have installed saslauthd, you should arrange for it to be -# started by root at boot time. - -# CYRUS_SASLAUTHD_SOCKET=/var/state/saslauthd/mux - - -#------------------------------------------------------------------------------ -# TCP wrappers: If you want to use tcpwrappers from within Exim, uncomment -# this setting. See the manual section entitled "Use of tcpwrappers" in the -# chapter on building and installing Exim. -# -USE_TCP_WRAPPERS=yes -# -# You may well also have to specify a local "include" file and an additional -# library for TCP wrappers, so you probably need something like this: -# -USE_TCP_WRAPPERS=yes -# CFLAGS=-O -I/usr/local/include -# EXTRALIBS_EXIM=-L/usr/local/lib -lwrap -# -# but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM -# as well. -# -# To use a name other than exim in the tcpwrappers config file, -# e.g. if you're running multiple daemons with different access lists, -# or multiple MTAs with the same access list, define -# TCP_WRAPPERS_DAEMON_NAME accordingly -# -# TCP_WRAPPERS_DAEMON_NAME="exim" - - -#------------------------------------------------------------------------------ -# The default action of the exim_install script (which is run by "make -# install") is to install the Exim binary with a unique name such as -# exim-4.43-1, and then set up a symbolic link called "exim" to reference it, -# moving the symbolic link from any previous version. If you define NO_SYMLINK -# (the value doesn't matter), the symbolic link is not created or moved. You -# will then have to "turn Exim on" by setting up the link manually. - -# NO_SYMLINK=yes - - -#------------------------------------------------------------------------------ -# Another default action of the install script is to install a default runtime -# configuration file if one does not exist. This configuration has a router for -# expanding system aliases. The default assumes that these aliases are kept -# in the traditional file called /etc/aliases. If such a file does not exist, -# the installation script creates one that contains just comments (no actual -# aliases). The following setting can be changed to specify a different -# location for the system alias file. - -SYSTEM_ALIASES_FILE=/etc/mail/aliases - - -#------------------------------------------------------------------------------ -# There are some testing options (-be, -bt, -bv) that read data from the -# standard input when no arguments are supplied. By default, the input lines -# are read using the standard fgets() function. This does not support line -# editing during interactive input (though the terminal's "erase" character -# works as normal). If your operating system has the readline() function, and -# in addition supports dynamic loading of library functions, you can cause -# Exim to use readline() for the -be testing option (only) by uncommenting the -# following setting. Dynamic loading is used so that the library is loaded only -# when the -be testing option is given; by the time the loading occurs, -# Exim has given up its root privilege and is running as the calling user. This -# is the reason why readline() is NOT supported for -bt and -bv, because Exim -# runs as root or as exim, respectively, for those options. When USE_READLINE -# is "yes", as well as supporting line editing, a history of input lines in the -# current run is maintained. - -# USE_READLINE=yes - -# You may need to add -ldl to EXTRALIBS when you set USE_READLINE=yes. -# Note that this option adds to the size of the Exim binary, because the -# dynamic loading library is not otherwise included. - - - -############################################################################### -# THINGS YOU ALMOST NEVER NEED TO MENTION # -############################################################################### - -# The settings in this section are available for use in special circumstances. -# In the vast majority of installations you need not change anything below. - - -#------------------------------------------------------------------------------ -# The following commands live in different places in some OS. Either the -# ultimate default settings, or the OS-specific files should already point to -# the right place, but they can be overridden here if necessary. These settings -# are used when building various scripts to ensure that the correct paths are -# used when the scripts are run. They are not used in the Makefile itself. Perl -# is not necessary for running Exim unless you set EXIM_PERL (see above) to get -# it embedded, but there are some utilities that are Perl scripts. If you -# haven't got Perl, Exim will still build and run; you just won't be able to -# use those utilities. - -# CHOWN_COMMAND=/usr/bin/chown -# CHGRP_COMMAND=/usr/bin/chgrp -# CHMOD_COMMAND=/usr/bin/chmod -# MV_COMMAND=/bin/mv -# RM_COMMAND=/bin/rm -# TOUCH_COMMAND=/usr/bin/touch -# PERL_COMMAND=/usr/bin/perl - - -#------------------------------------------------------------------------------ -# The following macro can be used to change the command for building a library -# of functions. By default the "ar" command is used, with options "cq". -# Only in rare circumstances should you need to change this. - -# AR=ar cq - - -#------------------------------------------------------------------------------ -# In some operating systems, the value of the TMPDIR environment variable -# controls where temporary files are created. Exim does not make use of -# temporary files, except when delivering to MBX mailboxes. However, if Exim -# calls any external libraries (e.g. DBM libraries), they may use temporary -# files, and thus be influenced by the value of TMPDIR. For this reason, when -# Exim starts, it checks the environment for TMPDIR, and if it finds it is set, -# it replaces the value with what is defined here. Commenting this setting -# suppresses the check altogether. - -TMPDIR="/tmp" - - -#------------------------------------------------------------------------------ -# The following macros can be used to change the default modes that are used -# by the appendfile transport. In most installations the defaults are just -# fine, and in any case, you can change particular instances of the transport -# at run time if you want. - -# APPENDFILE_MODE=0600 -# APPENDFILE_DIRECTORY_MODE=0700 -# APPENDFILE_LOCKFILE_MODE=0600 - - -#------------------------------------------------------------------------------ -# In some installations there may be multiple machines sharing file systems, -# where a different configuration file is required for Exim on the different -# machines. If CONFIGURE_FILE_USE_NODE is defined, then Exim will first look -# for a configuration file whose name is that defined by CONFIGURE_FILE, -# with the node name obtained by uname() tacked on the end, separated by a -# period (for example, /usr/exim/configure.host.in.some.domain). If this file -# does not exist, then the bare configuration file name is tried. - -# CONFIGURE_FILE_USE_NODE=yes - - -#------------------------------------------------------------------------------ -# In some esoteric configurations two different versions of Exim are run, -# with different setuid values, and different configuration files are required -# to handle the different cases. If CONFIGURE_FILE_USE_EUID is defined, then -# Exim will first look for a configuration file whose name is that defined -# by CONFIGURE_FILE, with the effective uid tacked on the end, separated by -# a period (for eximple, /usr/exim/configure.0). If this file does not exist, -# then the bare configuration file name is tried. In the case when both -# CONFIGURE_FILE_USE_EUID and CONFIGURE_FILE_USE_NODE are set, four files -# are tried: <name>.<euid>.<node>, <name>.<node>, <name>.<euid>, and <name>. - -# CONFIGURE_FILE_USE_EUID=yes - - -#------------------------------------------------------------------------------ -# The size of the delivery buffers: These specify the sizes (in bytes) of -# the buffers that are used when copying a message from the spool to a -# destination. There is rarely any need to change these values. - -# DELIVER_IN_BUFFER_SIZE=8192 -# DELIVER_OUT_BUFFER_SIZE=8192 - - -#------------------------------------------------------------------------------ -# The mode of the database directory: Exim creates a directory called "db" -# in its spool directory, to hold its databases of hints. This variable -# determines the mode of the created directory. The default value in the -# source is 0750. - -# EXIMDB_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# Database file mode: The mode of files created in the "db" directory defaults -# to 0640 in the source, and can be changed here. - -# EXIMDB_MODE=0640 - - -#------------------------------------------------------------------------------ -# Database lock file mode: The mode of zero-length files created in the "db" -# directory to use for locking purposes defaults to 0640 in the source, and -# can be changed here. - -# EXIMDB_LOCKFILE_MODE=0640 - - -#------------------------------------------------------------------------------ -# This parameter sets the maximum length of the header portion of a message -# that Exim is prepared to process. The default setting is one megabyte. The -# limit exists in order to catch rogue mailers that might connect to your SMTP -# port, start off a header line, and then just pump junk at it for ever. The -# message_size_limit option would also catch this, but it may not be set. -# The value set here is the default; it can be changed at runtime. - -# HEADER_MAXSIZE="(1024*1024)" - - -#------------------------------------------------------------------------------ -# The mode of the input directory: The input directory is where messages are -# kept while awaiting delivery. Exim creates it if necessary, using a mode -# which can be defined here (default 0750). - -# INPUT_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# The mode of Exim's log directory, when it is created by Exim inside the spool -# directory, defaults to 0750 but can be changed here. - -# LOG_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# The log files themselves are created as required, with a mode that defaults -# to 0640, but which can be changed here. - -# LOG_MODE=0640 - - -#------------------------------------------------------------------------------ -# The TESTDB lookup is for performing tests on the handling of lookup results, -# and is not useful for general running. It should be included only when -# debugging the code of Exim. - -# LOOKUP_TESTDB=yes - - -#------------------------------------------------------------------------------ -# /bin/sh is used by default as the shell in which to run commands that are -# defined in the makefiles. This can be changed if necessary, by uncommenting -# this line and specifying another shell, but note that a Bourne-compatible -# shell is expected. - -# MAKE_SHELL=/bin/sh - - -#------------------------------------------------------------------------------ -# The maximum number of named lists of each type (address, domain, host, and -# local part) can be increased by changing this value. It should be set to -# a multiple of 16. - -MAX_NAMED_LIST=16 - - -#------------------------------------------------------------------------------ -# Network interfaces: Unless you set the local_interfaces option in the runtime -# configuration file to restrict Exim to certain interfaces only, it will run -# code to find all the interfaces there are on your host. Unfortunately, -# the call to the OS that does this requires a buffer large enough to hold -# data for all the interfaces - it was designed in the days when a host rarely -# had more than three or four interfaces. Nowadays hosts can have very many -# virtual interfaces running on the same hardware. If you have more than 250 -# virtual interfaces, you will need to uncomment this setting and increase the -# value. - -# MAXINTERFACES=250 - - -#------------------------------------------------------------------------------ -# Per-message logs: While a message is in the process of being delivered, -# comments on its progress are written to a message log, for the benefit of -# human administrators. These logs are held in a directory called "msglog" -# in the spool directory. Its mode defaults to 0750, but can be changed here. -# The message log directory is also used for storing files that are used by -# transports for returning data to a message's sender (see the "return_output" -# option for transports). - -# MSGLOG_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# There are three options which are used when compiling the Perl interface and -# when linking with Perl. The default values for these are placed automatically -# at the head of the Makefile by the script which builds it. However, if you -# want to override them, you can do so here. - -# PERL_CC= -# PERL_CCOPTS= -# PERL_LIBS= - - -#------------------------------------------------------------------------------ -# Identifying the daemon: When an Exim daemon starts up, it writes its pid -# (process id) to a file so that it can easily be identified. The path of the -# file can be specified here. Some installations may want something like this: - -PID_FILE_PATH=/var/run/exim.pid - -# If PID_FILE_PATH is not defined, Exim writes a file in its spool directory -# using the name "exim-daemon.pid". - -# If you start up a daemon without the -bd option (for example, with just -# the -q15m option), a pid file is not written. Also, if you override the -# configuration file with the -oX option, no pid file is written. In other -# words, the pid file is written only for a "standard" daemon. - - -#------------------------------------------------------------------------------ -# If Exim creates the spool directory, it is given this mode, defaulting in the -# source to 0750. - -# SPOOL_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# The mode of files on the input spool which hold the contents of messages can -# be changed here. The default is 0640 so that information from the spool is -# available to anyone who is a member of the Exim group. - -# SPOOL_MODE=0640 - - -#------------------------------------------------------------------------------ -# Moving frozen messages: If the following is uncommented, Exim is compiled -# with support for automatically moving frozen messages out of the main spool -# directory, a facility that is found useful by some large installations. A -# run time option is required to cause the moving actually to occur. Such -# messages become "invisible" to the normal management tools. - -# SUPPORT_MOVE_FROZEN_MESSAGES=yes - - -#------------------------------------------------------------------------------ -# Disabling the use of fsync(): DO NOT UNCOMMENT THE FOLLOWING LINE unless you -# really, really, really know what you are doing. And even then, think again. -# You should never uncomment this when compiling a binary for distribution. -# Use it only when compiling Exim for your own use. -# -# Uncommenting this line enables the use of a runtime option called -# disable_fsync, which can be used to stop Exim using fsync() to ensure that -# files are written to disc before proceeding. When this is disabled, crashes -# and hardware problems such as power outages can cause data to be lost. This -# feature should only be used in very exceptional circumstances. YOU HAVE BEEN -# WARNED. - -# ENABLE_DISABLE_FSYNC=yes - -HAVE_IPV6=YES -LOOKUP_LIBS=-lldap -EXTRALIBS_EXIM=-lwrap -lpam -# End of EDITME for Exim 4. diff --git a/community-staging/exim/exim.changelog b/community-staging/exim/exim.changelog deleted file mode 100644 index 69182229e..000000000 --- a/community-staging/exim/exim.changelog +++ /dev/null @@ -1,21 +0,0 @@ -2010-06-16 Angel Velasquez <angvp@archlinux.org> - * Rebuilt against db 5.2.28 - -2010-05-09 Angel Velasquez <angvp@archlinux.org> - * Updated to 4.76 - * Removed previous patch since is no longer needed - * Removed newaliases script FS#22744 - * Removed sudo dependency - -2010-05-07 Angel Velasquez <angvp@archlinux.org> - * Adding patch for security issue see: http://goo.gl/QBict - -2010-05-06 Angel Velasquez <angvp@archlinux.org> - * Setting sticky id to deliver mail. Closes FS#24109 - -2010-04-30 Angel Velasquez <angvp@archlinux.org> - * exim 4.75 - * Config updated with the aliases path. Closes FS#22743 - * Removed sed hackings and added a exim.Makefile . Closes FS#22744 - * Replaced creation of the user at build time. Closes FS#22745 - diff --git a/community-staging/exim/exim.conf.d b/community-staging/exim/exim.conf.d deleted file mode 100644 index b9bec4335..000000000 --- a/community-staging/exim/exim.conf.d +++ /dev/null @@ -1 +0,0 @@ -EXIM_ARGS="-bd -q15m" diff --git a/community-staging/exim/exim.install b/community-staging/exim/exim.install deleted file mode 100644 index 8ed329559..000000000 --- a/community-staging/exim/exim.install +++ /dev/null @@ -1,25 +0,0 @@ -# arg 1: the new package version -post_install() { - getent group exim >/dev/null 2>&1 || groupadd -g 79 exim - if getent passwd exim > /dev/null 2>&1; then - usr/sbin/usermod -d /var/spool/exim -c 'Exim MTA' -s /sbin/nologin exim > /dev/null 2>&1 - else - usr/sbin/useradd -c 'Exim MTA' -u 79 -g exim -d /var/spool/exim -s /sbin/nologin exim - fi - passwd -l exim > /dev/null - chown root.exim /var/spool/exim /var/log/exim - chown exim.exim /var/spool/exim/db - chmod u+s /usr/sbin/exim -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} - -# arg 1: the old package version -pre_remove() { - getent passwd exim >/dev/null 2>&1 && userdel exim -} - diff --git a/community-staging/exim/exim.logrotate b/community-staging/exim/exim.logrotate deleted file mode 100644 index ff38a1452..000000000 --- a/community-staging/exim/exim.logrotate +++ /dev/null @@ -1,5 +0,0 @@ -/var/log/exim/*log { - missingok - notifempty - delaycompress -} diff --git a/community-staging/gdal/PKGBUILD b/community-staging/gdal/PKGBUILD deleted file mode 100644 index 88756643b..000000000 --- a/community-staging/gdal/PKGBUILD +++ /dev/null @@ -1,64 +0,0 @@ -# $Id: PKGBUILD 50951 2011-07-03 10:32:28Z jelle $ -# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> -# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org -# Contributor: William Rea <sillywilly@gmail.com> - -pkgname=gdal -pkgver=1.8.0 -pkgrel=5 -pkgdesc="A translator library for raster geospatial data formats" -arch=('i686' 'x86_64') -url="http://www.gdal.org/" -license=('custom') -depends=('curl' 'geos' 'giflib' 'hdf5' 'libgeotiff' 'libjpeg' 'libpng' 'libtiff' 'netcdf' 'python2' 'python2-numpy' 'cfitsio' 'sqlite3' 'libmysqlclient' 'postgresql-libs') -makedepends=('perl' 'swig') -optdepends=('postgresql: postgresql database support' - 'mysql: mysql database support' - 'perl: perl binding support' - 'swig: perl binding support') -options=('!libtool' '!makeflags') -changelog=$pkgname.changelog -source=(http://download.osgeo.org/${pkgname}/${pkgname}-${pkgver}.tar.gz \ - gdal-1.5.1-python-install.patch) - -md5sums=('c762cdab0f7e51a677ba49278a8a263d' '81afc1c26d29cee84aadb6924fe33861') - - -build() { - export CFLAGS="$CFLAGS -fno-strict-aliasing" - - # bug 23654 - export LDFLAGS="$LDFLAGS -Wl,--as-needed" - - cd ${srcdir}/$pkgname-$pkgver - patch -Np0 -i ${srcdir}/gdal-1.5.1-python-install.patch - -# python2 fixes - sed -i 's_python python1.5_python2 python python1.5_' configure - for file in swig/python/{,osgeo/,samples/,scripts/}*.py; do - sed -i 's_#!/usr/bin/env python_#!/usr/bin/env python2_' $file - done - - ./configure --prefix=/usr --with-netcdf --with-libtiff --with-sqlite3 \ - --with-geotiff --with-mysql --with-python --without-libtool --with-curl \ - --with-hdf5 --with-perl --with-geos --with-png - -# workaround for bug #13646 - sed -i 's/PY_HAVE_SETUPTOOLS=1/PY_HAVE_SETUPTOOLS=/g' ./GDALmake.opt - sed -i 's/EXE_DEP_LIBS/KILL_EXE_DEP_LIBS/' apps/GNUmakefile - install -d ${pkgdir}/usr/lib/python2.7/site-packages/ - - make -} - -package () { - cd ${srcdir}/$pkgname-$pkgver - - make DESTDIR=${pkgdir} install - -# install license - install -D -m644 LICENSE.TXT ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE - -#FS15477 clean up junks - rm -f ${pkgdir}/usr/bin/*.dox -} diff --git a/community-staging/gdal/gdal-1.5.1-python-install.patch b/community-staging/gdal/gdal-1.5.1-python-install.patch deleted file mode 100644 index 8ec414d37..000000000 --- a/community-staging/gdal/gdal-1.5.1-python-install.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- swig/python/GNUmakefile.orig 2010-04-24 01:22:07.000000000 +0200 -+++ swig/python/GNUmakefile 2010-05-05 19:14:58.000000000 +0200 -@@ -72,5 +72,5 @@ - ifeq ($(PY_HAVE_SETUPTOOLS),1) -- $(PYTHON) setup.py install -+ $(PYTHON) setup.py install --root=$(DESTDIR) - else -- $(PYTHON) setup.py install --prefix=$(DESTDIR)$(prefix) -+ $(PYTHON) setup.py install --root=$(DESTDIR) --prefix=$(prefix) - endif diff --git a/community-staging/gdal/gdal.changelog b/community-staging/gdal/gdal.changelog deleted file mode 100644 index c31121e1d..000000000 --- a/community-staging/gdal/gdal.changelog +++ /dev/null @@ -1,11 +0,0 @@ -2011-02-19 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * gdal 1.8.0-1 - -2010-11-20 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * Update to major release 1.7.3 - -2010-06-26 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * FS#19946 fixed in 1.7.2-2 - -2010-05-05 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * Update to major release 1.7.2 diff --git a/community-staging/geos/PKGBUILD b/community-staging/geos/PKGBUILD deleted file mode 100644 index aa97623f2..000000000 --- a/community-staging/geos/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 50911 2011-07-02 23:00:14Z stephane $ -# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> -# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org -# Contributor: William Rea <sillywilly@gmail.com> - -pkgname=geos -pkgver=3.3.0 -pkgrel=1 -pkgdesc="A C++ port of the Java Topology Suite" -arch=('i686' 'x86_64') -url="http://trac.osgeo.org/geos/" -license=('LGPL') -depends=('gcc-libs') -options=('!libtool') -changelog=$pkgname.changelog -source=(http://download.osgeo.org/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('3301f3d1d747b95749384b8a356b022a') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - - make DESTDIR="${pkgdir}" install -} diff --git a/community-staging/geos/geos.changelog b/community-staging/geos/geos.changelog deleted file mode 100644 index d0a376568..000000000 --- a/community-staging/geos/geos.changelog +++ /dev/null @@ -1,5 +0,0 @@ -2010-11-14 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * Update to major release 3.2.2 - -2010-04-04 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * Update to major release 3.2.1 diff --git a/community-staging/libgda3/PKGBUILD b/community-staging/libgda3/PKGBUILD deleted file mode 100644 index 07313f713..000000000 --- a/community-staging/libgda3/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 49363 2011-06-15 09:20:21Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> - -pkgname=libgda3 -pkgver=3.1.5 -pkgrel=9 -pkgdesc="data abstraction layer; with mysql, pgsql, ldap, xml, sqlite providers" -arch=('i686' 'x86_64') -url="http://www.gnome-db.org/Download" -license=('GPL') -depends=('glib2' 'libxslt' 'popt' 'rarian' 'db' 'gnome-vfs' - 'libmysqlclient' 'postgresql-libs>=8.4.1' 'libldap' 'unixodbc' 'sqlite3') -makedepends=('intltool' 'pkgconfig' 'gtk-doc' 'util-linux-ng') -options=('!libtool' '!distcc') -source=(http://ftp.acc.umu.se/pub/GNOME/sources/libgda/3.1/libgda-$pkgver.tar.bz2) -md5sums=('eb7da5286a112e7cff3111c89fba4456') - -build() { - cd "$srcdir/libgda-$pkgver" - ./configure --prefix=/usr --sysconfdir=/etc - make -} -package(){ - cd "$srcdir/libgda-$pkgver" - make DESTDIR=$pkgdir install - cd "$pkgdir" && find -name \*..so -exec rename '..so' '.a' {} \; -} diff --git a/community-staging/librcc/PKGBUILD b/community-staging/librcc/PKGBUILD deleted file mode 100644 index ca2eb950c..000000000 --- a/community-staging/librcc/PKGBUILD +++ /dev/null @@ -1,53 +0,0 @@ -# $Id: PKGBUILD 49369 2011-06-15 09:26:07Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> - -pkgname=librcc -pkgver=0.2.6 -pkgrel=4 -pkgdesc="Charset Conversion Library" -arch=(i686 x86_64) -url="http://rusxmms.sourceforge.net/" -license=('GPL') -depends=(aspell enca libxml2 db librcd) -makedepends=(patch gtk gtk2) -install=librcc.install -source=(http://downloads.sourceforge.net/rusxmms/${pkgname}-${pkgver}.tar.bz2 - librcc-strnlen.patch) -md5sums=('9bbf248c7312c73c0b6ca19b9c5a2af1' - '040313d1d8f166ccf2b128cea4c05f21') - -build() { - cd ${startdir}/src/$pkgname-${pkgver} - ./configure --prefix=/usr - patch -p1 <$srcdir/librcc-strnlen.patch - make -} - -package() { - cd ${startdir}/src/$pkgname-${pkgver} - mkdir -p $startdir/pkg/etc/rcc - mkdir -p $startdir/pkg/usr/lib/rcc/engines - mkdir -p $startdir/pkg/usr/bin - - make DESTDIR=$startdir/pkg install - - rm -f $startdir/pkg/usr/lib/*.la - rm -f $startdir/pkg/usr/lib/rcc/engines/*.a - rm -f $startdir/pkg/usr/lib/rcc/engines/*.la - - make -C examples - make -C examples install DESTDIR=$startdir/pkg - rm -f $startdir/pkg/usr/bin/example* - - install -m 644 examples/rcc.xml $startdir/pkg/etc - - if [ -f $startdir/pkg/usr/bin/rcc-gtk2-config ]; then - ln -s rcc-gtk2-config $startdir/pkg/usr/bin/rcc-config - elif [ -f $startdir/pkg/usr/bin/rcc-gtk-config ]; then - ln -s rcc-gtk-config $startdir/pkg/usr/bin/rcc-config - else - echo "#!/bin/bash" > $startdir/pkg/usr/bin/rcc-config - echo "echo \"Configuration UI is not available!\"" >> $startdir/pkg/usr/bin/rcc-config - fi -} diff --git a/community-staging/librcc/librcc-strnlen.patch b/community-staging/librcc/librcc-strnlen.patch deleted file mode 100644 index 9fc0e8b0b..000000000 --- a/community-staging/librcc/librcc-strnlen.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -wbBur librcc-0.2.6/src/rccstring.h librcc-0.2.6.qwe/src/rccstring.h ---- librcc-0.2.6/src/rccstring.h 2006-01-08 15:42:59.000000000 +0000 -+++ librcc-0.2.6.qwe/src/rccstring.h 2009-09-28 08:45:37.000000000 +0000 -@@ -18,13 +18,6 @@ - int rccStringFixID(rcc_string string, rcc_context ctx); - int rccStringChangeID(rcc_string string, rcc_language_id language_id); - --#ifdef HAVE_STRNLEN --# ifndef strnlen --int strnlen(const char *str, size_t size); --# endif /* !strnlen */ --#else --int rccStrnlen(const char *str, size_t size); --#endif /* HAVE_STRNLEN */ - int rccIsASCII(const char *str); - size_t rccStringSizedGetChars(const char *str, size_t size); - diff --git a/community-staging/librcc/librcc.install b/community-staging/librcc/librcc.install deleted file mode 100644 index 53b1d7ce7..000000000 --- a/community-staging/librcc/librcc.install +++ /dev/null @@ -1,6 +0,0 @@ -post_install() { - echo "-- Don't forget to install gtk or/and gtk2 packages to enable librcc" - echo " gui features" - echo "-- Also you may change /usr/bin/rcc-config symlink to switch between" - echo " gtk and gtk2 (rcc-gtk-config and rcc-gtk2-config)" -} diff --git a/community-staging/perl-berkeleydb/PKGBUILD b/community-staging/perl-berkeleydb/PKGBUILD deleted file mode 100644 index f586d53b0..000000000 --- a/community-staging/perl-berkeleydb/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# $Id: PKGBUILD 49372 2011-06-15 09:28:37Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: Charles Mauch <cmauch@gmail.com> -# Contributor: Francois Charette <firmicus@gmx.net> - -pkgname=perl-berkeleydb -pkgver=0.43 -pkgrel=6 -pkgdesc="Interface to Berkeley DB version 2, 3 or 4" -arch=('i686' 'x86_64') -url="http://search.cpan.org/dist/BerkeleyDB/" -license=('GPL' 'PerlArtistic') -depends=('perl' 'db') -options=('!emptydirs') -source=(http://search.cpan.org/CPAN/authors/id/P/PM/PMQS/BerkeleyDB-$pkgver.tar.gz) -md5sums=('3d0cf0651ed8cd3fc36e328d5924a1e9') - -build() { - cd $srcdir/BerkeleyDB-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make -} - -package() { - _dbver=`pacman -Q db | cut -d\ -f2 | cut -d- -f1` - depends=('perl' "db=$_dbver") - - cd $srcdir/BerkeleyDB-$pkgver - make pure_install doc_install DESTDIR=$pkgdir - find $pkgdir -name '.packlist' -delete - find $pkgdir -name '*.pod' -delete -} diff --git a/community-staging/perl-libapreq2/PKGBUILD b/community-staging/perl-libapreq2/PKGBUILD deleted file mode 100644 index b9526091a..000000000 --- a/community-staging/perl-libapreq2/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 49380 2011-06-15 09:32:23Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: Tom K <tomk@runbox.com> - -pkgname=perl-libapreq2 -pkgver=2.12 -pkgrel=9 -pkgdesc="A safe, standards-compliant, high-performance library used for parsing HTTP cookies, query-strings and POST data." -arch=('i686' 'x86_64') -url="http://search.cpan.org/dist/libapreq2" -depends=('mod_perl' 'apr-util') -makedepends=('perl-extutils-xsbuilder' 'perl-version') -license=("GPL") -options=('!libtool' '!makeflags') -source=(http://www.cpan.org/authors/id/J/JO/JOESUF/libapreq2-$pkgver.tar.gz) -md5sums=('76e2acde0d82246dea6f2565f3746eec') - -build() { - cd $srcdir/libapreq2-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL --with-apache2-apxs=/usr/sbin/apxs - find . -type f -name Makefile -exec sed -i 's#-ldb-5.1#-ldb-5.2#' {} \; - sed -i 's#-ldb-5.1#-ldb-5.2#' apreq2-config - make -} -package(){ - cd $srcdir/libapreq2-$pkgver - make install DESTDIR=$pkgdir - sed -i "s#$srcdir#/usr/src#" $pkgdir/usr/bin/apreq2-config - find $pkgdir -name '.packlist' -delete - find $pkgdir -name '*.pod' -delete -} diff --git a/community-staging/perl-xml-libxslt/PKGBUILD b/community-staging/perl-xml-libxslt/PKGBUILD deleted file mode 100644 index 708898b9e..000000000 --- a/community-staging/perl-xml-libxslt/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# Id:$ -# Maintainer: François Charette <firmicus ατ gmx δοτ net> - -pkgname=perl-xml-libxslt -pkgver=1.70 -pkgrel=6 -pkgdesc="Interface to the gnome libxslt library " -arch=('i686' 'x86_64') -url="http://search.cpan.org/dist/XML-LibXSLT" -license=('GPL') -depends=('perl-xml-libxml' 'libxslt') -source=(http://www.cpan.org/authors/id/P/PA/PAJAS/XML-LibXSLT-$pkgver.tar.gz) -md5sums=('c63a7913999de076e5c911810f69b392') - -build() { - cd $srcdir/XML-LibXSLT-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make -} - -check () { - cd $srcdir/XML-LibXSLT-$pkgver - make test -} - -package() { - cd $srcdir/XML-LibXSLT-$pkgver - make install DESTDIR=$pkgdir -} - diff --git a/community-staging/poedit/PKGBUILD b/community-staging/poedit/PKGBUILD deleted file mode 100644 index 8c606f322..000000000 --- a/community-staging/poedit/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 49387 2011-06-15 09:36:08Z spupykin $ -# Contributor: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Alexander Fehr <pizzapunk@gmail.com> -# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> - -pkgname=poedit -pkgver=1.4.6.1 -pkgrel=5 -pkgdesc="Cross-platform gettext catalogs (.po files) editor" -arch=('i686' 'x86_64') -url="http://www.poedit.net/" -license=('custom') -depends=('wxgtk>=2.8.11' 'gtkspell' 'db>=5.1' 'hicolor-icon-theme' 'gettext') -makedepends=('pkgconfig') -install=poedit.install -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('c63ffd991b1a6085ef356a6922356e0a') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/community-staging/poedit/poedit.install b/community-staging/poedit/poedit.install deleted file mode 100644 index 21b79d2d4..000000000 --- a/community-staging/poedit/poedit.install +++ /dev/null @@ -1,11 +0,0 @@ -post_install() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} - -post_upgrade() { - post_install $1 -} - -post_remove() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor -} diff --git a/community-staging/postgis/PKGBUILD b/community-staging/postgis/PKGBUILD deleted file mode 100644 index 0e5b5ca4c..000000000 --- a/community-staging/postgis/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 50943 2011-07-03 10:15:49Z jelle $ -# Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> -# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org -# Contributor: William Rea <sillywilly@gmail.com> - -pkgname=postgis -pkgver=1.5.2 -pkgrel=2 -pkgdesc="Adds support for geographic objects to PostgreSQL" -arch=('i686' 'x86_64') -url="http://postgis.refractions.net/" -license=('GPL') -depends=('postgresql' 'proj' 'geos') -changelog=$pkgname.changelog -source=(http://postgis.refractions.net/download/$pkgname-$pkgver.tar.gz) -md5sums=('772ec1d0f04d6800cd7e2420a97a7483') - -build() { - cd ${srcdir}/$pkgname-$pkgver - - ./configure --prefix=/usr - make -} - -package() { - cd ${srcdir}/$pkgname-$pkgver - - make DESTDIR=${pkgdir} install -} diff --git a/community-staging/postgis/postgis.changelog b/community-staging/postgis/postgis.changelog deleted file mode 100644 index 86c0b336b..000000000 --- a/community-staging/postgis/postgis.changelog +++ /dev/null @@ -1,5 +0,0 @@ -2010-10-30 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * Update to major release 1.5.2 - -2010-03-21 Jaroslav Lichtblau <dragonlord@aur.archlinux.org> - * Update to major release 1.5.1 diff --git a/community-staging/python-bsddb/LICENSE b/community-staging/python-bsddb/LICENSE deleted file mode 100644 index 7d6035775..000000000 --- a/community-staging/python-bsddb/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (c) 2008-2009 Jesus Cea Avion - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE.
\ No newline at end of file diff --git a/community-staging/python-bsddb/PKGBUILD b/community-staging/python-bsddb/PKGBUILD deleted file mode 100644 index 578d0921d..000000000 --- a/community-staging/python-bsddb/PKGBUILD +++ /dev/null @@ -1,62 +0,0 @@ -# $Id: PKGBUILD 50695 2011-06-29 15:25:25Z stephane $ -# Maintainer: Kaiting Chen <kaitocracy@gmail.com> -# Contributor: Stéphane Gaudreault <stephane@archlinux.org> -# Contributor: Douglas Soares de Andrade <dsandrade@gmail.com> -# Contributor: William Rea <sillywilly@gmail.com> - -pkgbase=python-bsddb -pkgname=('python2-bsddb' 'python-bsddb') -_hgrel=600 -pkgver=5.1.2.${_hgrel} -pkgrel=1 -pkgdesc="Python interface for BerkeleyDB" -license=('MIT') -arch=('i686' 'x86_64') -url="http://www.jcea.es/programacion/pybsddb.htm" -makedepends=('python2-distribute' 'python-distribute' 'mercurial') -source=("ftp://ftp.archlinux.org/other/community/${pkgbase}/${pkgbase}-${pkgver}.src.tar.xz" - 'LICENSE') -sha1sums=('50e7b4c9c11b06c6d871dd93af1cc228687a0227' - 'ef4e4caf618781104dbf5824279ed39d127b4713') - -# source PKGBUILD && mksource -mksource() { - _hgroot="http://hg.jcea.es/pybsddb/" - _hgrepo=pybsddb - [ -d "${_hgrepo}" ] && hg pull -u -r ${_hgrel} || hg clone ${_hgroot} -r ${_hgrel} - - _dirname=${pkgbase}-${pkgver} - mv ${_hgrepo} ${_dirname} - tar -cJvf ${_dirname}.src.tar.xz ${_dirname} - rm -fr ${_dirname} -} - -build () { - cd "${srcdir}" - - cp -r ${pkgbase}-${pkgver}{,-python2} - - # Build python 3 module - cd ${pkgbase}-${pkgver} - python setup.py --berkeley-db=/usr build - - # Build python 2 module - cd ../${pkgbase}-${pkgver}-python2 - python2 setup.py --berkeley-db=/usr build -} - -package_python2-bsddb() { - depends=('db' 'python2>=2.7') - cd "${srcdir}/${pkgbase}-${pkgver}-python2" - - python2 setup.py --berkeley-db=/usr install --root="${pkgdir}" --skip-build --optimize=1 - install -Dm644 "${srcdir}"/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} - -package_python-bsddb() { - depends=('db' 'python>=3.2') - cd "${srcdir}/${pkgbase}-${pkgver}" - - python setup.py --berkeley-db=/usr install --root="${pkgdir}" --skip-build --optimize=1 - install -Dm644 "${srcdir}"/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/community-staging/qgis/PKGBUILD b/community-staging/qgis/PKGBUILD deleted file mode 100644 index ef4bf030a..000000000 --- a/community-staging/qgis/PKGBUILD +++ /dev/null @@ -1,59 +0,0 @@ -# Maintainer: Thomas Dziedzic < gostrc at gmail > -# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org -# Contributor: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar> - -pkgname=qgis -pkgver=1.7.0 -pkgrel=2 -pkgdesc='A Geographic Information System (GIS) that supports vector, raster & database formats' -url='http://qgis.org/' -license=('GPL') -arch=('i686' 'x86_64') -# update to http://www.qgis.org/wiki/Building_QGIS_from_Source#Overview -depends=('libmysqlclient' 'postgresql-libs' 'sqlite3' 'jasper' 'curl' 'qt' 'python2' 'python2-qt' 'giflib' 'xerces-c' 'cfitsio' 'qwt' 'gdal') -makedepends=('cmake' 'grass' 'gsl' 'postgis' 'netcdf' 'fcgi' 'python2-sip' 'txt2tags') -optdepends=('postgis: postgis support and SPIT plugin' - 'fcgi: qgis mapserver' - 'python2-sip: python-support' - 'grass: grass plugin' - 'gsl: georeferencer ') -options=('!makeflags') -source=("http://qgis.org/downloads/qgis-${pkgver}.tar.bz2" - 'qgis.desktop' - 'ticket_3378.diff') -md5sums=('d8506990f52563d39c7b916f500f282f' - '8ab66039f2aba519b92f52272ec3c13e' - '402f3d39a344367fd55bdaa324deb797') - -build() { - # Fix insecure RPATH is weird, but just works ;) -# echo "os.system(\"sed -i '/^LFLAGS/s|-Wl,-rpath,.\+ ||g' gui/Makefile core/Makefile\")" >> python/configure.py.in - - #cd qgis-${pkgver} - # fix compilation error https://trac.osgeo.org/qgis/ticket/3378 - #patch -Np3 -i ${srcdir}/ticket_3378.diff - #cd ${srcdir} - - rm -rf build - mkdir build - cd build - - cmake ../qgis-${pkgver} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=ON \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DGRASS_PREFIX=/opt/grass \ - -DQGIS_MANUAL_SUBDIR=share/man - - make -} - -package() { - cd build - - make DESTDIR=${pkgdir} install - - # install some freedesktop.org compatibility - install -D -m644 ${srcdir}/qgis.desktop \ - ${pkgdir}/usr/share/applications/qgis.desktop -} diff --git a/community-staging/qgis/qgis.desktop b/community-staging/qgis/qgis.desktop deleted file mode 100644 index c3db5ad08..000000000 --- a/community-staging/qgis/qgis.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Name=Quantum GIS -GenericName="GIS" -Comment="Geographic Information System (GIS) that supports vector, raster & database formats" -Exec=/usr/bin/qgis -Icon=/usr/share/qgis/images/icons/qgis-icon.png -Terminal=false -MultipleArgs=false -Type=Application -Categories=Application;Science diff --git a/community-staging/qgis/ticket_3378.diff b/community-staging/qgis/ticket_3378.diff deleted file mode 100644 index 0d722e4c8..000000000 --- a/community-staging/qgis/ticket_3378.diff +++ /dev/null @@ -1,38 +0,0 @@ -Index: /trunk/qgis/python/core/conversions.sip
-===================================================================
---- /trunk/qgis/python/core/conversions.sip (revision 14323)
-+++ /trunk/qgis/python/core/conversions.sip (revision 14988)
-@@ -16,4 +16,5 @@
-
- %Feature QSETINT_CONVERSION
-+%Feature QSETTYPE_CONVERSION
-
- %ModuleHeaderCode
-@@ -321,5 +322,5 @@
- %End
-
--
-+%If (QSETTYPE_CONVERSION)
- template <TYPE>
- %MappedType QSet<TYPE>
-@@ -395,6 +396,5 @@
-
- };
--
--
-+%End
-
- template<TYPE>
-Index: /trunk/qgis/python/CMakeLists.txt
-===================================================================
---- /trunk/qgis/python/CMakeLists.txt (revision 14330)
-+++ /trunk/qgis/python/CMakeLists.txt (revision 14988)
-@@ -44,4 +44,8 @@
- ENDIF(NOT PYQT4_VERSION_NUM LESS 263941)
-
-+IF(NOT PYQT4_VERSION_NUM LESS 264194) # 0x040802
-+ SET(SIP_DISABLE_FEATURES ${SIP_DISABLE_FEATURES} QSETTYPE_CONVERSION)
-+ENDIF(NOT PYQT4_VERSION_NUM LESS 264194)
-+
- # core module
- FILE(GLOB sip_files_core core/*.sip)
diff --git a/community-staging/xemacs/PKGBUILD b/community-staging/xemacs/PKGBUILD deleted file mode 100644 index 8e7d3fe69..000000000 --- a/community-staging/xemacs/PKGBUILD +++ /dev/null @@ -1,65 +0,0 @@ -# $Id: PKGBUILD 49690 2011-06-19 10:01:11Z ebelanger $ -# Maintainer: juergen <juergen@archlinux.org> -# Contributor : Stéphane Gaudreault <stephane@archlinux.org> - -pkgname=xemacs -pkgver=21.5.31 -pkgrel=2 -pkgdesc="An highly customizable open source text editor and application development system forked from GNU Emacs" -arch=('i686' 'x86_64') -url="http://www.xemacs.org/" -license=('GPL') -depends=('db' 'libpng' 'libtiff' 'gpm' 'desktop-file-utils' 'libxaw' 'gdbm' 'giflib') -optdepends=('xorg-fonts-75dpi: X bitmap fonts needed for the interface' - 'xorg-fonts-100dpi: X bitmap fonts needed for the interface') -makedepends=('xbitmaps') -install=xemacs.install -source=(http://ftp.xemacs.org/pub/xemacs/beta/$pkgname-$pkgver.tar.gz - xemacs.desktop - xemacs-21.5.29-optimization-bug.patch) -md5sums=('0185fe905d0b8d8d094d9b60cf262d4a' - 'a4d3d5c0aa2c7ce7bec491f809ca3694' - 'eb061b10ea3bbe1026df5326ae1618e3') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - -# Fix problem caused by improper optimization with GCC>=4.1.2 on i686 -# (and possibly other arches). See -# http://tracker.xemacs.org/XEmacs/its/issue354 -# for the upstream bug report. - patch -Np0 -i ../xemacs-21.5.29-optimization-bug.patch - - ./configure --build="${CHOST}" --prefix=/usr --with-dynamic \ - --without-postgresql --with-athena=xaw \ - --enable-database=berkdb --without-ldap \ - --enable-menubars=lucid --enable-scrollbars=lucid \ - --enable-widgets=athena --enable-dialogs=athena \ - --enable-external-widget \ - --with-jpeg --with-png --with-tiff \ - --with-ncurses --with-pop --with-xfs --disable-sound \ - --infodir=/usr/share/info \ - --with-mule \ - --mandir=/usr/share/man/man1 - - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make -j1 prefix="${pkgdir}/usr" mandir="${pkgdir}/usr/share/man/man1" infodir="${pkgdir}/usr/share/info" install gzip-el - - rm "${pkgdir}"/usr/bin/{b2m,ctags,etags} - rm "${pkgdir}"/usr/share/man/man1/{ctags.1,etags.1} - - # fix FS#7927 - install -d -m755 "${pkgdir}/usr/share/pixmaps" - install -D -m644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" - ln -sf /usr/share/xemacs-${pkgver%.*}-b${pkgver##*.}/etc/xemacs-icon.xpm "${pkgdir}/usr/share/pixmaps/xemacs-icon.xpm" - - # correct permissions - chown -R root:root "${pkgdir}" - - rm "${pkgdir}"/usr/share/info/{info.info,texinfo.info-2,cl.info,texinfo.info-1,texinfo.info,standards.info,widget.info} -} -# vim: ts=2 sw=2 et ft=sh diff --git a/community-staging/xemacs/xemacs-21.5.29-optimization-bug.patch b/community-staging/xemacs/xemacs-21.5.29-optimization-bug.patch deleted file mode 100644 index 32a1a02c2..000000000 --- a/community-staging/xemacs/xemacs-21.5.29-optimization-bug.patch +++ /dev/null @@ -1,14 +0,0 @@ -Work around a GCC optimization bug as described in -http://tracker.xemacs.org/XEmacs/its/issue354 - ---- src/dumper.c.~1~ 2008-01-26 09:54:11.000000000 +0100 -+++ src/dumper.c 2008-05-03 10:17:03.000000000 +0200 -@@ -2584,7 +2584,7 @@ - #endif /* !WIN32_NATIVE */ - - --static int -+int - pdump_file_try (Wexttext *exe_path) - { - Wexttext *w = exe_path + wext_strlen (exe_path); diff --git a/community-staging/xemacs/xemacs.desktop b/community-staging/xemacs/xemacs.desktop deleted file mode 100644 index 257c56947..000000000 --- a/community-staging/xemacs/xemacs.desktop +++ /dev/null @@ -1,34 +0,0 @@ -[Desktop Entry] -Name=XEmacs Text Editor -Name[bg]=редактор XEmacs -Name[ca]=Editor XEmacs -Name[cs]=Editor XEmacs -Name[da]=XEmacs tekstredigerer -Name[de]=XEmacs Texteditor -Name[eo]=La redaktilo XEmakso -Name[es]=Emacs para X -Name[et]=Emacs X'i kasutajaliidesega -Name[fi]=XEmacs editori -Name[fr]=Éditeur XEmacs -Name[hu]=XEmacs szövegszerkesztÅ‘ -Name[is]=XEmacs-ritill -Name[it]=Emacs per X -Name[ja]=XEmacs テã‚スト・エディター -Name[mk]=СофиÑтицираниот XEmacs уредувач -Name[no]=XEmacs-tekstredigerer -Name[pt]=Editor XEmacs -Name[ro]=Editorul XEmacs -Name[ru]=Редактор XEmacs -Name[sk]=Editor XEmacs -Name[sl]=Urejevalnik XEmacs -Name[uk]=Редактор XEmacs -GenericName=Text Editor -Comment=Edit text -MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; -Exec=xemacs %f -Icon=/usr/share/pixmaps/xemacs-icon.xpm -Type=Application -Terminal=false -Categories=Development;TextEditor; -Encoding=UTF-8 -StartupWMClass=Emacs diff --git a/community-staging/xemacs/xemacs.install b/community-staging/xemacs/xemacs.install deleted file mode 100644 index a04ee187f..000000000 --- a/community-staging/xemacs/xemacs.install +++ /dev/null @@ -1,35 +0,0 @@ -infodir=usr/share/info -filelist=(beta.info.gz custom.info.gz - emodules.info.gz external-widget.info.gz - internals.info-1.gz internals.info-2.gz - internals.info-3.gz internals.info-4.gz - internals.info-5.gz internals.info.gz - lispref.info-1.gz lispref.info-10.gz - lispref.info-2.gz lispref.info-3.gz - lispref.info-4.gz lispref.info-5.gz - lispref.info-6.gz lispref.info-7.gz - lispref.info-8.gz lispref.info-9.gz - lispref.info.gz new-users-guide.info.gz - term.info.gz termcap.info.gz - xemacs-faq.info-1.gz xemacs-faq.info-2.gz - xemacs-faq.info.gz xemacs.info-1.gz - xemacs.info-2.gz xemacs.info-3.gz - xemacs.info-4.gz xemacs.info.gz) - -post_install() { - for file in ${filelist[@]}; do - install-info $infodir/$file $infodir/dir 2> /dev/null - done - update-desktop-database -q -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - for file in ${filelist[@]}; do - install-info --delete $infodir/$file $infodir/dir 2> /dev/null - done - update-desktop-database -q -} diff --git a/community-testing/coin/PKGBUILD b/community-testing/coin/PKGBUILD new file mode 100644 index 000000000..70289ef96 --- /dev/null +++ b/community-testing/coin/PKGBUILD @@ -0,0 +1,54 @@ +# Maintainer: Thomas Dziedzic < gostrc at gmail > +# Contributor: mickele +# Contributor: marcus fritzsch <fritschy@googlemail.com> + +pkgname=coin +pkgver=3.1.3 +pkgrel=5 +pkgdesc='Coin3D is a high-level 3D graphics toolkit on top of OpenGL.' +url='http://www.coin3d.org/' +license=('GPL') +arch=('i686' 'x86_64') +depends=('mesa' 'expat') +makedepends=('doxygen') +optdepends=('openal: sound/dynamic linking support' + 'fontconfig: dynamic linking support' + 'zlib: dynamic linking support' + 'freetype2: dynamic linking support' + 'js: dynamic linking support') +options=('!libtool') +source=("http://ftp.coin3d.org/coin/src/all/Coin-${pkgver}.tar.gz") +md5sums=('1538682f8d92cdf03e845c786879fbea') + +build() { + cd Coin-${pkgver} + + ./configure \ + --prefix=/usr \ + --mandir=/usr/share/man \ + --enable-optimization \ + --enable-3ds-import \ + --enable-javascript-api \ + --enable-threadsafe \ + --enable-exceptions \ + --enable-man \ + --with-mesa \ + --disable-debug \ + --enable-shared \ + --disable-maintainer-mode \ + --disable-dependency-tracking \ + --enable-system-expat + + make +} + +package() { + cd Coin-${pkgver} + + make DESTDIR=${pkgdir} install + + # final adjustments + for _FILE in threads deprecated ; do + mv "${pkgdir}/usr/share/man/man3/${_FILE}.3" "${pkgdir}/usr/share/man/man3/coin-${_FILE}.3" + done +} diff --git a/community-testing/couchdb/PKGBUILD b/community-testing/couchdb/PKGBUILD new file mode 100644 index 000000000..6d4d6d171 --- /dev/null +++ b/community-testing/couchdb/PKGBUILD @@ -0,0 +1,46 @@ +# $Id: PKGBUILD 51045 2011-07-04 15:16:10Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Vitaliy Berdinskikh ur6lad[at]i.ua +# Previous Contributor: Michael Fellinger <m.fellinger@gmail.com> + +pkgname=couchdb +pkgver=1.1.0 +pkgrel=1.svn20110704 +pkgdesc="A document-oriented database that can be queried and indexed in a MapReduce fashion using JSON" +arch=('i686' 'x86_64') +url="http://couchdb.apache.org" +license=('APACHE') +depends=('icu' 'erlang' 'js' 'openssl' 'curl') +makedepends=('gcc') +install=couchdb.install +options=('!libtool') +backup=('etc/couchdb/local.ini' + 'etc/conf.d/couchdb' + 'etc/logrotate.d/couchdb') +#source=("http://www.apache.org/dist/$pkgname/$pkgver/apache-$pkgname-$pkgver.tar.gz" +source=("http://arch.p5n.pp.ru/~sergej/dl/apache-couchdb-$pkgver.svn20110704.tar.gz" + "rc-script.patch") +md5sums=('a961f9047aa34df56ef19d6f6dce083b' + 'e9b5595338efbdc1a5db13284a296612') + +build() { + cd "$srcdir/apache-$pkgname-$pkgver" + + sed -i 's|-ljs|-lmozjs185|' configure + ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var + make + patch etc/init/couchdb <$srcdir/rc-script.patch +} + +package() { + cd "$srcdir/apache-$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + + install -Dm755 etc/default/couchdb $pkgdir/etc/conf.d/couchdb + sed -i 's|\(CONFIGURATION_FILE=/etc/\)default\(/couchdb\)|\1conf.d\2|' $pkgdir/etc/rc.d/couchdb + sed -i 's|\(COUCHDB_OPTIONS=\)|\1"-p /var/run/couchdb/couchdb.pid"|' $pkgdir/etc/conf.d/couchdb + sed -i 's|$COUCHDB -s|$COUCHDB $COUCHDB_OPTIONS -s|' $pkgdir/etc/rc.d/couchdb + sed -i 's|su $COUCHDB_USER -c|su $COUCHDB_USER -s /bin/bash -c|' $pkgdir/etc/rc.d/couchdb + + rm -rf $pkgdir/etc/default/ $pkgdir/var/run +} diff --git a/community-testing/couchdb/couchdb.install b/community-testing/couchdb/couchdb.install new file mode 100644 index 000000000..5eff459c7 --- /dev/null +++ b/community-testing/couchdb/couchdb.install @@ -0,0 +1,22 @@ +post_install() { + id couchdb &>/dev/null || \ + useradd -r -c "CouchDB daemon" -g daemon -d /var/lib/couchdb -s /bin/false couchdb + mkdir -p /var/run/couchdb + chown -R couchdb.daemon /etc/couchdb + chown -R couchdb.daemon /var/{lib,log,run}/couchdb +} + +pre_upgrade() { + id couchdb &>/dev/null || \ + useradd -r -c "CouchDB daemon" -g daemon -d /var/lib/couchdb -s /bin/false couchdb +} + +post_upgrade() { + mkdir -p $pkgdir/var/run/couchdb + chown -R couchdb.daemon /etc/couchdb + chown -R couchdb.daemon /var/{lib,log,run}/couchdb +} + +post_remove() { + userdel couchdb &>/dev/null +} diff --git a/community-testing/couchdb/rc-script.patch b/community-testing/couchdb/rc-script.patch new file mode 100644 index 000000000..d38f4dc6c --- /dev/null +++ b/community-testing/couchdb/rc-script.patch @@ -0,0 +1,90 @@ +--- couchdb.org 2011-04-01 19:56:32.000000000 +0000 ++++ couchdb 2011-04-01 19:59:17.000000000 +0000 +@@ -1,4 +1,7 @@ +-#!/bin/sh -e ++#!/bin/bash ++#general config ++. /etc/rc.conf ++. /etc/rc.d/functions + + # Licensed under the Apache License, Version 2.0 (the "License"); you may not + # use this file except in compliance with the License. You may obtain a copy of +@@ -29,7 +32,7 @@ + NAME=couchdb + SCRIPT_NAME=`basename $0` + COUCHDB=/usr/bin/couchdb +-CONFIGURATION_FILE=/etc/default/couchdb ++CONFIGURATION_FILE=/etc/conf.d/couchdb + RUN_DIR=/var/run/couchdb + LSB_LIBRARY=/lib/lsb/init-functions + +@@ -61,8 +63,9 @@ + fi + + start_couchdb () { +- # Start Apache CouchDB as a background process. ++ stat_busy "Starting the CouchDB daemon" + ++ [ -d /var/run/couchdb ] || mkdir -p /var/run/couchdb + command="$COUCHDB -b" + if test -n "$COUCHDB_STDOUT_FILE"; then + command="$command -o $COUCHDB_STDOUT_FILE" +@@ -79,38 +82,38 @@ + mkdir -p "$RUN_DIR" + if test -n "$COUCHDB_USER"; then + chown $COUCHDB_USER "$RUN_DIR" +- if su $COUCHDB_USER -c "$command" > /dev/null; then +- return $SCRIPT_OK ++ if su $COUCHDB_USER -s /bin/bash -c "$command" > /dev/null; then ++ stat_done + else +- return $SCRIPT_ERROR ++ stat_fail + fi + else + if $command > /dev/null; then +- return $SCRIPT_OK ++ stat_done + else +- return $SCRIPT_ERROR ++ stat_fail + fi + fi + } + + stop_couchdb () { +- # Stop the running Apache CouchDB process. ++ stat_busy "Stopping the CouchDB daemon" + + command="$COUCHDB -d" + if test -n "$COUCHDB_OPTIONS"; then + command="$command $COUCHDB_OPTIONS" + fi + if test -n "$COUCHDB_USER"; then +- if su $COUCHDB_USER -c "$command" > /dev/null; then +- return $SCRIPT_OK ++ if su $COUCHDB_USER -s /bin/bash -c "$command" > /dev/null; then ++ stat_done + else +- return $SCRIPT_ERROR ++ stat_fail + fi + else + if $command > /dev/null; then +- return $SCRIPT_OK ++ stat_done + else +- return $SCRIPT_ERROR ++ stat_fail + fi + fi + } +@@ -118,7 +121,7 @@ + display_status () { + # Display the status of the running Apache CouchDB process. + +- $COUCHDB -s ++ $COUCHDB $COUCHDB_OPTIONS -s + } + + parse_script_option_list () { diff --git a/community-testing/dsniff/PKGBUILD b/community-testing/dsniff/PKGBUILD deleted file mode 100644 index f7428aa09..000000000 --- a/community-testing/dsniff/PKGBUILD +++ /dev/null @@ -1,36 +0,0 @@ -# $Id: PKGBUILD 49679 2011-06-19 07:23:27Z andrea $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: ViNS <gladiator@fastwebnet.it> - -pkgname=dsniff -pkgver=2.4b1 -pkgrel=20 -pkgdesc="Collection of tools for network auditing and penetration testing" -url="http://www.monkey.org/~dugsong/dsniff/" -arch=('i686' 'x86_64') -license=('BSD') -depends=('libpcap' 'openssl' 'libxmu' 'glib2' 'libnet' 'libnids') -source=("http://www.monkey.org/~dugsong/${pkgname}/beta/$pkgname-$pkgver.tar.gz" - "http://ftp.de.debian.org/debian/pool/main/d/${pkgname}/${pkgname}_2.4b1+debian-18.diff.gz") -md5sums=('2f761fa3475682a7512b0b43568ee7d6' - 'fbc9f62f9ab2f98f24f53ad497c1ce5d') - -build() { - cd $srcdir/$pkgname-2.4 - patch -N < "${srcdir}"/dsniff_2.4b1+debian-18.diff - for i in *.dpatch; do - patch -N < "$i" - done - - LDFLAGS="-lresolv -lglib-2.0 -lgthread-2.0 $LDFLAGS" ./configure --prefix=/usr - make -} - -package() { - cd "$srcdir"/$pkgname-2.4 - make prefix="$pkgdir"/usr install - install -D -m0644 LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE - - install -d "$pkgdir"/usr/share - mv "$pkgdir"/usr/man "$pkgdir"/usr/share/ -} diff --git a/community-testing/elinks/PKGBUILD b/community-testing/elinks/PKGBUILD new file mode 100644 index 000000000..037b290e9 --- /dev/null +++ b/community-testing/elinks/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 51048 2011-07-04 15:29:28Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: damir <damir@archlinux.org> +# Contributor: Ben <contrasutra@myrealbox.com> + +pkgname=elinks +pkgver=0.13 +_commit="03c698e926d4421ba43d905b6d9fd7388b97352f" +pkgrel=6 +pkgdesc="An advanced and well-established feature-rich text mode web browser." +arch=("i686" "x86_64") +url="http://elinks.or.cz" +license=('GPL') +depends=('bzip2' 'expat>=2.0' 'gpm>=1.20.4' 'openssl' 'lua>=5.1.1' 'libidn' 'js' + 'gc' 'tre' 'smbclient') +source=("http://arch.p5n.pp.ru/~sergej/dl/elinks-$pkgver-${_commit}.tar.gz") +md5sums=('85916038633d0eb4ed98c3f82ac0b405') + +build() { + cd "$srcdir/elinks" + [ -x configure ] || sh autogen.sh + ./configure --prefix=/usr --mandir=/usr/share/man \ + --sysconfdir=/etc \ + --enable-smb --without-x --enable-cgi \ + --enable-leds --enable-256-colors --enable-html-highlight \ + --with-zlib + make +} + +package() { + cd "$srcdir/elinks" + make DESTDIR="$pkgdir" install + rm -f "$pkgdir/usr/share/locale/locale.alias" + install -D -m644 "contrib/debian/$pkgname.desktop" \ + "$pkgdir/usr/share/applications/$pkgname.desktop" +} diff --git a/community-testing/exim/PKGBUILD b/community-testing/exim/PKGBUILD deleted file mode 100644 index d30452d45..000000000 --- a/community-testing/exim/PKGBUILD +++ /dev/null @@ -1,74 +0,0 @@ -# $Id: PKGBUILD 49455 2011-06-16 18:57:50Z angvp $ -# Maintainer: Angel Velasquez <angvp@archlinux.org> -# Maintainer: judd <jvinet@zeroflux.org> -pkgname=exim -pkgver=4.76 -pkgrel=2 -pkgdesc="A Message Transfer Agent" -arch=(i686 x86_64) -url="http://www.exim.org/" -license=('GPL') -backup=(etc/mail/aliases etc/mail/exim.conf \ - etc/logrotate.d/exim etc/conf.d/exim) -install=exim.install -changelog=exim.changelog -depends=('db' 'pcre' 'pam' 'tcp_wrappers' 'openssl' 'libldap') -provides=('smtp-server') -conflicts=('smtp-server') -options=('!makeflags') -source=(ftp://mirrors.24-7-solutions.net/pub/exim/ftp/exim/exim4/exim-${pkgver}.tar.bz2 - aliases - exim - exim.logrotate - exim.conf.d - exim.Makefile - ) -md5sums=('58e784b33c7a2ab335ec6400346d6362' - '4874006f0585253ddab027d441009757' - '9aed772e87223213e8da9ca5e7376869' - 'd788c26f86a9d72a0aebb3b849fe74f2' - 'b75fe4c6e960a59a25b5f51e8f61ba3a' - '61e76543476f52f136c1d6c80ac1c5a1') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - sed -i 's|tail -1|tail -n -1|g' scripts/Configure-config.h - # Make some configuration changes - cp ${srcdir}/${pkgname}.Makefile Local/Makefile - make -} - -package() { - cd $srcdir/$pkgname-$pkgver - install -D -m644 ../exim.logrotate ${pkgdir}/etc/logrotate.d/exim - install -D -m644 ../exim.conf.d ${pkgdir}/etc/conf.d/exim - install -D -m644 doc/exim.8 ${pkgdir}/usr/share/man/man8/exim.8 - install -D -m755 ../exim ${pkgdir}/etc/rc.d/exim - mkdir -p ${pkgdir}/var/spool/exim/db ${pkgdir}/etc/mail \ - ${pkgdir}/var/log/exim ${pkgdir}/usr/{lib,sbin} - chmod 770 ${pkgdir}/var/spool/exim ${pkgdir}/var/spool/exim/db ${pkgdir}/var/log/exim - cd build-Linux-* - for i in exicyclog exim_checkaccess exim_dumpdb exim_lock\ - exim_tidydb exipick exiqsumm exigrep exim_dbmbuild exim\ - exim_fixdb eximstats exinext exiqgrep exiwhat - do - install -m 0755 $i ${pkgdir}/usr/sbin - done - - cd ${srcdir}/exim-${pkgver}/src - sed "s|/etc/aliases|/etc/mail/aliases|g" configure.default | \ - sed "s|SYSTEM_ALIASES_FILE|/etc/mail/aliases|g" \ - >${pkgdir}/etc/mail/exim.conf - - cp ${srcdir}/aliases ${pkgdir}/etc/mail - cd ${pkgdir}/usr/sbin - for i in mailq rmail rsmtp runq sendmail - do - ln -s exim $i - done - # fhs compliancy - ln -s ../sbin/exim ../lib/sendmail - - mkdir -p ${pkgdir}/etc/rc.d - cp ${srcdir}/exim ${pkgdir}/etc/rc.d -} diff --git a/community-testing/exim/aliases b/community-testing/exim/aliases deleted file mode 100644 index 5a76ff7d5..000000000 --- a/community-testing/exim/aliases +++ /dev/null @@ -1,35 +0,0 @@ -# -# /etc/mail/aliases -# -# NOTE: Make sure you run 'newaliases' after modifying this file -# - -# Basic system aliases -- these MUST be present. -MAILER-DAEMON: postmaster -postmaster: root -hostmaster: root -webmaster: hostmaster -ftpmaster: hostmaster -admin: hostmaster -administrator: hostmaster - -# General redirections for pseudo accounts. -bin: root -daemon: root -games: root -ingres: root -nobody: root -system: root -toor: root -uucp: root - -# Well-known aliases. -manager: root -dumper: root -operator: root - -# trap decode to catch security attacks -decode: root - -# Person who should get root's mail -#root: diff --git a/community-testing/exim/exim.Makefile b/community-testing/exim/exim.Makefile deleted file mode 100644 index 125f87dfb..000000000 --- a/community-testing/exim/exim.Makefile +++ /dev/null @@ -1,1227 +0,0 @@ -# $Cambridge: exim/src/src/EDITME,v 1.27 2010/06/12 15:21:25 jetmore Exp $ - -################################################## -# The Exim mail transport agent # -################################################## - -# This is the template for Exim's main build-time configuration file. It -# contains settings that are independent of any operating system. These are -# things that are mostly sysadmin choices. The items below are divided into -# those you must specify, those you probably want to specify, those you might -# often want to specify, and those that you almost never need to mention. - -# Edit this file and save the result to a file called Local/Makefile within the -# Exim distribution directory before running the "make" command. - -# Things that depend on the operating system have default settings in -# OS/Makefile-Default, but these are overridden for some OS by files called -# called OS/Makefile-<osname>. You can further override these by creating files -# called Local/Makefile-<osname>, where "<osname>" stands for the name of your -# operating system - look at the names in the OS directory to see which names -# are recognized. - -# However, if you are building Exim for a single OS only, you don't need to -# worry about setting up Local/Makefile-<osname>. Any build-time configuration -# settings you require can in fact be placed in the one file called -# Local/Makefile. It is only if you are building for several OS from the same -# source files that you need to worry about splitting off your own OS-dependent -# settings into separate files. (There's more explanation about how this all -# works in the toplevel README file, under "Modifying the building process", as -# well as in the Exim specification.) - -# One OS-specific thing that may need to be changed is the command for running -# the C compiler; the overall default is gcc, but some OS Makefiles specify cc. -# You can override anything that is set by putting CC=whatever in your -# Local/Makefile. - -# NOTE: You should never need to edit any of the distributed Makefiles; all -# overriding can be done in your Local/Makefile(s). This will make it easier -# for you when the next release comes along. - -# The location of the X11 libraries is something else that is quite variable -# even between different versions of the same operating system (and indeed -# there are different versions of X11 as well, of course). The four settings -# concerned here are X11, XINCLUDE, XLFLAGS (linking flags) and X11_LD_LIB -# (dynamic run-time library). You need not worry about X11 unless you want to -# compile the Exim monitor utility. Exim itself does not use X11. - -# Another area of variability between systems is the type and location of the -# DBM library package. Exim has support for ndbm, gdbm, tdb, and Berkeley DB. -# By default the code assumes ndbm; this often works with gdbm or DB, provided -# they are correctly installed, via their compatibility interfaces. However, -# Exim can also be configured to use the native calls for Berkeley DB (obsolete -# versions 1.85, 2.x, 3.x, or the current 4.x version) and also for gdbm. - -# For some operating systems, a default DBM library (other than ndbm) is -# selected by a setting in the OS-specific Makefile. Most modern OS now have -# a DBM library installed as standard, and in many cases this will be selected -# for you by the OS-specific configuration. If Exim compiles without any -# problems, you probably do not have to worry about the DBM library. If you -# do want or need to change it, you should first read the discussion in the -# file doc/dbm.discuss.txt, which also contains instructions for testing Exim's -# interface to the DBM library. - -# In Local/Makefiles blank lines and lines starting with # are ignored. It is -# also permitted to use the # character to add a comment to a setting, for -# example -# -# EXIM_GID=42 # the "mail" group -# -# However, with some versions of "make" this works only if there is no white -# space between the end of the setting and the #, so perhaps it is best -# avoided. A consequence of this facility is that it is not possible to have -# the # character present in any setting, but I can't think of any cases where -# this would be wanted. -############################################################################### - - - -############################################################################### -# THESE ARE THINGS YOU MUST SPECIFY # -############################################################################### - -# Exim will not build unless you specify BIN_DIRECTORY, CONFIGURE_FILE, and -# EXIM_USER. You also need EXIM_GROUP if EXIM_USER specifies a uid by number. - -# If you don't specify SPOOL_DIRECTORY, Exim won't fail to build. However, it -# really is a very good idea to specify it here rather than at run time. This -# is particularly true if you let the logs go to their default location in the -# spool directory, because it means that the location of the logs is known -# before Exim has read the run time configuration file. - -#------------------------------------------------------------------------------ -# BIN_DIRECTORY defines where the exim binary will be installed by "make -# install". The path is also used internally by Exim when it needs to re-invoke -# itself, either to send an error message, or to recover root privilege. Exim's -# utility binaries and scripts are also installed in this directory. There is -# no "standard" place for the binary directory. Some people like to keep all -# the Exim files under one directory such as /usr/exim; others just let the -# Exim binaries go into an existing directory such as /usr/sbin or -# /usr/local/sbin. The installation script will try to create this directory, -# and any superior directories, if they do not exist. - -BIN_DIRECTORY=/usr/sbin - - -#------------------------------------------------------------------------------ -# CONFIGURE_FILE defines where Exim's run time configuration file is to be -# found. It is the complete pathname for the file, not just a directory. The -# location of all other run time files and directories can be changed in the -# run time configuration file. There is a lot of variety in the choice of -# location in different OS, and in the preferences of different sysadmins. Some -# common locations are in /etc or /etc/mail or /usr/local/etc or -# /usr/local/etc/mail. Another possibility is to keep all the Exim files under -# a single directory such as /usr/exim. Whatever you choose, the installation -# script will try to make the directory and any superior directories if they -# don't exist. It will also install a default runtime configuration if this -# file does not exist. - -CONFIGURE_FILE=/etc/mail/exim.conf - -# It is possible to specify a colon-separated list of files for CONFIGURE_FILE. -# In this case, Exim will use the first of them that exists when it is run. -# However, if a list is specified, the installation script no longer tries to -# make superior directories or to install a default runtime configuration. - - -#------------------------------------------------------------------------------ -# The Exim binary must normally be setuid root, so that it starts executing as -# root, but (depending on the options with which it is called) it does not -# always need to retain the root privilege. These settings define the user and -# group that is used for Exim processes when they no longer need to be root. In -# particular, this applies when receiving messages and when doing remote -# deliveries. (Local deliveries run as various non-root users, typically as the -# owner of a local mailbox.) Specifying these values as root is not supported. - -EXIM_USER=ref:exim - -# If you specify EXIM_USER as a name, this is looked up at build time, and the -# uid number is built into the binary. However, you can specify that this -# lookup is deferred until runtime. In this case, it is the name that is built -# into the binary. You can do this by a setting of the form: - -# EXIM_USER=ref:exim - -# In other words, put "ref:" in front of the user name. If you set EXIM_USER -# like this, any value specified for EXIM_GROUP is also passed "by reference". -# Although this costs a bit of resource at runtime, it is convenient to use -# this feature when building binaries that are to be run on multiple systems -# where the name may refer to different uids. It also allows you to build Exim -# on a system where there is no Exim user defined. - -# If the setting of EXIM_USER is numeric (e.g. EXIM_USER=42), there must -# also be a setting of EXIM_GROUP. If, on the other hand, you use a name -# for EXIM_USER (e.g. EXIM_USER=exim), you don't need to set EXIM_GROUP unless -# you want to use a group other than the default group for the given user. - -# EXIM_GROUP= - -# Many sites define a user called "exim", with an appropriate default group, -# and use -# -# EXIM_USER=exim -# -# while leaving EXIM_GROUP unspecified (commented out). - - -#------------------------------------------------------------------------------ -# SPOOL_DIRECTORY defines the directory where all the data for messages in -# transit is kept. It is strongly recommended that you define it here, though -# it is possible to leave this till the run time configuration. - -# Exim creates the spool directory if it does not exist. The owner and group -# will be those defined by EXIM_USER and EXIM_GROUP, and this also applies to -# all the files and directories that are created in the spool directory. - -# Almost all installations choose this: - -SPOOL_DIRECTORY=/var/spool/exim - - - -############################################################################### -# THESE ARE THINGS YOU PROBABLY WANT TO SPECIFY # -############################################################################### - -# If you need extra header file search paths on all compiles, put the -I -# options in INCLUDE. If you want the extra searches only for certain -# parts of the build, see more specific xxx_INCLUDE variables below. - -# INCLUDE=-I/example/include - -# You need to specify some routers and transports if you want the Exim that you -# are building to be capable of delivering mail. You almost certainly need at -# least one type of lookup. You should consider whether you want to build -# the Exim monitor or not. - - -#------------------------------------------------------------------------------ -# These settings determine which individual router drivers are included in the -# Exim binary. There are no defaults in the code; those routers that are wanted -# must be defined here by setting the appropriate variables to the value "yes". -# Including a router in the binary does not cause it to be used automatically. -# It has also to be configured in the run time configuration file. By -# commenting out those you know you don't want to use, you can make the binary -# a bit smaller. If you are unsure, leave all of these included for now. - -ROUTER_ACCEPT=yes -ROUTER_DNSLOOKUP=yes -ROUTER_IPLITERAL=yes -ROUTER_MANUALROUTE=yes -ROUTER_QUERYPROGRAM=yes -ROUTER_REDIRECT=yes - -# This one is very special-purpose, so is not included by default. - -# ROUTER_IPLOOKUP=yes - - -#------------------------------------------------------------------------------ -# These settings determine which individual transport drivers are included in -# the Exim binary. There are no defaults; those transports that are wanted must -# be defined here by setting the appropriate variables to the value "yes". -# Including a transport in the binary does not cause it to be used -# automatically. It has also to be configured in the run time configuration -# file. By commenting out those you know you don't want to use, you can make -# the binary a bit smaller. If you are unsure, leave all of these included for -# now. - -TRANSPORT_APPENDFILE=yes -TRANSPORT_AUTOREPLY=yes -TRANSPORT_PIPE=yes -TRANSPORT_SMTP=yes - -# This one is special-purpose, and commonly not required, so it is not -# included by default. - -TRANSPORT_LMTP=yes - - -#------------------------------------------------------------------------------ -# The appendfile transport can write messages to local mailboxes in a number -# of formats. The code for three specialist formats, maildir, mailstore, and -# MBX, is included only when requested. If you do not know what this is about, -# leave these settings commented out. - -SUPPORT_MAILDIR=yes -# SUPPORT_MAILSTORE=yes -# SUPPORT_MBX=yes - - -#------------------------------------------------------------------------------ -# See below for dynamic lookup modules. -# LOOKUP_MODULE_DIR=/usr/lib/exim/lookups/ -# If not using package management but using this anyway, then think about how -# you perform upgrades and revert them. You should consider the benefit of -# embedding the Exim version number into LOOKUP_MODULE_DIR, so that you can -# maintain two concurrent sets of modules. - -# To build a module dynamically, you'll need to define CFLAGS_DYNAMIC for -# your platform. Eg: -# CFLAGS_DYNAMIC=-shared -rdynamic -# CFLAGS_DYNAMIC=-shared -rdynamic -fPIC - -#------------------------------------------------------------------------------ -# These settings determine which file and database lookup methods are included -# in the binary. See the manual chapter entitled "File and database lookups" -# for discussion. DBM and lsearch (linear search) are included by default. If -# you are unsure about the others, leave them commented out for now. -# LOOKUP_DNSDB does *not* refer to general mail routing using the DNS. It is -# for the specialist case of using the DNS as a general database facility (not -# common). -# If set to "2" instead of "yes" then the corresponding lookup will be -# built as a module and must be installed into LOOKUP_MODULE_DIR. You need to -# add -export-dynamic -rdynamic to EXTRALIBS. You may also need to add -ldl to -# EXTRALIBS so that dlopen() is available to Exim. You need to define -# LOOKUP_MODULE_DIR above so the exim binary actually loads dynamic lookup -# modules. -# Also, instead of adding all the libraries/includes to LOOKUP_INCLUDE and -# LOOKUP_LIBS, add them to the respective LOOKUP_*_INCLUDE and LOOKUP_*_LIBS -# (where * is the name as given here in this list). That ensures that only -# the dynamic library and not the exim binary will be linked against the -# library. -# NOTE: LDAP cannot be built as a module! - -LOOKUP_DBM=yes -LOOKUP_LSEARCH=yes -LOOKUP_DNSDB=yes - -# LOOKUP_CDB=yes -LOOKUP_DSEARCH=yes -# LOOKUP_IBASE=yes -LOOKUP_LDAP=yes -# LOOKUP_MYSQL=yes -# LOOKUP_NIS=yes -# LOOKUP_NISPLUS=yes -# LOOKUP_ORACLE=yes -# LOOKUP_PASSWD=yes -# LOOKUP_PGSQL=yes -# LOOKUP_SQLITE=yes -# LOOKUP_WHOSON=yes - -# These two settings are obsolete; all three lookups are compiled when -# LOOKUP_LSEARCH is enabled. However, we retain these for backward -# compatibility. Setting one forces LOOKUP_LSEARCH if it is not set. - -# LOOKUP_WILDLSEARCH=yes -# LOOKUP_NWILDLSEARCH=yes - - -#------------------------------------------------------------------------------ -# If you have set LOOKUP_LDAP=yes, you should set LDAP_LIB_TYPE to indicate -# which LDAP library you have. Unfortunately, though most of their functions -# are the same, there are minor differences. Currently Exim knows about four -# LDAP libraries: the one from the University of Michigan (also known as -# OpenLDAP 1), OpenLDAP 2, the Netscape SDK library, and the library that comes -# with Solaris 7 onwards. Uncomment whichever of these you are using. - -# LDAP_LIB_TYPE=OPENLDAP1 -LDAP_LIB_TYPE=OPENLDAP2 -# LDAP_LIB_TYPE=NETSCAPE -# LDAP_LIB_TYPE=SOLARIS - -# If you don't set any of these, Exim assumes the original University of -# Michigan (OpenLDAP 1) library. - - -#------------------------------------------------------------------------------ -# The PCRE library is required for exim. There is no longer an embedded -# version of the PCRE library included with the source code, instead you -# must use a system library or build your own copy of PCRE. -# In either case you must specify the library link info here. If the -# PCRE header files are not in the standard search path you must also -# modify the INCLUDE path (above) -# The default setting of PCRE_LIBS should work on the vast majority of -# systems - -PCRE_LIBS=-lpcre - - -#------------------------------------------------------------------------------ -# Additional libraries and include directories may be required for some -# lookup styles (e.g. LDAP, MYSQL or PGSQL). LOOKUP_LIBS is included only on -# the command for linking Exim itself, not on any auxiliary programs. You -# don't need to set LOOKUP_INCLUDE if the relevant directories are already -# specified in INCLUDE. The settings below are just examples; -lpq is for -# PostgreSQL, -lgds is for Interbase, -lsqlite3 is for SQLite. - -# LOOKUP_INCLUDE=-I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -# LOOKUP_LIBS=-L/usr/local/lib -lldap -llber -lmysqlclient -lpq -lgds -lsqlite3 - - -#------------------------------------------------------------------------------ -# Compiling the Exim monitor: If you want to compile the Exim monitor, a -# program that requires an X11 display, then EXIM_MONITOR should be set to the -# value "eximon.bin". Comment out this setting to disable compilation of the -# monitor. The locations of various X11 directories for libraries and include -# files are defaulted in the OS/Makefile-Default file, but can be overridden in -# local OS-specific make files. - - - - -#------------------------------------------------------------------------------ -# Compiling Exim with content scanning support: If you want to compile Exim -# with support for message body content scanning, set WITH_CONTENT_SCAN to -# the value "yes". This will give you malware and spam scanning in the DATA ACL, -# and the MIME ACL. Please read the documentation to learn more about these -# features. - -WITH_CONTENT_SCAN=yes - -# If you want to use the deprecated "demime" condition in the DATA ACL, -# uncomment the line below. Doing so will also explicitly turn on the -WITH_CONTENT_SCAN=yes -# the "demime" condition. - -WITH_OLD_DEMIME=yes - -# If you're using ClamAV and are backporting fixes to an old version, instead -# of staying current (which is the more usual approach) then you may need to -# use an older API which uses a STREAM command, now deprecated, instead of -# zINSTREAM. If you need to set this, please let the Exim developers know, as -# if nobody reports a need for it, we'll remove this option and clean up the -# code. zINSTREAM was introduced with ClamAV 0.95. -# -# WITH_OLD_CLAMAV_STREAM=yes - -#------------------------------------------------------------------------------ -# By default Exim includes code to support DKIM (DomainKeys Identified -# Mail, RFC4871) signing and verification. Verification of signatures is -# turned on by default. See the spec for information on conditionally -# disabling it. To disable the inclusion of the entire feature, set -# DISABLE_DKIM to "yes" - -# DISABLE_DKIM=yes - - -#------------------------------------------------------------------------------ -# Compiling Exim with experimental features. These are documented in -# experimental-spec.txt. "Experimental" means that the way these features are -# implemented may still change. Backward compatibility is not guaranteed. - -# Uncomment the following lines to add SPF support. You need to have libspf2 -# installed on your system (www.libspf2.org). Depending on where it is installed -# you may have to edit the CFLAGS and LDFLAGS lines. - -# EXPERIMENTAL_SPF=yes -# CFLAGS += -I/usr/local/include -# LDFLAGS += -lspf2 - -# Uncomment the following lines to add SRS (Sender rewriting scheme) support. -# You need to have libsrs_alt installed on your system (srs.mirtol.com). -# Depending on where it is installed you may have to edit the CFLAGS and -# LDFLAGS lines. - -# EXPERIMENTAL_SRS=yes -# CFLAGS += -I/usr/local/include -# LDFLAGS += -lsrs_alt - -# Uncomment the following lines to add Brightmail AntiSpam support. You need -# to have the Brightmail client SDK installed. Please check the experimental -# documentation for implementation details. You need to edit the CFLAGS and -# LDFLAGS lines. - -# EXPERIMENTAL_BRIGHTMAIL=yes -# CFLAGS += -I/opt/brightmail/bsdk-6.0/include -# LDFLAGS += -lxml2_single -lbmiclient_single -L/opt/brightmail/bsdk-6.0/lib - - - -############################################################################### -# THESE ARE THINGS YOU MIGHT WANT TO SPECIFY # -############################################################################### - -# The items in this section are those that are commonly changed according to -# the sysadmin's preferences, but whose defaults are often acceptable. The -# first five are concerned with security issues, where differing levels of -# paranoia are appropriate in different environments. Sysadmins also vary in -# their views on appropriate levels of defence in these areas. If you do not -# understand these issues, go with the defaults, which are used by many sites. - - -#------------------------------------------------------------------------------ -# Although Exim is normally a setuid program, owned by root, it refuses to run -# local deliveries as root by default. There is a runtime option called -# "never_users" which lists the users that must never be used for local -# deliveries. There is also the setting below, which provides a list that -# cannot be overridden at runtime. This guards against problems caused by -# unauthorized changes to the runtime configuration. You are advised not to -# remove "root" from this option, but you can add other users if you want. The -# list is colon-separated. It must NOT contain any spaces. - -# FIXED_NEVER_USERS=root:bin:daemon -FIXED_NEVER_USERS=root - - -#------------------------------------------------------------------------------ -# By default, Exim insists that its configuration file be owned by root. You -# can specify one additional permitted owner here. - -# CONFIGURE_OWNER= - -# If the configuration file is group-writeable, Exim insists by default that it -# is owned by root. You can specify one additional permitted group owner here. - -# CONFIGURE_GROUP= - -# If you specify CONFIGURE_OWNER or CONFIGURE_GROUP as a name, this is looked -# up at build time, and the uid or gid number is built into the binary. -# However, you can specify that the lookup is deferred until runtime. In this -# case, it is the name that is built into the binary. You can do this by a -# setting of the form: - -# CONFIGURE_OWNER=ref:mail -# CONFIGURE_GROUP=ref:sysadmin - -# In other words, put "ref:" in front of the user or group name. Although this -# costs a bit of resource at runtime, it is convenient to use this feature when -# building binaries that are to be run on multiple systems where the names may -# refer to different uids or gids. It also allows you to build Exim on a system -# where the relevant user or group is not defined. - - -#------------------------------------------------------------------------------ -# The -C option allows Exim to be run with an alternate runtime configuration -# file. When this is used by root, root privilege is retained by the binary -# (for any other caller including the Exim user, it is dropped). You can -# restrict the location of alternate configurations by defining a prefix below. -# Any file used with -C must then start with this prefix (except that /dev/null -# is also permitted if the caller is root, because that is used in the install -# script). If the prefix specifies a directory that is owned by root, a -# compromise of the Exim account does not permit arbitrary alternate -# configurations to be used. The prefix can be more restrictive than just a -# directory (the second example). - -# ALT_CONFIG_PREFIX=/some/directory/ -# ALT_CONFIG_PREFIX=/some/directory/exim.conf- - - -#------------------------------------------------------------------------------ -# When a user other than root uses the -C option to override the configuration -# file (including the Exim user when re-executing Exim to regain root -# privileges for local message delivery), this will normally cause Exim to -# drop root privileges. The TRUSTED_CONFIG_LIST option, specifies a file which -# contains a list of trusted configuration filenames, one per line. If the -C -# option is used by the Exim user or by the user specified in the -# CONFIGURE_OWNER setting, to specify a configuration file which is listed in -# the TRUSTED_CONFIG_LIST file, then root privileges are not dropped by Exim. - -# TRUSTED_CONFIG_LIST=/usr/exim/trusted_configs - - -#------------------------------------------------------------------------------ -# Uncommenting this option disables the use of the -D command line option, -# which changes the values of macros in the runtime configuration file. -# This is another protection against somebody breaking into the Exim account. - -# DISABLE_D_OPTION=yes - - -#------------------------------------------------------------------------------ -# By contrast, you might be maintaining a system which relies upon the ability -# to override values with -D and assumes that these will be passed through to -# the delivery processes. As of Exim 4.73, this is no longer the case by -# default. Going forward, we strongly recommend that you use a shim Exim -# configuration file owned by root stored under TRUSTED_CONFIG_LIST. -# That shim can set macros before .include'ing your main configuration file. -# -# As a strictly transient measure to ease migration to 4.73, the -# WHITELIST_D_MACROS value definies a colon-separated list of macro-names -# which are permitted to be overriden from the command-line which will be -# honoured by the Exim user. So these are macros that can persist to delivery -# time. -# Examples might be -DTLS or -DSPOOL=/some/dir. The values on the -# command-line are filtered to only permit: [A-Za-z0-9_/.-]* -# -# This option is highly likely to be removed in a future release. It exists -# only to make 4.73 as easy as possible to migrate to. If you use it, we -# encourage you to schedule time to rework your configuration to not depend -# upon it. Most people should not need to use this. -# -# By default, no macros are whitelisted for -D usage. - -# WHITELIST_D_MACROS=TLS:SPOOL - -#------------------------------------------------------------------------------ -# Exim has support for the AUTH (authentication) extension of the SMTP -# protocol, as defined by RFC 2554. If you don't know what SMTP authentication -# is, you probably won't want to include this code, so you should leave these -# settings commented out. If you do want to make use of SMTP authentication, -# you must uncomment at least one of the following, so that appropriate code is -# included in the Exim binary. You will then need to set up the run time -# configuration to make use of the mechanism(s) selected. - -AUTH_CRAM_MD5=yes -# AUTH_CYRUS_SASL=yes -AUTH_DOVECOT=yes -AUTH_PLAINTEXT=yes -AUTH_SPA=yes - - -#------------------------------------------------------------------------------ -# If you specified AUTH_CYRUS_SASL above, you should ensure that you have the -# Cyrus SASL library installed before trying to build Exim, and you probably -# want to uncomment the following line: - -# AUTH_LIBS=-lsasl2 - - -#------------------------------------------------------------------------------ -# When Exim is decoding MIME "words" in header lines, most commonly for use -# in the $header_xxx expansion, it converts any foreign character sets to the -# one that is set in the headers_charset option. The default setting is -# defined by this setting: - -HEADERS_CHARSET="ISO-8859-1" - -# If you are going to make use of $header_xxx expansions in your configuration -# file, or if your users are going to use them in filter files, and the normal -# character set on your host is something other than ISO-8859-1, you might -# like to specify a different default here. This value can be overridden in -# the runtime configuration, and it can also be overridden in individual filter -# files. -# -# IMPORTANT NOTE: The iconv() function is needed for character code -# conversions. Please see the next item... - - -#------------------------------------------------------------------------------ -# Character code conversions are possible only if the iconv() function is -# installed on your operating system. There are two places in Exim where this -# is relevant: (a) The $header_xxx expansion (see the previous item), and (b) -# the Sieve filter support. For those OS where iconv() is known to be installed -# as standard, the file in OS/Makefile-xxxx contains -# -# HAVE_ICONV=yes -# -# If you are not using one of those systems, but have installed iconv(), you -# need to uncomment that line above. In some cases, you may find that iconv() -# and its header file are not in the default places. You might need to use -# something like this: -# -# HAVE_ICONV=yes -# CFLAGS=-O -I/usr/local/include -# EXTRALIBS_EXIM=-L/usr/local/lib -liconv -# -# but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM -# as well. - - -#------------------------------------------------------------------------------ -# The passwords for user accounts are normally encrypted with the crypt() -# function. Comparisons with encrypted passwords can be done using Exim's -# "crypteq" expansion operator. (This is commonly used as part of the -# configuration of an authenticator for use with SMTP AUTH.) At least one -# operating system has an extended function called crypt16(), which uses up to -# 16 characters of a password (the normal crypt() uses only the first 8). Exim -# supports the use of crypt16() as well as crypt() but note the warning below. - -# You can always indicate a crypt16-encrypted password by preceding it with -# "{crypt16}". If you want the default handling (without any preceding -# indicator) to use crypt16(), uncomment the following line: - -# DEFAULT_CRYPT=crypt16 - -# If you do that, you can still access the basic crypt() function by preceding -# an encrypted password with "{crypt}". For more details, see the description -# of the "crypteq" condition in the manual chapter on string expansions. - -# Some operating systems do not include a crypt16() function, so Exim has one -# of its own, which it uses unless HAVE_CRYPT16 is defined. Normally, that will -# be set in an OS-specific Makefile for the OS that have such a function, so -# you should not need to bother with it. - -# *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** -# It turns out that the above is not entirely accurate. As well as crypt16() -# there is a function called bigcrypt() that some operating systems have. This -# may or may not use the same algorithm, and both of them may be different to -# Exim's built-in crypt16() that is used unless HAVE_CRYPT16 is defined. -# -# However, since there is now a move away from the traditional crypt() -# functions towards using SHA1 and other algorithms, tidying up this area of -# Exim is seen as very low priority. In practice, if you need to, you can -# define DEFAULT_CRYPT to the name of any function that has the same interface -# as the traditional crypt() function. -# *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING *** - - -#------------------------------------------------------------------------------ -# Exim can be built to support the SMTP STARTTLS command, which implements -# Transport Layer Security using SSL (Secure Sockets Layer). To do this, you -# must install the OpenSSL library package or the GnuTLS library. Exim contains -# no cryptographic code of its own. Uncomment the following lines if you want -# to build Exim with TLS support. If you don't know what this is all about, -# leave these settings commented out. - -# This setting is required for any TLS support (either OpenSSL or GnuTLS) -SUPPORT_TLS=yes - -# Uncomment this setting if you are using OpenSSL -TLS_LIBS=-L/usr/lib -lssl -lcrypto - -# Uncomment these settings if you are using GnuTLS -# USE_GNUTLS=yes -TLS_LIBS=-L/usr/lib -lssl -lcrypto - -# If you are running Exim as a server, note that just building it with TLS -# support is not all you need to do. You also need to set up a suitable -# certificate, and tell Exim about it by means of the tls_certificate -# and tls_privatekey run time options. You also need to set tls_advertise_hosts -# to specify the hosts to which Exim advertises TLS support. On the other hand, -# if you are running Exim only as a client, building it with TLS support -# is all you need to do. - -# Additional libraries and include files are required for both OpenSSL and -# GnuTLS. The TLS_LIBS settings above assume that the libraries are installed -# with all your other libraries. If they are in a special directory, you may -# need something like - -TLS_LIBS=-L/usr/lib -lssl -lcrypto -# or -TLS_LIBS=-L/usr/lib -lssl -lcrypto - -TLS_LIBS=-L/usr/lib -lssl -lcrypto -# auxiliary programs. If the include files are not in a standard place, you can -# set TLS_INCLUDE to specify where they are, for example: - -TLS_INCLUDE=-I/usr/include/openssl -# or -TLS_INCLUDE=-I/usr/include/openssl - -# You don't need to set TLS_INCLUDE if the relevant directories are already -# specified in INCLUDE. - - -#------------------------------------------------------------------------------ -# The default distribution of Exim contains only the plain text form of the -# documentation. Other forms are available separately. If you want to install -# the documentation in "info" format, first fetch the Texinfo documentation -# sources from the ftp directory and unpack them, which should create files -# with the extension "texinfo" in the doc directory. You may find that the -# version number of the texinfo files is different to your Exim version number, -# because the main documentation isn't updated as often as the code. For -# example, if you have Exim version 4.43, the source tarball upacks into a -# directory called exim-4.43, but the texinfo tarball unpacks into exim-4.40. -# In this case, move the contents of exim-4.40/doc into exim-4.43/doc after you -# have unpacked them. Then set INFO_DIRECTORY to the location of your info -# directory. This varies from system to system, but is often /usr/share/info. -# Once you have done this, "make install" will build the info files and -# install them in the directory you have defined. - -# INFO_DIRECTORY=/usr/share/info - - -#------------------------------------------------------------------------------ -# Exim log directory and files: Exim creates several log files inside a -# single log directory. You can define the directory and the form of the -# log file name here. If you do not set anything, Exim creates a directory -# called "log" inside its spool directory (see SPOOL_DIRECTORY above) and uses -# the filenames "mainlog", "paniclog", and "rejectlog". If you want to change -# this, you can set LOG_FILE_PATH to a path name containing one occurrence of -# %s. This will be replaced by one of the strings "main", "panic", or "reject" -# to form the final file names. Some installations may want something like this: - -LOG_FILE_PATH=/var/log/exim/%slog - -# which results in files with names /var/log/exim_mainlog, etc. The directory -# in which the log files are placed must exist; Exim does not try to create -# it for itself. It is also your responsibility to ensure that Exim is capable -# of writing files using this path name. The Exim user (see EXIM_USER above) -# must be able to create and update files in the directory you have specified. - -# You can also configure Exim to use syslog, instead of or as well as log -# files, by settings such as these - -# LOG_FILE_PATH=syslog -# LOG_FILE_PATH=syslog:/var/log/exim_%slog - -# The first of these uses only syslog; the second uses syslog and also writes -# to log files. Do not include white space in such a setting as it messes up -# the building process. - - -#------------------------------------------------------------------------------ -# When logging to syslog, the following option caters for syslog replacements -# that are able to accept log entries longer than the 1024 characters allowed -# by RFC 3164. It is up to you to make sure your syslog daemon can handle this. -# Non-printable characters are usually unacceptable regardless, so log entries -# are still split on newline characters. - -# SYSLOG_LONG_LINES=yes - -# If you are not interested in the process identifier (pid) of the Exim that is -# making the call to syslog, then comment out the following line. - -SYSLOG_LOG_PID=yes - - -#------------------------------------------------------------------------------ -# Cycling log files: this variable specifies the maximum number of old -# log files that are kept by the exicyclog log-cycling script. You don't have -# to use exicyclog. If your operating system has other ways of cycling log -# files, you can use them instead. The exicyclog script isn't run by default; -# you have to set up a cron job for it if you want it. - -EXICYCLOG_MAX=10 - - -#------------------------------------------------------------------------------ -# The compress command is used by the exicyclog script to compress old log -# files. Both the name of the command and the suffix that it adds to files -# need to be defined here. See also the EXICYCLOG_MAX configuration. - -COMPRESS_COMMAND=/bin/gzip -COMPRESS_SUFFIX=gz - - -#------------------------------------------------------------------------------ -# If the exigrep utility is fed compressed log files, it tries to uncompress -# them using this command. - -ZCAT_COMMAND=/bin/zcat - - -#------------------------------------------------------------------------------ -# Compiling in support for embedded Perl: If you want to be able to -# use Perl code in Exim's string manipulation language and you have Perl -# (version 5.004 or later) installed, set EXIM_PERL to perl.o. Using embedded -# Perl costs quite a lot of resources. Only do this if you really need it. - -# EXIM_PERL=perl.o - - -#------------------------------------------------------------------------------ -# Support for dynamically-loaded string expansion functions via ${dlfunc. If -# you are using gcc the dynamically-loaded object must be compiled with the -# -shared option, and you will need to add -export-dynamic to EXTRALIBS so -# that the local_scan API is made available by the linker. You may also need -# to add -ldl to EXTRALIBS so that dlopen() is available to Exim. - -# EXPAND_DLFUNC=yes - - -#------------------------------------------------------------------------------ -# Exim has support for PAM (Pluggable Authentication Modules), a facility -# which is available in the latest releases of Solaris and in some GNU/Linux -# distributions (see http://ftp.kernel.org/pub/linux/libs/pam/). The Exim -# support, which is intended for use in conjunction with the SMTP AUTH -# facilities, is included only when requested by the following setting: - -SUPPORT_PAM=yes - -# You probably need to add -lpam to EXTRALIBS, and in some releases of -# GNU/Linux -ldl is also needed. - - -#------------------------------------------------------------------------------ -# Support for authentication via Radius is also available. The Exim support, -# which is intended for use in conjunction with the SMTP AUTH facilities, -# is included only when requested by setting the following parameter to the -# location of your Radius configuration file: - -# RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf -# RADIUS_CONFIG_FILE=/etc/radius.conf - -# If you have set RADIUS_CONFIG_FILE, you should also set one of these to -# indicate which RADIUS library is used: - -# RADIUS_LIB_TYPE=RADIUSCLIENT -# RADIUS_LIB_TYPE=RADIUSCLIENTNEW -# RADIUS_LIB_TYPE=RADLIB - -# RADIUSCLIENT is the radiusclient library; you probably need to add -# -lradiusclient to EXTRALIBS. -# -# The API for the radiusclient library was changed at release 0.4.0. -# Unfortunately, the header file does not define a version number that clients -# can use to support both the old and new APIs. If you are using version 0.4.0 -# or later of the radiusclient library, you should use RADIUSCLIENTNEW. -# -# RADLIB is the Radius library that comes with FreeBSD (the header file is -# called radlib.h); you probably need to add -lradius to EXTRALIBS. -# -# If you do not set RADIUS_LIB_TYPE, Exim assumes the radiusclient library, -# using the original API. - - -#------------------------------------------------------------------------------ -# Support for authentication via the Cyrus SASL pwcheck daemon is available. -# Note, however, that pwcheck is now deprecated in favour of saslauthd (see -# next item). The Exim support for pwcheck, which is intented for use in -# conjunction with the SMTP AUTH facilities, is included only when requested by -# setting the following parameter to the location of the pwcheck daemon's -# socket. -# -# There is no need to install all of SASL on your system. You just need to run -# ./configure --with-pwcheck, cd to the pwcheck directory within the sources, -# make and make install. You must create the socket directory (default -# /var/pwcheck) and chown it to exim's user and group. Once you have installed -# pwcheck, you should arrange for it to be started by root at boot time. - -# CYRUS_PWCHECK_SOCKET=/var/pwcheck/pwcheck - - -#------------------------------------------------------------------------------ -# Support for authentication via the Cyrus SASL saslauthd daemon is available. -# The Exim support, which is intented for use in conjunction with the SMTP AUTH -# facilities, is included only when requested by setting the following -# parameter to the location of the saslauthd daemon's socket. -# -# There is no need to install all of SASL on your system. You just need to run -# ./configure --with-saslauthd (and any other options you need, for example, to -# select or deselect authentication mechanisms), cd to the saslauthd directory -# within the sources, make and make install. You must create the socket -# directory (default /var/state/saslauthd) and chown it to exim's user and -# group. Once you have installed saslauthd, you should arrange for it to be -# started by root at boot time. - -# CYRUS_SASLAUTHD_SOCKET=/var/state/saslauthd/mux - - -#------------------------------------------------------------------------------ -# TCP wrappers: If you want to use tcpwrappers from within Exim, uncomment -# this setting. See the manual section entitled "Use of tcpwrappers" in the -# chapter on building and installing Exim. -# -USE_TCP_WRAPPERS=yes -# -# You may well also have to specify a local "include" file and an additional -# library for TCP wrappers, so you probably need something like this: -# -USE_TCP_WRAPPERS=yes -# CFLAGS=-O -I/usr/local/include -# EXTRALIBS_EXIM=-L/usr/local/lib -lwrap -# -# but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM -# as well. -# -# To use a name other than exim in the tcpwrappers config file, -# e.g. if you're running multiple daemons with different access lists, -# or multiple MTAs with the same access list, define -# TCP_WRAPPERS_DAEMON_NAME accordingly -# -# TCP_WRAPPERS_DAEMON_NAME="exim" - - -#------------------------------------------------------------------------------ -# The default action of the exim_install script (which is run by "make -# install") is to install the Exim binary with a unique name such as -# exim-4.43-1, and then set up a symbolic link called "exim" to reference it, -# moving the symbolic link from any previous version. If you define NO_SYMLINK -# (the value doesn't matter), the symbolic link is not created or moved. You -# will then have to "turn Exim on" by setting up the link manually. - -# NO_SYMLINK=yes - - -#------------------------------------------------------------------------------ -# Another default action of the install script is to install a default runtime -# configuration file if one does not exist. This configuration has a router for -# expanding system aliases. The default assumes that these aliases are kept -# in the traditional file called /etc/aliases. If such a file does not exist, -# the installation script creates one that contains just comments (no actual -# aliases). The following setting can be changed to specify a different -# location for the system alias file. - -SYSTEM_ALIASES_FILE=/etc/mail/aliases - - -#------------------------------------------------------------------------------ -# There are some testing options (-be, -bt, -bv) that read data from the -# standard input when no arguments are supplied. By default, the input lines -# are read using the standard fgets() function. This does not support line -# editing during interactive input (though the terminal's "erase" character -# works as normal). If your operating system has the readline() function, and -# in addition supports dynamic loading of library functions, you can cause -# Exim to use readline() for the -be testing option (only) by uncommenting the -# following setting. Dynamic loading is used so that the library is loaded only -# when the -be testing option is given; by the time the loading occurs, -# Exim has given up its root privilege and is running as the calling user. This -# is the reason why readline() is NOT supported for -bt and -bv, because Exim -# runs as root or as exim, respectively, for those options. When USE_READLINE -# is "yes", as well as supporting line editing, a history of input lines in the -# current run is maintained. - -# USE_READLINE=yes - -# You may need to add -ldl to EXTRALIBS when you set USE_READLINE=yes. -# Note that this option adds to the size of the Exim binary, because the -# dynamic loading library is not otherwise included. - - - -############################################################################### -# THINGS YOU ALMOST NEVER NEED TO MENTION # -############################################################################### - -# The settings in this section are available for use in special circumstances. -# In the vast majority of installations you need not change anything below. - - -#------------------------------------------------------------------------------ -# The following commands live in different places in some OS. Either the -# ultimate default settings, or the OS-specific files should already point to -# the right place, but they can be overridden here if necessary. These settings -# are used when building various scripts to ensure that the correct paths are -# used when the scripts are run. They are not used in the Makefile itself. Perl -# is not necessary for running Exim unless you set EXIM_PERL (see above) to get -# it embedded, but there are some utilities that are Perl scripts. If you -# haven't got Perl, Exim will still build and run; you just won't be able to -# use those utilities. - -# CHOWN_COMMAND=/usr/bin/chown -# CHGRP_COMMAND=/usr/bin/chgrp -# CHMOD_COMMAND=/usr/bin/chmod -# MV_COMMAND=/bin/mv -# RM_COMMAND=/bin/rm -# TOUCH_COMMAND=/usr/bin/touch -# PERL_COMMAND=/usr/bin/perl - - -#------------------------------------------------------------------------------ -# The following macro can be used to change the command for building a library -# of functions. By default the "ar" command is used, with options "cq". -# Only in rare circumstances should you need to change this. - -# AR=ar cq - - -#------------------------------------------------------------------------------ -# In some operating systems, the value of the TMPDIR environment variable -# controls where temporary files are created. Exim does not make use of -# temporary files, except when delivering to MBX mailboxes. However, if Exim -# calls any external libraries (e.g. DBM libraries), they may use temporary -# files, and thus be influenced by the value of TMPDIR. For this reason, when -# Exim starts, it checks the environment for TMPDIR, and if it finds it is set, -# it replaces the value with what is defined here. Commenting this setting -# suppresses the check altogether. - -TMPDIR="/tmp" - - -#------------------------------------------------------------------------------ -# The following macros can be used to change the default modes that are used -# by the appendfile transport. In most installations the defaults are just -# fine, and in any case, you can change particular instances of the transport -# at run time if you want. - -# APPENDFILE_MODE=0600 -# APPENDFILE_DIRECTORY_MODE=0700 -# APPENDFILE_LOCKFILE_MODE=0600 - - -#------------------------------------------------------------------------------ -# In some installations there may be multiple machines sharing file systems, -# where a different configuration file is required for Exim on the different -# machines. If CONFIGURE_FILE_USE_NODE is defined, then Exim will first look -# for a configuration file whose name is that defined by CONFIGURE_FILE, -# with the node name obtained by uname() tacked on the end, separated by a -# period (for example, /usr/exim/configure.host.in.some.domain). If this file -# does not exist, then the bare configuration file name is tried. - -# CONFIGURE_FILE_USE_NODE=yes - - -#------------------------------------------------------------------------------ -# In some esoteric configurations two different versions of Exim are run, -# with different setuid values, and different configuration files are required -# to handle the different cases. If CONFIGURE_FILE_USE_EUID is defined, then -# Exim will first look for a configuration file whose name is that defined -# by CONFIGURE_FILE, with the effective uid tacked on the end, separated by -# a period (for eximple, /usr/exim/configure.0). If this file does not exist, -# then the bare configuration file name is tried. In the case when both -# CONFIGURE_FILE_USE_EUID and CONFIGURE_FILE_USE_NODE are set, four files -# are tried: <name>.<euid>.<node>, <name>.<node>, <name>.<euid>, and <name>. - -# CONFIGURE_FILE_USE_EUID=yes - - -#------------------------------------------------------------------------------ -# The size of the delivery buffers: These specify the sizes (in bytes) of -# the buffers that are used when copying a message from the spool to a -# destination. There is rarely any need to change these values. - -# DELIVER_IN_BUFFER_SIZE=8192 -# DELIVER_OUT_BUFFER_SIZE=8192 - - -#------------------------------------------------------------------------------ -# The mode of the database directory: Exim creates a directory called "db" -# in its spool directory, to hold its databases of hints. This variable -# determines the mode of the created directory. The default value in the -# source is 0750. - -# EXIMDB_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# Database file mode: The mode of files created in the "db" directory defaults -# to 0640 in the source, and can be changed here. - -# EXIMDB_MODE=0640 - - -#------------------------------------------------------------------------------ -# Database lock file mode: The mode of zero-length files created in the "db" -# directory to use for locking purposes defaults to 0640 in the source, and -# can be changed here. - -# EXIMDB_LOCKFILE_MODE=0640 - - -#------------------------------------------------------------------------------ -# This parameter sets the maximum length of the header portion of a message -# that Exim is prepared to process. The default setting is one megabyte. The -# limit exists in order to catch rogue mailers that might connect to your SMTP -# port, start off a header line, and then just pump junk at it for ever. The -# message_size_limit option would also catch this, but it may not be set. -# The value set here is the default; it can be changed at runtime. - -# HEADER_MAXSIZE="(1024*1024)" - - -#------------------------------------------------------------------------------ -# The mode of the input directory: The input directory is where messages are -# kept while awaiting delivery. Exim creates it if necessary, using a mode -# which can be defined here (default 0750). - -# INPUT_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# The mode of Exim's log directory, when it is created by Exim inside the spool -# directory, defaults to 0750 but can be changed here. - -# LOG_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# The log files themselves are created as required, with a mode that defaults -# to 0640, but which can be changed here. - -# LOG_MODE=0640 - - -#------------------------------------------------------------------------------ -# The TESTDB lookup is for performing tests on the handling of lookup results, -# and is not useful for general running. It should be included only when -# debugging the code of Exim. - -# LOOKUP_TESTDB=yes - - -#------------------------------------------------------------------------------ -# /bin/sh is used by default as the shell in which to run commands that are -# defined in the makefiles. This can be changed if necessary, by uncommenting -# this line and specifying another shell, but note that a Bourne-compatible -# shell is expected. - -# MAKE_SHELL=/bin/sh - - -#------------------------------------------------------------------------------ -# The maximum number of named lists of each type (address, domain, host, and -# local part) can be increased by changing this value. It should be set to -# a multiple of 16. - -MAX_NAMED_LIST=16 - - -#------------------------------------------------------------------------------ -# Network interfaces: Unless you set the local_interfaces option in the runtime -# configuration file to restrict Exim to certain interfaces only, it will run -# code to find all the interfaces there are on your host. Unfortunately, -# the call to the OS that does this requires a buffer large enough to hold -# data for all the interfaces - it was designed in the days when a host rarely -# had more than three or four interfaces. Nowadays hosts can have very many -# virtual interfaces running on the same hardware. If you have more than 250 -# virtual interfaces, you will need to uncomment this setting and increase the -# value. - -# MAXINTERFACES=250 - - -#------------------------------------------------------------------------------ -# Per-message logs: While a message is in the process of being delivered, -# comments on its progress are written to a message log, for the benefit of -# human administrators. These logs are held in a directory called "msglog" -# in the spool directory. Its mode defaults to 0750, but can be changed here. -# The message log directory is also used for storing files that are used by -# transports for returning data to a message's sender (see the "return_output" -# option for transports). - -# MSGLOG_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# There are three options which are used when compiling the Perl interface and -# when linking with Perl. The default values for these are placed automatically -# at the head of the Makefile by the script which builds it. However, if you -# want to override them, you can do so here. - -# PERL_CC= -# PERL_CCOPTS= -# PERL_LIBS= - - -#------------------------------------------------------------------------------ -# Identifying the daemon: When an Exim daemon starts up, it writes its pid -# (process id) to a file so that it can easily be identified. The path of the -# file can be specified here. Some installations may want something like this: - -PID_FILE_PATH=/var/run/exim.pid - -# If PID_FILE_PATH is not defined, Exim writes a file in its spool directory -# using the name "exim-daemon.pid". - -# If you start up a daemon without the -bd option (for example, with just -# the -q15m option), a pid file is not written. Also, if you override the -# configuration file with the -oX option, no pid file is written. In other -# words, the pid file is written only for a "standard" daemon. - - -#------------------------------------------------------------------------------ -# If Exim creates the spool directory, it is given this mode, defaulting in the -# source to 0750. - -# SPOOL_DIRECTORY_MODE=0750 - - -#------------------------------------------------------------------------------ -# The mode of files on the input spool which hold the contents of messages can -# be changed here. The default is 0640 so that information from the spool is -# available to anyone who is a member of the Exim group. - -# SPOOL_MODE=0640 - - -#------------------------------------------------------------------------------ -# Moving frozen messages: If the following is uncommented, Exim is compiled -# with support for automatically moving frozen messages out of the main spool -# directory, a facility that is found useful by some large installations. A -# run time option is required to cause the moving actually to occur. Such -# messages become "invisible" to the normal management tools. - -# SUPPORT_MOVE_FROZEN_MESSAGES=yes - - -#------------------------------------------------------------------------------ -# Disabling the use of fsync(): DO NOT UNCOMMENT THE FOLLOWING LINE unless you -# really, really, really know what you are doing. And even then, think again. -# You should never uncomment this when compiling a binary for distribution. -# Use it only when compiling Exim for your own use. -# -# Uncommenting this line enables the use of a runtime option called -# disable_fsync, which can be used to stop Exim using fsync() to ensure that -# files are written to disc before proceeding. When this is disabled, crashes -# and hardware problems such as power outages can cause data to be lost. This -# feature should only be used in very exceptional circumstances. YOU HAVE BEEN -# WARNED. - -# ENABLE_DISABLE_FSYNC=yes - -HAVE_IPV6=YES -LOOKUP_LIBS=-lldap -EXTRALIBS_EXIM=-lwrap -lpam -# End of EDITME for Exim 4. diff --git a/community-testing/exim/exim.changelog b/community-testing/exim/exim.changelog deleted file mode 100644 index 69182229e..000000000 --- a/community-testing/exim/exim.changelog +++ /dev/null @@ -1,21 +0,0 @@ -2010-06-16 Angel Velasquez <angvp@archlinux.org> - * Rebuilt against db 5.2.28 - -2010-05-09 Angel Velasquez <angvp@archlinux.org> - * Updated to 4.76 - * Removed previous patch since is no longer needed - * Removed newaliases script FS#22744 - * Removed sudo dependency - -2010-05-07 Angel Velasquez <angvp@archlinux.org> - * Adding patch for security issue see: http://goo.gl/QBict - -2010-05-06 Angel Velasquez <angvp@archlinux.org> - * Setting sticky id to deliver mail. Closes FS#24109 - -2010-04-30 Angel Velasquez <angvp@archlinux.org> - * exim 4.75 - * Config updated with the aliases path. Closes FS#22743 - * Removed sed hackings and added a exim.Makefile . Closes FS#22744 - * Replaced creation of the user at build time. Closes FS#22745 - diff --git a/community-testing/exim/exim.conf.d b/community-testing/exim/exim.conf.d deleted file mode 100644 index b9bec4335..000000000 --- a/community-testing/exim/exim.conf.d +++ /dev/null @@ -1 +0,0 @@ -EXIM_ARGS="-bd -q15m" diff --git a/community-testing/exim/exim.install b/community-testing/exim/exim.install deleted file mode 100644 index 8ed329559..000000000 --- a/community-testing/exim/exim.install +++ /dev/null @@ -1,25 +0,0 @@ -# arg 1: the new package version -post_install() { - getent group exim >/dev/null 2>&1 || groupadd -g 79 exim - if getent passwd exim > /dev/null 2>&1; then - usr/sbin/usermod -d /var/spool/exim -c 'Exim MTA' -s /sbin/nologin exim > /dev/null 2>&1 - else - usr/sbin/useradd -c 'Exim MTA' -u 79 -g exim -d /var/spool/exim -s /sbin/nologin exim - fi - passwd -l exim > /dev/null - chown root.exim /var/spool/exim /var/log/exim - chown exim.exim /var/spool/exim/db - chmod u+s /usr/sbin/exim -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} - -# arg 1: the old package version -pre_remove() { - getent passwd exim >/dev/null 2>&1 && userdel exim -} - diff --git a/community-testing/exim/exim.logrotate b/community-testing/exim/exim.logrotate deleted file mode 100644 index ff38a1452..000000000 --- a/community-testing/exim/exim.logrotate +++ /dev/null @@ -1,5 +0,0 @@ -/var/log/exim/*log { - missingok - notifempty - delaycompress -} diff --git a/community-testing/fldiff/PKGBUILD b/community-testing/fldiff/PKGBUILD new file mode 100644 index 000000000..ab25a3240 --- /dev/null +++ b/community-testing/fldiff/PKGBUILD @@ -0,0 +1,31 @@ +# $Id: PKGBUILD 51104 2011-07-05 09:00:11Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: kevin <kevin@archlinux.org> +# Contributor: iztok pizorn <pizorn@gmail.com> + +pkgname=fldiff +pkgver=1.1 +pkgrel=6 +pkgdesc="graphical diff program" +arch=(i686 x86_64) +url="http://www.easysw.com/~mike/fldiff/" +license=('GPL') +install=fldiff.install +depends=('diffutils' 'fltk' 'xdg-utils') +source=(http://www.easysw.com/~mike/fldiff/$pkgname-$pkgver-source.tar.gz + build-fix.patch) +md5sums=('12897c92106fb5d665210a2e82f5cf25' + 'ea7258e07544b81561c6d76a41c184e7') + +build() { + cd $srcdir/$pkgname-$pkgver + patch -p1 <$srcdir/build-fix.patch + ./configure --prefix=/usr + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make BUILDROOT=$pkgdir install install-desktop + mv `find $pkgdir/ -name Development -type d` $startdir/pkg/usr/share/applications +} diff --git a/community-testing/fldiff/build-fix.patch b/community-testing/fldiff/build-fix.patch new file mode 100644 index 000000000..bb3e0245e --- /dev/null +++ b/community-testing/fldiff/build-fix.patch @@ -0,0 +1,31 @@ +Only in fldiff-1.1.my: config.log +Only in fldiff-1.1.my: config.status +Only in fldiff-1.1.my: DiffChooser.o +Only in fldiff-1.1.my: DiffOpenWindow.o +Only in fldiff-1.1.my: DiffView.o +diff -wbBur fldiff-1.1/DiffWindow.cxx fldiff-1.1.my/DiffWindow.cxx +--- fldiff-1.1/DiffWindow.cxx 2006-11-13 21:54:02.000000000 +0300 ++++ fldiff-1.1.my/DiffWindow.cxx 2011-07-05 12:58:38.000000000 +0400 +@@ -1126,11 +1126,11 @@ + DiffWindow::save_prefs() + { + // Save the window prefs for the next run... +- prefs_.set("color", color()); +- prefs_.set("selection_color", selection_color()); ++ prefs_.set("color", (int)color()); ++ prefs_.set("selection_color", (int)selection_color()); + prefs_.set("showlinenum", showlinenum()); + prefs_.set("tabwidth", tabwidth()); +- prefs_.set("textcolor", textcolor()); ++ prefs_.set("textcolor", (int)textcolor()); + prefs_.set("textsize", textsize()); + prefs_.set("ignoreblanks", ignoreblanks()); + } +Only in fldiff-1.1.my: DiffWindow.o +Only in fldiff-1.1.my: FavoritesMenu.o +Only in fldiff-1.1.my: FavoritesWindow.o +Only in fldiff-1.1.my: fldiff +Only in fldiff-1.1.my: fldiff.list +Only in fldiff-1.1.my: fldiff.o +Only in fldiff-1.1.my: Makefile +Only in fldiff-1.1.my: PtProcess.o diff --git a/community-testing/fldiff/fldiff.install b/community-testing/fldiff/fldiff.install new file mode 100644 index 000000000..b95cc069d --- /dev/null +++ b/community-testing/fldiff/fldiff.install @@ -0,0 +1,11 @@ +post_install() { + which xdg-icon-resource 1>/dev/null 2>/dev/null && xdg-icon-resource forceupdate || true +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + which xdg-icon-resource 1>/dev/null 2>/dev/null && xdg-icon-resource forceupdate || true +} diff --git a/community-testing/freewrl/PKGBUILD b/community-testing/freewrl/PKGBUILD new file mode 100644 index 000000000..8d00cdc7f --- /dev/null +++ b/community-testing/freewrl/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 51056 2011-07-04 16:35:05Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> + +pkgname=freewrl +pkgver=1.22.10 +pkgrel=6 +pkgdesc="VRML viewer" +arch=('i686' 'x86_64') +url="http://freewrl.sourceforge.net/" +license=('GPL') +depends=('java-runtime' 'libxaw' 'glew' 'freeglut' 'curl' 'freetype2' 'imlib2' 'sox' + 'unzip' 'imagemagick' 'libxml2' 'ttf-bitstream-vera' 'lesstif' 'js') +makedepends=('java-environment') +options=(!libtool) +source=(http://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.bz2 + build-fix.patch) +md5sums=('07fd8f193d14799ffb95a59a4887fc88' + '52e4b6aacebcaf18cbec8975e0eb7fd8') + +build() { + . /etc/profile.d/openjdk6.sh + cd $srcdir/$pkgname-$pkgver + patch -p1 <$srcdir/build-fix.patch + export JAVASCRIPT_ENGINE_CFLAGS="-I/usr/include/js -DXP_UNIX -DJS_THREADSAFE $(pkg-config --cflags nspr)" + export JAVASCRIPT_ENGINE_LIBS="$(pkg-config --libs nspr) -lmozjs185" + ./configure \ + --prefix=/usr --with-fontsdir=/usr/share/fonts/TTF --enable-libeai \ + --enable-libcurl --with-expat=/usr --with-target=x11 --disable-plugin \ + --disable-mozilla-js --disable-xulrunner-js --disable-firefox-js \ + --disable-seamonkey-js + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install +} diff --git a/community-testing/freewrl/build-fix.patch b/community-testing/freewrl/build-fix.patch new file mode 100644 index 000000000..c0de71d07 --- /dev/null +++ b/community-testing/freewrl/build-fix.patch @@ -0,0 +1,1201 @@ +diff -wbBur freewrl-1.22.10/src/lib/non_web3d_formats/ColladaParser.c freewrl-1.22.10.my/src/lib/non_web3d_formats/ColladaParser.c +--- freewrl-1.22.10/src/lib/non_web3d_formats/ColladaParser.c 2010-08-19 06:20:36.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/non_web3d_formats/ColladaParser.c 2011-07-04 01:19:07.000000000 +0400 +@@ -54,7 +54,7 @@ + #include "ColladaParser.h" + + #if HAVE_EXPAT_H +-# include <expat.h> ++# include </usr/include/expat.h> + #endif + + #define PROTOINSTANCE_MAX_LEVELS 10 +diff -wbBur freewrl-1.22.10/src/lib/world_script/fieldGet.c freewrl-1.22.10.my/src/lib/world_script/fieldGet.c +--- freewrl-1.22.10/src/lib/world_script/fieldGet.c 2010-10-13 23:45:26.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/world_script/fieldGet.c 2011-07-04 20:21:21.000000000 +0400 +@@ -412,7 +412,7 @@ + /* create a new SFFloat object */ + + fp = (float *)fp_in; +- newjsval = DOUBLE_TO_JSVAL(JS_NewDouble(cx,(double)*fp)); ++ newjsval = JS_NewJSVal(cx,(double)*fp); + fp_in = offsetPointer_deref(float *,fp_in,elementlen); + + /* put this object into the MF class */ +@@ -449,7 +449,7 @@ + /* create a new SFTime object */ + + fp = (float *)fp_in; +- newjsval = DOUBLE_TO_JSVAL(JS_NewDouble(cx,(double)*fp)); ++ newjsval = JS_NewJSVal(cx,(double)*fp); + fp_in = offsetPointer_deref(float *,fp_in,elementlen); + + /* put this object into the MF class */ +diff -wbBur freewrl-1.22.10/src/lib/world_script/fieldSet.c freewrl-1.22.10.my/src/lib/world_script/fieldSet.c +--- freewrl-1.22.10/src/lib/world_script/fieldSet.c 2010-09-22 00:00:25.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/world_script/fieldSet.c 2011-07-04 20:03:53.000000000 +0400 +@@ -748,7 +748,7 @@ + + #ifdef SETFIELDVERBOSE + strval = JS_ValueToString(scriptContext, JSglobal_return_val); +- strp = JS_GetStringBytes(strval); ++ strp = JS_EncodeString(scriptContext, strval); + printf ("start of setField_javascriptEventOut, to %ld:%d = %p, fieldtype %d string %s\n",(long)tn, tptr, memptr, fieldType, strp); + #endif + +@@ -813,7 +813,7 @@ + case FIELDTYPE_SFImage: { + /* the string should be saved as an SFImage */ + strval = JS_ValueToString(scriptContext, JSglobal_return_val); +- strp = JS_GetStringBytes(strval); ++ strp = JS_EncodeString(scriptContext, strval); + + Parser_scanStringValueToMem(tn, tptr, FIELDTYPE_SFImage, strp, FALSE); + break; +@@ -824,7 +824,7 @@ + uintptr_t *newptr; + + strval = JS_ValueToString(scriptContext, JSglobal_return_val); +- strp = JS_GetStringBytes(strval); ++ strp = JS_EncodeString(scriptContext, strval); + + /* copy the string over, delete the old one, if need be */ + /* printf ("fieldSet SFString, tn %d tptr %d offset from struct %d\n", +@@ -844,7 +844,7 @@ + struct X3D_Node *mynode; + + strval = JS_ValueToString(scriptContext, JSglobal_return_val); +- strp = JS_GetStringBytes(strval); ++ strp = JS_EncodeString(scriptContext, strval); + + /* we will have at least one node here, in an ascii string */ + while ((*strp > '\0') && (*strp <= ' ')) strp ++; +@@ -1227,7 +1227,7 @@ + JSString *_tmpStr; + + _tmpStr = JS_ValueToString(cx, mainElement); +- strp = JS_GetStringBytes(_tmpStr); ++ strp = JS_EncodeString(scriptContext, _tmpStr); + printf ("sub element %d is \"%s\" \n",i,strp); + + if (JSVAL_IS_OBJECT(mainElement)) printf ("sub element %d is an OBJECT\n",i); +@@ -1329,7 +1329,7 @@ + JSString *strval; + + strval = JS_ValueToString(cx, mainElement); +- strp = JS_GetStringBytes(strval); ++ strp = JS_EncodeString(cx, strval); + + #ifdef SETFIELDVERBOSE + printf ("getJSMultiNumType, got string %s\n",strp); +@@ -1441,7 +1441,7 @@ + return; + } + strval = JS_ValueToString(cx, _v); +- valStr = JS_GetStringBytes(strval); ++ valStr = JS_EncodeString(cx, strval); + + /* printf ("new string %d is %s\n",i,valStr); */ + +diff -wbBur freewrl-1.22.10/src/lib/world_script/jsUtils.c freewrl-1.22.10.my/src/lib/world_script/jsUtils.c +--- freewrl-1.22.10/src/lib/world_script/jsUtils.c 2010-06-03 23:38:37.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/world_script/jsUtils.c 2011-07-04 20:21:44.000000000 +0400 +@@ -134,7 +134,7 @@ + nf = OBJECT_TO_JSVAL(me); + + #ifdef JSVRMLCLASSESVERBOSE +- printf ("parentField is %u \"%s\"\n", pf, JS_GetStringBytes(JSVAL_TO_STRING(pf))); ++ printf ("parentField is %u \"%s\"\n", pf, JS_EncodeString(cx, JSVAL_TO_STRING(pf))); + #endif + + if (!setSFNodeField (cx, par, pf, &nf)) { +@@ -197,7 +197,7 @@ + char *_id_c; + + _idStr = JS_ValueToString(cx, *newval); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + + oldS = (struct Uni_String *) *((uintptr_t *)Data); + +@@ -305,12 +305,12 @@ + + case FIELDTYPE_SFFloat: { + memcpy ((void *) &fl, Data, datalen); +- *newval = DOUBLE_TO_JSVAL(JS_NewDouble(cx,(double)fl)); ++ *newval = JS_NewJSVal(cx,(double)fl); + break; + } + case FIELDTYPE_SFTime: { + memcpy ((void *) &dl, Data, datalen); +- *newval = DOUBLE_TO_JSVAL(JS_NewDouble(cx,dl)); ++ *newval = JS_NewJSVal(cx,dl); + break; + } + case FIELDTYPE_SFBool: +@@ -824,7 +824,7 @@ + struct X3D_Node *node; + + _idStr = JS_ValueToString(context, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(context, _idStr); + + #ifdef JSVRMLCLASSESVERBOSE + printf ("\ngetSFNodeField called on name %s object %u\n",_id_c, obj); +@@ -912,7 +912,7 @@ + + /* get the id field... */ + +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(context, JSVAL_TO_STRING(id)); + + #ifdef JSVRMLCLASSESVERBOSE + printf ("\nsetSFNodeField called on name %s object %u, jsval %u\n",_id_c, obj, *vp); +@@ -1131,10 +1131,10 @@ + char *_id_c = "(no value in string)"; + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(cx, JSVAL_TO_STRING(id)); + /* printf ("hmmm...js_SetPropertyCheck called on string \"%s\" object %u, jsval %u\n",_id_c, obj, *vp); */ + } else if (JSVAL_IS_DOUBLE(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(cx, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyCheck called on double %s object %u, jsval %u\n",_id_c, obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1192,7 +1192,7 @@ + /* get the id field... */ + + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(cx, JSVAL_TO_STRING(id)); + printf ("\n...js_GetPropertyDebug called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1211,7 +1211,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(cx, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1229,7 +1229,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(cx, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug1 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1247,7 +1247,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(cx, JSVAL_TO_STRING(id)); + printf ("...js_SetPropertyDebug2 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1265,7 +1265,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(context, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug3 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1283,7 +1283,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(context, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug4 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1301,7 +1301,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(context, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug5 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1319,7 +1319,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(context, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug6 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1337,7 +1337,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(context, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug7 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1355,7 +1355,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(context, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug8 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +@@ -1373,7 +1373,7 @@ + + /* get the id field... */ + if (JSVAL_IS_STRING(id)) { +- _id_c = JS_GetStringBytes(JSVAL_TO_STRING(id)); ++ _id_c = JS_EncodeString(context, JSVAL_TO_STRING(id)); + printf ("\n...js_SetPropertyDebug9 called on string \"%s\" object %u, jsval %lu\n",_id_c, (unsigned int) obj, *vp); + } else if (JSVAL_IS_INT(id)) { + num = JSVAL_TO_INT(id); +diff -wbBur freewrl-1.22.10/src/lib/world_script/jsVRMLBrowser.c freewrl-1.22.10.my/src/lib/world_script/jsVRMLBrowser.c +--- freewrl-1.22.10/src/lib/world_script/jsVRMLBrowser.c 2010-08-02 23:55:57.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/world_script/jsVRMLBrowser.c 2011-07-04 20:06:25.000000000 +0400 +@@ -336,7 +336,7 @@ + return JS_FALSE; + } + _str = JS_ValueToString(context, argv[0]); +- _costr = JS_GetStringBytes(_str); ++ _costr = JS_EncodeString(context, _str); + + /* sanitize string, for the EAI_RW call (see EAI_RW code) */ + tptr = _costr; +@@ -385,10 +385,10 @@ + return JS_FALSE; + } + _str[0] = JS_ValueToString(context, argv[0]); +- _costr[0] = JS_GetStringBytes(_str[0]); ++ _costr[0] = JS_EncodeString(context, _str[0]); + + _str[1] = JS_ValueToString(context, argv[1]); +- _costr[1] = JS_GetStringBytes(_str[1]); ++ _costr[1] = JS_EncodeString(context, _str[1]); + + /* we use the EAI code for this - so reformat this for the EAI format */ + { +@@ -575,7 +575,7 @@ + /* third parameter should be a string */ + if (JSVAL_IS_STRING(argv[2])) { + _str[1] = JSVAL_TO_STRING(argv[2]); +- fieldStr = JS_GetStringBytes(_str[1]); ++ fieldStr = JS_EncodeString(context, _str[1]); + #ifdef JSVERBOSE + printf ("field string is :%s:\n",fieldStr); + #endif +@@ -590,7 +590,7 @@ + + /* get the URL listing as a string */ + _str[0] = JS_ValueToString(context, argv[0]); +- _costr0 = JS_GetStringBytes(_str[0]); ++ _costr0 = JS_EncodeString(context, _str[0]); + + + #ifdef JSVERBOSE +@@ -690,7 +690,7 @@ + for (count=0; count < argc; count++) { + if (JSVAL_IS_STRING(argv[count])) { + _str = JSVAL_TO_STRING(argv[count]); +- _id_c = JS_GetStringBytes(_str); ++ _id_c = JS_EncodeString(context, _str); + #if defined(AQUA) || defined(_MSC_VER) + BrowserPrintConsoleMessage(_id_c); /* statusbar hud */ + consMsgCount = 0; /* reset the "Maximum" count */ +@@ -850,7 +850,7 @@ + + /* parameter should be a string */ + if (JSVAL_IS_STRING(argv[0])) { +- target = JS_GetStringBytes( JSVAL_TO_STRING(argv[0])); ++ target = JS_EncodeString(context, JSVAL_TO_STRING(argv[0])); + #ifdef JSVERBOSE + printf ("field string is %s\n",target); + #endif +@@ -930,7 +930,7 @@ + + /* parameters should be a string */ + if (JSVAL_IS_STRING(argv[0])) { +- targetDevice = JS_GetStringBytes( JSVAL_TO_STRING(argv[0])); ++ targetDevice = JS_EncodeString(cx, JSVAL_TO_STRING(argv[0])); + #ifdef JSVERBOSE + printf ("field string is %s\n",targetDevice); + #endif +@@ -939,7 +939,7 @@ + return -1; + } + if (JSVAL_IS_STRING(argv[1])) { +- targetController = JS_GetStringBytes( JSVAL_TO_STRING(argv[1])); ++ targetController = JS_EncodeString(cx, JSVAL_TO_STRING(argv[1])); + #ifdef JSVERBOSE + printf ("field string is %s\n",targetController); + #endif +diff -wbBur freewrl-1.22.10/src/lib/world_script/jsVRMLClasses.c freewrl-1.22.10.my/src/lib/world_script/jsVRMLClasses.c +--- freewrl-1.22.10/src/lib/world_script/jsVRMLClasses.c 2010-09-22 23:40:48.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/world_script/jsVRMLClasses.c 2011-07-04 20:08:03.000000000 +0400 +@@ -935,7 +935,7 @@ + printf( "JS_NewDouble failed for %f in simplecopyelements.\n",dd); + return JS_FALSE; + } +- val = DOUBLE_TO_JSVAL(dp); ++ val = DOUBLE_TO_JSVAL(*dp); + + } + } +@@ -1108,7 +1108,7 @@ + + printf ("HAVE STRING HERE!\n"); + _str = JS_ValueToString(cx, id); +- asciiStr = JS_GetStringBytes(_str); ++ asciiStr = JS_EncodeString(context, _str); + printf ("we have as a parameter :%s:\n",asciiStr); + #endif + +@@ -1185,7 +1185,7 @@ + if (_tmpStr==NULL) { + _tmp_valStr = "NULL"; + } else { +- _tmp_valStr = JS_GetStringBytes(_tmpStr); ++ _tmp_valStr = JS_EncodeString(cx, _tmpStr); + } + } + +@@ -1281,7 +1281,7 @@ + #endif + + str = JS_ValueToString(cx, id); +- p = JS_GetStringBytes(str); ++ p = JS_EncodeString(cx, str); + #ifdef JSVRMLCLASSESVERBOSE + printf("\tid string %s\n ",p); + #endif +@@ -1368,12 +1368,12 @@ + char * _c; + printf ("doMFSetProperty, for object %u, vp %u\n", obj,*vp); + _str = JS_ValueToString(cx, id); +- _c = JS_GetStringBytes(_str); ++ _c = JS_EncodeString(cx, _str); + printf ("id is %s\n",_c); + + _sstr = JS_ValueToString(cx, *vp); + printf ("looking up value for %d %x object %p\n",*vp,*vp,obj); +- _cc = JS_GetStringBytes(_sstr); ++ _cc = JS_EncodeString(cx, _sstr); + printf("\tdoMFSetProperty:%d: obj = %p, id = %s, vp = %s\n",type, + obj, _c, _cc); + if (JSVAL_IS_OBJECT(*vp)) { printf ("doMFSet, vp is an OBJECT\n"); } +@@ -1397,7 +1397,7 @@ + + if (!JS_ValueToInt32(cx, *vp, &i)) { + _sstr = JS_ValueToString(cx, *vp); +- _cc = JS_GetStringBytes(_sstr); ++ _cc = JS_EncodeString(cx, _sstr); + printf ("can not convert %s to an integer in doMFAddProperty for type %d\n",_cc,type); + return JS_FALSE; + } +@@ -1408,7 +1408,7 @@ + #ifdef JSVRMLCLASSESVERBOSE + printf ("doMFSetProperty - ensure that this is a DOUBLE "); + _sstr = JS_ValueToString(cx, *vp); +- _cc = JS_GetStringBytes(_sstr); ++ _cc = JS_EncodeString(cx, _sstr); + printf ("value is %s \n",_cc); + #endif + +@@ -1420,7 +1420,7 @@ + printf( "JS_NewDouble failed for %f in simplecopyelements.\n",dd); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + + } + } +@@ -1511,7 +1511,7 @@ + nf = OBJECT_TO_JSVAL(me); + + #ifdef JSVRMLCLASSESVERBOSE +- printf ("parentField is %u \"%s\"\n", pf, JS_GetStringBytes(JSVAL_TO_STRING(pf))); ++ printf ("parentField is %u \"%s\"\n", pf, JS_EncodeString(cx, JSVAL_TO_STRING(pf))); + #endif + + if (!setSFNodeField (cx, par, pf, &nf)) { +@@ -1535,7 +1535,7 @@ + unsigned int i, j = 0; + + _str = JS_ValueToString(cx, *vp); +- _buff = JS_GetStringBytes(_str); ++ _buff = JS_EncodeString(cx, _str); + _buff_len = strlen(_buff) + 1; + + #ifdef JSVRMLCLASSESVERBOSE +@@ -1719,14 +1719,14 @@ + size_t len = 0; + + _idStr = JS_ValueToString(context, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(context, _idStr); + + /* "register" this ECMA value for routing changed flag stuff */ + setInECMATable(context, _id_c); + + if (JSVAL_IS_STRING(*vp)) { + _vpStr = JS_ValueToString(context, *vp); +- _vp_c = JS_GetStringBytes(_vpStr); ++ _vp_c = JS_EncodeString(context, _vpStr); + + len = strlen(_vp_c); + +@@ -1752,7 +1752,7 @@ + } else { + #ifdef JSVRMLCLASSESVERBOSE + _vpStr = JS_ValueToString(context, *vp); +- _vp_c = JS_GetStringBytes(_vpStr); ++ _vp_c = JS_EncodeString(cx, _vpStr); + printf("setECMANative: obj = %p, id = \"%s\", vp = %s\n", + obj, _id_c, _vp_c); + #endif +@@ -1770,9 +1770,9 @@ + JSString *_idStr, *_vpStr; + char *_id_c, *_vp_c; + _idStr = JS_ValueToString(cx, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + _vpStr = JS_ValueToString(cx, *vp); +- _vp_c = JS_GetStringBytes(_vpStr); ++ _vp_c = JS_EncodeString(cx, _vpStr); + printf("getAssignProperty: obj = %p, id = \"%s\", vp = %s\n", + obj, _id_c, _vp_c); + printf ("what is vp? \n"); +@@ -1803,7 +1803,7 @@ + + if (JSVAL_IS_STRING(id)) { + _str = JSVAL_TO_STRING(id); +- _id_c = JS_GetStringBytes(_str); ++ _id_c = JS_EncodeString(cx, _str); + if (!JS_ConvertValue(cx, *vp, JSTYPE_OBJECT, &newVal)) { + printf( "JS_ConvertValue failed in setAssignProperty.\n"); + return JS_FALSE; +@@ -1834,9 +1834,9 @@ + if (JSVAL_IS_DOUBLE(id)) printf ("id is an DOUBLE\n"); + if (JSVAL_IS_INT(id)) printf ("id is an INT\n"); + +- printf ("id is %s\n",JS_GetStringBytes(JS_ValueToString(cx,id))); +- printf ("initVal is %s\n",JS_GetStringBytes(JS_ValueToString(cx,initVal))); +- printf ("newVal is %s\n",JS_GetStringBytes(JS_ValueToString(cx,newVal))); ++ printf ("id is %s\n",JS_EncodeString(cx, JS_ValueToString(cx,id))); ++ printf ("initVal is %s\n",JS_EncodeString(cx, JS_ValueToString(cx,initVal))); ++ printf ("newVal is %s\n",JS_EncodeString(cx, JS_ValueToString(cx,newVal))); + + #endif + +@@ -1859,7 +1859,7 @@ + } else { + #ifdef JSVRMLCLASSESVERBOSE + _str = JS_ValueToString(cx, id); +- _id_c = JS_GetStringBytes(_str); ++ _id_c = JS_EncodeString(cx, _str); + printf("setAssignProperty: obj = %p, id = \"%s\"\n", + obj, _id_c); + #endif +diff -wbBur freewrl-1.22.10/src/lib/world_script/jsVRMLClasses.h freewrl-1.22.10.my/src/lib/world_script/jsVRMLClasses.h +--- freewrl-1.22.10/src/lib/world_script/jsVRMLClasses.h 2010-10-13 23:45:26.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/world_script/jsVRMLClasses.h 2011-07-04 20:24:53.000000000 +0400 +@@ -30,6 +30,21 @@ + #ifndef __FREEWRL_JS_VRML_CLASSES_H__ + #define __FREEWRL_JS_VRML_CLASSES_H__ + ++static inline jsval JS_NewJSVal(JSContext *cx, jsdouble d) ++{ ++ jsval ret; ++ JS_NewNumberValue(cx, d, &ret); ++ return ret; ++} ++ ++static inline jsdouble * JS_NewDouble(JSContext *cx, jsdouble d) ++{ ++ static jsdouble ret; ++ jsval rv; ++ JS_NewNumberValue(cx, d, &rv); ++ ret = JSVAL_TO_DOUBLE(rv); ++ return &ret; ++} + + #ifndef UNUSED + #define UNUSED(v) ((void) v) +@@ -80,14 +95,14 @@ + + + #define SET_JS_TICKTIME_FALSE(possibleRetVal) { jsval zimbo; \ +- zimbo = DOUBLE_TO_JSVAL(JS_NewDouble(cx, TickTime)); \ ++ zimbo = JS_NewJSVal(cx, TickTime); \ + if (!JS_DefineProperty(cx,obj, "__eventInTickTime", zimbo, JS_GET_PROPERTY_STUB, JS_SET_PROPERTY_STUB2, JSPROP_PERMANENT)) { \ + printf( "JS_DefineProperty failed for \"__eventInTickTime\" at %s:%d.\n",__FILE__,__LINE__); \ + return possibleRetVal; \ + }} + + #define SET_JS_TICKTIME() { jsval zimbo; \ +- zimbo = DOUBLE_TO_JSVAL(JS_NewDouble(cx, TickTime)); \ ++ zimbo = JS_NewJSVal(cx, TickTime); \ + if (!JS_DefineProperty(cx,obj, "__eventInTickTime", zimbo, JS_GET_PROPERTY_STUB, JS_SET_PROPERTY_STUB2, JSPROP_PERMANENT)) { \ + printf( "JS_DefineProperty failed for \"__eventInTickTime\" at %s:%d.\n",__FILE__,__LINE__); \ + return FALSE; \ +diff -wbBur freewrl-1.22.10/src/lib/world_script/jsVRML_MFClasses.c freewrl-1.22.10.my/src/lib/world_script/jsVRML_MFClasses.c +--- freewrl-1.22.10/src/lib/world_script/jsVRML_MFClasses.c 2010-09-22 23:40:48.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/world_script/jsVRML_MFClasses.c 2011-07-04 20:08:44.000000000 +0400 +@@ -596,7 +596,7 @@ + return; + } + +- val = DOUBLE_TO_JSVAL(dp); ++ val = DOUBLE_TO_JSVAL(*dp); + + if (!JS_SetElement(cx, obj, (jsint) i, &val)) { + printf( "JS_DefineElement failed for arg %u in VrmlMatrixSetTransform.\n", i); +@@ -1212,7 +1212,7 @@ + /* + if (JSVAL_IS_STRING(id)==TRUE) { + printf(" is a common string :%s:\n", +- JS_GetStringBytes(JS_ValueToString(cx, id))); ++ JS_EncodeString(cx, JS_ValueToString(cx, id))); + } + if (JSVAL_IS_OBJECT(id)==TRUE) { + printf (" parameter is an object\n"); +@@ -1231,7 +1231,7 @@ + _index = JSVAL_TO_INT(id); + + if (_index >= _length) { +- *vp = DOUBLE_TO_JSVAL(&zerojsdouble); ++ *vp = DOUBLE_TO_JSVAL(zerojsdouble); + if (!JS_DefineElement(cx, obj, (jsint) _index, *vp, JS_GET_PROPERTY_STUB, JS_SET_PROPERTY_CHECK, JSPROP_ENUMERATE)) { + printf( "JS_DefineElement failed in VrmlMatrixGetProperty.\n"); + return JS_FALSE; +@@ -1331,7 +1331,7 @@ + printf("MFStringAddProperty: vp = %p\n", obj); + if (JSVAL_IS_STRING(*vp)==TRUE) { + printf(" is a common string :%s:\n", +- JS_GetStringBytes(JS_ValueToString(cx, *vp))); ++ JS_EncodeString(cx, JS_ValueToString(cx, *vp))); + } + if (JSVAL_IS_OBJECT(*vp)==TRUE) { + printf (" parameter is an object\n"); +@@ -1345,7 +1345,7 @@ + printf("MFStringAddProperty: id = %p\n", obj); + if (JSVAL_IS_STRING(id)==TRUE) { + printf(" is a common string :%s:\n", +- JS_GetStringBytes(JS_ValueToString(cx, id))); ++ JS_EncodeString(cx, JS_ValueToString(cx, id))); + } + if (JSVAL_IS_OBJECT(id)==TRUE) { + printf (" parameter is an object\n"); +@@ -1494,7 +1494,7 @@ + if (JSVAL_IS_STRING(argv[i])==TRUE) { + printf (" Common String, is"); + _str = JS_ValueToString(cx, argv[i]); +- printf (JS_GetStringBytes(_str)); ++ printf (JS_EncodeString(cx, _str)); + printf (".."); + + } +diff -wbBur freewrl-1.22.10/src/lib/world_script/jsVRML_SFClasses.c freewrl-1.22.10.my/src/lib/world_script/jsVRML_SFClasses.c +--- freewrl-1.22.10/src/lib/world_script/jsVRML_SFClasses.c 2010-09-25 00:22:05.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/world_script/jsVRML_SFClasses.c 2011-07-04 20:09:01.000000000 +0400 +@@ -161,7 +161,7 @@ + printf( "JS_NewDouble failed for %f in SFColorGetHSV.\n", xp[i]); + return JS_FALSE; + } +- _v = DOUBLE_TO_JSVAL(dp); ++ _v = DOUBLE_TO_JSVAL(*dp); + JS_SetElement(cx, result, (jsint)i, &_v); + } + +@@ -336,7 +336,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 1: + d = (ptr->v).c[1]; +@@ -346,7 +346,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 2: + d = (ptr->v).c[2]; +@@ -356,7 +356,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + } + } +@@ -387,13 +387,13 @@ + if (JSVAL_IS_INT(id)) { + switch (JSVAL_TO_INT(id)) { + case 0: +- (ptr->v).c[0] = (float) *JSVAL_TO_DOUBLE(_val); ++ (ptr->v).c[0] = (float) JSVAL_TO_DOUBLE(_val); + break; + case 1: +- (ptr->v).c[1] = (float) *JSVAL_TO_DOUBLE(_val); ++ (ptr->v).c[1] = (float) JSVAL_TO_DOUBLE(_val); + break; + case 2: +- (ptr->v).c[2] = (float) *JSVAL_TO_DOUBLE(_val); ++ (ptr->v).c[2] = (float) JSVAL_TO_DOUBLE(_val); + break; + + } +@@ -422,18 +422,18 @@ + *rval = OBJECT_TO_JSVAL(_arrayObj); + + /* construct new double before conversion? */ +- _v = DOUBLE_TO_JSVAL(&hue); ++ _v = DOUBLE_TO_JSVAL(hue); + if (!JS_SetElement(cx, _arrayObj, 0, &_v)) { + printf( "JS_SetElement failed for hue in SFColorRGBAGetHSV.\n"); + return JS_FALSE; + } +- _v = DOUBLE_TO_JSVAL(&saturation); ++ _v = DOUBLE_TO_JSVAL(saturation); + if (!JS_SetElement(cx, _arrayObj, 1, &_v)) { + printf( "JS_SetElement failed for saturation in SFColorRGBAGetHSV.\n"); + return JS_FALSE; + } + +- _v = DOUBLE_TO_JSVAL(&value); ++ _v = DOUBLE_TO_JSVAL(value); + if (!JS_SetElement(cx, _arrayObj, 2, &_v)) { + printf( "JS_SetElement failed for value in SFColorRGBAGetHSV.\n"); + return JS_FALSE; +@@ -601,7 +601,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 1: + d = (ptr->v).c[1]; +@@ -611,7 +611,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 2: + d = (ptr->v).c[2]; +@@ -621,7 +621,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 3: + d = (ptr->v).c[3]; +@@ -631,7 +631,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + } + } +@@ -662,16 +662,16 @@ + if (JSVAL_IS_INT(id)) { + switch (JSVAL_TO_INT(id)) { + case 0: +- (ptr->v).c[0] = (float) *JSVAL_TO_DOUBLE(_val); ++ (ptr->v).c[0] = (float) JSVAL_TO_DOUBLE(_val); + break; + case 1: +- (ptr->v).c[1] = (float) *JSVAL_TO_DOUBLE(_val); ++ (ptr->v).c[1] = (float) JSVAL_TO_DOUBLE(_val); + break; + case 2: +- (ptr->v).c[2] = (float) *JSVAL_TO_DOUBLE(_val); ++ (ptr->v).c[2] = (float) JSVAL_TO_DOUBLE(_val); + break; + case 3: +- (ptr->v).c[3] = (float) *JSVAL_TO_DOUBLE(_val); ++ (ptr->v).c[3] = (float) JSVAL_TO_DOUBLE(_val); + break; + + } +@@ -983,7 +983,7 @@ + } else if (argc == 1) { + /* is this a string, or a number indicating a node? */ + myStr = JS_ValueToString(cx, argv[0]); +- cString = JS_GetStringBytes(myStr); ++ cString = JS_EncodeString(cx, myStr); + #ifdef JSVRMLCLASSESVERBOSE + printf ("SFNodeConstr, argc =1l string %s\n",cString); + #endif +@@ -1067,13 +1067,13 @@ + char *_id_c; + + _idStr = JS_ValueToString(cx, argv[0]); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + /* printf ("first string :%s:\n",_id_c); */ + + cString = STRDUP(_id_c); + + _idStr = JS_ValueToString(cx, argv[1]); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + /* printf ("second string :%s:\n",_id_c); */ + + if (sscanf (_id_c,"%p",&newHandle) != 1) { +@@ -1190,7 +1190,7 @@ + jsval rval; + + _idStr = JS_ValueToString(cx, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + + #ifdef JSVRMLCLASSESVERBOSE + printf ("start of SFNodeGetProperty... id is %s\n",_id_c); +@@ -1264,10 +1264,10 @@ + + + _idStr = JS_ValueToString(cx, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + + _valStr = JS_ValueToString(cx, *vp); +- _val_c = JS_GetStringBytes(_valStr); ++ _val_c = JS_EncodeString(cx, _valStr); + + #ifdef JSVRMLCLASSESVERBOSE + printf("SFNodeSetProperty: obj = %p, id = %s, vp = %s\n", +@@ -1904,7 +1904,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 1: + d = (ptr->v).c[1]; +@@ -1914,7 +1914,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 2: + d = (ptr->v).c[2]; +@@ -1924,7 +1924,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 3: + d = (ptr->v).c[3]; +@@ -1934,7 +1934,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + } + } +@@ -1969,16 +1969,16 @@ + if (JSVAL_IS_INT(id)) { + switch (JSVAL_TO_INT(id)) { + case 0: +- (ptr->v).c[0] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[0] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 1: +- (ptr->v).c[1] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[1] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 2: +- (ptr->v).c[2] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[2] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 3: +- (ptr->v).c[3] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[3] = (float) JSVAL_TO_DOUBLE(myv); + break; + } + } +@@ -2051,7 +2051,7 @@ + * it get created in javascript? */ + if (param_isString) { + _str = JS_ValueToString(cx, *argv); +- charString = JS_GetStringBytes(_str); ++ charString = JS_EncodeString(cx, _str); + + if (sscanf(charString, "%lf %lf", + &(pars[0]), &(pars[1])) != 2) { +@@ -2143,7 +2143,7 @@ + printf( "JS_NewDouble failed for %f in SFVec2f.\n",d); + return JS_FALSE; + } +- *rval = DOUBLE_TO_JSVAL(dp); ++ *rval = DOUBLE_TO_JSVAL(*dp); + } + + #ifdef JSVRMLCLASSESVERBOSE +@@ -2332,7 +2332,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 1: + d = (ptr->v).c[1]; +@@ -2342,7 +2342,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + } + } +@@ -2373,13 +2373,13 @@ + if (JSVAL_IS_INT(id)) { + switch (JSVAL_TO_INT(id)) { + case 0: +- (ptr->v).c[0] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[0] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 1: +- (ptr->v).c[1] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[1] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 2: +- (ptr->v).c[2] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[2] = (float) JSVAL_TO_DOUBLE(myv); + break; + } + } +@@ -2458,7 +2458,7 @@ + * it get created in javascript? */ + if (param_isString) { + _str = JS_ValueToString(cx, *argv); +- charString = JS_GetStringBytes(_str); ++ charString = JS_EncodeString(cx, _str); + + if (sscanf(charString, "%lf %lf %lf", + &(pars[0]), &(pars[1]), &(pars[2])) != 3) { +@@ -2580,7 +2580,7 @@ + printf( "JS_NewDouble failed for %f in SFVec3f.\n",d); + return JS_FALSE; + } +- *rval = DOUBLE_TO_JSVAL(dp); ++ *rval = DOUBLE_TO_JSVAL(*dp); + } + #ifdef JSVRMLCLASSESVERBOSE + if (retSFVec3f){ +@@ -2792,9 +2792,9 @@ + char *_id_c; + + _idStr = JS_ValueToString(cx, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + _idStr = JS_ValueToString(cx, *vp); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + + #endif + +@@ -2813,7 +2813,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 1: + d = (ptr->v).c[1]; +@@ -2823,7 +2823,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 2: + d = (ptr->v).c[2]; +@@ -2833,7 +2833,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + } + } else { +@@ -2869,13 +2869,13 @@ + if (JSVAL_IS_INT(id)) { + switch (JSVAL_TO_INT(id)) { + case 0: +- (ptr->v).c[0] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[0] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 1: +- (ptr->v).c[1] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[1] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 2: +- (ptr->v).c[2] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[2] = (float) JSVAL_TO_DOUBLE(myv); + break; + } + } +@@ -2949,7 +2949,7 @@ + * it get created in javascript? */ + if (param_isString) { + _str = JS_ValueToString(cx, *argv); +- charString = JS_GetStringBytes(_str); ++ charString = JS_EncodeString(cx, _str); + + if (sscanf(charString, "%lf %lf %lf", + &(pars[0]), &(pars[1]), &(pars[2])) != 3) { +@@ -3071,7 +3071,7 @@ + printf( "JS_NewDouble failed for %f in SFVec3d.\n",d); + return JS_FALSE; + } +- *rval = DOUBLE_TO_JSVAL(dp); ++ *rval = DOUBLE_TO_JSVAL(*dp); + } + #ifdef JSVRMLCLASSESVERBOSE + if (retSFVec3d){ +@@ -3282,9 +3282,9 @@ + char *_id_c; + + _idStr = JS_ValueToString(cx, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + _idStr = JS_ValueToString(cx, *vp); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + + #endif + +@@ -3303,7 +3303,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 1: + d = (ptr->v).c[1]; +@@ -3313,7 +3313,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 2: + d = (ptr->v).c[2]; +@@ -3323,7 +3323,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + } + } else { +@@ -3359,13 +3359,13 @@ + if (JSVAL_IS_INT(id)) { + switch (JSVAL_TO_INT(id)) { + case 0: +- (ptr->v).c[0] = *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[0] = JSVAL_TO_DOUBLE(myv); + break; + case 1: +- (ptr->v).c[1] = *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[1] = JSVAL_TO_DOUBLE(myv); + break; + case 2: +- (ptr->v).c[2] = *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[2] = JSVAL_TO_DOUBLE(myv); + break; + } + } +@@ -3513,9 +3513,9 @@ + char *_id_c; + + _idStr = JS_ValueToString(cx, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + _idStr = JS_ValueToString(cx, *vp); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + + #endif + +@@ -3534,7 +3534,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 1: + d = (ptr->v).c[1]; +@@ -3544,7 +3544,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 2: + d = (ptr->v).c[2]; +@@ -3554,7 +3554,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 3: + d = (ptr->v).c[3]; +@@ -3564,7 +3564,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + } + } else { +@@ -3600,16 +3600,16 @@ + if (JSVAL_IS_INT(id)) { + switch (JSVAL_TO_INT(id)) { + case 0: +- (ptr->v).c[0] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[0] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 1: +- (ptr->v).c[1] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[1] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 2: +- (ptr->v).c[2] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[2] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 3: +- (ptr->v).c[3] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[3] = (float) JSVAL_TO_DOUBLE(myv); + break; + } + } +@@ -3758,9 +3758,9 @@ + char *_id_c; + + _idStr = JS_ValueToString(cx, id); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + _idStr = JS_ValueToString(cx, *vp); +- _id_c = JS_GetStringBytes(_idStr); ++ _id_c = JS_EncodeString(cx, _idStr); + + #endif + +@@ -3779,7 +3779,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 1: + d = (ptr->v).c[1]; +@@ -3789,7 +3789,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 2: + d = (ptr->v).c[2]; +@@ -3799,7 +3799,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + case 3: + d = (ptr->v).c[3]; +@@ -3809,7 +3809,7 @@ + d); + return JS_FALSE; + } +- *vp = DOUBLE_TO_JSVAL(dp); ++ *vp = DOUBLE_TO_JSVAL(*dp); + break; + } + } else { +@@ -3845,16 +3845,16 @@ + if (JSVAL_IS_INT(id)) { + switch (JSVAL_TO_INT(id)) { + case 0: +- (ptr->v).c[0] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[0] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 1: +- (ptr->v).c[1] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[1] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 2: +- (ptr->v).c[2] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[2] = (float) JSVAL_TO_DOUBLE(myv); + break; + case 3: +- (ptr->v).c[3] = (float) *JSVAL_TO_DOUBLE(myv); ++ (ptr->v).c[3] = (float) JSVAL_TO_DOUBLE(myv); + break; + } + } +diff -wbBur freewrl-1.22.10/src/lib/x3d_parser/X3DParser.c freewrl-1.22.10.my/src/lib/x3d_parser/X3DParser.c +--- freewrl-1.22.10/src/lib/x3d_parser/X3DParser.c 2010-09-22 20:54:59.000000000 +0400 ++++ freewrl-1.22.10.my/src/lib/x3d_parser/X3DParser.c 2011-07-04 01:19:07.000000000 +0400 +@@ -54,7 +54,7 @@ + #include "X3DProtoScript.h" + + #if HAVE_EXPAT_H +-# include <expat.h> ++# include </usr/include/expat.h> + #endif + //#define X3DPARSERVERBOSE 1 + diff --git a/community-testing/gpac/PKGBUILD b/community-testing/gpac/PKGBUILD new file mode 100644 index 000000000..69717e2bc --- /dev/null +++ b/community-testing/gpac/PKGBUILD @@ -0,0 +1,44 @@ +# Maintainer: Brad Fanella <bradfanella@archlinux.us +# Contributor: Allan McRae <allan@archlinux.org> +# Contributor: niQo +# Contributor: Daniel J Griffiths <ghost1227@archlinux.us> + +pkgname=gpac +pkgver=0.4.5 +pkgrel=7 +pkgdesc="A multimedia framework based on the MPEG-4 Systems standard" +arch=('i686' 'x86_64') +url="http://gpac.sourceforge.net" +depends=('libxml2' 'wxgtk' 'alsa-lib' 'sdl' 'js' 'libmad' \ + 'faad2' 'xvidcore' 'ffmpeg' 'freeglut') +license=('LGPL') +options=('!makeflags') # Multiple build jobs aren't handled correctly +source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz + libpng14-infopp-null.patch) +md5sums=('755e8c438a48ebdb13525dd491f5b0d1' + '14d6483c9eb84434aea68596f243e0ca') + +build() { + cd ${srcdir}/${pkgname} + chmod +x configure + sed -i 's|--warn-common||' configure + sed -i 's#osmozilla##g' applications/Makefile + sed -i 's#"$(prefix)#"$(DESTDIR)$(prefix)#' applications/osmo4_wx/Makefile + sed -i 's#ldconfig || true##g' Makefile + + #FS#14506 + sed -i 's#lib64#lib#g' configure + patch -Np1 -i ${srcdir}/libpng14-infopp-null.patch + + # Was getting "symbol lookup error: /usr/lib/gpac/gm_x11_out.so: undefined + # symbol: XvQueryExtension" with our LDFLAGS :\ + unset LDFLAGS + + ./configure --prefix=/usr --mandir=/usr/share/man --use-js=no + make +} + +package() { + cd ${srcdir}/${pkgname} + make DESTDIR=${pkgdir} install install-lib +} diff --git a/community-testing/gpac/libpng14-infopp-null.patch b/community-testing/gpac/libpng14-infopp-null.patch new file mode 100644 index 000000000..b02456557 --- /dev/null +++ b/community-testing/gpac/libpng14-infopp-null.patch @@ -0,0 +1,12 @@ +diff -upr gpac.orig/src/media_tools/img.c gpac/src/media_tools/img.c +--- gpac.orig/src/media_tools/img.c 2010-01-24 19:03:28.000000000 +0200 ++++ gpac/src/media_tools/img.c 2010-01-24 19:04:07.000000000 +0200 +@@ -551,7 +551,7 @@ GF_Err gf_img_png_enc(char *data, u32 wi + /* Allocate/initialize the image information data. REQUIRED */ + info_ptr = png_create_info_struct(png_ptr); + if (info_ptr == NULL) { +- png_destroy_write_struct(&png_ptr, png_infopp_NULL); ++ png_destroy_write_struct(&png_ptr, NULL); + return GF_IO_ERR; + } + diff --git a/community-testing/htmldoc/PKGBUILD b/community-testing/htmldoc/PKGBUILD new file mode 100644 index 000000000..92622ac08 --- /dev/null +++ b/community-testing/htmldoc/PKGBUILD @@ -0,0 +1,34 @@ +# $Id: PKGBUILD 51081 2011-07-05 07:09:42Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: tobias <tobias@archlinux.org> +# Contributor: Simon Rutishauser <simon.rutishauser@gmx.ch> + +pkgname=htmldoc +pkgver=1.8.27 +pkgrel=6 +pkgdesc="Produce PDF or Postscript from HTML documents including TOCs and Indices" +arch=(i686 x86_64) +url="http://www.htmldoc.org" +license=('GPL') +depends=('libjpeg' 'libpng' 'openssl' 'fltk' 'gcc' 'libxft' 'libxpm') +source=(ftp://ftp.easysw.com/pub/${pkgname}/${pkgver}/${pkgname}-$pkgver-source.tar.bz2) +md5sums=('35589e7b8fe9c54e11be87cd5aec4dcc') + +build() { + cd ${startdir}/src/${pkgname}-${pkgver} + ./configure --prefix=/usr --mandir=${pkgdir}/usr/share/man + sed -i 's|^bindir.*$|bindir = ${prefix}/bin|' Makedefs + make +} + +package() { + cd ${startdir}/src/${pkgname}-${pkgver} + make prefix=${startdir}/pkg/usr install + # fix freedesktop stuff + install -Dm 644 desktop/htmldoc-128.png \ + ${startdir}/pkg/usr/share/pixmaps/htmldoc.png + echo "MimeType=application/vnd.htmldoc-book;" >> desktop/htmldoc.desktop + sed -i 's|X-Red-Hat.*$||' desktop/htmldoc.desktop + install -Dm 644 desktop/htmldoc.desktop \ + ${startdir}/pkg/usr/share/applications/htmldoc.desktop +} diff --git a/community-testing/libgda3/PKGBUILD b/community-testing/libgda3/PKGBUILD deleted file mode 100644 index 07313f713..000000000 --- a/community-testing/libgda3/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 49363 2011-06-15 09:20:21Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> - -pkgname=libgda3 -pkgver=3.1.5 -pkgrel=9 -pkgdesc="data abstraction layer; with mysql, pgsql, ldap, xml, sqlite providers" -arch=('i686' 'x86_64') -url="http://www.gnome-db.org/Download" -license=('GPL') -depends=('glib2' 'libxslt' 'popt' 'rarian' 'db' 'gnome-vfs' - 'libmysqlclient' 'postgresql-libs>=8.4.1' 'libldap' 'unixodbc' 'sqlite3') -makedepends=('intltool' 'pkgconfig' 'gtk-doc' 'util-linux-ng') -options=('!libtool' '!distcc') -source=(http://ftp.acc.umu.se/pub/GNOME/sources/libgda/3.1/libgda-$pkgver.tar.bz2) -md5sums=('eb7da5286a112e7cff3111c89fba4456') - -build() { - cd "$srcdir/libgda-$pkgver" - ./configure --prefix=/usr --sysconfdir=/etc - make -} -package(){ - cd "$srcdir/libgda-$pkgver" - make DESTDIR=$pkgdir install - cd "$pkgdir" && find -name \*..so -exec rename '..so' '.a' {} \; -} diff --git a/community-testing/librcc/PKGBUILD b/community-testing/librcc/PKGBUILD deleted file mode 100644 index ca2eb950c..000000000 --- a/community-testing/librcc/PKGBUILD +++ /dev/null @@ -1,53 +0,0 @@ -# $Id: PKGBUILD 49369 2011-06-15 09:26:07Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> - -pkgname=librcc -pkgver=0.2.6 -pkgrel=4 -pkgdesc="Charset Conversion Library" -arch=(i686 x86_64) -url="http://rusxmms.sourceforge.net/" -license=('GPL') -depends=(aspell enca libxml2 db librcd) -makedepends=(patch gtk gtk2) -install=librcc.install -source=(http://downloads.sourceforge.net/rusxmms/${pkgname}-${pkgver}.tar.bz2 - librcc-strnlen.patch) -md5sums=('9bbf248c7312c73c0b6ca19b9c5a2af1' - '040313d1d8f166ccf2b128cea4c05f21') - -build() { - cd ${startdir}/src/$pkgname-${pkgver} - ./configure --prefix=/usr - patch -p1 <$srcdir/librcc-strnlen.patch - make -} - -package() { - cd ${startdir}/src/$pkgname-${pkgver} - mkdir -p $startdir/pkg/etc/rcc - mkdir -p $startdir/pkg/usr/lib/rcc/engines - mkdir -p $startdir/pkg/usr/bin - - make DESTDIR=$startdir/pkg install - - rm -f $startdir/pkg/usr/lib/*.la - rm -f $startdir/pkg/usr/lib/rcc/engines/*.a - rm -f $startdir/pkg/usr/lib/rcc/engines/*.la - - make -C examples - make -C examples install DESTDIR=$startdir/pkg - rm -f $startdir/pkg/usr/bin/example* - - install -m 644 examples/rcc.xml $startdir/pkg/etc - - if [ -f $startdir/pkg/usr/bin/rcc-gtk2-config ]; then - ln -s rcc-gtk2-config $startdir/pkg/usr/bin/rcc-config - elif [ -f $startdir/pkg/usr/bin/rcc-gtk-config ]; then - ln -s rcc-gtk-config $startdir/pkg/usr/bin/rcc-config - else - echo "#!/bin/bash" > $startdir/pkg/usr/bin/rcc-config - echo "echo \"Configuration UI is not available!\"" >> $startdir/pkg/usr/bin/rcc-config - fi -} diff --git a/community-testing/librcc/librcc-strnlen.patch b/community-testing/librcc/librcc-strnlen.patch deleted file mode 100644 index 9fc0e8b0b..000000000 --- a/community-testing/librcc/librcc-strnlen.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff -wbBur librcc-0.2.6/src/rccstring.h librcc-0.2.6.qwe/src/rccstring.h ---- librcc-0.2.6/src/rccstring.h 2006-01-08 15:42:59.000000000 +0000 -+++ librcc-0.2.6.qwe/src/rccstring.h 2009-09-28 08:45:37.000000000 +0000 -@@ -18,13 +18,6 @@ - int rccStringFixID(rcc_string string, rcc_context ctx); - int rccStringChangeID(rcc_string string, rcc_language_id language_id); - --#ifdef HAVE_STRNLEN --# ifndef strnlen --int strnlen(const char *str, size_t size); --# endif /* !strnlen */ --#else --int rccStrnlen(const char *str, size_t size); --#endif /* HAVE_STRNLEN */ - int rccIsASCII(const char *str); - size_t rccStringSizedGetChars(const char *str, size_t size); - diff --git a/community-testing/librcc/librcc.install b/community-testing/librcc/librcc.install deleted file mode 100644 index 53b1d7ce7..000000000 --- a/community-testing/librcc/librcc.install +++ /dev/null @@ -1,6 +0,0 @@ -post_install() { - echo "-- Don't forget to install gtk or/and gtk2 packages to enable librcc" - echo " gui features" - echo "-- Also you may change /usr/bin/rcc-config symlink to switch between" - echo " gtk and gtk2 (rcc-gtk-config and rcc-gtk2-config)" -} diff --git a/community-testing/lightspark/PKGBUILD b/community-testing/lightspark/PKGBUILD new file mode 100644 index 000000000..4dc7cf4cd --- /dev/null +++ b/community-testing/lightspark/PKGBUILD @@ -0,0 +1,39 @@ +# Maintainer: Thomas Dziedzic < gostrc at gmail > +# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com> + +pkgname=lightspark +pkgver=0.5.0rc1 +pkgrel=1 +pkgdesc='An alternative Flash Player for Linux.' +arch=('i686' 'x86_64') +url='http://lightspark.sourceforge.net' +license=('LGPL3') +conflicts=('lightspark-git') +depends=('mesa' 'sdl' 'gtk2' 'curl' 'zlib' 'ffmpeg' 'glew' 'pcre' 'libpulse' 'libffi' 'boost-libs' 'glibmm' 'gtkglext' 'desktop-file-utils' 'libxml++') +makedepends=('cmake' 'nasm' 'xulrunner' 'llvm' 'glproto' 'boost') +optdepends=('gnash-gtk: fallback support') +install="lightspark.install" +source=("http://launchpad.net/lightspark/trunk/lightspark-0.5.0/+download/lightspark-0.5.0~rc1.tar.gz") +md5sums=('bf668cf6178fbbb75a7898bd6c6dd1e5') +_pkgver='0.5.0~rc1' + +build() { + rm -rf build + mkdir build + cd build + + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCOMPILE_PLUGIN=1 \ + -DCMAKE_BUILD_TYPE=Release \ + -DGNASH_EXE_PATH=/usr/bin/gtk-gnash \ + ../lightspark-${_pkgver} + + make +} + +package() { + cd build + + make DESTDIR=${pkgdir} install +} diff --git a/community-testing/poedit/poedit.install b/community-testing/lightspark/lightspark.install index 21b79d2d4..75e2b7b55 100644 --- a/community-testing/poedit/poedit.install +++ b/community-testing/lightspark/lightspark.install @@ -1,4 +1,5 @@ post_install() { + update-desktop-database -q gtk-update-icon-cache -q -t -f usr/share/icons/hicolor } @@ -7,5 +8,6 @@ post_upgrade() { } post_remove() { + update-desktop-database -q gtk-update-icon-cache -q -t -f usr/share/icons/hicolor } diff --git a/community-testing/mediatomb/PKGBUILD b/community-testing/mediatomb/PKGBUILD new file mode 100644 index 000000000..c8850e23c --- /dev/null +++ b/community-testing/mediatomb/PKGBUILD @@ -0,0 +1,49 @@ +# $Id: PKGBUILD 51077 2011-07-05 06:51:52Z jconder $ +# Contributor: William Rea <sillywilly@gmail.com> +# Contributor: Nikhil Bysani <nikron@gmail.com> +# Contributor: Mika Hynnä <igheax@gmail.com> +# Maintainer: Jonathan Conder <jonno.conder@gmail.com> + +pkgname=mediatomb +pkgver=0.12.1 +pkgrel=5 +pkgdesc="Free UPnP/DLNA media server" +arch=('i686' 'x86_64') +url="http://mediatomb.cc/" +license=('GPL') +depends=('curl' 'ffmpegthumbnailer' 'js' 'libexif' 'libmp4v2' 'sqlite3' 'taglib') +backup=('etc/conf.d/mediatomb') +install=mediatomb.install +source=("http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz" + 'mediatomb.rc' + 'mediatomb.conf' + 'gcc46.patch' + 'tonewjs.patch') +md5sums=('e927dd5dc52d3cfcebd8ca1af6f0d3c2' + 'aa1191ec508d8bd4b3b9a5fe48efc079' + 'bec297e4178332a26b42bbde873b94cd' + '0ae34c0d73b76e3d215887834c3c08cf' + 'd9e02a9956eecf5ff645bddf6dac0331') + +build() { + cd "$srcdir/$pkgname-$pkgver" + patch -Np1 -i $srcdir/gcc46.patch + patch -Np1 -i $srcdir/tonewjs.patch + + ./configure --prefix=/usr \ + --disable-mysql \ + --enable-libmagic \ + --enable-libjs \ + --enable-ffmpeg + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + + make DESTDIR="$pkgdir/" install + + install -D -m0755 "$srcdir/mediatomb.rc" "$pkgdir/etc/rc.d/mediatomb" + install -D -m0755 "$srcdir/mediatomb.conf" "$pkgdir/etc/conf.d/mediatomb" + install -d "$pkgdir/var/lib/mediatomb" +} diff --git a/community-testing/mediatomb/gcc46.patch b/community-testing/mediatomb/gcc46.patch new file mode 100644 index 000000000..0f4fe490f --- /dev/null +++ b/community-testing/mediatomb/gcc46.patch @@ -0,0 +1,10 @@ +--- a/src/zmm/object.h ++++ b/src/zmm/object.h +@@ -33,6 +33,7 @@ + #define __ZMM_OBJECT_H__ + + #include <new> // for size_t ++#include <cstddef> + #include "atomic.h" + + namespace zmm diff --git a/community-testing/mediatomb/mediatomb.conf b/community-testing/mediatomb/mediatomb.conf new file mode 100644 index 000000000..798018d2a --- /dev/null +++ b/community-testing/mediatomb/mediatomb.conf @@ -0,0 +1,23 @@ +# +# Parameters to be passed to mediatomb +# + +# Port to listen on +MT_PORT='50500' + +# User and group to run as +MT_USER='nobody' +MT_GROUP='nobody' + +# Location of the PID file +MT_PIDFILE='/var/run/mediatomb.pid' + +# Location of the log file +MT_LOGFILE='/var/log/mediatomb.log' + +# Location of the config file/database +MT_HOME='/var/lib/mediatomb' +MT_CFGDIR='.mediatomb' + +# User defined command line options +MT_OPTIONS='' diff --git a/community-testing/mediatomb/mediatomb.install b/community-testing/mediatomb/mediatomb.install new file mode 100644 index 000000000..56f6ef92c --- /dev/null +++ b/community-testing/mediatomb/mediatomb.install @@ -0,0 +1,9 @@ +post_install() { + echo 'Warning: the MediaTomb web interface exposes your filesystem to the network' + echo 'For maximum security, set <ui enabled="no"> in your MediaTomb config file' +} + +post_upgrade() { + # TODO: disable next update + post_install +} diff --git a/community-testing/mediatomb/mediatomb.rc b/community-testing/mediatomb/mediatomb.rc new file mode 100644 index 000000000..7b93012cd --- /dev/null +++ b/community-testing/mediatomb/mediatomb.rc @@ -0,0 +1,54 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/mediatomb + +MT_OPTIONS="-p $MT_PORT -u $MT_USER -g $MT_GROUP -P $MT_PIDFILE \ + -l $MT_LOGFILE -m $MT_HOME -f $MT_CFGDIR $MT_OPTIONS" + +case "$1" in + start) + stat_busy "Starting Mediatomb UPnP Media Server" + + chown "$MT_USER:$MT_GROUP" "$MT_HOME" + + if ! pidof -o %PPID /usr/bin/mediatomb &> /dev/null; then + rm -f "$MT_PIDFILE" + fi + + PID="$(cat "$MT_PIDFILE" 2> /dev/null)" + + if [ -z "$PID" ] && /usr/bin/mediatomb -d $MT_OPTIONS; then + add_daemon mediatomb + stat_done + else + stat_fail + fi + ;; + + stop) + stat_busy "Stopping Mediatomb UPnP Media Server" + + PID="$(cat "$MT_PIDFILE" 2> /dev/null)" + + if [ -n "$PID" ] && kill "$PID" &> /dev/null; then + rm -f "$MT_PIDFILE" + rm_daemon mediatomb + stat_done + else + stat_fail + fi + ;; + + restart) + "$0" stop + sleep 1 + "$0" start + ;; + + *) + echo "usage: $0 {start|stop|restart}" + ;; +esac +exit 0 diff --git a/community-testing/mediatomb/tonewjs.patch b/community-testing/mediatomb/tonewjs.patch new file mode 100644 index 000000000..115968530 --- /dev/null +++ b/community-testing/mediatomb/tonewjs.patch @@ -0,0 +1,564 @@ +diff -up mediatomb-0.12.1-back/build/Makefile.in.tonewjs mediatomb-0.12.1-back/build/Makefile.in +--- mediatomb-0.12.1-back/build/Makefile.in.tonewjs 2010-04-08 00:40:15.000000000 +0200 ++++ mediatomb-0.12.1-back/build/Makefile.in 2011-04-19 17:17:01.343509944 +0200 +@@ -257,7 +257,7 @@ CURL_LIBS = @CURL_LIBS@ + CXX = @CXX@ + CXXCPP = @CXXCPP@ + CXXDEPMODE = @CXXDEPMODE@ +-CXXFLAGS = @CXXFLAGS@ ++CXXFLAGS = -fpermissive @CXXFLAGS@ + CYGPATH_W = @CYGPATH_W@ + DB_AUTOCREATE_OPTION_ENABLED = @DB_AUTOCREATE_OPTION_ENABLED@ + DB_AUTOCREATE_OPTION_REQUESTED = @DB_AUTOCREATE_OPTION_REQUESTED@ +diff -up mediatomb-0.12.1-back/src/scripting/import_script.cc.tonewjs mediatomb-0.12.1-back/src/scripting/import_script.cc +--- mediatomb-0.12.1-back/src/scripting/import_script.cc.tonewjs 2011-04-18 13:10:48.000000000 +0200 ++++ mediatomb-0.12.1-back/src/scripting/import_script.cc 2011-04-18 13:29:36.000000000 +0200 +@@ -53,8 +53,8 @@ ImportScript::ImportScript(Ref<Runtime> + try + { + load(scriptPath); +- root = JS_NewScriptObject(cx, script); +- JS_AddNamedRoot(cx, &root, "ImportScript"); ++ root = JS_NewObject(cx, NULL, script, NULL); ++ JS_AddNamedObjectRoot(cx, &root, "ImportScript"); + } + catch (Exception ex) + { +@@ -117,7 +117,7 @@ ImportScript::~ImportScript() + #endif + + if (root) +- JS_RemoveRoot(cx, &root); ++ JS_RemoveObjectRoot(cx, &root); + + #ifdef JS_THREADSAFE + JS_EndRequest(cx); +diff -up mediatomb-0.12.1-back/src/scripting/js_functions.cc.tonewjs mediatomb-0.12.1-back/src/scripting/js_functions.cc +--- mediatomb-0.12.1-back/src/scripting/js_functions.cc.tonewjs 2011-04-18 13:29:55.000000000 +0200 ++++ mediatomb-0.12.1-back/src/scripting/js_functions.cc 2011-04-19 16:48:04.009229611 +0200 +@@ -49,7 +49,7 @@ using namespace zmm; + extern "C" { + + JSBool +-js_print(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) ++js_print(JSContext *cx, uintN argc, jsval *argv) + { + uintN i; + JSString *str; +@@ -60,19 +60,21 @@ js_print(JSContext *cx, JSObject *obj, u + if (!str) + return JS_TRUE; + argv[i] = STRING_TO_JSVAL(str); +- log_js("%s\n", JS_GetStringBytes(str)); ++ char * log_str = JS_EncodeString(cx, str); ++ log_js("%s\n", log_str); ++ JS_free(cx, log_str); + } + return JS_TRUE; + } + + JSBool +-js_copyObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) ++js_copyObject(JSContext *cx, uintN argc, jsval *argv) + { + jsval arg; + JSObject *js_cds_obj; + JSObject *js_cds_clone_obj; + +- Script *self = (Script *)JS_GetPrivate(cx, obj); ++ Script *self = (Script *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv)); + + try + { +@@ -91,7 +93,7 @@ js_copyObject(JSContext *cx, JSObject *o + + self->cdsObject2jsObject(cds_obj, js_cds_clone_obj); + +- *rval = OBJECT_TO_JSVAL(js_cds_clone_obj); ++ JS_SET_RVAL(cx, argv, OBJECT_TO_JSVAL(js_cds_clone_obj)); + + return JS_TRUE; + +@@ -110,7 +112,7 @@ js_copyObject(JSContext *cx, JSObject *o + } + + JSBool +-js_addCdsObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) ++js_addCdsObject(JSContext *cx, uintN argc, jsval *argv) + { + try + { +@@ -126,7 +128,7 @@ js_addCdsObject(JSContext *cx, JSObject + Ref<StringConverter> p2i; + Ref<StringConverter> i2i; + +- Script *self = (Script *)JS_GetPrivate(cx, obj); ++ Script *self = (Script *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv)); + + if (self == NULL) + { +@@ -156,20 +158,20 @@ js_addCdsObject(JSContext *cx, JSObject + if (!str) + path = _("/"); + else +- path = JS_GetStringBytes(str); ++ path = JS_EncodeString(cx, str); + + JSString *cont = JS_ValueToString(cx, argv[2]); + if (cont) + { +- containerclass = JS_GetStringBytes(cont); ++ containerclass = JS_EncodeString(cx, cont); + if (!string_ok(containerclass) || containerclass == "undefined") + containerclass = nil; + } + + if (self->whoami() == S_PLAYLIST) +- js_orig_obj = self->getObjectProperty(obj, _("playlist")); ++ js_orig_obj = self->getObjectProperty(JS_THIS_OBJECT(cx, argv), _("playlist")); + else if (self->whoami() == S_IMPORT) +- js_orig_obj = self->getObjectProperty(obj, _("orig")); ++ js_orig_obj = self->getObjectProperty(JS_THIS_OBJECT(cx, argv), _("orig")); + + if (js_orig_obj == NULL) + { +@@ -285,8 +287,7 @@ js_addCdsObject(JSContext *cx, JSObject + JSString *str2 = JS_NewStringCopyN(cx, tmp.c_str(), tmp.length()); + if (!str2) + return JS_TRUE; +- *rval = STRING_TO_JSVAL(str2); +- ++ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(str2)); + return JS_TRUE; + } + catch (ServerShutdownException se) +@@ -302,7 +303,7 @@ js_addCdsObject(JSContext *cx, JSObject + return JS_TRUE; + } + +-static JSBool convert_charset_generic(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval, charset_convert_t chr) ++static JSBool convert_charset_generic(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, charset_convert_t chr) + { + try + { +@@ -321,7 +322,7 @@ static JSBool convert_charset_generic(JS + { + str = JS_ValueToString(cx, argv[0]); + if (str) +- result = JS_GetStringBytes(str); ++ result = JS_EncodeString(cx, str); + } + + if (result != nil) +@@ -330,7 +331,7 @@ static JSBool convert_charset_generic(JS + JSString *str2 = JS_NewStringCopyN(cx, result.c_str(), result.length()); + if (!str2) + return JS_TRUE; +- *rval = STRING_TO_JSVAL(str2); ++ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(str2)); + } + } + catch (ServerShutdownException se) +@@ -347,24 +348,23 @@ static JSBool convert_charset_generic(JS + } + + +-JSBool js_f2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) ++JSBool js_f2i(JSContext *cx, uintN argc, jsval *argv) + { +- return convert_charset_generic(cx, obj, argc, argv, rval, F2I); ++ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, F2I); + } + +-JSBool js_m2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) ++JSBool js_m2i(JSContext *cx, uintN argc, jsval *argv) + { +- return convert_charset_generic(cx, obj, argc, argv, rval, M2I); +-} ++ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, M2I); } + +-JSBool js_p2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) ++JSBool js_p2i(JSContext *cx, uintN argc, jsval *argv) + { +- return convert_charset_generic(cx, obj, argc, argv, rval, P2I); ++ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, P2I); + } + +-JSBool js_j2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) ++JSBool js_j2i(JSContext *cx, uintN argc, jsval *argv) + { +- return convert_charset_generic(cx, obj, argc, argv, rval, J2I); ++ return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, J2I); + } + + } // extern "C" +diff -up mediatomb-0.12.1-back/src/scripting/js_functions.h.tonewjs mediatomb-0.12.1-back/src/scripting/js_functions.h +--- mediatomb-0.12.1-back/src/scripting/js_functions.h.tonewjs 2010-03-25 15:58:05.000000000 +0100 ++++ mediatomb-0.12.1-back/src/scripting/js_functions.h 2011-04-18 13:59:29.000000000 +0200 +@@ -40,18 +40,18 @@ + extern "C" { + + /// \brief Log output. +-JSBool js_print(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); ++JSBool js_print(JSContext *cx, uintN argc, jsval *argv); + + /// \brief Adds an object to the database. +-JSBool js_addCdsObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); ++JSBool js_addCdsObject(JSContext *cx, uintN argc, jsval *argv); + + /// \brief Makes a copy of an CDS object. +-JSBool js_copyObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); ++JSBool js_copyObject(JSContext *cx, uintN argc, jsval *argv); + +-JSBool js_f2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); +-JSBool js_m2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); +-JSBool js_p2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); +-JSBool js_j2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval); ++JSBool js_f2i(JSContext *cx, uintN argc, jsval *argv); ++JSBool js_m2i(JSContext *cx, uintN argc, jsval *argv); ++JSBool js_p2i(JSContext *cx, uintN argc, jsval *argv); ++JSBool js_j2i(JSContext *cx, uintN argc, jsval *argv); + + } // extern "C" + +diff -up mediatomb-0.12.1-back/src/scripting/playlist_parser_script.cc.tonewjs mediatomb-0.12.1-back/src/scripting/playlist_parser_script.cc +--- mediatomb-0.12.1-back/src/scripting/playlist_parser_script.cc.tonewjs 2011-04-18 13:34:14.000000000 +0200 ++++ mediatomb-0.12.1-back/src/scripting/playlist_parser_script.cc 2011-04-18 13:51:59.000000000 +0200 +@@ -46,9 +46,9 @@ using namespace zmm; + extern "C" { + + static JSBool +-js_readln(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) ++js_readln(JSContext *cx, uintN argc, jsval *argv) + { +- PlaylistParserScript *self = (PlaylistParserScript *)JS_GetPrivate(cx, obj); ++ PlaylistParserScript *self = (PlaylistParserScript *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv)); + + String line; + +@@ -69,7 +69,7 @@ js_readln(JSContext *cx, JSObject *obj, + + JSString *jsline = JS_NewStringCopyZ(cx, line.c_str()); + +- *rval = STRING_TO_JSVAL(jsline); ++ JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(jsline)); + + return JS_TRUE; + } +@@ -93,8 +93,8 @@ PlaylistParserScript::PlaylistParserScri + + String scriptPath = ConfigManager::getInstance()->getOption(CFG_IMPORT_SCRIPTING_PLAYLIST_SCRIPT); + load(scriptPath); +- root = JS_NewScriptObject(cx, script); +- JS_AddNamedRoot(cx, &root, "PlaylistScript"); ++ root = JS_NewObject(cx, NULL, script, NULL); ++ JS_AddNamedObjectRoot(cx, &root, "PlaylistScript"); + } + catch (Exception ex) + { +@@ -245,7 +245,7 @@ PlaylistParserScript::~PlaylistParserScr + #endif + + if (root) +- JS_RemoveRoot(cx, &root); ++ JS_RemoveObjectRoot(cx, &root); + + #ifdef JS_THREADSAFE + JS_EndRequest(cx); +diff -up mediatomb-0.12.1-back/src/scripting/script.cc.tonewjs mediatomb-0.12.1-back/src/scripting/script.cc +--- mediatomb-0.12.1-back/src/scripting/script.cc.tonewjs 2011-04-18 13:53:07.000000000 +0200 ++++ mediatomb-0.12.1-back/src/scripting/script.cc 2011-04-19 18:26:34.460338804 +0200 +@@ -87,7 +87,7 @@ String Script::getProperty(JSObject *obj + str = JS_ValueToString(cx, val); + if (! str) + return nil; +- return JS_GetStringBytes(str); ++ return JS_EncodeString(cx, str); + } + + int Script::getBoolProperty(JSObject *obj, String name) +@@ -427,14 +427,14 @@ static JSFunctionSpec js_global_function + try + { + common_script = _load(common_scr_path); +- common_root = JS_NewScriptObject(cx, common_script); +- JS_AddNamedRoot(cx, &common_root, "common-script"); ++ common_root = JS_NewObject(cx, NULL, common_script, NULL); ++ JS_AddNamedObjectRoot(cx, &common_root, "common-script"); + _execute(common_script); + } + catch (Exception e) + { + if (common_root) +- JS_RemoveRoot(cx, &common_root); ++ JS_RemoveObjectRoot(cx, &common_root); + + log_js("Unable to load %s: %s\n", common_scr_path.c_str(), + e.getMessage().c_str()); +@@ -460,7 +460,7 @@ Script::~Script() + JS_BeginRequest(cx); + #endif + if (common_root) +- JS_RemoveRoot(cx, &common_root); ++ JS_RemoveObjectRoot(cx, &common_root); + + /* + * scripts are unrooted and will be cleaned up by GC +@@ -504,11 +504,11 @@ void Script::initGlobalObject() + static JSClass global_class = + { + "global", /* name */ +- JSCLASS_HAS_PRIVATE, /* flags */ ++ JSCLASS_HAS_PRIVATE | JSCLASS_GLOBAL_FLAGS,/* flags */ + JS_PropertyStub, /* add property */ + JS_PropertyStub, /* del property */ + JS_PropertyStub, /* get property */ +- JS_PropertyStub, /* set property */ ++ JS_StrictPropertyStub, /* set property */ + JS_EnumerateStandardClasses, /* enumerate */ + JS_ResolveStub, /* resolve */ + JS_ConvertStub, /* convert */ +@@ -517,7 +517,7 @@ void Script::initGlobalObject() + }; + + /* create the global object here */ +- glob = JS_NewObject(cx, &global_class, NULL, NULL); ++ glob = JS_NewCompartmentAndGlobalObject(cx, &global_class, NULL); + if (! glob) + throw _Exception(_("Scripting: could not initialize glboal class")); + +@@ -539,12 +539,12 @@ void Script::defineFunctions(JSFunctionS + throw _Exception(_("Scripting: JS_DefineFunctions failed")); + } + +-JSScript *Script::_load(zmm::String scriptPath) ++JSObject *Script::_load(zmm::String scriptPath) + { + if (glob == NULL) + initGlobalObject(); + +- JSScript *scr; ++ JSObject *scr; + + String scriptText = read_text_file(scriptPath); + +@@ -571,14 +571,11 @@ JSScript *Script::_load(zmm::String scri + + void Script::load(zmm::String scriptPath) + { +- if (script) +- JS_DestroyScript(cx, script); +- + script = _load((scriptPath)); + } + + +-void Script::_execute(JSScript *scr) ++void Script::_execute(JSObject *scr) + { + jsval ret_val; + +@@ -662,7 +659,7 @@ Ref<CdsObject> Script::jsObject2cdsObjec + JSObject *js_meta = getObjectProperty(js, _("meta")); + if (js_meta) + { +- JS_AddNamedRoot(cx, &js_meta, "meta"); ++ JS_AddNamedObjectRoot(cx, &js_meta, "meta"); + /// \todo: only metadata enumerated in MT_KEYS is taken + for (int i = 0; i < M_MAX; i++) + { +@@ -687,7 +684,7 @@ Ref<CdsObject> Script::jsObject2cdsObjec + } + } + } +- JS_RemoveRoot(cx, &js_meta); ++ JS_RemoveObjectRoot(cx, &js_meta); + } + + // stuff that has not been exported to js +diff -up mediatomb-0.12.1-back/src/scripting/script.h.tonewjs mediatomb-0.12.1-back/src/scripting/script.h +--- mediatomb-0.12.1-back/src/scripting/script.h.tonewjs 2011-04-18 12:56:14.000000000 +0200 ++++ mediatomb-0.12.1-back/src/scripting/script.h 2011-04-18 12:56:51.000000000 +0200 +@@ -66,8 +66,8 @@ public: + JSRuntime *rt; + JSContext *cx; + JSObject *glob; +- JSScript *script; +- JSScript *common_script; ++ JSObject *script; ++ JSObject *common_script; + + public: + Script(zmm::Ref<Runtime> runtime); +@@ -115,8 +115,8 @@ private: + JSObject *common_root; + + void initGlobalObject(); +- JSScript *_load(zmm::String scriptPath); +- void _execute(JSScript *scr); ++ JSObject *_load(zmm::String scriptPath); ++ void _execute(JSObject *scr); + zmm::Ref<StringConverter> _p2i; + zmm::Ref<StringConverter> _j2i; + zmm::Ref<StringConverter> _f2i; +--- mediatomb-0.12.1/configure.tonewjs 2011-07-04 20:20:00.290227110 +1200 ++++ mediatomb-0.12.1/configure 2011-07-04 20:20:28.186894644 +1200 +@@ -23784,14 +23784,14 @@ if test "x$ac_cv_lib_smjs_JS_NewObject" + + else + +- LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs $ADD_PTHREAD_CFLAGS" +- { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs" >&5 +-$as_echo_n "checking for JS_NewObject in -lmozjs... " >&6; } +-if test "${ac_cv_lib_mozjs_JS_NewObject+set}" = set; then ++ LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs185 $ADD_PTHREAD_CFLAGS" ++ { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs185" >&5 ++$as_echo_n "checking for JS_NewObject in -lmozjs185... " >&6; } ++if test "${ac_cv_lib_mozjs185_JS_NewObject+set}" = set; then + $as_echo_n "(cached) " >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lmozjs $LIBS" ++LIBS="-lmozjs185 $LIBS" + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -23835,12 +23835,12 @@ $as_echo "$ac_try_echo") >&5 + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then +- ac_cv_lib_mozjs_JS_NewObject=yes ++ ac_cv_lib_mozjs185_JS_NewObject=yes + else + $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- ac_cv_lib_mozjs_JS_NewObject=no ++ ac_cv_lib_mozjs185_JS_NewObject=no + fi + + rm -rf conftest.dSYM +@@ -23848,12 +23848,12 @@ rm -f core conftest.err conftest.$ac_obj + conftest$ac_exeext conftest.$ac_ext + LIBS=$ac_check_lib_save_LIBS + fi +-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs_JS_NewObject" >&5 +-$as_echo "$ac_cv_lib_mozjs_JS_NewObject" >&6; } +-if test "x$ac_cv_lib_mozjs_JS_NewObject" = x""yes; then ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs185_JS_NewObject" >&5 ++$as_echo "$ac_cv_lib_mozjs185_JS_NewObject" >&6; } ++if test "x$ac_cv_lib_mozjs185_JS_NewObject" = x""yes; then + +- JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs" +- MOZLIB=mozjs ++ JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs185" ++ MOZLIB=mozjs185 + + else + +@@ -24020,13 +24020,13 @@ if test "x$ac_cv_lib_smjs_JS_NewObject" + else + + unset ac_cv_lib_smjs_JS_NewObject +- { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs" >&5 +-$as_echo_n "checking for JS_NewObject in -lmozjs... " >&6; } +-if test "${ac_cv_lib_mozjs_JS_NewObject+set}" = set; then ++ { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs185" >&5 ++$as_echo_n "checking for JS_NewObject in -lmozjs185... " >&6; } ++if test "${ac_cv_lib_mozjs185_JS_NewObject+set}" = set; then + $as_echo_n "(cached) " >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lmozjs $LIBS" ++LIBS="-lmozjs185 $LIBS" + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -24070,12 +24070,12 @@ $as_echo "$ac_try_echo") >&5 + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then +- ac_cv_lib_mozjs_JS_NewObject=yes ++ ac_cv_lib_mozjs185_JS_NewObject=yes + else + $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- ac_cv_lib_mozjs_JS_NewObject=no ++ ac_cv_lib_mozjs185_JS_NewObject=no + fi + + rm -rf conftest.dSYM +@@ -24083,12 +24083,12 @@ rm -f core conftest.err conftest.$ac_obj + conftest$ac_exeext conftest.$ac_ext + LIBS=$ac_check_lib_save_LIBS + fi +-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs_JS_NewObject" >&5 +-$as_echo "$ac_cv_lib_mozjs_JS_NewObject" >&6; } +-if test "x$ac_cv_lib_mozjs_JS_NewObject" = x""yes; then ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs185_JS_NewObject" >&5 ++$as_echo "$ac_cv_lib_mozjs185_JS_NewObject" >&6; } ++if test "x$ac_cv_lib_mozjs185_JS_NewObject" = x""yes; then + +- MOZLIB=mozjs +- JS_LIBS="-lmozjs" ++ MOZLIB=mozjs185 ++ JS_LIBS="-lmozjs185" + + else + +@@ -24239,15 +24239,15 @@ if test "x$ac_cv_lib_smjs_JS_NewObject" + + else + +- LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs" +- unset ac_cv_lib_mozjs_JS_NewObject +- { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs" >&5 +-$as_echo_n "checking for JS_NewObject in -lmozjs... " >&6; } +-if test "${ac_cv_lib_mozjs_JS_NewObject+set}" = set; then ++ LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs185" ++ unset ac_cv_lib_mozjs185_JS_NewObject ++ { $as_echo "$as_me:$LINENO: checking for JS_NewObject in -lmozjs185" >&5 ++$as_echo_n "checking for JS_NewObject in -lmozjs185... " >&6; } ++if test "${ac_cv_lib_mozjs185_JS_NewObject+set}" = set; then + $as_echo_n "(cached) " >&6 + else + ac_check_lib_save_LIBS=$LIBS +-LIBS="-lmozjs $LIBS" ++LIBS="-lmozjs185 $LIBS" + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -24291,12 +24291,12 @@ $as_echo "$ac_try_echo") >&5 + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then +- ac_cv_lib_mozjs_JS_NewObject=yes ++ ac_cv_lib_mozjs185_JS_NewObject=yes + else + $as_echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- ac_cv_lib_mozjs_JS_NewObject=no ++ ac_cv_lib_mozjs185_JS_NewObject=no + fi + + rm -rf conftest.dSYM +@@ -24304,12 +24304,12 @@ rm -f core conftest.err conftest.$ac_obj + conftest$ac_exeext conftest.$ac_ext + LIBS=$ac_check_lib_save_LIBS + fi +-{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs_JS_NewObject" >&5 +-$as_echo "$ac_cv_lib_mozjs_JS_NewObject" >&6; } +-if test "x$ac_cv_lib_mozjs_JS_NewObject" = x""yes; then ++{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_mozjs185_JS_NewObject" >&5 ++$as_echo "$ac_cv_lib_mozjs185_JS_NewObject" >&6; } ++if test "x$ac_cv_lib_mozjs185_JS_NewObject" = x""yes; then + +- JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs" +- MOZLIB=mozjs ++ JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs185" ++ MOZLIB=mozjs185 + + else + diff --git a/community-testing/mongodb/PKGBUILD b/community-testing/mongodb/PKGBUILD new file mode 100644 index 000000000..04fa547a9 --- /dev/null +++ b/community-testing/mongodb/PKGBUILD @@ -0,0 +1,60 @@ +# Maintainer: Thomas Dziedzic < gostrc at gmail > +# Contributor: Mathias Stearn <mathias@10gen.com> +# Contributor: Alec Thomas + +pkgname=mongodb +pkgver=1.8.2 +pkgrel=5 +pkgdesc='A high-performance, open source, schema-free document-oriented database.' +arch=('i686' 'x86_64') +url='http://www.mongodb.org' +license=('AGPL3') +depends=('boost-libs' 'js' 'pcre') +makedepends=('scons' 'boost') +optdepends=('libpcap: needed for mongosniff') +backup=('etc/mongodb.conf') +install="mongodb.install" +source=("http://downloads.mongodb.org/src/mongodb-src-r${pkgver}.tar.gz" + 'mongodb.rc' + 'mongodb.conf' + 'mongodb-1.8.0-spidermonkey-1.8.5-support.patch' + 'add-js185-support-to-SConstruct.diff') +md5sums=('951fb1a75d90fc822cf4528585a970cf' + '85eaa28e349fdc6250f883624e624cca' + '4839fe1d638187ca3226e8267b947318' + '2e6409732fba887c9cfe81257b5260ad' + 'ca7e62be31389d951bfd8848b1675c1b') + +build() { + export SCONSFLAGS="$MAKEFLAGS" + + cd mongodb-src-r${pkgver} + + # js185 support https://jira.mongodb.org/browse/SERVER-2887 + patch -Np1 -i ${srcdir}/mongodb-1.8.0-spidermonkey-1.8.5-support.patch + patch -Np0 -i ${srcdir}/add-js185-support-to-SConstruct.diff + + scons \ + all \ + --full +} + +package() { + cd mongodb-src-r${pkgver} + + scons \ + install \ + --full \ + --prefix=${pkgdir}/usr + + install -D -m755 ${srcdir}/mongodb.rc \ + ${pkgdir}/etc/rc.d/mongodb + install -D -m644 ${srcdir}/mongodb.conf \ + ${pkgdir}/etc/mongodb.conf + install -d -m700 ${pkgdir}/var/lib/mongodb + install -d -m755 ${pkgdir}/var/log/mongodb + + if [ -d ${pkgdir}/usr/lib64 ]; then + mv ${pkgdir}/usr/lib64 ${pkgdir}/usr/lib + fi +} diff --git a/community-testing/mongodb/add-js185-support-to-SConstruct.diff b/community-testing/mongodb/add-js185-support-to-SConstruct.diff new file mode 100644 index 000000000..c621d00cb --- /dev/null +++ b/community-testing/mongodb/add-js185-support-to-SConstruct.diff @@ -0,0 +1,12 @@ +--- SConstruct.original 2011-07-05 14:23:46.334748007 +0000 ++++ SConstruct 2011-07-05 14:26:15.729533840 +0000 +@@ -208,6 +208,9 @@ + justClientLib = (COMMAND_LINE_TARGETS == ['mongoclient']) + + env = Environment( MSVS_ARCH=msarch , tools = ["default", "gch"], toolpath = '.' ) ++ ++env.ParseConfig('pkg-config --cflags --libs mozjs185') ++ + if has_option( "cxx" ): + env["CC"] = get_option( "cxx" ) + env["CXX"] = get_option( "cxx" ) diff --git a/community-testing/mongodb/mongodb-1.8.0-spidermonkey-1.8.5-support.patch b/community-testing/mongodb/mongodb-1.8.0-spidermonkey-1.8.5-support.patch new file mode 100644 index 000000000..46160450f --- /dev/null +++ b/community-testing/mongodb/mongodb-1.8.0-spidermonkey-1.8.5-support.patch @@ -0,0 +1,1502 @@ +--- mongodb-src-r1.8.0/SConstruct.mozjs185~ 2011-03-16 16:33:30.000000000 +0100 ++++ mongodb-src-r1.8.0/SConstruct 2011-04-01 22:16:43.411100876 +0200 +@@ -671,7 +671,6 @@ if nix: + env.Append( CPPFLAGS="-fPIC -fno-strict-aliasing -ggdb -pthread -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch" ) + # env.Append( " -Wconversion" ) TODO: this doesn't really work yet + if linux: +- env.Append( CPPFLAGS=" -Werror " ) + env.Append( CPPFLAGS=" -fno-builtin-memcmp " ) # glibc's memcmp is faster than gcc's + env.Append( CXXFLAGS=" -Wnon-virtual-dtor " ) + env.Append( LINKFLAGS=" -fPIC -pthread -rdynamic" ) +@@ -893,11 +892,11 @@ def doConfigure( myenv , needPcre=True , + if usesm: + + # see http://www.mongodb.org/pages/viewpageattachments.action?pageId=12157032 +- J = [ "mozjs" , "js", "js_static" ] ++ J = [ "mozjs185" , "js", "js_static" ] + if windows: + if msarch == "amd64": + if release: +- J = [ "js64r", "js", "mozjs" , "js_static" ] ++ J = [ "js64r", "js", "mozjs185" , "js_static" ] + else: + J = "js64d" + print( "looking for js64d.lib for spidermonkey. (available at mongodb.org prebuilt)" ); +@@ -905,14 +904,12 @@ def doConfigure( myenv , needPcre=True , + if not force32: + print( "Assuming a 32 bit build is desired" ) + if release: +- J = [ "js32r", "js", "mozjs" , "js_static" ] ++ J = [ "js32r", "js", "mozjs185" , "js_static" ] + else: +- J = [ "js32d", "js", "mozjs" , "js_static" ] ++ J = [ "js32d", "js", "mozjs185" , "js_static" ] + + myCheckLib( J , True ) + mozHeader = "js" +- if bigLibString(myenv).find( "mozjs" ) >= 0: +- mozHeader = "mozjs" + + if not conf.CheckHeader( mozHeader + "/jsapi.h" ): + if conf.CheckHeader( "jsapi.h" ): +@@ -921,6 +918,13 @@ def doConfigure( myenv , needPcre=True , + print( "no spider monkey headers!" ) + Exit(1) + ++ if conf.CheckFunc( 'JS_NewCompartmentAndGlobalObject' ): ++ myenv.Append( CPPDEFINES=[ "HAVE_COMPARTMENTS" ] ) ++ if conf.CheckFunc( 'JS_GetStringCharsAndLength' ): ++ myenv.Append( CPPDEFINES=[ "HAVE_JS_GET_STRING_CHARS_AND_LENGTH" ] ) ++ if conf.CheckFunc( 'JS_NewRegExpObjectNoStatics' ): ++ myenv.Append( CPPDEFINES=[ "JS_NEW_REG_EXP_OBJECT_NO_STATISTICS" ] ) ++ + if usev8: + if debugBuild: + myCheckLib( [ "v8_g" , "v8" ] , True ) +--- mongodb-src-r1.8.0/scripting/engine_spidermonkey.cpp.mozjs185~ 2011-03-16 16:33:30.000000000 +0100 ++++ mongodb-src-r1.8.0/scripting/engine_spidermonkey.cpp 2011-04-01 22:42:19.780233492 +0200 +@@ -192,8 +192,13 @@ namespace mongo { + } + + string toString( JSString * so ) { ++#ifdef HAVE_JS_GET_STRING_CHARS_AND_LENGTH ++ size_t srclen; ++ const jschar * s = JS_GetStringCharsAndLength( _context , so , &srclen ); ++#else + jschar * s = JS_GetStringChars( so ); + size_t srclen = JS_GetStringLength( so ); ++#endif + if( srclen == 0 ) + return ""; + +@@ -360,7 +365,7 @@ namespace mongo { + + case JSTYPE_OBJECT: { + JSObject * o = JSVAL_TO_OBJECT( val ); +- if ( ! o || o == JSVAL_NULL ) { ++ if ( ! o || o == (JSObject *)JSVAL_NULL ){ + b.appendNull( name ); + } + else if ( ! appendSpecialDBObject( this , b , name , val , o ) ) { +@@ -419,16 +424,15 @@ namespace mongo { + return true; + } + +- void addRoot( JSFunction * f , const char * name ); ++ void addRoot( JSFunction * f ); + + JSFunction * compileFunction( const char * code, JSObject * assoc = 0 ) { +- const char * gcName = "unknown"; +- JSFunction * f = _compileFunction( code , assoc , gcName ); +- //addRoot( f , gcName ); ++ JSFunction * f = _compileFunction( code , assoc ); ++ //addRoot( f ); + return f; + } + +- JSFunction * _compileFunction( const char * raw , JSObject * assoc , const char *& gcName ) { ++ JSFunction * _compileFunction( const char * raw , JSObject * assoc ) { + if ( ! assoc ) + assoc = JS_GetGlobalObject( _context ); + +@@ -447,7 +451,6 @@ namespace mongo { + if ( isSimpleStatement( s ) ) { + s = "return " + s; + } +- gcName = "cf anon"; + fname << "anon"; + return JS_CompileFunction( _context , assoc , fname.str().c_str() , 0 , 0 , s.c_str() , s.size() , "nofile_a" , 0 ); + } +@@ -488,7 +491,6 @@ namespace mongo { + log() << "compile failed for: " << raw << endl; + return 0; + } +- gcName = "cf normal"; + return func; + } + +@@ -630,7 +632,11 @@ namespace mongo { + flags++; + } + ++#ifdef JS_NEW_REG_EXP_OBJECT_NO_STATISTICS ++ JSObject * r = JS_NewRegExpObjectNoStatics( _context , (char*)e.regex() , strlen( e.regex() ) , flagNumber); ++#else + JSObject * r = JS_NewRegExpObject( _context , (char*)e.regex() , strlen( e.regex() ) , flagNumber ); ++#endif + assert( r ); + return OBJECT_TO_JSVAL( r ); + } +@@ -791,7 +797,7 @@ namespace mongo { + + BSONFieldIterator * it = (BSONFieldIterator*)JSVAL_TO_PRIVATE( *statep ); + if ( ! it ) { +- *statep = 0; ++ *statep = JSVAL_NULL; + return JS_TRUE; + } + +@@ -803,7 +809,7 @@ namespace mongo { + } + else { + delete it; +- *statep = 0; ++ *statep = JSVAL_NULL; + } + return JS_TRUE; + } +@@ -818,7 +824,7 @@ namespace mongo { + return JS_FALSE; + } + +- JSBool noaccess( JSContext *cx, JSObject *obj, jsval idval, jsval *vp) { ++ JSBool noaccess( JSContext *cx, JSObject *obj, jsid id, jsval *vp){ + BSONHolder * holder = GETHOLDER( cx , obj ); + if ( ! holder ) { + // in init code still +@@ -830,24 +836,37 @@ namespace mongo { + return JS_FALSE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) ++ JSBool strict_noaccess( JSContext *cx, JSObject *obj, jsid id, JSBool strict, jsval *vp){ ++ return noaccess( cx , obj , id , vp ); ++ } ++ ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass bson_ro_class = { + "bson_ro_object" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE | JSCLASS_NEW_ENUMERATE , +- noaccess, noaccess, JS_PropertyStub, noaccess, +- (JSEnumerateOp)bson_enumerate, (JSResolveOp)(&resolveBSONField) , JS_ConvertStub, bson_finalize , ++ noaccess, noaccess, JS_PropertyStub, strict_noaccess, ++ (JSEnumerateOp)bson_enumerate, (JSResolveOp)resolveBSONField , JS_ConvertStub, bson_finalize , + JSCLASS_NO_OPTIONAL_MEMBERS + }; + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool bson_cons( JSContext* cx, uintN argc, jsval* vp ){ ++#else + JSBool bson_cons( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + cerr << "bson_cons : shouldn't be here!" << endl; + JS_ReportError( cx , "can't construct bson object" ); + return JS_FALSE; + } + + JSFunctionSpec bson_functions[] = { +- { 0 } ++ JS_FS_END + }; + +- JSBool bson_add_prop( JSContext *cx, JSObject *obj, jsval idval, jsval *vp) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSPropertyOp) ++ JSBool bson_add_prop( JSContext *cx, JSObject *obj, jsid id, jsval *vp){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + BSONHolder * holder = GETHOLDER( cx , obj ); + if ( ! holder ) { + // static init +@@ -864,8 +883,10 @@ namespace mongo { + return JS_TRUE; + } + +- +- JSBool mark_modified( JSContext *cx, JSObject *obj, jsval idval, jsval *vp) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSPropertyOp) ++ JSBool mark_modified( JSContext *cx, JSObject *obj, jsid id, JSBool strict, jsval *vp){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + Convertor c(cx); + BSONHolder * holder = GETHOLDER( cx , obj ); + if ( !holder ) // needed when we're messing with DBRef.prototype +@@ -877,7 +898,10 @@ namespace mongo { + return JS_TRUE; + } + +- JSBool mark_modified_remove( JSContext *cx, JSObject *obj, jsval idval, jsval *vp) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSPropertyOp) ++ JSBool mark_modified_remove( JSContext *cx, JSObject *obj, jsid id, jsval *vp){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + Convertor c(cx); + BSONHolder * holder = GETHOLDER( cx , obj ); + if ( holder->_inResolve ) +@@ -887,23 +911,26 @@ namespace mongo { + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass bson_class = { + "bson_object" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE | JSCLASS_NEW_ENUMERATE , + bson_add_prop, mark_modified_remove, JS_PropertyStub, mark_modified, +- (JSEnumerateOp)bson_enumerate, (JSResolveOp)(&resolveBSONField) , JS_ConvertStub, bson_finalize , ++ (JSEnumerateOp)bson_enumerate, (JSResolveOp)resolveBSONField , JS_ConvertStub, bson_finalize , + JSCLASS_NO_OPTIONAL_MEMBERS + }; + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + static JSClass global_class = { + "global", JSCLASS_GLOBAL_FLAGS, +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + // --- global helpers --- + +- JSBool native_print( JSContext * cx , JSObject * obj , uintN argc, jsval *argv, jsval *rval ) { ++ JSBool native_print( JSContext * cx , uintN argc , jsval *vp ){ ++ jsval *argv = JS_ARGV( cx , vp); + stringstream ss; + Convertor c( cx ); + for ( uintN i=0; i<argc; i++ ) { +@@ -913,10 +940,13 @@ namespace mongo { + } + ss << "\n"; + Logstream::logLockless( ss.str() ); ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + +- JSBool native_helper( JSContext *cx , JSObject *obj , uintN argc, jsval *argv , jsval *rval ) { ++ JSBool native_helper( JSContext *cx , uintN argc, jsval *vp){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + + NativeFunction func = (NativeFunction)((long long)c.getNumber( obj , "x" ) ); +@@ -942,35 +972,37 @@ namespace mongo { + } + + if ( out.isEmpty() ) { +- *rval = JSVAL_VOID; ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + } + else { +- *rval = c.toval( out.firstElement() ); ++ JS_SET_RVAL( cx , vp , c.toval( out.firstElement() ) ); + } + + return JS_TRUE; + } + +- JSBool native_load( JSContext *cx , JSObject *obj , uintN argc, jsval *argv , jsval *rval ); ++ JSBool native_load( JSContext *cx , uintN argc, jsval *vp ); + +- JSBool native_gc( JSContext *cx , JSObject *obj , uintN argc, jsval *argv , jsval *rval ) { ++ JSBool native_gc( JSContext *cx , uintN argc, jsval *vp ){ + JS_GC( cx ); ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + + JSFunctionSpec globalHelpers[] = { +- { "print" , &native_print , 0 , 0 , 0 } , +- { "nativeHelper" , &native_helper , 1 , 0 , 0 } , +- { "load" , &native_load , 1 , 0 , 0 } , +- { "gc" , &native_gc , 1 , 0 , 0 } , +- { 0 , 0 , 0 , 0 , 0 } ++ JS_FS( "print" , &native_print , 0 , JSFUN_FAST_NATIVE ) , ++ JS_FS( "nativeHelper" , &native_helper , 1 , JSFUN_FAST_NATIVE ) , ++ JS_FS( "load" , &native_load , 1 , JSFUN_FAST_NATIVE ) , ++ JS_FS( "gc" , &native_gc , 1 , JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // ----END global helpers ---- + + // Object helpers + +- JSBool bson_get_size(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bson_get_size(JSContext *cx, uintN argc, jsval *vp){ ++ jsval *argv = JS_ARGV( cx , vp ); + if ( argc != 1 || !JSVAL_IS_OBJECT( argv[ 0 ] ) ) { + JS_ReportError( cx , "bsonsize requires one valid object" ); + return JS_FALSE; +@@ -979,7 +1011,7 @@ namespace mongo { + Convertor c(cx); + + if ( argv[0] == JSVAL_VOID || argv[0] == JSVAL_NULL ) { +- *rval = c.toval( 0.0 ); ++ JS_SET_RVAL( cx , vp , c.toval( 0.0 ) ); + return JS_TRUE; + } + +@@ -999,18 +1031,21 @@ namespace mongo { + size = temp.objsize(); + } + +- *rval = c.toval( size ); ++ JS_SET_RVAL( cx , vp , c.toval( size ) ); + return JS_TRUE; + } + + JSFunctionSpec objectHelpers[] = { +- { "bsonsize" , &bson_get_size , 1 , 0 , 0 } , +- { 0 , 0 , 0 , 0 , 0 } ++ JS_FS( "bsonsize" , &bson_get_size , 1 , JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // end Object helpers + +- JSBool resolveBSONField( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSResolveOp) ++ JSBool resolveBSONField( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + assert( JS_EnterLocalRootScope( cx ) ); + Convertor c( cx ); + +@@ -1023,7 +1058,7 @@ namespace mongo { + } + holder->check(); + +- string s = c.toString( id ); ++ string s = c.toString( idval ); + + BSONElement e = holder->_obj[ s.c_str() ]; + +@@ -1139,9 +1174,15 @@ namespace mongo { + //JS_SetVersion( _context , JSVERSION_LATEST); TODO + JS_SetErrorReporter( _context , errorReporter ); + ++#ifdef HAVE_COMPARTMENTS ++ _global = JS_NewCompartmentAndGlobalObject( _context , &global_class , NULL); ++ massert( 13442 , "JS_NewCompartmentAndGlobalObject failed for global" , _global ); ++ _call = JS_EnterCrossCompartmentCall( _context , _global); ++#else + _global = JS_NewObject( _context , &global_class, NULL, NULL); + massert( 10432 , "JS_NewObject failed for global" , _global ); + JS_SetGlobalObject( _context , _global ); ++#endif + massert( 10433 , "js init failed" , JS_InitStandardClasses( _context , _global ) ); + + JS_SetOptions( _context , JS_GetOptions( _context ) | JSOPTION_VAROBJFIX ); +@@ -1159,13 +1200,14 @@ namespace mongo { + smlock; + uassert( 10223 , "deleted SMScope twice?" , _convertor ); + +- for ( list<void*>::iterator i=_roots.begin(); i != _roots.end(); i++ ) { +- JS_RemoveRoot( _context , *i ); ++ for ( list<JSObject*>::iterator i=_roots.begin(); i != _roots.end(); i++ ){ ++ JSObject * obj = (JSObject *)*i; ++ JS_RemoveObjectRoot( _context , &obj ); + } + _roots.clear(); + + if ( _this ) { +- JS_RemoveRoot( _context , &_this ); ++ JS_RemoveObjectRoot( _context , &_this ); + _this = 0; + } + +@@ -1174,6 +1216,13 @@ namespace mongo { + _convertor = 0; + } + ++#ifdef HAVE_COMPARTMENTS ++ if ( _call ) { ++ JS_LeaveCrossCompartmentCall( _call ); ++ _call = 0; ++ } ++#endif ++ + if ( _context ) { + // This is expected to reclaim _global as well. + JS_DestroyContext( _context ); +@@ -1187,16 +1236,16 @@ namespace mongo { + assert( _convertor ); + return; + if ( _this ) { +- JS_RemoveRoot( _context , &_this ); ++ JS_RemoveObjectRoot( _context , &_this ); + _this = 0; + } + currentScope.reset( this ); + _error = ""; + } + +- void addRoot( void * root , const char * name ) { +- JS_AddNamedRoot( _context , root , name ); +- _roots.push_back( root ); ++ void addRoot( JSObject * obj ){ ++ JS_AddObjectRoot( _context , &obj ); ++ _roots.push_back( obj ); + } + + void init( const BSONObj * data ) { +@@ -1336,13 +1385,13 @@ namespace mongo { + void setThis( const BSONObj * obj ) { + smlock; + if ( _this ) { +- JS_RemoveRoot( _context , &_this ); ++ JS_RemoveObjectRoot( _context , &_this ); + _this = 0; + } + + if ( obj ) { + _this = _convertor->toJSObject( obj ); +- JS_AddNamedRoot( _context , &_this , "scope this" ); ++ JS_AddObjectRoot( _context , &_this ); + } + } + +@@ -1402,7 +1451,7 @@ namespace mongo { + spec->start = boost::posix_time::microsec_clock::local_time(); + spec->count = 0; + JS_SetContextPrivate( _context, (void*)spec ); +-#if defined(SM181) && !defined(XULRUNNER190) ++#if JS_VERSION >= 181 && !defined(XULRUNNER190) + JS_SetOperationCallback( _context, _interrupt ); + #else + JS_SetBranchCallback( _context, interrupt ); +@@ -1412,7 +1461,7 @@ namespace mongo { + + void uninstallInterrupt( int timeoutMs ) { + if ( timeoutMs != 0 || ScriptEngine::haveCheckInterruptCallback() ) { +-#if defined(SM181) && !defined(XULRUNNER190) ++#if JS_VERSION >= 181 && !defined(XULRUNNER190) + JS_SetOperationCallback( _context , 0 ); + #else + JS_SetBranchCallback( _context, 0 ); +@@ -1548,9 +1597,12 @@ namespace mongo { + + JSObject * _global; + JSObject * _this; ++#ifdef HAVE_COMPARTMENTS ++ JSCrossCompartmentCall * _call; ++#endif + + string _error; +- list<void*> _roots; ++ list<JSObject*> _roots; + + bool _externalSetup; + bool _localConnect; +@@ -1579,7 +1631,8 @@ namespace mongo { + } + } + +- JSBool native_load( JSContext *cx , JSObject *obj , uintN argc, jsval *argv , jsval *rval ) { ++ JSBool native_load( JSContext *cx , uintN argc, jsval *vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); + Convertor c(cx); + + Scope * s = currentScope.get(); +@@ -1594,6 +1647,7 @@ namespace mongo { + } + } + ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + +@@ -1633,7 +1687,7 @@ namespace mongo { + return new SMScope(); + } + +- void Convertor::addRoot( JSFunction * f , const char * name ) { ++ void Convertor::addRoot( JSFunction * f ){ + if ( ! f ) + return; + +@@ -1642,7 +1696,7 @@ namespace mongo { + + JSObject * o = JS_GetFunctionObject( f ); + assert( o ); +- scope->addRoot( &o , name ); ++ scope->addRoot( o ); + } + + } +--- mongodb-src-r1.8.0/scripting/engine_spidermonkey.h.mozjs185~ 2011-03-16 16:33:30.000000000 +0100 ++++ mongodb-src-r1.8.0/scripting/engine_spidermonkey.h 2011-04-01 21:29:15.697678508 +0200 +@@ -21,6 +21,9 @@ + + // START inc hacking + ++#undef malloc ++#undef realloc ++ + #if defined( MOZJS ) + + #define MOZILLA_1_8_BRANCH +@@ -55,6 +58,9 @@ + + #endif + ++#define malloc MONGO_malloc ++#define realloc MONGO_realloc ++ + // END inc hacking + + // -- SM 1.6 hacks --- +@@ -81,6 +87,10 @@ JSBool JS_CStringsAreUTF8() { + #define SM181 + #endif + ++#ifndef JSFUN_FAST_NATIVE ++#define JSFUN_FAST_NATIVE 0 ++#endif ++ + namespace mongo { + + class SMScope; +@@ -104,7 +114,7 @@ namespace mongo { + extern boost::thread_specific_ptr<SMScope> currentScope; + + // bson +- JSBool resolveBSONField( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ); ++ JSBool resolveBSONField( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ); + + + // mongo +--- mongodb-src-r1.8.0/scripting/sm_db.cpp.mozjs185~ 2011-03-16 16:33:30.000000000 +0100 ++++ mongodb-src-r1.8.0/scripting/sm_db.cpp 2011-04-01 22:51:59.701652521 +0200 +@@ -79,13 +79,25 @@ namespace mongo { + return holder->get(); + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool internal_cursor_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool internal_cursor_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + uassert( 10236 , "no args to internal_cursor_constructor" , argc == 0 ); + assert( JS_SetPrivate( cx , obj , 0 ) ); // just for safety ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- void internal_cursor_finalize( JSContext * cx , JSObject * obj ) { ++ void internal_cursor_finalize( JSContext * cx, JSObject * obj ){ + CursorHolder * holder = (CursorHolder*)JS_GetPrivate( cx , obj ); + if ( holder ) { + delete holder; +@@ -93,10 +105,11 @@ namespace mongo { + } + } + +- JSBool internal_cursor_hasNext(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool internal_cursor_hasNext(JSContext *cx , uintN argc , jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); + DBClientCursor *cursor = getCursor( cx, obj ); + try { +- *rval = cursor->more() ? JSVAL_TRUE : JSVAL_FALSE; ++ JS_SET_RVAL( cx , vp , cursor->more() ? JSVAL_TRUE : JSVAL_FALSE ); + } + catch ( std::exception& e ) { + JS_ReportError( cx , e.what() ); +@@ -105,14 +118,16 @@ namespace mongo { + return JS_TRUE; + } + +- JSBool internal_cursor_objsLeftInBatch(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool internal_cursor_objsLeftInBatch(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); + DBClientCursor *cursor = getCursor( cx, obj ); + Convertor c(cx); +- *rval = c.toval((double) cursor->objsLeftInBatch() ); ++ JS_SET_RVAL( cx , vp , c.toval((double) cursor->objsLeftInBatch()) ); + return JS_TRUE; + } + +- JSBool internal_cursor_next(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool internal_cursor_next(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); + DBClientCursor *cursor = getCursor( cx, obj ); + + BSONObj n; +@@ -131,20 +146,21 @@ namespace mongo { + } + + Convertor c(cx); +- *rval = c.toval( &n ); ++ JS_SET_RVAL( cx , vp , c.toval( &n ) ); + return JS_TRUE; + } + + JSFunctionSpec internal_cursor_functions[] = { +- { "hasNext" , internal_cursor_hasNext , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "objsLeftInBatch" , internal_cursor_objsLeftInBatch , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "next" , internal_cursor_next , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "hasNext" , internal_cursor_hasNext , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "objsLeftInBatch" , internal_cursor_objsLeftInBatch , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "next" , internal_cursor_next , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass internal_cursor_class = { + "InternalCursor" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, internal_cursor_finalize, + JSCLASS_NO_OPTIONAL_MEMBERS + }; +@@ -157,7 +173,16 @@ namespace mongo { + throw -1; + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool mongo_local_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool mongo_local_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + shared_ptr< DBClientWithCommands > client( createDirectClient() ); +@@ -166,10 +191,23 @@ namespace mongo { + jsval host = c.toval( "EMBEDDED" ); + assert( JS_SetProperty( cx , obj , "host" , &host ) ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool mongo_external_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool mongo_external_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + smuassert( cx , "0 or 1 args to Mongo" , argc <= 1 ); +@@ -197,6 +235,9 @@ namespace mongo { + assert( JS_SetPrivate( cx , obj , (void*)( new shared_ptr< DBClientWithCommands >( conn ) ) ) ); + jsval host_val = c.toval( host.c_str() ); + assert( JS_SetProperty( cx , obj , "host" , &host_val ) ); ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + + } +@@ -215,14 +256,18 @@ namespace mongo { + } + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass mongo_class = { + "Mongo" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, mongo_finalize, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + +- JSBool mongo_find(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool mongo_find(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); ++ jsval* argv = JS_ARGV( cx , vp ); ++ + smuassert( cx , "mongo_find needs 7 args" , argc == 7 ); + shared_ptr< DBClientWithCommands > * connHolder = (shared_ptr< DBClientWithCommands >*)JS_GetPrivate( cx , obj ); + smuassert( cx , "no connection!" , connHolder && connHolder->get() ); +@@ -252,7 +297,8 @@ namespace mongo { + JSObject * mycursor = JS_NewObject( cx , &internal_cursor_class , 0 , 0 ); + CHECKNEWOBJECT( mycursor, cx, "internal_cursor_class" ); + assert( JS_SetPrivate( cx , mycursor , new CursorHolder( cursor, *connHolder ) ) ); +- *rval = OBJECT_TO_JSVAL( mycursor ); ++ ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( mycursor )); + return JS_TRUE; + } + catch ( ... ) { +@@ -261,7 +307,10 @@ namespace mongo { + } + } + +- JSBool mongo_update(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool mongo_update(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); ++ jsval* argv = JS_ARGV( cx , vp ); ++ + smuassert( cx , "mongo_find needs at elast 3 args" , argc >= 3 ); + smuassert( cx , "2nd param to update has to be an object" , JSVAL_IS_OBJECT( argv[1] ) ); + smuassert( cx , "3rd param to update has to be an object" , JSVAL_IS_OBJECT( argv[2] ) ); +@@ -282,6 +331,7 @@ namespace mongo { + + try { + conn->update( ns , c.toObject( argv[1] ) , c.toObject( argv[2] ) , upsert , multi ); ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + catch ( ... ) { +@@ -290,7 +340,10 @@ namespace mongo { + } + } + +- JSBool mongo_insert(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool mongo_insert(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); ++ jsval* argv = JS_ARGV( cx , vp ); ++ + smuassert( cx , "mongo_insert needs 2 args" , argc == 2 ); + smuassert( cx , "2nd param to insert has to be an object" , JSVAL_IS_OBJECT( argv[1] ) ); + +@@ -310,6 +363,7 @@ namespace mongo { + // TODO: add _id + + conn->insert( ns , o ); ++ JS_SET_RVAL( cx, vp, JSVAL_VOID ); + return JS_TRUE; + } + catch ( std::exception& e ) { +@@ -325,7 +379,10 @@ namespace mongo { + } + } + +- JSBool mongo_remove(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool mongo_remove(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); ++ jsval* argv = JS_ARGV( cx , vp ); ++ + smuassert( cx , "mongo_remove needs 2 or 3 arguments" , argc == 2 || argc == 3 ); + smuassert( cx , "2nd param to insert has to be an object" , JSVAL_IS_OBJECT( argv[1] ) ); + +@@ -346,6 +403,7 @@ namespace mongo { + + try { + conn->remove( ns , o , justOne ); ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + catch ( std::exception& e ) { +@@ -361,16 +419,26 @@ namespace mongo { + } + + JSFunctionSpec mongo_functions[] = { +- { "find" , mongo_find , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "update" , mongo_update , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "insert" , mongo_insert , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "remove" , mongo_remove , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "find" , mongo_find , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "update" , mongo_update , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "insert" , mongo_insert , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "remove" , mongo_remove , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // ------------- db_collection ------------- + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool db_collection_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool db_collection_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx , "db_collection_constructor wrong args" , argc == 4 ); + assert( JS_SetProperty( cx , obj , "_mongo" , &(argv[0]) ) ); + assert( JS_SetProperty( cx , obj , "_db" , &(argv[1]) ) ); +@@ -382,16 +450,22 @@ namespace mongo { + JS_ReportError( cx , "can't use sharded collection from db.eval" ); + return JS_FALSE; + } +- ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- JSBool db_collection_resolve( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSResolveOp) ++ JSBool db_collection_resolve( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); ++ + if ( flags & JSRESOLVE_ASSIGNING ) + return JS_TRUE; + + Convertor c( cx ); +- string collname = c.toString( id ); ++ string collname = c.toString( idval ); + + if ( isSpecialName( collname ) ) + return JS_TRUE; +@@ -419,10 +493,11 @@ namespace mongo { + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass db_collection_class = { + "DBCollection" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, +- JS_EnumerateStub, (JSResolveOp)(&db_collection_resolve) , JS_ConvertStub, JS_FinalizeStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, ++ JS_EnumerateStub, (JSResolveOp)db_collection_resolve , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + +@@ -454,15 +529,32 @@ namespace mongo { + // -------------- DB --------------- + + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool db_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool db_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx, "wrong number of arguments to DB" , argc == 2 ); + assert( JS_SetProperty( cx , obj , "_mongo" , &(argv[0]) ) ); + assert( JS_SetProperty( cx , obj , "_name" , &(argv[1]) ) ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif ++ + return JS_TRUE; + } + +- JSBool db_resolve( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSResolveOp) ++ JSBool db_resolve( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + if ( flags & JSRESOLVE_ASSIGNING ) + return JS_TRUE; + +@@ -471,7 +563,7 @@ namespace mongo { + if ( obj == c.getGlobalPrototype( "DB" ) ) + return JS_TRUE; + +- string collname = c.toString( id ); ++ string collname = c.toString( idval ); + + if ( isSpecialName( collname ) ) + return JS_TRUE; +@@ -489,17 +581,28 @@ namespace mongo { + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass db_class = { + "DB" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, +- JS_EnumerateStub, (JSResolveOp)(&db_resolve) , JS_ConvertStub, JS_FinalizeStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, ++ JS_EnumerateStub, (JSResolveOp)db_resolve , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + + // -------------- object id ------------- + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool object_id_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool object_id_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + OID oid; +@@ -524,35 +627,48 @@ namespace mongo { + if ( ! JS_InstanceOf( cx , obj , &object_id_class , 0 ) ) { + obj = JS_NewObject( cx , &object_id_class , 0 , 0 ); + CHECKNEWOBJECT( obj, cx, "object_id_constructor" ); +- *rval = OBJECT_TO_JSVAL( obj ); + } + + jsval v = c.toval( oid.str().c_str() ); + assert( JS_SetProperty( cx , obj , "str" , &v ) ); + ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass object_id_class = { + "ObjectId" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + +- JSBool object_id_tostring(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool object_id_tostring(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); +- return (JSBool) (*rval = c.getProperty( obj , "str" )); ++ JS_SET_RVAL( cx , vp , c.getProperty( obj , "str" )); ++ return JS_TRUE; + } + + JSFunctionSpec object_id_functions[] = { +- { "toString" , object_id_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "toString" , object_id_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // dbpointer + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool dbpointer_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool dbpointer_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + if ( argc == 2 ) { +@@ -564,6 +680,9 @@ namespace mongo { + + assert( JS_SetProperty( cx , obj , "ns" , &(argv[0]) ) ); + assert( JS_SetProperty( cx , obj , "id" , &(argv[1]) ) ); ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + else { +@@ -572,19 +691,30 @@ namespace mongo { + } + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass dbpointer_class = { + "DBPointer" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSFunctionSpec dbpointer_functions[] = { +- { 0 } ++ JS_FS_END + }; + + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool dbref_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool dbref_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + if ( argc == 2 ) { +@@ -594,6 +724,9 @@ namespace mongo { + assert( JS_SetProperty( cx, o , "$id" , &argv[ 1 ] ) ); + BSONObj bo = c.toObject( o ); + assert( JS_SetPrivate( cx , obj , (void*)(new BSONHolder( bo.getOwned() ) ) ) ); ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + else { +@@ -607,7 +740,17 @@ namespace mongo { + + // UUID ************************** + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool uuid_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool uuid_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + if( argc == 0 ) { +@@ -635,6 +778,9 @@ namespace mongo { + c.setProperty( obj, "len", c.toval( (double)16 ) ); + c.setProperty( obj, "type", c.toval( (double)3 ) ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + else { +@@ -643,7 +789,8 @@ namespace mongo { + } + } + +- JSBool uuid_tostring(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool uuid_tostring(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + void *holder = JS_GetPrivate( cx, obj ); + assert( holder ); +@@ -652,7 +799,8 @@ namespace mongo { + ss << "UUID(\"" << toHex(data, 16); + ss << "\")"; + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + + void uuid_finalize( JSContext * cx , JSObject * obj ) { +@@ -664,21 +812,32 @@ namespace mongo { + } + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass uuid_class = { + "UUID" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, uuid_finalize, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSFunctionSpec uuid_functions[] = { +- { "toString" , uuid_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "toString" , uuid_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // BinData ************************** + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool bindata_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool bindata_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + if ( argc == 2 ) { +@@ -702,6 +861,9 @@ namespace mongo { + c.setProperty( obj, "len", c.toval( (double)decoded.length() ) ); + c.setProperty( obj, "type", c.toval( (double)type ) ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + else { +@@ -710,7 +872,8 @@ namespace mongo { + } + } + +- JSBool bindata_tostring(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindata_tostring(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int type = (int)c.getNumber( obj , "type" ); + int len = (int)c.getNumber( obj, "len" ); +@@ -722,10 +885,12 @@ namespace mongo { + base64::encode( ss, (const char *)data, len ); + ss << "\")"; + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + +- JSBool bindataBase64(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindataBase64(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int len = (int)c.getNumber( obj, "len" ); + void *holder = JS_GetPrivate( cx, obj ); +@@ -734,10 +899,12 @@ namespace mongo { + stringstream ss; + base64::encode( ss, (const char *)data, len ); + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + +- JSBool bindataAsHex(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindataAsHex(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int len = (int)c.getNumber( obj, "len" ); + void *holder = JS_GetPrivate( cx, obj ); +@@ -750,19 +917,24 @@ namespace mongo { + ss << v; + } + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + +- JSBool bindataLength(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindataLength(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int len = (int)c.getNumber( obj, "len" ); +- return *rval = c.toval((double) len); ++ JS_SET_RVAL( cx , vp , c.toval((double) len) ); ++ return JS_TRUE; + } + +- JSBool bindataSubtype(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindataSubtype(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int t = (int)c.getNumber( obj, "type" ); +- return *rval = c.toval((double) t); ++ JS_SET_RVAL( cx , vp , c.toval((double) t) ); ++ return JS_TRUE; + } + + void bindata_finalize( JSContext * cx , JSObject * obj ) { +@@ -774,20 +946,21 @@ namespace mongo { + } + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass bindata_class = { + "BinData" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, bindata_finalize, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSFunctionSpec bindata_functions[] = { +- { "toString" , bindata_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "hex", bindataAsHex, 0, JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "base64", bindataBase64, 0, JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "length", bindataLength, 0, JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "subtype", bindataSubtype, 0, JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "toString" , bindata_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "hex", bindataAsHex, 0, JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "base64", bindataBase64, 0, JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "length", bindataLength, 0, JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "subtype", bindataSubtype, 0, JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // Map +@@ -796,7 +969,16 @@ namespace mongo { + return s == "put" || s == "get" || s == "_get" || s == "values" || s == "_data" || s == "constructor" ; + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool map_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool map_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + if ( argc > 0 ) { + JS_ReportError( cx , "Map takes no arguments" ); + return JS_FALSE; +@@ -808,10 +990,16 @@ namespace mongo { + jsval a = OBJECT_TO_JSVAL( array ); + JS_SetProperty( cx , obj , "_data" , &a ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- JSBool map_prop( JSContext *cx, JSObject *obj, jsval idval, jsval *vp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSPropertyOp) ++ JSBool map_prop( JSContext *cx, JSObject *obj, jsid id, jsval *vp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + Convertor c(cx); + if ( specialMapString( c.toString( idval ) ) ) + return JS_TRUE; +@@ -821,34 +1009,49 @@ namespace mongo { + return JS_FALSE; + } + ++ JSBool strict_map_prop( JSContext *cx, JSObject *obj, jsid id, JSBool strict, jsval *vp ){ ++ return map_prop( cx , obj , id , vp ); ++ } ++ ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass map_class = { + "Map" , JSCLASS_HAS_PRIVATE , +- map_prop, JS_PropertyStub, map_prop, map_prop, ++ map_prop, JS_PropertyStub, map_prop, strict_map_prop, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSFunctionSpec map_functions[] = { +- { 0 } ++ JS_FS_END + }; + + + // ----- + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass timestamp_class = { + "Timestamp" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool timestamp_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool timestamp_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx , "Timestamp needs 0 or 2 args" , argc == 0 || argc == 2 ); + + if ( ! JS_InstanceOf( cx , obj , ×tamp_class , 0 ) ) { + obj = JS_NewObject( cx , ×tamp_class , 0 , 0 ); + CHECKNEWOBJECT( obj, cx, "timestamp_constructor" ); +- *rval = OBJECT_TO_JSVAL( obj ); + } + + Convertor c( cx ); +@@ -864,21 +1067,30 @@ namespace mongo { + return JS_TRUE; + } + +- ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass numberlong_class = { + "NumberLong" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool numberlong_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool numberlong_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx , "NumberLong needs 0 or 1 args" , argc == 0 || argc == 1 ); + + if ( ! JS_InstanceOf( cx , obj , &numberlong_class , 0 ) ) { + obj = JS_NewObject( cx , &numberlong_class , 0 , 0 ); + CHECKNEWOBJECT( obj, cx, "numberlong_constructor" ); +- *rval = OBJECT_TO_JSVAL( obj ); + } + + Convertor c( cx ); +@@ -903,19 +1115,25 @@ namespace mongo { + c.makeLongObj( n, obj ); + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- JSBool numberlong_valueof(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool numberlong_valueof(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); +- return *rval = c.toval( double( c.toNumberLongUnsafe( obj ) ) ); ++ JS_SET_RVAL( cx , vp , c.toval( double( c.toNumberLongUnsafe( obj ) ) ) ); ++ return JS_TRUE; + } + +- JSBool numberlong_tonumber(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { +- return numberlong_valueof( cx, obj, argc, argv, rval ); ++ JSBool numberlong_tonumber(JSContext *cx, uintN argc, jsval *vp){ ++ return numberlong_valueof( cx, argc, vp ); + } + +- JSBool numberlong_tostring(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool numberlong_tostring(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + stringstream ss; + long long val = c.toNumberLongUnsafe( obj ); +@@ -927,33 +1145,45 @@ namespace mongo { + ss << "NumberLong(" << val << ")"; + + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + + JSFunctionSpec numberlong_functions[] = { +- { "valueOf" , numberlong_valueof , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "toNumber" , numberlong_tonumber , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "toString" , numberlong_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "valueOf" , numberlong_valueof , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "toNumber" , numberlong_tonumber , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "toString" , numberlong_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass minkey_class = { + "MinKey" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSClass maxkey_class = { + "MaxKey" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + // dbquery + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool dbquery_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool dbquery_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx , "DDQuery needs at least 4 args" , argc >= 4 ); + + Convertor c(cx); +@@ -1001,28 +1231,35 @@ namespace mongo { + c.setProperty( obj , "_numReturned" , JSVAL_ZERO ); + c.setProperty( obj , "_special" , JSVAL_FALSE ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- JSBool dbquery_resolve( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSResolveOp) ++ JSBool dbquery_resolve( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + if ( flags & JSRESOLVE_ASSIGNING ) + return JS_TRUE; + +- if ( ! JSVAL_IS_NUMBER( id ) ) ++ if ( ! JSVAL_IS_NUMBER( idval ) ) + return JS_TRUE; + + jsval val = JSVAL_VOID; +- assert( JS_CallFunctionName( cx , obj , "arrayAccess" , 1 , &id , &val ) ); ++ assert( JS_CallFunctionName( cx , obj , "arrayAccess" , 1 , &idval , &val ) ); + Convertor c(cx); +- c.setProperty( obj , c.toString( id ).c_str() , val ); ++ c.setProperty( obj , c.toString( idval ).c_str() , val ); + *objp = obj; + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass dbquery_class = { + "DBQuery" , JSCLASS_NEW_RESOLVE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, +- JS_EnumerateStub, (JSResolveOp)(&dbquery_resolve) , JS_ConvertStub, JS_FinalizeStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, ++ JS_EnumerateStub, (JSResolveOp)dbquery_resolve , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + +@@ -1102,7 +1339,7 @@ namespace mongo { + return true; + } + +-#if defined( SM16 ) || defined( MOZJS ) ++#if defined( SM16 ) || JS_VERSION >= 181 + #warning dates do not work in your version of spider monkey + { + jsdouble d = js_DateGetMsecSinceEpoch( c->_context , o ); +@@ -1150,7 +1387,7 @@ namespace mongo { + } + + bool isDate( JSContext * cx , JSObject * o ) { +-#if defined( SM16 ) || defined( MOZJS ) || defined( XULRUNNER ) ++#if defined( SM16 ) || JS_VERSION >= 181 || defined( XULRUNNER ) + return js_DateGetMsecSinceEpoch( cx , o ) != 0; + #else + return JS_InstanceOf( cx , o, &js_DateClass, 0 ); diff --git a/community-testing/mongodb/mongodb.conf b/community-testing/mongodb/mongodb.conf new file mode 100644 index 000000000..c5272b7f2 --- /dev/null +++ b/community-testing/mongodb/mongodb.conf @@ -0,0 +1,8 @@ +# See http://www.mongodb.org/display/DOCS/File+Based+Configuration for format details +# Run mongod --help to see a list of options + +bind_ip = 127.0.0.1 +quiet = true +dbpath = /var/lib/mongodb +logpath = /var/log/mongodb/mongod.log +logappend = true diff --git a/community-testing/mongodb/mongodb.install b/community-testing/mongodb/mongodb.install new file mode 100755 index 000000000..8808eea0d --- /dev/null +++ b/community-testing/mongodb/mongodb.install @@ -0,0 +1,29 @@ +# vim: syntax=sh + +post_install() { + useradd -r -g daemon -d /var/lib/mongodb -s /bin/bash mongodb + chown -R mongodb:daemon /var/lib/mongodb + chown -R mongodb:daemon /var/log/mongodb + + if [ "$(arch)" != "x86_64" ] + then + echo '==> Warning: the 32 bit version of MongoDB is limited to about 2GB of data.' + echo '==> See http://blog.mongodb.org/post/137788967/32-bit-limitations' + fi +} + +post_upgrade() { + chown -R mongodb:daemon /var/lib/mongodb + chown -R mongodb:daemon /var/log/mongodb + + # have to fix my fudge up in 1.8.2-2 and 1.8.2-3 + # added july 5th, 2011 + usermod -s /bin/bash mongodb >& /dev/null + echo 'The dbpath has changed from /var/state/mongodb to /var/lib/mongodb' + echo 'Make sure you move your data files to the new dbpath before you start/restart mongodb' + echo 'The logpath has changed from /var/log/mongod to /var/log/mongodb/mongod.log' +} + +pre_remove() { + userdel mongodb +} diff --git a/community-testing/exim/exim b/community-testing/mongodb/mongodb.rc index 8e9640b32..517258f63 100755 --- a/community-testing/exim/exim +++ b/community-testing/mongodb/mongodb.rc @@ -1,39 +1,36 @@ #!/bin/bash +# vim: syntax=sh -# source application-specific settings -[ -f /etc/conf.d/exim ] && . /etc/conf.d/exim - -# general config . /etc/rc.conf . /etc/rc.d/functions -PID=`pidof -o %PPID /usr/sbin/exim` - +PID=`pidof /usr/bin/mongod` case "$1" in start) - stat_busy "Starting Exim" - [ -z "$PID" ] && /usr/sbin/exim $EXIM_ARGS + stat_busy "Starting mongodb" + [ -z "$PID" ] && /bin/su mongodb -c "/usr/bin/mongod --config /etc/mongodb.conf --fork" > /dev/null if [ $? -gt 0 ]; then stat_fail else - add_daemon exim + add_daemon mongodb stat_done fi ;; stop) - stat_busy "Stopping Exim" + stat_busy "Stopping mongodb" [ ! -z "$PID" ] && kill $PID &> /dev/null if [ $? -gt 0 ]; then stat_fail else - rm /var/run/exim.pid - rm_daemon exim + rm_daemon mongodb + while [ ! -z "$(pidof /usr/bin/mongod)" ]; do + sleep 1; + done stat_done fi ;; restart) $0 stop - sleep 2 $0 start ;; *) diff --git a/community-testing/openmovieeditor/PKGBUILD b/community-testing/openmovieeditor/PKGBUILD new file mode 100644 index 000000000..f5edd51ad --- /dev/null +++ b/community-testing/openmovieeditor/PKGBUILD @@ -0,0 +1,35 @@ +# $Id: PKGBUILD 51110 2011-07-05 10:08:30Z spupykin $ +# Contributor: Robert Emil Berge <filoktetes@linuxophic.org> +# Maintainer: Robert Emil Berge +# Maintainer: Mateusz Herych <heniekk@gmail.com> +pkgname=openmovieeditor +pkgver=0.0.20090105 +pkgrel=7 +pkgdesc="A simple video editor" +arch=('i686' 'x86_64') +url="http://openmovieeditor.sourceforge.net/HomePage" +license=('GPL') +depends=('libquicktime' 'libsamplerate' 'fltk' 'jack' 'portaudio' 'gmerlin-avdecoder') +source=(http://downloads.sourceforge.net/$pkgname/$pkgname-$pkgver.tar.gz) +md5sums=('ce4f76c0b3e90aabf9c2d5c8dd31e9b1') + +build() { + cd $srcdir/$pkgname-$pkgver + unset LDFLAGS + + export CFLAGS="$CFLAGS -fpermissive" + export CXXFLAGS="$CXXFLAGS -fpermissive" + export CPPFLAGS="$CPPFLAGS -fpermissive" + sed -i 's|= sizes();|= (short*)sizes();|g' src/Fl_Split.cpp + + # Fix missing includes + sed -e 's|<sstream>|<sstream>\n#include <stdint.h>|' -i src/VideoViewGL.H + sed -e 's|<string>|<string>\n#include <stdint.h>|' -i src/WaveForm.H + sed -e 's|<stdint.h>|<stdint.h>\n#include <stdio.h>|' -i src/AddCommand.H + sed -e 's|<string>|<stdint.h>\n#include <stdio.h>|' -i src/MediaBrowser.H + sed -e 's|<iostream>|<iostream>\n#include <stdio.h>|' -i src/fl_font_browser.h + + ./configure --prefix=/usr + make + make DESTDIR=$pkgdir install +} diff --git a/community-testing/perl-berkeleydb/PKGBUILD b/community-testing/perl-berkeleydb/PKGBUILD deleted file mode 100644 index f586d53b0..000000000 --- a/community-testing/perl-berkeleydb/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# $Id: PKGBUILD 49372 2011-06-15 09:28:37Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: Charles Mauch <cmauch@gmail.com> -# Contributor: Francois Charette <firmicus@gmx.net> - -pkgname=perl-berkeleydb -pkgver=0.43 -pkgrel=6 -pkgdesc="Interface to Berkeley DB version 2, 3 or 4" -arch=('i686' 'x86_64') -url="http://search.cpan.org/dist/BerkeleyDB/" -license=('GPL' 'PerlArtistic') -depends=('perl' 'db') -options=('!emptydirs') -source=(http://search.cpan.org/CPAN/authors/id/P/PM/PMQS/BerkeleyDB-$pkgver.tar.gz) -md5sums=('3d0cf0651ed8cd3fc36e328d5924a1e9') - -build() { - cd $srcdir/BerkeleyDB-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make -} - -package() { - _dbver=`pacman -Q db | cut -d\ -f2 | cut -d- -f1` - depends=('perl' "db=$_dbver") - - cd $srcdir/BerkeleyDB-$pkgver - make pure_install doc_install DESTDIR=$pkgdir - find $pkgdir -name '.packlist' -delete - find $pkgdir -name '*.pod' -delete -} diff --git a/community-testing/perl-libapreq2/PKGBUILD b/community-testing/perl-libapreq2/PKGBUILD deleted file mode 100644 index b9526091a..000000000 --- a/community-testing/perl-libapreq2/PKGBUILD +++ /dev/null @@ -1,31 +0,0 @@ -# $Id: PKGBUILD 49380 2011-06-15 09:32:23Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: Tom K <tomk@runbox.com> - -pkgname=perl-libapreq2 -pkgver=2.12 -pkgrel=9 -pkgdesc="A safe, standards-compliant, high-performance library used for parsing HTTP cookies, query-strings and POST data." -arch=('i686' 'x86_64') -url="http://search.cpan.org/dist/libapreq2" -depends=('mod_perl' 'apr-util') -makedepends=('perl-extutils-xsbuilder' 'perl-version') -license=("GPL") -options=('!libtool' '!makeflags') -source=(http://www.cpan.org/authors/id/J/JO/JOESUF/libapreq2-$pkgver.tar.gz) -md5sums=('76e2acde0d82246dea6f2565f3746eec') - -build() { - cd $srcdir/libapreq2-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL --with-apache2-apxs=/usr/sbin/apxs - find . -type f -name Makefile -exec sed -i 's#-ldb-5.1#-ldb-5.2#' {} \; - sed -i 's#-ldb-5.1#-ldb-5.2#' apreq2-config - make -} -package(){ - cd $srcdir/libapreq2-$pkgver - make install DESTDIR=$pkgdir - sed -i "s#$srcdir#/usr/src#" $pkgdir/usr/bin/apreq2-config - find $pkgdir -name '.packlist' -delete - find $pkgdir -name '*.pod' -delete -} diff --git a/community-testing/perl-xml-libxslt/PKGBUILD b/community-testing/perl-xml-libxslt/PKGBUILD deleted file mode 100644 index 708898b9e..000000000 --- a/community-testing/perl-xml-libxslt/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# Id:$ -# Maintainer: François Charette <firmicus ατ gmx δοτ net> - -pkgname=perl-xml-libxslt -pkgver=1.70 -pkgrel=6 -pkgdesc="Interface to the gnome libxslt library " -arch=('i686' 'x86_64') -url="http://search.cpan.org/dist/XML-LibXSLT" -license=('GPL') -depends=('perl-xml-libxml' 'libxslt') -source=(http://www.cpan.org/authors/id/P/PA/PAJAS/XML-LibXSLT-$pkgver.tar.gz) -md5sums=('c63a7913999de076e5c911810f69b392') - -build() { - cd $srcdir/XML-LibXSLT-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make -} - -check () { - cd $srcdir/XML-LibXSLT-$pkgver - make test -} - -package() { - cd $srcdir/XML-LibXSLT-$pkgver - make install DESTDIR=$pkgdir -} - diff --git a/community-testing/poedit/PKGBUILD b/community-testing/poedit/PKGBUILD deleted file mode 100644 index 8c606f322..000000000 --- a/community-testing/poedit/PKGBUILD +++ /dev/null @@ -1,30 +0,0 @@ -# $Id: PKGBUILD 49387 2011-06-15 09:36:08Z spupykin $ -# Contributor: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Giovanni Scafora <giovanni@archlinux.org> -# Contributor: Alexander Fehr <pizzapunk@gmail.com> -# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> - -pkgname=poedit -pkgver=1.4.6.1 -pkgrel=5 -pkgdesc="Cross-platform gettext catalogs (.po files) editor" -arch=('i686' 'x86_64') -url="http://www.poedit.net/" -license=('custom') -depends=('wxgtk>=2.8.11' 'gtkspell' 'db>=5.1' 'hicolor-icon-theme' 'gettext') -makedepends=('pkgconfig') -install=poedit.install -source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('c63ffd991b1a6085ef356a6922356e0a') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - install -D -m644 COPYING ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/community-testing/python-bsddb/LICENSE b/community-testing/python-bsddb/LICENSE deleted file mode 100644 index 7d6035775..000000000 --- a/community-testing/python-bsddb/LICENSE +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (c) 2008-2009 Jesus Cea Avion - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE.
\ No newline at end of file diff --git a/community-testing/python-bsddb/PKGBUILD b/community-testing/python-bsddb/PKGBUILD deleted file mode 100644 index 578d0921d..000000000 --- a/community-testing/python-bsddb/PKGBUILD +++ /dev/null @@ -1,62 +0,0 @@ -# $Id: PKGBUILD 50695 2011-06-29 15:25:25Z stephane $ -# Maintainer: Kaiting Chen <kaitocracy@gmail.com> -# Contributor: Stéphane Gaudreault <stephane@archlinux.org> -# Contributor: Douglas Soares de Andrade <dsandrade@gmail.com> -# Contributor: William Rea <sillywilly@gmail.com> - -pkgbase=python-bsddb -pkgname=('python2-bsddb' 'python-bsddb') -_hgrel=600 -pkgver=5.1.2.${_hgrel} -pkgrel=1 -pkgdesc="Python interface for BerkeleyDB" -license=('MIT') -arch=('i686' 'x86_64') -url="http://www.jcea.es/programacion/pybsddb.htm" -makedepends=('python2-distribute' 'python-distribute' 'mercurial') -source=("ftp://ftp.archlinux.org/other/community/${pkgbase}/${pkgbase}-${pkgver}.src.tar.xz" - 'LICENSE') -sha1sums=('50e7b4c9c11b06c6d871dd93af1cc228687a0227' - 'ef4e4caf618781104dbf5824279ed39d127b4713') - -# source PKGBUILD && mksource -mksource() { - _hgroot="http://hg.jcea.es/pybsddb/" - _hgrepo=pybsddb - [ -d "${_hgrepo}" ] && hg pull -u -r ${_hgrel} || hg clone ${_hgroot} -r ${_hgrel} - - _dirname=${pkgbase}-${pkgver} - mv ${_hgrepo} ${_dirname} - tar -cJvf ${_dirname}.src.tar.xz ${_dirname} - rm -fr ${_dirname} -} - -build () { - cd "${srcdir}" - - cp -r ${pkgbase}-${pkgver}{,-python2} - - # Build python 3 module - cd ${pkgbase}-${pkgver} - python setup.py --berkeley-db=/usr build - - # Build python 2 module - cd ../${pkgbase}-${pkgver}-python2 - python2 setup.py --berkeley-db=/usr build -} - -package_python2-bsddb() { - depends=('db' 'python2>=2.7') - cd "${srcdir}/${pkgbase}-${pkgver}-python2" - - python2 setup.py --berkeley-db=/usr install --root="${pkgdir}" --skip-build --optimize=1 - install -Dm644 "${srcdir}"/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} - -package_python-bsddb() { - depends=('db' 'python>=3.2') - cd "${srcdir}/${pkgbase}-${pkgver}" - - python setup.py --berkeley-db=/usr install --root="${pkgdir}" --skip-build --optimize=1 - install -Dm644 "${srcdir}"/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/community-testing/wml/PKGBUILD b/community-testing/wml/PKGBUILD deleted file mode 100644 index 33c34b025..000000000 --- a/community-testing/wml/PKGBUILD +++ /dev/null @@ -1,42 +0,0 @@ -# $Id: PKGBUILD 50698 2011-06-29 15:35:12Z stephane $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> - -pkgname=wml -pkgver=2.0.11 -pkgrel=7 -pkgdesc="The Website Meta Language" -arch=('i686' 'x86_64') -url="http://thewml.org/" -license=('GPL') -depends=('perl' 'libpng' 'gdbm' 'db' 'ncurses') -makedepends=('lynx') -source=("http://thewml.org/distrib/${pkgname}-${pkgver}.tar.gz") -md5sums=('a26feebf4e59e9a6940f54c69dde05b5') -build() { - cd ${pkgname}-${pkgver} - - # missing Perl modules fix - sed -i 's/PREFIX=$(libdir)\/perl/DESTDIR=\.\.\/\.\.\/\.\.\/\.\.\/pkg\/ PREFIX=$(libdir)\/perl/' wml_common/Makefile.in - sed -i 's/$(MAKE) pure_perl_install $(MM_INSTALL_OPTS)/$(MAKE) pure_perl_install/' wml_common/Makefile.in - - unset LDFLAGS - ./configure \ - --prefix=/usr - - # compile fixhack - sed -i 's#/usr/lib/perl5/core_perl/auto/DynaLoader/DynaLoader.a##' wml_backend/p3_eperl/Makefile - sed -i 's/extern struct option options\[\]\;//' ${srcdir}/${pkgname}-${pkgver}/wml_backend/p3_eperl/eperl_proto.h - sed -i 's|strip $dsttmp|#strip $dsttmp|' etc/shtool - mkdir -p ${pkgdir}/usr/bin ${pkgdir}/usr/lib/wml/exec ${pkgdir}/usr/man/man{1,3,7} ${pkgdir}/usr/man/cat{1,7} - -# make clean - make -} - -package() { - cd ${pkgname}-${pkgver} - - make prefix=${pkgdir}/usr install - - [ -d ${pkgdir}/usr/man ] && mkdir -p ${pkgdir}/usr/share && mv ${pkgdir}/usr/man ${pkgdir}/usr/share -} diff --git a/community-testing/xdiskusage/PKGBUILD b/community-testing/xdiskusage/PKGBUILD new file mode 100644 index 000000000..0ff97363c --- /dev/null +++ b/community-testing/xdiskusage/PKGBUILD @@ -0,0 +1,47 @@ +# $Id: PKGBUILD 51101 2011-07-05 08:55:16Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Tom Newsom <Jeepster@gmx.co.uk> +# Contributor: Jason Chu <jason@archlinux.org> + +pkgname=xdiskusage +pkgver=1.48 +pkgrel=6 +pkgdesc="xdiskusage is a user-friendly program to show you what is using up all your disk space" +arch=('i686' 'x86_64') +depends=('fltk') +makedepends=('libxi') +license=('GPL') +url="http://xdiskusage.sourceforge.net" +options=(!emptydirs) +source=(http://xdiskusage.sourceforge.net/$pkgname-$pkgver.tgz + 'stdin-is-null.patch') +md5sums=('a902aa9d73761ade98256c3cd5c1f533' + '0181b66b44e382e44c91602d8de9a7b6') + +build() { + cd "$srcdir/$pkgname-$pkgver" + sed -i 's/-lGL -lGLU/-lXft/' makeinclude.in + + patch -Np1 -i "$srcdir/stdin-is-null.patch" + + [ $CARCH == "x86_64" ] && patch xdiskusage.C <<EOF +991c991 +< switch ((int)v) { +--- +> switch ((long long)v) { +1004c1004 +< int n = (int)v; +--- +> int n = (long long)v; +EOF + + ./configure --prefix=/usr + install -d "$pkgdir/usr/bin" "$pkgdir/usr/share/man/man1" + LDFLAGS=-lXi make +} + +package() { + cd "$srcdir/$pkgname-$pkgver" + make prefix="$pkgdir/usr" mandir="$pkgdir/usr/share/man" install + chmod 0644 $pkgdir/usr/share/man/man1/* +} diff --git a/community-testing/xdiskusage/stdin-is-null.patch b/community-testing/xdiskusage/stdin-is-null.patch new file mode 100644 index 000000000..e70789c13 --- /dev/null +++ b/community-testing/xdiskusage/stdin-is-null.patch @@ -0,0 +1,31 @@ +--- xdiskusage-1.48/xdiskusage.C 2004-09-21 07:23:14.000000000 +0200 ++++ xdiskusage-1.48.carles/xdiskusage.C 2007-07-30 23:42:05.000000000 +0200 +@@ -223,6 +223,19 @@ + return 1; + } + ++// returns true if stdin is /dev/null ++// To fix Debian bug #276193 ++// Technically could be possible that returns "true" and is not "true", ++// because same device ID is used across file systems. But is the best ++// solutions that I have ++int isstdinnull() { ++ struct stat ststdin,stnull; ++ stat("/dev/null",&stnull); ++ fstat(0,&ststdin); ++ ++ return (ststdin.st_rdev==stnull.st_rdev); ++} ++ + int main(int argc, char**argv) { + #if FL_MAJOR_VERSION < 2 + // Make fltk look more like KDE/Windoze: +@@ -253,7 +266,7 @@ + OutputWindow* d = OutputWindow::make(argv[n++]); + if (d) d->show(argc,argv); + } +- } else if (!isatty(0)) { ++ } else if (!isatty(0) && !isstdinnull()) { + // test for pipe, if so read stdin: + OutputWindow* d = OutputWindow::make(0); + if (d) d->show(argc,argv); diff --git a/community-testing/xemacs/PKGBUILD b/community-testing/xemacs/PKGBUILD deleted file mode 100644 index 8e7d3fe69..000000000 --- a/community-testing/xemacs/PKGBUILD +++ /dev/null @@ -1,65 +0,0 @@ -# $Id: PKGBUILD 49690 2011-06-19 10:01:11Z ebelanger $ -# Maintainer: juergen <juergen@archlinux.org> -# Contributor : Stéphane Gaudreault <stephane@archlinux.org> - -pkgname=xemacs -pkgver=21.5.31 -pkgrel=2 -pkgdesc="An highly customizable open source text editor and application development system forked from GNU Emacs" -arch=('i686' 'x86_64') -url="http://www.xemacs.org/" -license=('GPL') -depends=('db' 'libpng' 'libtiff' 'gpm' 'desktop-file-utils' 'libxaw' 'gdbm' 'giflib') -optdepends=('xorg-fonts-75dpi: X bitmap fonts needed for the interface' - 'xorg-fonts-100dpi: X bitmap fonts needed for the interface') -makedepends=('xbitmaps') -install=xemacs.install -source=(http://ftp.xemacs.org/pub/xemacs/beta/$pkgname-$pkgver.tar.gz - xemacs.desktop - xemacs-21.5.29-optimization-bug.patch) -md5sums=('0185fe905d0b8d8d094d9b60cf262d4a' - 'a4d3d5c0aa2c7ce7bec491f809ca3694' - 'eb061b10ea3bbe1026df5326ae1618e3') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - -# Fix problem caused by improper optimization with GCC>=4.1.2 on i686 -# (and possibly other arches). See -# http://tracker.xemacs.org/XEmacs/its/issue354 -# for the upstream bug report. - patch -Np0 -i ../xemacs-21.5.29-optimization-bug.patch - - ./configure --build="${CHOST}" --prefix=/usr --with-dynamic \ - --without-postgresql --with-athena=xaw \ - --enable-database=berkdb --without-ldap \ - --enable-menubars=lucid --enable-scrollbars=lucid \ - --enable-widgets=athena --enable-dialogs=athena \ - --enable-external-widget \ - --with-jpeg --with-png --with-tiff \ - --with-ncurses --with-pop --with-xfs --disable-sound \ - --infodir=/usr/share/info \ - --with-mule \ - --mandir=/usr/share/man/man1 - - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make -j1 prefix="${pkgdir}/usr" mandir="${pkgdir}/usr/share/man/man1" infodir="${pkgdir}/usr/share/info" install gzip-el - - rm "${pkgdir}"/usr/bin/{b2m,ctags,etags} - rm "${pkgdir}"/usr/share/man/man1/{ctags.1,etags.1} - - # fix FS#7927 - install -d -m755 "${pkgdir}/usr/share/pixmaps" - install -D -m644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" - ln -sf /usr/share/xemacs-${pkgver%.*}-b${pkgver##*.}/etc/xemacs-icon.xpm "${pkgdir}/usr/share/pixmaps/xemacs-icon.xpm" - - # correct permissions - chown -R root:root "${pkgdir}" - - rm "${pkgdir}"/usr/share/info/{info.info,texinfo.info-2,cl.info,texinfo.info-1,texinfo.info,standards.info,widget.info} -} -# vim: ts=2 sw=2 et ft=sh diff --git a/community-testing/xemacs/xemacs-21.5.29-optimization-bug.patch b/community-testing/xemacs/xemacs-21.5.29-optimization-bug.patch deleted file mode 100644 index 32a1a02c2..000000000 --- a/community-testing/xemacs/xemacs-21.5.29-optimization-bug.patch +++ /dev/null @@ -1,14 +0,0 @@ -Work around a GCC optimization bug as described in -http://tracker.xemacs.org/XEmacs/its/issue354 - ---- src/dumper.c.~1~ 2008-01-26 09:54:11.000000000 +0100 -+++ src/dumper.c 2008-05-03 10:17:03.000000000 +0200 -@@ -2584,7 +2584,7 @@ - #endif /* !WIN32_NATIVE */ - - --static int -+int - pdump_file_try (Wexttext *exe_path) - { - Wexttext *w = exe_path + wext_strlen (exe_path); diff --git a/community-testing/xemacs/xemacs.desktop b/community-testing/xemacs/xemacs.desktop deleted file mode 100644 index 257c56947..000000000 --- a/community-testing/xemacs/xemacs.desktop +++ /dev/null @@ -1,34 +0,0 @@ -[Desktop Entry] -Name=XEmacs Text Editor -Name[bg]=редактор XEmacs -Name[ca]=Editor XEmacs -Name[cs]=Editor XEmacs -Name[da]=XEmacs tekstredigerer -Name[de]=XEmacs Texteditor -Name[eo]=La redaktilo XEmakso -Name[es]=Emacs para X -Name[et]=Emacs X'i kasutajaliidesega -Name[fi]=XEmacs editori -Name[fr]=Éditeur XEmacs -Name[hu]=XEmacs szövegszerkesztÅ‘ -Name[is]=XEmacs-ritill -Name[it]=Emacs per X -Name[ja]=XEmacs テã‚スト・エディター -Name[mk]=СофиÑтицираниот XEmacs уредувач -Name[no]=XEmacs-tekstredigerer -Name[pt]=Editor XEmacs -Name[ro]=Editorul XEmacs -Name[ru]=Редактор XEmacs -Name[sk]=Editor XEmacs -Name[sl]=Urejevalnik XEmacs -Name[uk]=Редактор XEmacs -GenericName=Text Editor -Comment=Edit text -MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++; -Exec=xemacs %f -Icon=/usr/share/pixmaps/xemacs-icon.xpm -Type=Application -Terminal=false -Categories=Development;TextEditor; -Encoding=UTF-8 -StartupWMClass=Emacs diff --git a/community-testing/xemacs/xemacs.install b/community-testing/xemacs/xemacs.install deleted file mode 100644 index a04ee187f..000000000 --- a/community-testing/xemacs/xemacs.install +++ /dev/null @@ -1,35 +0,0 @@ -infodir=usr/share/info -filelist=(beta.info.gz custom.info.gz - emodules.info.gz external-widget.info.gz - internals.info-1.gz internals.info-2.gz - internals.info-3.gz internals.info-4.gz - internals.info-5.gz internals.info.gz - lispref.info-1.gz lispref.info-10.gz - lispref.info-2.gz lispref.info-3.gz - lispref.info-4.gz lispref.info-5.gz - lispref.info-6.gz lispref.info-7.gz - lispref.info-8.gz lispref.info-9.gz - lispref.info.gz new-users-guide.info.gz - term.info.gz termcap.info.gz - xemacs-faq.info-1.gz xemacs-faq.info-2.gz - xemacs-faq.info.gz xemacs.info-1.gz - xemacs.info-2.gz xemacs.info-3.gz - xemacs.info-4.gz xemacs.info.gz) - -post_install() { - for file in ${filelist[@]}; do - install-info $infodir/$file $infodir/dir 2> /dev/null - done - update-desktop-database -q -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - for file in ${filelist[@]}; do - install-info --delete $infodir/$file $infodir/dir 2> /dev/null - done - update-desktop-database -q -} diff --git a/community/aqbanking/PKGBUILD b/community/aqbanking/PKGBUILD index 8c040c827..aba3c5e0a 100644 --- a/community/aqbanking/PKGBUILD +++ b/community/aqbanking/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 42707 2011-03-19 21:53:25Z spupykin $ +# $Id: PKGBUILD 51223 2011-07-05 21:41:50Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: David Moore <davidm@sjsoft.com> pkgname=aqbanking -pkgver=5.0.5 +pkgver=5.0.11 pkgrel=1 pkgdesc="A library for online banking and financial applications" arch=(i686 x86_64 'mips64el') @@ -12,8 +12,8 @@ url="http://www.aquamaniac.de/aqbanking" license=('GPL') depends=('gwenhywfar' 'ktoblzcheck' 'libofx') options=('!makeflags' '!libtool') -source=("aqbanking-$pkgver.tar.gz::http://www2.aquamaniac.de/sites/download/download.php?package=03&release=78&file=01&dummy=aqbanking-$pkgver.tar.gz") -md5sums=('b50c28887fc9fd2fc9a4d9fc996497e6') +source=("aqbanking-$pkgver.tar.gz::http://www2.aquamaniac.de/sites/download/download.php?package=03&release=84&file=01&dummy=aqbanking-$pkgver.tar.gz") +md5sums=('08b42813f7a6c1ac3529e1004b66d81d') build() { cd $srcdir/aqbanking-$pkgver diff --git a/community/autofs/PKGBUILD b/community/autofs/PKGBUILD index c52c281cc..618933cfa 100644 --- a/community/autofs/PKGBUILD +++ b/community/autofs/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 50871 2011-07-02 10:03:49Z lfleischer $ +# $Id: PKGBUILD 51120 2011-07-05 13:23:33Z lfleischer $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Dale Blount <dale@archlinux.org> @@ -6,7 +6,7 @@ pkgname=autofs pkgver=5.0.6 -pkgrel=1 +pkgrel=2 pkgdesc='A kernel-based automounter for Linux.' arch=('i686' 'x86_64' 'mips64el') url='http://freshmeat.net/projects/autofs' @@ -18,11 +18,13 @@ backup=('etc/autofs/auto.master' options=(!makeflags) install='autofs.install' source=("http://www.kernel.org/pub/linux/daemons/${pkgname}/v5/${pkgname}-${pkgver}.tar.bz2" + "http://www.kernel.org/pub/linux/daemons/${pkgname}/v5/${pkgname}-${pkgver}-fix-ipv6-name-for-lookup-fix.patch" 'autofs' 'autofs.conf.d' 'auto.master' 'auto.misc') md5sums=('44cea7f711e2290a0b50fddeda079705' + '221bf50d6e496b22014a9a7b234fe556' 'e307bf6d2638e46eeb916cf42fe029b2' '47f597c870410055e0fdb66103daf928' 'a6cefb591e77b31b79dbb7243646c96b' @@ -34,6 +36,8 @@ build() { sed -i "s:SUBDIRS = lib daemon modules man samples:SUBDIRS = lib daemon modules man:" \ Makefile.rules + patch -p1 -i "../${pkgname}-${pkgver}-fix-ipv6-name-for-lookup-fix.patch" + ./configure --prefix=/usr --sysconfdir=/etc/autofs --with-mapdir=/etc/autofs --without-hesiod \ --enable-ignore-busy make diff --git a/community/dsniff/PKGBUILD b/community/dsniff/PKGBUILD index ed8e13006..c96239a66 100644 --- a/community/dsniff/PKGBUILD +++ b/community/dsniff/PKGBUILD @@ -1,36 +1,36 @@ -# $Id: PKGBUILD 44707 2011-04-11 12:21:58Z spupykin $ +# $Id: PKGBUILD 49679 2011-06-19 07:23:27Z andrea $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: ViNS <gladiator@fastwebnet.it> pkgname=dsniff pkgver=2.4b1 -pkgrel=19 +pkgrel=20 pkgdesc="Collection of tools for network auditing and penetration testing" url="http://www.monkey.org/~dugsong/dsniff/" arch=('i686' 'x86_64' 'mips64el') license=('BSD') -depends=('libpcap' 'openssl' 'db' 'libxmu' 'glib2' 'libnet' 'libnids') -source=(http://www.monkey.org/~dugsong/dsniff/beta/$pkgname-$pkgver.tar.gz \ - http://ftp.de.debian.org/debian/pool/main/d/dsniff/dsniff_2.4b1+debian-18.diff.gz) +depends=('libpcap' 'openssl' 'libxmu' 'glib2' 'libnet' 'libnids') +source=("http://www.monkey.org/~dugsong/${pkgname}/beta/$pkgname-$pkgver.tar.gz" + "http://ftp.de.debian.org/debian/pool/main/d/${pkgname}/${pkgname}_2.4b1+debian-18.diff.gz") md5sums=('2f761fa3475682a7512b0b43568ee7d6' 'fbc9f62f9ab2f98f24f53ad497c1ce5d') build() { cd $srcdir/$pkgname-2.4 - patch -N < ../dsniff_2.4b1+debian-18.diff + patch -N < "${srcdir}"/dsniff_2.4b1+debian-18.diff for i in *.dpatch; do patch -N < "$i" done - [ $NOEXTRACT -eq 1 ] || LDFLAGS="-lresolv -lglib-2.0 -lgthread-2.0 $LDFLAGS" ./configure --prefix=/usr + LDFLAGS="-lresolv -lglib-2.0 -lgthread-2.0 $LDFLAGS" ./configure --prefix=/usr make } package() { - cd $srcdir/$pkgname-2.4 - make prefix=$pkgdir/usr install - install -D -m0644 LICENSE $pkgdir/usr/share/licenses/dsniff/LICENSE + cd "$srcdir"/$pkgname-2.4 + make prefix="$pkgdir"/usr install + install -D -m0644 LICENSE "$pkgdir"/usr/share/licenses/${pkgname}/LICENSE - mkdir -p $pkgdir/usr/share - mv $pkgdir/usr/man $pkgdir/usr/share/ + install -d "$pkgdir"/usr/share + mv "$pkgdir"/usr/man "$pkgdir"/usr/share/ } diff --git a/community/exim/PKGBUILD b/community/exim/PKGBUILD index 08f7ebf91..2d4582227 100644 --- a/community/exim/PKGBUILD +++ b/community/exim/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 46614 2011-05-10 07:06:59Z angvp $ +# $Id: PKGBUILD 49455 2011-06-16 18:57:50Z angvp $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Maintainer: judd <jvinet@zeroflux.org> pkgname=exim pkgver=4.76 -pkgrel=1 +pkgrel=2 pkgdesc="A Message Transfer Agent" arch=(i686 x86_64 'mips64el') url="http://www.exim.org/" diff --git a/community/exim/exim.changelog b/community/exim/exim.changelog index 562a87b75..69182229e 100644 --- a/community/exim/exim.changelog +++ b/community/exim/exim.changelog @@ -1,3 +1,6 @@ +2010-06-16 Angel Velasquez <angvp@archlinux.org> + * Rebuilt against db 5.2.28 + 2010-05-09 Angel Velasquez <angvp@archlinux.org> * Updated to 4.76 * Removed previous patch since is no longer needed diff --git a/community/frogatto/PKGBUILD b/community/frogatto/PKGBUILD index 434ddd9fb..1e4e509a8 100644 --- a/community/frogatto/PKGBUILD +++ b/community/frogatto/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 47897 2011-05-26 00:34:36Z svenstaro $ +# $Id: PKGBUILD 51208 2011-07-05 20:39:32Z svenstaro $ # Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com> # Contributor: Tom Wambold <tom5760@gmail.com> pkgname='frogatto' arch=('i686' 'x86_64') -pkgver=1.1 -pkgrel=3 +pkgver=1.1.1 +pkgrel=1 pkgdesc="An old-school 2d platformer game, starring a certain quixotic frog" url="http://www.frogatto.com" license=('GPL') @@ -14,7 +14,7 @@ makedepends=('boost') source=(http://www.frogatto.com/files/$pkgname-$pkgver.tar.bz2 frogatto frogatto.desktop) -md5sums=('8c01c8a1d7ecf820a682eb684d8bf739' +md5sums=('bf5a2ee4c3254a424766895ff250758b' '9ed2c9ea59e95fe3c0b3ad49e58f8890' 'e31563b04748a39292a59aaad633ff58') diff --git a/community/gdal/PKGBUILD b/community/gdal/PKGBUILD index d01d40c44..f7a7ab9c6 100644 --- a/community/gdal/PKGBUILD +++ b/community/gdal/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 46467 2011-05-07 14:58:14Z tdziedzic $ +# $Id: PKGBUILD 50951 2011-07-03 10:32:28Z jelle $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org # Contributor: William Rea <sillywilly@gmail.com> pkgname=gdal pkgver=1.8.0 -pkgrel=4 +pkgrel=5 pkgdesc="A translator library for raster geospatial data formats" arch=('i686' 'x86_64' 'mips64el') url="http://www.gdal.org/" @@ -27,6 +27,9 @@ md5sums=('c762cdab0f7e51a677ba49278a8a263d' '81afc1c26d29cee84aadb6924fe33861') build() { export CFLAGS="$CFLAGS -fno-strict-aliasing" + # bug 23654 + export LDFLAGS="$LDFLAGS -Wl,--as-needed" + cd ${srcdir}/$pkgname-$pkgver patch -Np0 -i ${srcdir}/gdal-1.5.1-python-install.patch diff --git a/community/gecko-mediaplayer/PKGBUILD b/community/gecko-mediaplayer/PKGBUILD index f2dd7e47f..a8c45c588 100644 --- a/community/gecko-mediaplayer/PKGBUILD +++ b/community/gecko-mediaplayer/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 45744 2011-04-28 09:33:53Z lfleischer $ +# $Id: PKGBUILD 51299 2011-07-06 15:48:09Z lfleischer $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Allan McRae <mcrae_allan@hotmail.com> # Contributor: fancris3 <fancris3 at aol.com> # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=gecko-mediaplayer -pkgver=1.0.3 +pkgver=1.0.4 pkgrel=1 pkgdesc='Browser plugin that uses gnome-mplayer to play media in a web browser.' arch=('i686' 'x86_64' 'mips64el') @@ -15,7 +15,7 @@ depends=("gnome-mplayer>=${pkgver}" 'dbus-glib') makedepends=('xulrunner' 'pkgconfig') replaces=('mplayer-plugin') source=("http://gecko-mediaplayer.googlecode.com/files/${pkgname}-${pkgver}.tar.gz") -md5sums=('4996b243ed720dc30f5dcc9bc253bf68') +md5sums=('7bb7665f8a1e6832907d052863e8f7aa') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/gedit-plugins/PKGBUILD b/community/gedit-plugins/PKGBUILD index aa9f95eda..7e76f1c1d 100644 --- a/community/gedit-plugins/PKGBUILD +++ b/community/gedit-plugins/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 49674 2011-06-19 07:22:21Z ibiru $ +# $Id: PKGBUILD 51128 2011-07-05 14:25:52Z ibiru $ #Maintainer: Ionut Biru <ibiru@archlinux.org> #Contributor: Hugo Doria <hugo@archlinux.org> #Contributor: Sergej Chodarev <sergejx@centrum.sk> #Contributor: zhuqin <zhuqin83@gmail.com> pkgname=gedit-plugins -pkgver=3.0.4 +pkgver=3.0.5 pkgrel=1 pkgdesc="Set of plugins for gedit" arch=('i686' 'x86_64' 'mips64el') @@ -16,7 +16,7 @@ makedepends=('intltool' 'gnome-doc-utils') options=('!libtool' '!emptydirs') install=gedit-plugins.install source=(ftp://ftp.gnome.org/pub/gnome/sources/gedit-plugins/3.0/$pkgname-$pkgver.tar.xz) -sha256sums=('e1e16790300f7f51a1f2e6871e7b0604d9e242e507533697b529380d25a24879') +sha256sums=('e878d4c1bdf9ee38bf23440f3550f854078727233432bfe2f4062794e4b0f3a9') build() { cd $srcdir/$pkgname-$pkgver diff --git a/community/geos/PKGBUILD b/community/geos/PKGBUILD index 9272b89eb..876062876 100644 --- a/community/geos/PKGBUILD +++ b/community/geos/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 32533 2010-11-14 16:11:41Z jlichtblau $ +# $Id: PKGBUILD 50911 2011-07-02 23:00:14Z stephane $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org # Contributor: William Rea <sillywilly@gmail.com> pkgname=geos -pkgver=3.2.2 +pkgver=3.3.0 pkgrel=1 pkgdesc="A C++ port of the Java Topology Suite" arch=('i686' 'x86_64' 'mips64el') @@ -14,17 +14,17 @@ depends=('gcc-libs') options=('!libtool') changelog=$pkgname.changelog source=(http://download.osgeo.org/${pkgname}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('c5d264acac22fe7720f85dadc1fc17c6') +md5sums=('3301f3d1d747b95749384b8a356b022a') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr make } package() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install } diff --git a/community/gnome-mplayer/PKGBUILD b/community/gnome-mplayer/PKGBUILD index a435daaaa..5671d5e30 100644 --- a/community/gnome-mplayer/PKGBUILD +++ b/community/gnome-mplayer/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 47944 2011-05-26 08:59:17Z lfleischer $ +# $Id: PKGBUILD 51291 2011-07-06 15:32:05Z lfleischer $ # Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de> # Contributor: Allan McRae <mcrae_allan@hotmail.com> # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> pkgname=gnome-mplayer -pkgver=1.0.3 -pkgrel=3 +pkgver=1.0.4 +pkgrel=1 pkgdesc='A simple MPlayer GUI.' arch=('i686' 'x86_64' 'mips64el') url='http://gnome-mplayer.googlecode.com/' @@ -14,7 +14,7 @@ depends=('mplayer' 'dbus-glib' 'libnotify' 'gtk2' 'hicolor-icon-theme' 'dconf') makedepends=('gnome-power-manager' 'nautilus') install="${pkgname}.install" source=("http://gnome-mplayer.googlecode.com/files/${pkgname}-${pkgver}.tar.gz") -md5sums=('72a1c7d640a67eb2d60f2671108919c2') +md5sums=('c97dcf12d6a6b5543d701944f95e850e') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/community/gwenhywfar/PKGBUILD b/community/gwenhywfar/PKGBUILD index 026d56b23..69911f0c5 100644 --- a/community/gwenhywfar/PKGBUILD +++ b/community/gwenhywfar/PKGBUILD @@ -1,19 +1,20 @@ -# $Id: PKGBUILD 42710 2011-03-19 21:54:07Z spupykin $ +# $Id: PKGBUILD 51213 2011-07-05 21:18:23Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: William Rea <sillywilly@gmail.com> pkgname=gwenhywfar -pkgver=4.0.9 +pkgver=4.2.0 pkgrel=1 pkgdesc="OS abstraction functions for various projects" arch=(i686 x86_64 'mips64el') url="http://www.aquamaniac.de" options=('!libtool') license=("LGPL") -depends=('openssl') +depends=('openssl' 'gnutls') +makedepends=('gtk2' 'qt') optdepends=('gtk2' 'qt') -source=("gwenhywfar-$pkgver.tar.gz::http://www2.aquamaniac.de/sites/download/download.php?package=01&release=60&file=01&dummy=gwenhywfar-$pkgver.tar.gz") -md5sums=('03c22b95eb493c8c98284d3d2e4d9795') +source=("gwenhywfar-$pkgver.tar.gz::http://www2.aquamaniac.de/sites/download/download.php?package=01&release=62&file=01&dummy=gwenhywfar-$pkgver.tar.gz") +md5sums=('62d15e090a0c21bc9d22489ceaaadfde') build() { pacman -Q gwenhywfar && return 1 diff --git a/community/ktoblzcheck/PKGBUILD b/community/ktoblzcheck/PKGBUILD index ea29844cf..95a8ceaa0 100644 --- a/community/ktoblzcheck/PKGBUILD +++ b/community/ktoblzcheck/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 40241 2011-02-22 13:26:21Z stephane $ +# $Id: PKGBUILD 51218 2011-07-05 21:19:18Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Philipp Sandhaus <philipp.sandhaus@gmx.de> pkgname=ktoblzcheck -pkgver=1.31 +pkgver=1.33 pkgrel=1 pkgdesc="A library to check account numbers and bank codes of German banks" arch=(i686 x86_64 'mips64el') @@ -14,8 +14,8 @@ depends=('gcc-libs' 'python') optdepends=('perl') source=(http://downloads.sourceforge.net/sourceforge/ktoblzcheck/ktoblzcheck-$pkgver.tar.gz ktoblzcheck-python3.patch) -md5sums=('2bc5fd7b3d6785527f7f0ea565c35e29' - 'bf0d5e813aef4be426af5642ec4d524a') +md5sums=('e9f62a9a64ee51ab43751eadcade0433' + 'a81a697bb3aaeffb7fac0ad7d9166e3f') build() { cd "$srcdir/ktoblzcheck-$pkgver" @@ -23,6 +23,7 @@ build() { patch -p1 <$srcdir/ktoblzcheck-python3.patch make } + package() { cd "$srcdir/ktoblzcheck-$pkgver" make DESTDIR="$pkgdir" install diff --git a/community/ktoblzcheck/ktoblzcheck-python3.patch b/community/ktoblzcheck/ktoblzcheck-python3.patch index c94e0a021..5bfc53275 100644 --- a/community/ktoblzcheck/ktoblzcheck-python3.patch +++ b/community/ktoblzcheck/ktoblzcheck-python3.patch @@ -1,53 +1,3 @@ -diff -ur ktoblzcheck-1.28/py-compile ktoblzcheck-1.28.my/py-compile ---- ktoblzcheck-1.28/py-compile 2008-03-11 09:29:51.000000000 +0000 -+++ ktoblzcheck-1.28.my/py-compile 2010-09-20 09:09:53.000000000 +0000 -@@ -107,34 +107,30 @@ - - files = '''$files''' - --print 'Byte-compiling python modules...' --for file in string.split(files): -+print('Byte-compiling python modules...') -+for file in files.split(): - $pathtrans - $filetrans -- if not os.path.exists(filepath) or not (len(filepath) >= 3 -- and filepath[-3:] == '.py'): -- continue -- print file, -- sys.stdout.flush() -+ if not os.path.exists(filepath) or not (len(filepath) >= 3 and filepath[-3:] == '.py'): -+ continue -+ print(file, sys.stdout.flush()) - py_compile.compile(filepath, filepath + 'c', path) --print" || exit $? -+print()" || exit $? - - # this will fail for python < 1.5, but that doesn't matter ... - $PYTHON -O -c " - import sys, os, string, py_compile - - files = '''$files''' --print 'Byte-compiling python modules (optimized versions) ...' --for file in string.split(files): -+print('Byte-compiling python modules (optimized versions) ...') -+for file in files.split(): - $pathtrans - $filetrans -- if not os.path.exists(filepath) or not (len(filepath) >= 3 -- and filepath[-3:] == '.py'): -- continue -- print file, -- sys.stdout.flush() -+ if not os.path.exists(filepath) or not (len(filepath) >= 3 and filepath[-3:] == '.py'): -+ continue -+ print(file,sys.stdout.flush()) - py_compile.compile(filepath, filepath + 'o', path) --print" 2>/dev/null || : -+print()" 2>/dev/null || : - - # Local Variables: - # mode: shell-script diff -ur ktoblzcheck-1.28/src/python/ktoblzcheck.py ktoblzcheck-1.28.my/src/python/ktoblzcheck.py --- ktoblzcheck-1.28/src/python/ktoblzcheck.py 2008-08-12 16:48:54.000000000 +0000 +++ ktoblzcheck-1.28.my/src/python/ktoblzcheck.py 2010-09-20 09:08:36.000000000 +0000 diff --git a/community/libgda3/PKGBUILD b/community/libgda3/PKGBUILD index 776e639f6..f46ce3f00 100644 --- a/community/libgda3/PKGBUILD +++ b/community/libgda3/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 42498 2011-03-17 10:53:49Z jelle $ +# $Id: PKGBUILD 49363 2011-06-15 09:20:21Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=libgda3 pkgver=3.1.5 -pkgrel=8 +pkgrel=9 pkgdesc="data abstraction layer; with mysql, pgsql, ldap, xml, sqlite providers" arch=('i686' 'x86_64' 'mips64el') url="http://www.gnome-db.org/Download" diff --git a/community/libmediainfo/PKGBUILD b/community/libmediainfo/PKGBUILD index 2674b13c0..57e7f6553 100644 --- a/community/libmediainfo/PKGBUILD +++ b/community/libmediainfo/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 45009 2011-04-14 09:10:11Z spupykin $ +# $Id: PKGBUILD 50998 2011-07-04 11:41:36Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: hydro <hydro@freenet.de> pkgname=libmediainfo -pkgver=0.7.43 +pkgver=0.7.45 pkgrel=1 pkgdesc="shared library for mediainfo" arch=('i686' 'x86_64' 'mips64el') @@ -12,23 +12,27 @@ license=('GPL') depends=( 'curl' 'libmms>=0.5-2' 'libzen>=0.4.15') makedepends=('libtool' 'automake' 'autoconf') options=(!libtool) -source=(http://downloads.sourceforge.net/mediainfo/${pkgname}_${pkgver}.tar.bz2) -md5sums=('4200c44c4f7016145d580757de18f2d4') +source=(http://downloads.sourceforge.net/mediainfo/${pkgname}_${pkgver}.tar.bz2 + "libmediainfo-0.7.44-libmms.patch::http://www.calculate-linux.org/packages/media-libs/libmediainfo/files/libmediainfo-0.7.44-libmms.patch?format=raw") +md5sums=('b2148a4da794bb1d0721cfa328d59aeb' + '1bdae4d3006b72e3f07cb1a9fa124950') build() { cd $srcdir/MediaInfoLib/Project/GNU/Library - sh ./autogen ./configure --prefix=/usr --enable-shared --disable-static --with-libcurl --with-libmms make clean + (cd ../../.. && patch -p1 <$srcdir/libmediainfo-0.7.44-libmms.patch) make - make DESTDIR=$pkgdir install +} +package() { + cd $srcdir/MediaInfoLib/Project/GNU/Library + make DESTDIR=$pkgdir install for i in MediaInfo MediaInfoDLL; do install -dm 755 $pkgdir/usr/include/$i install -m 644 $srcdir/MediaInfoLib/Source/$i/*.h $pkgdir/usr/include/$i done - install -dm 755 $pkgdir/usr/lib/pkgconfig install -m 644 $srcdir/MediaInfoLib/Project/GNU/Library/libmediainfo.pc $pkgdir/usr/lib/pkgconfig sed -i -e 's|Version: |Version: '$pkgver'|g' $pkgdir/usr/lib/pkgconfig/libmediainfo.pc diff --git a/community/librcc/PKGBUILD b/community/librcc/PKGBUILD index 02973d08b..61679f035 100644 --- a/community/librcc/PKGBUILD +++ b/community/librcc/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 30655 2010-10-19 14:04:46Z spupykin $ +# $Id: PKGBUILD 49369 2011-06-15 09:26:07Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=librcc pkgver=0.2.6 -pkgrel=3 +pkgrel=4 pkgdesc="Charset Conversion Library" arch=(i686 x86_64 'mips64el') url="http://rusxmms.sourceforge.net/" @@ -20,11 +20,12 @@ md5sums=('9bbf248c7312c73c0b6ca19b9c5a2af1' build() { cd ${startdir}/src/$pkgname-${pkgver} ./configure --prefix=/usr - patch -p1 <$srcdir/librcc-strnlen.patch + make +} - make || return 1 - +package() { + cd ${startdir}/src/$pkgname-${pkgver} mkdir -p $startdir/pkg/etc/rcc mkdir -p $startdir/pkg/usr/lib/rcc/engines mkdir -p $startdir/pkg/usr/bin diff --git a/community/librcc/librcc.install b/community/librcc/librcc.install index 8d2ccce98..53b1d7ce7 100644 --- a/community/librcc/librcc.install +++ b/community/librcc/librcc.install @@ -1,28 +1,6 @@ -pre_install() { - /bin/true -} - post_install() { echo "-- Don't forget to install gtk or/and gtk2 packages to enable librcc" echo " gui features" echo "-- Also you may change /usr/bin/rcc-config symlink to switch between" echo " gtk and gtk2 (rcc-gtk-config and rcc-gtk2-config)" - /bin/true -} - -pre_upgrade() { - /bin/true -} - -post_upgrade() { - /bin/true -} - -pre_remove() { - /bin/true -} - -post_remove() { - /bin/true } - diff --git a/community/libvirt/PKGBUILD b/community/libvirt/PKGBUILD index 5ab7903be..6b23482af 100644 --- a/community/libvirt/PKGBUILD +++ b/community/libvirt/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 48842 2011-06-06 14:43:46Z spupykin $ +# $Id: PKGBUILD 50988 2011-07-04 11:16:13Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Jonathan Wiersma <archaur at jonw dot org> pkgname=libvirt -pkgver=0.9.2 +pkgver=0.9.3 pkgrel=1 pkgdesc="API for controlling virtualization engines (openvz,kvm,qemu,virtualbox,xen,etc)" arch=('i686' 'x86_64' 'mips64el') @@ -37,10 +37,10 @@ source=("http://libvirt.org/sources/$pkgname-$pkgver.tar.gz" openbsd-netcat-default.patch unixperms.patch yajl-2.x.patch) -md5sums=('a9f974e173471a9c9b381ad1e93642b0' +md5sums=('04f47fad7d0c614af9dcc5d1351c2148' '018d97dafc0049075fba6f2850f17a12' '3ed0e24f5b5e25bf553f5427d64915e6' - '1c151434af552b8a30fe87d21ef5d783' + 'ebb78cda893ca7991e0c22588a63132b' 'db95aecdf2ccf3693fef5821cdcb7eba' '5745bb8d0b254abb7a3528c66e03b0f9') diff --git a/community/libvirt/openbsd-netcat-default.patch b/community/libvirt/openbsd-netcat-default.patch index 8a0d9aec8..29f05b34f 100644 --- a/community/libvirt/openbsd-netcat-default.patch +++ b/community/libvirt/openbsd-netcat-default.patch @@ -1,7 +1,7 @@ -diff -wbBur libvirt-0.9.2/src/qemu/qemu_migration.c libvirt-0.9.2.my/src/qemu/qemu_migration.c ---- libvirt-0.9.2/src/qemu/qemu_migration.c 2011-06-06 06:47:32.000000000 +0400 -+++ libvirt-0.9.2.my/src/qemu/qemu_migration.c 2011-06-06 18:27:38.000000000 +0400 -@@ -1770,7 +1770,7 @@ +diff -wbBur libvirt-0.9.3/src/qemu/qemu_migration.c libvirt-0.9.3.my/src/qemu/qemu_migration.c +--- libvirt-0.9.3/src/qemu/qemu_migration.c 2011-07-04 06:45:14.000000000 +0400 ++++ libvirt-0.9.3.my/src/qemu/qemu_migration.c 2011-07-04 15:03:15.000000000 +0400 +@@ -1763,7 +1763,7 @@ ret = qemuMonitorMigrateToUnix(priv->mon, background_flags, unixfile); } else if (qemuCapsGet(priv->qemuCaps, QEMU_CAPS_MIGRATE_QEMU_EXEC)) { @@ -10,15 +10,27 @@ diff -wbBur libvirt-0.9.2/src/qemu/qemu_migration.c libvirt-0.9.2.my/src/qemu/qe ret = qemuMonitorMigrateToCommand(priv->mon, QEMU_MONITOR_MIGRATE_BACKGROUND, args); } else { ret = -1; -diff -wbBur libvirt-0.9.2/src/remote/remote_driver.c libvirt-0.9.2.my/src/remote/remote_driver.c ---- libvirt-0.9.2/src/remote/remote_driver.c 2011-06-06 04:15:12.000000000 +0400 -+++ libvirt-0.9.2.my/src/remote/remote_driver.c 2011-06-06 18:27:52.000000000 +0400 -@@ -774,7 +774,7 @@ - virCommandAddArgList(cmd, "-T", "-o", "BatchMode=yes", "-e", - "none", NULL); - } -- virCommandAddArgList(cmd, priv->hostname, netcat ? netcat : "nc", -+ virCommandAddArgList(cmd, priv->hostname, netcat ? netcat : "nc.openbsd", - "-U", (sockname ? sockname : - (flags & VIR_CONNECT_RO - ? LIBVIRTD_PRIV_UNIX_SOCKET_RO +diff -wbBur libvirt-0.9.3/src/remote/remote_driver.c libvirt-0.9.3.my/src/remote/remote_driver.c +--- libvirt-0.9.3/src/remote/remote_driver.c 2011-07-01 10:59:10.000000000 +0400 ++++ libvirt-0.9.3.my/src/remote/remote_driver.c 2011-07-04 15:03:32.000000000 +0400 +@@ -571,7 +571,7 @@ + command, + username, + no_tty, +- netcat ? netcat : "nc", ++ netcat ? netcat : "nc.openbsd", + sockname))) + goto failed; + +diff -wbBur libvirt-0.9.3/src/rpc/virnetsocket.c libvirt-0.9.3.my/src/rpc/virnetsocket.c +--- libvirt-0.9.3/src/rpc/virnetsocket.c 2011-07-01 10:59:10.000000000 +0400 ++++ libvirt-0.9.3.my/src/rpc/virnetsocket.c 2011-07-04 15:03:00.000000000 +0400 +@@ -597,7 +597,7 @@ + virCommandAddArgList(cmd, "-T", "-o", "BatchMode=yes", + "-e", "none", NULL); + virCommandAddArgList(cmd, nodename, +- netcat ? netcat : "nc", ++ netcat ? netcat : "nc.openbsd", + "-U", path, NULL); + + return virNetSocketNewConnectCommand(cmd, retsock); diff --git a/community/libzen/PKGBUILD b/community/libzen/PKGBUILD index c6aa81787..b33d81a66 100644 --- a/community/libzen/PKGBUILD +++ b/community/libzen/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 45012 2011-04-14 09:10:57Z spupykin $ +# $Id: PKGBUILD 50993 2011-07-04 11:24:03Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: hydro <hydro@freenet.de> pkgname=libzen -pkgver=0.4.19 +pkgver=0.4.20 pkgrel=1 pkgdesc="shared library for libmediainfo and mediainfo" arch=('i686' 'x86_64' 'mips64el') @@ -13,28 +13,28 @@ depends=('gcc-libs') makedepends=('libtool' 'automake' 'autoconf') options=('!libtool') source=(http://downloads.sourceforge.net/zenlib/${pkgname}_${pkgver}.tar.bz2) -md5sums=('0deabb701564f2e616a7ee6dd71599a1') +md5sums=('8211cc2ca8500c6af14600363be064d5') build() { cd $srcdir/ZenLib/Project/GNU/Library - sh ./autogen ./configure --prefix=/usr --enable-shared make clean + sed -i '1,1i#include <stdlib.h>' ../../../Source/ZenLib/Thread.h make - make DESTDIR=$pkgdir install +} +package() { + cd $srcdir/ZenLib/Project/GNU/Library + make DESTDIR=$pkgdir install install -dm 755 $pkgdir/usr/include/ZenLib install -m 644 $srcdir/ZenLib/Source/ZenLib/*.h $pkgdir/usr/include/ZenLib - for i in Base64 HTTP_Client Format/Html Format/Http TinyXml; do install -dm 755 $pkgdir/usr/include/ZenLib/$i install -m 644 $srcdir/ZenLib/Source/ZenLib/$i/*.h $pkgdir/usr/include/ZenLib/$i done - install -dm 755 $pkgdir/usr/lib/pkgconfig install -m 644 $srcdir/ZenLib/Project/GNU/Library/libzen.pc $pkgdir/usr/lib/pkgconfig sed -i -e 's|Version: |Version: '$pkgver'|g' $pkgdir/usr/lib/pkgconfig/libzen.pc - install -D -m 644 $srcdir/ZenLib/License.txt $pkgdir/usr/share/licenses/libzen/License.txt } diff --git a/community/mediainfo-gui/PKGBUILD b/community/mediainfo-gui/PKGBUILD index 0399fb42c..b204ddf3e 100644 --- a/community/mediainfo-gui/PKGBUILD +++ b/community/mediainfo-gui/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 45015 2011-04-14 09:11:31Z spupykin $ +# $Id: PKGBUILD 51008 2011-07-04 11:43:50Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: hydro <hydro@freenet.de> pkgname=mediainfo-gui -pkgver=0.7.43 +pkgver=0.7.45 pkgrel=1 pkgdesc="GUI for mediainfo" arch=('i686' 'x86_64' 'mips64el') @@ -13,13 +13,17 @@ depends=('libmediainfo>=0.7.35' 'wxgtk') makedepends=('libtool' 'automake' 'autoconf') install=mediainfo-gui.install source=(http://downloads.sourceforge.net/mediainfo/mediainfo_${pkgver}.tar.bz2) -md5sums=('a1c61fb1385e22dc762dad33b7f37681') +md5sums=('8b8287dcc6d9805a1ba5209d99727ffb') build() { cd $srcdir/MediaInfo/Project/GNU/GUI sh ./autogen ./configure --prefix=/usr make +} + +package() { + cd $srcdir/MediaInfo/Project/GNU/GUI make DESTDIR=$pkgdir install install -D -m 644 $srcdir/MediaInfo/Source/Ressource/Image/MediaInfo.png \ $pkgdir/usr/share/icons/hicolor/128x128/apps/mediainfo.png @@ -27,5 +31,4 @@ build() { $pkgdir/usr/share/pixmaps/mediainfo-gui.png install -D -m 644 $srcdir/MediaInfo/Project/GNU/GUI/mediainfo-gui.desktop \ $pkgdir/usr/share/applications/mediainfo-gui.desktop - } diff --git a/community/mediainfo/PKGBUILD b/community/mediainfo/PKGBUILD index ce21aae6d..25da7fb81 100644 --- a/community/mediainfo/PKGBUILD +++ b/community/mediainfo/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 46857 2011-05-13 08:16:10Z jelle $ +# $Id: PKGBUILD 51003 2011-07-04 11:42:54Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: hydro <hydro@freenet.de> pkgname=mediainfo -pkgver=0.7.44 +pkgver=0.7.45 pkgrel=1 pkgdesc="supplies technical and tag information about a video or audio file" arch=('i686' 'x86_64' 'mips64el') @@ -12,7 +12,7 @@ license=('GPL') depends=('libmediainfo>=0.7.35') makedepends=('libtool' 'automake' 'autoconf') source=(http://downloads.sourceforge.net/mediainfo/${pkgname}_${pkgver}.tar.bz2) -md5sums=('ed89fcc565ac38065bcb48e13efea5c6') +md5sums=('8b8287dcc6d9805a1ba5209d99727ffb') build() { cd $srcdir/MediaInfo/Project/GNU/CLI diff --git a/community/mongodb/PKGBUILD b/community/mongodb/PKGBUILD index 50a62916a..b5de75e44 100644 --- a/community/mongodb/PKGBUILD +++ b/community/mongodb/PKGBUILD @@ -4,7 +4,7 @@ pkgname=mongodb pkgver=1.8.2 -pkgrel=2 +pkgrel=4 pkgdesc='A high-performance, open source, schema-free document-oriented database.' arch=('i686' 'x86_64' 'mips64el') url='http://www.mongodb.org' diff --git a/community/mongodb/add-js185-support-to-SConstruct.diff b/community/mongodb/add-js185-support-to-SConstruct.diff new file mode 100644 index 000000000..c621d00cb --- /dev/null +++ b/community/mongodb/add-js185-support-to-SConstruct.diff @@ -0,0 +1,12 @@ +--- SConstruct.original 2011-07-05 14:23:46.334748007 +0000 ++++ SConstruct 2011-07-05 14:26:15.729533840 +0000 +@@ -208,6 +208,9 @@ + justClientLib = (COMMAND_LINE_TARGETS == ['mongoclient']) + + env = Environment( MSVS_ARCH=msarch , tools = ["default", "gch"], toolpath = '.' ) ++ ++env.ParseConfig('pkg-config --cflags --libs mozjs185') ++ + if has_option( "cxx" ): + env["CC"] = get_option( "cxx" ) + env["CXX"] = get_option( "cxx" ) diff --git a/community/mongodb/mongodb-1.8.0-spidermonkey-1.8.5-support.patch b/community/mongodb/mongodb-1.8.0-spidermonkey-1.8.5-support.patch new file mode 100644 index 000000000..46160450f --- /dev/null +++ b/community/mongodb/mongodb-1.8.0-spidermonkey-1.8.5-support.patch @@ -0,0 +1,1502 @@ +--- mongodb-src-r1.8.0/SConstruct.mozjs185~ 2011-03-16 16:33:30.000000000 +0100 ++++ mongodb-src-r1.8.0/SConstruct 2011-04-01 22:16:43.411100876 +0200 +@@ -671,7 +671,6 @@ if nix: + env.Append( CPPFLAGS="-fPIC -fno-strict-aliasing -ggdb -pthread -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch" ) + # env.Append( " -Wconversion" ) TODO: this doesn't really work yet + if linux: +- env.Append( CPPFLAGS=" -Werror " ) + env.Append( CPPFLAGS=" -fno-builtin-memcmp " ) # glibc's memcmp is faster than gcc's + env.Append( CXXFLAGS=" -Wnon-virtual-dtor " ) + env.Append( LINKFLAGS=" -fPIC -pthread -rdynamic" ) +@@ -893,11 +892,11 @@ def doConfigure( myenv , needPcre=True , + if usesm: + + # see http://www.mongodb.org/pages/viewpageattachments.action?pageId=12157032 +- J = [ "mozjs" , "js", "js_static" ] ++ J = [ "mozjs185" , "js", "js_static" ] + if windows: + if msarch == "amd64": + if release: +- J = [ "js64r", "js", "mozjs" , "js_static" ] ++ J = [ "js64r", "js", "mozjs185" , "js_static" ] + else: + J = "js64d" + print( "looking for js64d.lib for spidermonkey. (available at mongodb.org prebuilt)" ); +@@ -905,14 +904,12 @@ def doConfigure( myenv , needPcre=True , + if not force32: + print( "Assuming a 32 bit build is desired" ) + if release: +- J = [ "js32r", "js", "mozjs" , "js_static" ] ++ J = [ "js32r", "js", "mozjs185" , "js_static" ] + else: +- J = [ "js32d", "js", "mozjs" , "js_static" ] ++ J = [ "js32d", "js", "mozjs185" , "js_static" ] + + myCheckLib( J , True ) + mozHeader = "js" +- if bigLibString(myenv).find( "mozjs" ) >= 0: +- mozHeader = "mozjs" + + if not conf.CheckHeader( mozHeader + "/jsapi.h" ): + if conf.CheckHeader( "jsapi.h" ): +@@ -921,6 +918,13 @@ def doConfigure( myenv , needPcre=True , + print( "no spider monkey headers!" ) + Exit(1) + ++ if conf.CheckFunc( 'JS_NewCompartmentAndGlobalObject' ): ++ myenv.Append( CPPDEFINES=[ "HAVE_COMPARTMENTS" ] ) ++ if conf.CheckFunc( 'JS_GetStringCharsAndLength' ): ++ myenv.Append( CPPDEFINES=[ "HAVE_JS_GET_STRING_CHARS_AND_LENGTH" ] ) ++ if conf.CheckFunc( 'JS_NewRegExpObjectNoStatics' ): ++ myenv.Append( CPPDEFINES=[ "JS_NEW_REG_EXP_OBJECT_NO_STATISTICS" ] ) ++ + if usev8: + if debugBuild: + myCheckLib( [ "v8_g" , "v8" ] , True ) +--- mongodb-src-r1.8.0/scripting/engine_spidermonkey.cpp.mozjs185~ 2011-03-16 16:33:30.000000000 +0100 ++++ mongodb-src-r1.8.0/scripting/engine_spidermonkey.cpp 2011-04-01 22:42:19.780233492 +0200 +@@ -192,8 +192,13 @@ namespace mongo { + } + + string toString( JSString * so ) { ++#ifdef HAVE_JS_GET_STRING_CHARS_AND_LENGTH ++ size_t srclen; ++ const jschar * s = JS_GetStringCharsAndLength( _context , so , &srclen ); ++#else + jschar * s = JS_GetStringChars( so ); + size_t srclen = JS_GetStringLength( so ); ++#endif + if( srclen == 0 ) + return ""; + +@@ -360,7 +365,7 @@ namespace mongo { + + case JSTYPE_OBJECT: { + JSObject * o = JSVAL_TO_OBJECT( val ); +- if ( ! o || o == JSVAL_NULL ) { ++ if ( ! o || o == (JSObject *)JSVAL_NULL ){ + b.appendNull( name ); + } + else if ( ! appendSpecialDBObject( this , b , name , val , o ) ) { +@@ -419,16 +424,15 @@ namespace mongo { + return true; + } + +- void addRoot( JSFunction * f , const char * name ); ++ void addRoot( JSFunction * f ); + + JSFunction * compileFunction( const char * code, JSObject * assoc = 0 ) { +- const char * gcName = "unknown"; +- JSFunction * f = _compileFunction( code , assoc , gcName ); +- //addRoot( f , gcName ); ++ JSFunction * f = _compileFunction( code , assoc ); ++ //addRoot( f ); + return f; + } + +- JSFunction * _compileFunction( const char * raw , JSObject * assoc , const char *& gcName ) { ++ JSFunction * _compileFunction( const char * raw , JSObject * assoc ) { + if ( ! assoc ) + assoc = JS_GetGlobalObject( _context ); + +@@ -447,7 +451,6 @@ namespace mongo { + if ( isSimpleStatement( s ) ) { + s = "return " + s; + } +- gcName = "cf anon"; + fname << "anon"; + return JS_CompileFunction( _context , assoc , fname.str().c_str() , 0 , 0 , s.c_str() , s.size() , "nofile_a" , 0 ); + } +@@ -488,7 +491,6 @@ namespace mongo { + log() << "compile failed for: " << raw << endl; + return 0; + } +- gcName = "cf normal"; + return func; + } + +@@ -630,7 +632,11 @@ namespace mongo { + flags++; + } + ++#ifdef JS_NEW_REG_EXP_OBJECT_NO_STATISTICS ++ JSObject * r = JS_NewRegExpObjectNoStatics( _context , (char*)e.regex() , strlen( e.regex() ) , flagNumber); ++#else + JSObject * r = JS_NewRegExpObject( _context , (char*)e.regex() , strlen( e.regex() ) , flagNumber ); ++#endif + assert( r ); + return OBJECT_TO_JSVAL( r ); + } +@@ -791,7 +797,7 @@ namespace mongo { + + BSONFieldIterator * it = (BSONFieldIterator*)JSVAL_TO_PRIVATE( *statep ); + if ( ! it ) { +- *statep = 0; ++ *statep = JSVAL_NULL; + return JS_TRUE; + } + +@@ -803,7 +809,7 @@ namespace mongo { + } + else { + delete it; +- *statep = 0; ++ *statep = JSVAL_NULL; + } + return JS_TRUE; + } +@@ -818,7 +824,7 @@ namespace mongo { + return JS_FALSE; + } + +- JSBool noaccess( JSContext *cx, JSObject *obj, jsval idval, jsval *vp) { ++ JSBool noaccess( JSContext *cx, JSObject *obj, jsid id, jsval *vp){ + BSONHolder * holder = GETHOLDER( cx , obj ); + if ( ! holder ) { + // in init code still +@@ -830,24 +836,37 @@ namespace mongo { + return JS_FALSE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) ++ JSBool strict_noaccess( JSContext *cx, JSObject *obj, jsid id, JSBool strict, jsval *vp){ ++ return noaccess( cx , obj , id , vp ); ++ } ++ ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass bson_ro_class = { + "bson_ro_object" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE | JSCLASS_NEW_ENUMERATE , +- noaccess, noaccess, JS_PropertyStub, noaccess, +- (JSEnumerateOp)bson_enumerate, (JSResolveOp)(&resolveBSONField) , JS_ConvertStub, bson_finalize , ++ noaccess, noaccess, JS_PropertyStub, strict_noaccess, ++ (JSEnumerateOp)bson_enumerate, (JSResolveOp)resolveBSONField , JS_ConvertStub, bson_finalize , + JSCLASS_NO_OPTIONAL_MEMBERS + }; + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool bson_cons( JSContext* cx, uintN argc, jsval* vp ){ ++#else + JSBool bson_cons( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + cerr << "bson_cons : shouldn't be here!" << endl; + JS_ReportError( cx , "can't construct bson object" ); + return JS_FALSE; + } + + JSFunctionSpec bson_functions[] = { +- { 0 } ++ JS_FS_END + }; + +- JSBool bson_add_prop( JSContext *cx, JSObject *obj, jsval idval, jsval *vp) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSPropertyOp) ++ JSBool bson_add_prop( JSContext *cx, JSObject *obj, jsid id, jsval *vp){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + BSONHolder * holder = GETHOLDER( cx , obj ); + if ( ! holder ) { + // static init +@@ -864,8 +883,10 @@ namespace mongo { + return JS_TRUE; + } + +- +- JSBool mark_modified( JSContext *cx, JSObject *obj, jsval idval, jsval *vp) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSPropertyOp) ++ JSBool mark_modified( JSContext *cx, JSObject *obj, jsid id, JSBool strict, jsval *vp){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + Convertor c(cx); + BSONHolder * holder = GETHOLDER( cx , obj ); + if ( !holder ) // needed when we're messing with DBRef.prototype +@@ -877,7 +898,10 @@ namespace mongo { + return JS_TRUE; + } + +- JSBool mark_modified_remove( JSContext *cx, JSObject *obj, jsval idval, jsval *vp) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSPropertyOp) ++ JSBool mark_modified_remove( JSContext *cx, JSObject *obj, jsid id, jsval *vp){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + Convertor c(cx); + BSONHolder * holder = GETHOLDER( cx , obj ); + if ( holder->_inResolve ) +@@ -887,23 +911,26 @@ namespace mongo { + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass bson_class = { + "bson_object" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE | JSCLASS_NEW_ENUMERATE , + bson_add_prop, mark_modified_remove, JS_PropertyStub, mark_modified, +- (JSEnumerateOp)bson_enumerate, (JSResolveOp)(&resolveBSONField) , JS_ConvertStub, bson_finalize , ++ (JSEnumerateOp)bson_enumerate, (JSResolveOp)resolveBSONField , JS_ConvertStub, bson_finalize , + JSCLASS_NO_OPTIONAL_MEMBERS + }; + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + static JSClass global_class = { + "global", JSCLASS_GLOBAL_FLAGS, +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + // --- global helpers --- + +- JSBool native_print( JSContext * cx , JSObject * obj , uintN argc, jsval *argv, jsval *rval ) { ++ JSBool native_print( JSContext * cx , uintN argc , jsval *vp ){ ++ jsval *argv = JS_ARGV( cx , vp); + stringstream ss; + Convertor c( cx ); + for ( uintN i=0; i<argc; i++ ) { +@@ -913,10 +940,13 @@ namespace mongo { + } + ss << "\n"; + Logstream::logLockless( ss.str() ); ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + +- JSBool native_helper( JSContext *cx , JSObject *obj , uintN argc, jsval *argv , jsval *rval ) { ++ JSBool native_helper( JSContext *cx , uintN argc, jsval *vp){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + + NativeFunction func = (NativeFunction)((long long)c.getNumber( obj , "x" ) ); +@@ -942,35 +972,37 @@ namespace mongo { + } + + if ( out.isEmpty() ) { +- *rval = JSVAL_VOID; ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + } + else { +- *rval = c.toval( out.firstElement() ); ++ JS_SET_RVAL( cx , vp , c.toval( out.firstElement() ) ); + } + + return JS_TRUE; + } + +- JSBool native_load( JSContext *cx , JSObject *obj , uintN argc, jsval *argv , jsval *rval ); ++ JSBool native_load( JSContext *cx , uintN argc, jsval *vp ); + +- JSBool native_gc( JSContext *cx , JSObject *obj , uintN argc, jsval *argv , jsval *rval ) { ++ JSBool native_gc( JSContext *cx , uintN argc, jsval *vp ){ + JS_GC( cx ); ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + + JSFunctionSpec globalHelpers[] = { +- { "print" , &native_print , 0 , 0 , 0 } , +- { "nativeHelper" , &native_helper , 1 , 0 , 0 } , +- { "load" , &native_load , 1 , 0 , 0 } , +- { "gc" , &native_gc , 1 , 0 , 0 } , +- { 0 , 0 , 0 , 0 , 0 } ++ JS_FS( "print" , &native_print , 0 , JSFUN_FAST_NATIVE ) , ++ JS_FS( "nativeHelper" , &native_helper , 1 , JSFUN_FAST_NATIVE ) , ++ JS_FS( "load" , &native_load , 1 , JSFUN_FAST_NATIVE ) , ++ JS_FS( "gc" , &native_gc , 1 , JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // ----END global helpers ---- + + // Object helpers + +- JSBool bson_get_size(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bson_get_size(JSContext *cx, uintN argc, jsval *vp){ ++ jsval *argv = JS_ARGV( cx , vp ); + if ( argc != 1 || !JSVAL_IS_OBJECT( argv[ 0 ] ) ) { + JS_ReportError( cx , "bsonsize requires one valid object" ); + return JS_FALSE; +@@ -979,7 +1011,7 @@ namespace mongo { + Convertor c(cx); + + if ( argv[0] == JSVAL_VOID || argv[0] == JSVAL_NULL ) { +- *rval = c.toval( 0.0 ); ++ JS_SET_RVAL( cx , vp , c.toval( 0.0 ) ); + return JS_TRUE; + } + +@@ -999,18 +1031,21 @@ namespace mongo { + size = temp.objsize(); + } + +- *rval = c.toval( size ); ++ JS_SET_RVAL( cx , vp , c.toval( size ) ); + return JS_TRUE; + } + + JSFunctionSpec objectHelpers[] = { +- { "bsonsize" , &bson_get_size , 1 , 0 , 0 } , +- { 0 , 0 , 0 , 0 , 0 } ++ JS_FS( "bsonsize" , &bson_get_size , 1 , JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // end Object helpers + +- JSBool resolveBSONField( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSResolveOp) ++ JSBool resolveBSONField( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + assert( JS_EnterLocalRootScope( cx ) ); + Convertor c( cx ); + +@@ -1023,7 +1058,7 @@ namespace mongo { + } + holder->check(); + +- string s = c.toString( id ); ++ string s = c.toString( idval ); + + BSONElement e = holder->_obj[ s.c_str() ]; + +@@ -1139,9 +1174,15 @@ namespace mongo { + //JS_SetVersion( _context , JSVERSION_LATEST); TODO + JS_SetErrorReporter( _context , errorReporter ); + ++#ifdef HAVE_COMPARTMENTS ++ _global = JS_NewCompartmentAndGlobalObject( _context , &global_class , NULL); ++ massert( 13442 , "JS_NewCompartmentAndGlobalObject failed for global" , _global ); ++ _call = JS_EnterCrossCompartmentCall( _context , _global); ++#else + _global = JS_NewObject( _context , &global_class, NULL, NULL); + massert( 10432 , "JS_NewObject failed for global" , _global ); + JS_SetGlobalObject( _context , _global ); ++#endif + massert( 10433 , "js init failed" , JS_InitStandardClasses( _context , _global ) ); + + JS_SetOptions( _context , JS_GetOptions( _context ) | JSOPTION_VAROBJFIX ); +@@ -1159,13 +1200,14 @@ namespace mongo { + smlock; + uassert( 10223 , "deleted SMScope twice?" , _convertor ); + +- for ( list<void*>::iterator i=_roots.begin(); i != _roots.end(); i++ ) { +- JS_RemoveRoot( _context , *i ); ++ for ( list<JSObject*>::iterator i=_roots.begin(); i != _roots.end(); i++ ){ ++ JSObject * obj = (JSObject *)*i; ++ JS_RemoveObjectRoot( _context , &obj ); + } + _roots.clear(); + + if ( _this ) { +- JS_RemoveRoot( _context , &_this ); ++ JS_RemoveObjectRoot( _context , &_this ); + _this = 0; + } + +@@ -1174,6 +1216,13 @@ namespace mongo { + _convertor = 0; + } + ++#ifdef HAVE_COMPARTMENTS ++ if ( _call ) { ++ JS_LeaveCrossCompartmentCall( _call ); ++ _call = 0; ++ } ++#endif ++ + if ( _context ) { + // This is expected to reclaim _global as well. + JS_DestroyContext( _context ); +@@ -1187,16 +1236,16 @@ namespace mongo { + assert( _convertor ); + return; + if ( _this ) { +- JS_RemoveRoot( _context , &_this ); ++ JS_RemoveObjectRoot( _context , &_this ); + _this = 0; + } + currentScope.reset( this ); + _error = ""; + } + +- void addRoot( void * root , const char * name ) { +- JS_AddNamedRoot( _context , root , name ); +- _roots.push_back( root ); ++ void addRoot( JSObject * obj ){ ++ JS_AddObjectRoot( _context , &obj ); ++ _roots.push_back( obj ); + } + + void init( const BSONObj * data ) { +@@ -1336,13 +1385,13 @@ namespace mongo { + void setThis( const BSONObj * obj ) { + smlock; + if ( _this ) { +- JS_RemoveRoot( _context , &_this ); ++ JS_RemoveObjectRoot( _context , &_this ); + _this = 0; + } + + if ( obj ) { + _this = _convertor->toJSObject( obj ); +- JS_AddNamedRoot( _context , &_this , "scope this" ); ++ JS_AddObjectRoot( _context , &_this ); + } + } + +@@ -1402,7 +1451,7 @@ namespace mongo { + spec->start = boost::posix_time::microsec_clock::local_time(); + spec->count = 0; + JS_SetContextPrivate( _context, (void*)spec ); +-#if defined(SM181) && !defined(XULRUNNER190) ++#if JS_VERSION >= 181 && !defined(XULRUNNER190) + JS_SetOperationCallback( _context, _interrupt ); + #else + JS_SetBranchCallback( _context, interrupt ); +@@ -1412,7 +1461,7 @@ namespace mongo { + + void uninstallInterrupt( int timeoutMs ) { + if ( timeoutMs != 0 || ScriptEngine::haveCheckInterruptCallback() ) { +-#if defined(SM181) && !defined(XULRUNNER190) ++#if JS_VERSION >= 181 && !defined(XULRUNNER190) + JS_SetOperationCallback( _context , 0 ); + #else + JS_SetBranchCallback( _context, 0 ); +@@ -1548,9 +1597,12 @@ namespace mongo { + + JSObject * _global; + JSObject * _this; ++#ifdef HAVE_COMPARTMENTS ++ JSCrossCompartmentCall * _call; ++#endif + + string _error; +- list<void*> _roots; ++ list<JSObject*> _roots; + + bool _externalSetup; + bool _localConnect; +@@ -1579,7 +1631,8 @@ namespace mongo { + } + } + +- JSBool native_load( JSContext *cx , JSObject *obj , uintN argc, jsval *argv , jsval *rval ) { ++ JSBool native_load( JSContext *cx , uintN argc, jsval *vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); + Convertor c(cx); + + Scope * s = currentScope.get(); +@@ -1594,6 +1647,7 @@ namespace mongo { + } + } + ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + +@@ -1633,7 +1687,7 @@ namespace mongo { + return new SMScope(); + } + +- void Convertor::addRoot( JSFunction * f , const char * name ) { ++ void Convertor::addRoot( JSFunction * f ){ + if ( ! f ) + return; + +@@ -1642,7 +1696,7 @@ namespace mongo { + + JSObject * o = JS_GetFunctionObject( f ); + assert( o ); +- scope->addRoot( &o , name ); ++ scope->addRoot( o ); + } + + } +--- mongodb-src-r1.8.0/scripting/engine_spidermonkey.h.mozjs185~ 2011-03-16 16:33:30.000000000 +0100 ++++ mongodb-src-r1.8.0/scripting/engine_spidermonkey.h 2011-04-01 21:29:15.697678508 +0200 +@@ -21,6 +21,9 @@ + + // START inc hacking + ++#undef malloc ++#undef realloc ++ + #if defined( MOZJS ) + + #define MOZILLA_1_8_BRANCH +@@ -55,6 +58,9 @@ + + #endif + ++#define malloc MONGO_malloc ++#define realloc MONGO_realloc ++ + // END inc hacking + + // -- SM 1.6 hacks --- +@@ -81,6 +87,10 @@ JSBool JS_CStringsAreUTF8() { + #define SM181 + #endif + ++#ifndef JSFUN_FAST_NATIVE ++#define JSFUN_FAST_NATIVE 0 ++#endif ++ + namespace mongo { + + class SMScope; +@@ -104,7 +114,7 @@ namespace mongo { + extern boost::thread_specific_ptr<SMScope> currentScope; + + // bson +- JSBool resolveBSONField( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ); ++ JSBool resolveBSONField( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ); + + + // mongo +--- mongodb-src-r1.8.0/scripting/sm_db.cpp.mozjs185~ 2011-03-16 16:33:30.000000000 +0100 ++++ mongodb-src-r1.8.0/scripting/sm_db.cpp 2011-04-01 22:51:59.701652521 +0200 +@@ -79,13 +79,25 @@ namespace mongo { + return holder->get(); + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool internal_cursor_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool internal_cursor_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + uassert( 10236 , "no args to internal_cursor_constructor" , argc == 0 ); + assert( JS_SetPrivate( cx , obj , 0 ) ); // just for safety ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- void internal_cursor_finalize( JSContext * cx , JSObject * obj ) { ++ void internal_cursor_finalize( JSContext * cx, JSObject * obj ){ + CursorHolder * holder = (CursorHolder*)JS_GetPrivate( cx , obj ); + if ( holder ) { + delete holder; +@@ -93,10 +105,11 @@ namespace mongo { + } + } + +- JSBool internal_cursor_hasNext(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool internal_cursor_hasNext(JSContext *cx , uintN argc , jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); + DBClientCursor *cursor = getCursor( cx, obj ); + try { +- *rval = cursor->more() ? JSVAL_TRUE : JSVAL_FALSE; ++ JS_SET_RVAL( cx , vp , cursor->more() ? JSVAL_TRUE : JSVAL_FALSE ); + } + catch ( std::exception& e ) { + JS_ReportError( cx , e.what() ); +@@ -105,14 +118,16 @@ namespace mongo { + return JS_TRUE; + } + +- JSBool internal_cursor_objsLeftInBatch(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool internal_cursor_objsLeftInBatch(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); + DBClientCursor *cursor = getCursor( cx, obj ); + Convertor c(cx); +- *rval = c.toval((double) cursor->objsLeftInBatch() ); ++ JS_SET_RVAL( cx , vp , c.toval((double) cursor->objsLeftInBatch()) ); + return JS_TRUE; + } + +- JSBool internal_cursor_next(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool internal_cursor_next(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); + DBClientCursor *cursor = getCursor( cx, obj ); + + BSONObj n; +@@ -131,20 +146,21 @@ namespace mongo { + } + + Convertor c(cx); +- *rval = c.toval( &n ); ++ JS_SET_RVAL( cx , vp , c.toval( &n ) ); + return JS_TRUE; + } + + JSFunctionSpec internal_cursor_functions[] = { +- { "hasNext" , internal_cursor_hasNext , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "objsLeftInBatch" , internal_cursor_objsLeftInBatch , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "next" , internal_cursor_next , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "hasNext" , internal_cursor_hasNext , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "objsLeftInBatch" , internal_cursor_objsLeftInBatch , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "next" , internal_cursor_next , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass internal_cursor_class = { + "InternalCursor" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, internal_cursor_finalize, + JSCLASS_NO_OPTIONAL_MEMBERS + }; +@@ -157,7 +173,16 @@ namespace mongo { + throw -1; + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool mongo_local_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool mongo_local_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + shared_ptr< DBClientWithCommands > client( createDirectClient() ); +@@ -166,10 +191,23 @@ namespace mongo { + jsval host = c.toval( "EMBEDDED" ); + assert( JS_SetProperty( cx , obj , "host" , &host ) ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool mongo_external_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool mongo_external_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + smuassert( cx , "0 or 1 args to Mongo" , argc <= 1 ); +@@ -197,6 +235,9 @@ namespace mongo { + assert( JS_SetPrivate( cx , obj , (void*)( new shared_ptr< DBClientWithCommands >( conn ) ) ) ); + jsval host_val = c.toval( host.c_str() ); + assert( JS_SetProperty( cx , obj , "host" , &host_val ) ); ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + + } +@@ -215,14 +256,18 @@ namespace mongo { + } + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass mongo_class = { + "Mongo" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, mongo_finalize, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + +- JSBool mongo_find(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool mongo_find(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); ++ jsval* argv = JS_ARGV( cx , vp ); ++ + smuassert( cx , "mongo_find needs 7 args" , argc == 7 ); + shared_ptr< DBClientWithCommands > * connHolder = (shared_ptr< DBClientWithCommands >*)JS_GetPrivate( cx , obj ); + smuassert( cx , "no connection!" , connHolder && connHolder->get() ); +@@ -252,7 +297,8 @@ namespace mongo { + JSObject * mycursor = JS_NewObject( cx , &internal_cursor_class , 0 , 0 ); + CHECKNEWOBJECT( mycursor, cx, "internal_cursor_class" ); + assert( JS_SetPrivate( cx , mycursor , new CursorHolder( cursor, *connHolder ) ) ); +- *rval = OBJECT_TO_JSVAL( mycursor ); ++ ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( mycursor )); + return JS_TRUE; + } + catch ( ... ) { +@@ -261,7 +307,10 @@ namespace mongo { + } + } + +- JSBool mongo_update(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool mongo_update(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); ++ jsval* argv = JS_ARGV( cx , vp ); ++ + smuassert( cx , "mongo_find needs at elast 3 args" , argc >= 3 ); + smuassert( cx , "2nd param to update has to be an object" , JSVAL_IS_OBJECT( argv[1] ) ); + smuassert( cx , "3rd param to update has to be an object" , JSVAL_IS_OBJECT( argv[2] ) ); +@@ -282,6 +331,7 @@ namespace mongo { + + try { + conn->update( ns , c.toObject( argv[1] ) , c.toObject( argv[2] ) , upsert , multi ); ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + catch ( ... ) { +@@ -290,7 +340,10 @@ namespace mongo { + } + } + +- JSBool mongo_insert(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool mongo_insert(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); ++ jsval* argv = JS_ARGV( cx , vp ); ++ + smuassert( cx , "mongo_insert needs 2 args" , argc == 2 ); + smuassert( cx , "2nd param to insert has to be an object" , JSVAL_IS_OBJECT( argv[1] ) ); + +@@ -310,6 +363,7 @@ namespace mongo { + // TODO: add _id + + conn->insert( ns , o ); ++ JS_SET_RVAL( cx, vp, JSVAL_VOID ); + return JS_TRUE; + } + catch ( std::exception& e ) { +@@ -325,7 +379,10 @@ namespace mongo { + } + } + +- JSBool mongo_remove(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool mongo_remove(JSContext *cx, uintN argc, jsval *vp) { ++ JSObject* obj = JS_THIS_OBJECT( cx , vp ); ++ jsval* argv = JS_ARGV( cx , vp ); ++ + smuassert( cx , "mongo_remove needs 2 or 3 arguments" , argc == 2 || argc == 3 ); + smuassert( cx , "2nd param to insert has to be an object" , JSVAL_IS_OBJECT( argv[1] ) ); + +@@ -346,6 +403,7 @@ namespace mongo { + + try { + conn->remove( ns , o , justOne ); ++ JS_SET_RVAL( cx , vp , JSVAL_VOID ); + return JS_TRUE; + } + catch ( std::exception& e ) { +@@ -361,16 +419,26 @@ namespace mongo { + } + + JSFunctionSpec mongo_functions[] = { +- { "find" , mongo_find , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "update" , mongo_update , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "insert" , mongo_insert , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "remove" , mongo_remove , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "find" , mongo_find , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "update" , mongo_update , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "insert" , mongo_insert , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "remove" , mongo_remove , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // ------------- db_collection ------------- + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool db_collection_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool db_collection_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx , "db_collection_constructor wrong args" , argc == 4 ); + assert( JS_SetProperty( cx , obj , "_mongo" , &(argv[0]) ) ); + assert( JS_SetProperty( cx , obj , "_db" , &(argv[1]) ) ); +@@ -382,16 +450,22 @@ namespace mongo { + JS_ReportError( cx , "can't use sharded collection from db.eval" ); + return JS_FALSE; + } +- ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- JSBool db_collection_resolve( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSResolveOp) ++ JSBool db_collection_resolve( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); ++ + if ( flags & JSRESOLVE_ASSIGNING ) + return JS_TRUE; + + Convertor c( cx ); +- string collname = c.toString( id ); ++ string collname = c.toString( idval ); + + if ( isSpecialName( collname ) ) + return JS_TRUE; +@@ -419,10 +493,11 @@ namespace mongo { + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass db_collection_class = { + "DBCollection" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, +- JS_EnumerateStub, (JSResolveOp)(&db_collection_resolve) , JS_ConvertStub, JS_FinalizeStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, ++ JS_EnumerateStub, (JSResolveOp)db_collection_resolve , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + +@@ -454,15 +529,32 @@ namespace mongo { + // -------------- DB --------------- + + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool db_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool db_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx, "wrong number of arguments to DB" , argc == 2 ); + assert( JS_SetProperty( cx , obj , "_mongo" , &(argv[0]) ) ); + assert( JS_SetProperty( cx , obj , "_name" , &(argv[1]) ) ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif ++ + return JS_TRUE; + } + +- JSBool db_resolve( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSResolveOp) ++ JSBool db_resolve( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + if ( flags & JSRESOLVE_ASSIGNING ) + return JS_TRUE; + +@@ -471,7 +563,7 @@ namespace mongo { + if ( obj == c.getGlobalPrototype( "DB" ) ) + return JS_TRUE; + +- string collname = c.toString( id ); ++ string collname = c.toString( idval ); + + if ( isSpecialName( collname ) ) + return JS_TRUE; +@@ -489,17 +581,28 @@ namespace mongo { + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass db_class = { + "DB" , JSCLASS_HAS_PRIVATE | JSCLASS_NEW_RESOLVE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, +- JS_EnumerateStub, (JSResolveOp)(&db_resolve) , JS_ConvertStub, JS_FinalizeStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, ++ JS_EnumerateStub, (JSResolveOp)db_resolve , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + + // -------------- object id ------------- + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool object_id_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool object_id_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + OID oid; +@@ -524,35 +627,48 @@ namespace mongo { + if ( ! JS_InstanceOf( cx , obj , &object_id_class , 0 ) ) { + obj = JS_NewObject( cx , &object_id_class , 0 , 0 ); + CHECKNEWOBJECT( obj, cx, "object_id_constructor" ); +- *rval = OBJECT_TO_JSVAL( obj ); + } + + jsval v = c.toval( oid.str().c_str() ); + assert( JS_SetProperty( cx , obj , "str" , &v ) ); + ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass object_id_class = { + "ObjectId" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + +- JSBool object_id_tostring(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool object_id_tostring(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); +- return (JSBool) (*rval = c.getProperty( obj , "str" )); ++ JS_SET_RVAL( cx , vp , c.getProperty( obj , "str" )); ++ return JS_TRUE; + } + + JSFunctionSpec object_id_functions[] = { +- { "toString" , object_id_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "toString" , object_id_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // dbpointer + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool dbpointer_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool dbpointer_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + if ( argc == 2 ) { +@@ -564,6 +680,9 @@ namespace mongo { + + assert( JS_SetProperty( cx , obj , "ns" , &(argv[0]) ) ); + assert( JS_SetProperty( cx , obj , "id" , &(argv[1]) ) ); ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + else { +@@ -572,19 +691,30 @@ namespace mongo { + } + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass dbpointer_class = { + "DBPointer" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSFunctionSpec dbpointer_functions[] = { +- { 0 } ++ JS_FS_END + }; + + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool dbref_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool dbref_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + if ( argc == 2 ) { +@@ -594,6 +724,9 @@ namespace mongo { + assert( JS_SetProperty( cx, o , "$id" , &argv[ 1 ] ) ); + BSONObj bo = c.toObject( o ); + assert( JS_SetPrivate( cx , obj , (void*)(new BSONHolder( bo.getOwned() ) ) ) ); ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + else { +@@ -607,7 +740,17 @@ namespace mongo { + + // UUID ************************** + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool uuid_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool uuid_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + if( argc == 0 ) { +@@ -635,6 +778,9 @@ namespace mongo { + c.setProperty( obj, "len", c.toval( (double)16 ) ); + c.setProperty( obj, "type", c.toval( (double)3 ) ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + else { +@@ -643,7 +789,8 @@ namespace mongo { + } + } + +- JSBool uuid_tostring(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool uuid_tostring(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + void *holder = JS_GetPrivate( cx, obj ); + assert( holder ); +@@ -652,7 +799,8 @@ namespace mongo { + ss << "UUID(\"" << toHex(data, 16); + ss << "\")"; + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + + void uuid_finalize( JSContext * cx , JSObject * obj ) { +@@ -664,21 +812,32 @@ namespace mongo { + } + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass uuid_class = { + "UUID" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, uuid_finalize, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSFunctionSpec uuid_functions[] = { +- { "toString" , uuid_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "toString" , uuid_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // BinData ************************** + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool bindata_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool bindata_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + Convertor c( cx ); + + if ( argc == 2 ) { +@@ -702,6 +861,9 @@ namespace mongo { + c.setProperty( obj, "len", c.toval( (double)decoded.length() ) ); + c.setProperty( obj, "type", c.toval( (double)type ) ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + else { +@@ -710,7 +872,8 @@ namespace mongo { + } + } + +- JSBool bindata_tostring(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindata_tostring(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int type = (int)c.getNumber( obj , "type" ); + int len = (int)c.getNumber( obj, "len" ); +@@ -722,10 +885,12 @@ namespace mongo { + base64::encode( ss, (const char *)data, len ); + ss << "\")"; + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + +- JSBool bindataBase64(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindataBase64(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int len = (int)c.getNumber( obj, "len" ); + void *holder = JS_GetPrivate( cx, obj ); +@@ -734,10 +899,12 @@ namespace mongo { + stringstream ss; + base64::encode( ss, (const char *)data, len ); + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + +- JSBool bindataAsHex(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindataAsHex(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int len = (int)c.getNumber( obj, "len" ); + void *holder = JS_GetPrivate( cx, obj ); +@@ -750,19 +917,24 @@ namespace mongo { + ss << v; + } + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + +- JSBool bindataLength(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindataLength(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int len = (int)c.getNumber( obj, "len" ); +- return *rval = c.toval((double) len); ++ JS_SET_RVAL( cx , vp , c.toval((double) len) ); ++ return JS_TRUE; + } + +- JSBool bindataSubtype(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool bindataSubtype(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + int t = (int)c.getNumber( obj, "type" ); +- return *rval = c.toval((double) t); ++ JS_SET_RVAL( cx , vp , c.toval((double) t) ); ++ return JS_TRUE; + } + + void bindata_finalize( JSContext * cx , JSObject * obj ) { +@@ -774,20 +946,21 @@ namespace mongo { + } + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass bindata_class = { + "BinData" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, bindata_finalize, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSFunctionSpec bindata_functions[] = { +- { "toString" , bindata_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "hex", bindataAsHex, 0, JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "base64", bindataBase64, 0, JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "length", bindataLength, 0, JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "subtype", bindataSubtype, 0, JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "toString" , bindata_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "hex", bindataAsHex, 0, JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "base64", bindataBase64, 0, JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "length", bindataLength, 0, JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "subtype", bindataSubtype, 0, JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + + // Map +@@ -796,7 +969,16 @@ namespace mongo { + return s == "put" || s == "get" || s == "_get" || s == "values" || s == "_data" || s == "constructor" ; + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool map_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool map_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + if ( argc > 0 ) { + JS_ReportError( cx , "Map takes no arguments" ); + return JS_FALSE; +@@ -808,10 +990,16 @@ namespace mongo { + jsval a = OBJECT_TO_JSVAL( array ); + JS_SetProperty( cx , obj , "_data" , &a ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- JSBool map_prop( JSContext *cx, JSObject *obj, jsval idval, jsval *vp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSPropertyOp) ++ JSBool map_prop( JSContext *cx, JSObject *obj, jsid id, jsval *vp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + Convertor c(cx); + if ( specialMapString( c.toString( idval ) ) ) + return JS_TRUE; +@@ -821,34 +1009,49 @@ namespace mongo { + return JS_FALSE; + } + ++ JSBool strict_map_prop( JSContext *cx, JSObject *obj, jsid id, JSBool strict, jsval *vp ){ ++ return map_prop( cx , obj , id , vp ); ++ } ++ ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass map_class = { + "Map" , JSCLASS_HAS_PRIVATE , +- map_prop, JS_PropertyStub, map_prop, map_prop, ++ map_prop, JS_PropertyStub, map_prop, strict_map_prop, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSFunctionSpec map_functions[] = { +- { 0 } ++ JS_FS_END + }; + + + // ----- + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass timestamp_class = { + "Timestamp" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool timestamp_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool timestamp_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx , "Timestamp needs 0 or 2 args" , argc == 0 || argc == 2 ); + + if ( ! JS_InstanceOf( cx , obj , ×tamp_class , 0 ) ) { + obj = JS_NewObject( cx , ×tamp_class , 0 , 0 ); + CHECKNEWOBJECT( obj, cx, "timestamp_constructor" ); +- *rval = OBJECT_TO_JSVAL( obj ); + } + + Convertor c( cx ); +@@ -864,21 +1067,30 @@ namespace mongo { + return JS_TRUE; + } + +- ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass numberlong_class = { + "NumberLong" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool numberlong_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool numberlong_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx , "NumberLong needs 0 or 1 args" , argc == 0 || argc == 1 ); + + if ( ! JS_InstanceOf( cx , obj , &numberlong_class , 0 ) ) { + obj = JS_NewObject( cx , &numberlong_class , 0 , 0 ); + CHECKNEWOBJECT( obj, cx, "numberlong_constructor" ); +- *rval = OBJECT_TO_JSVAL( obj ); + } + + Convertor c( cx ); +@@ -903,19 +1115,25 @@ namespace mongo { + c.makeLongObj( n, obj ); + } + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- JSBool numberlong_valueof(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool numberlong_valueof(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); +- return *rval = c.toval( double( c.toNumberLongUnsafe( obj ) ) ); ++ JS_SET_RVAL( cx , vp , c.toval( double( c.toNumberLongUnsafe( obj ) ) ) ); ++ return JS_TRUE; + } + +- JSBool numberlong_tonumber(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { +- return numberlong_valueof( cx, obj, argc, argv, rval ); ++ JSBool numberlong_tonumber(JSContext *cx, uintN argc, jsval *vp){ ++ return numberlong_valueof( cx, argc, vp ); + } + +- JSBool numberlong_tostring(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval) { ++ JSBool numberlong_tostring(JSContext *cx, uintN argc, jsval *vp){ ++ JSObject *obj = JS_THIS_OBJECT( cx , vp ); + Convertor c(cx); + stringstream ss; + long long val = c.toNumberLongUnsafe( obj ); +@@ -927,33 +1145,45 @@ namespace mongo { + ss << "NumberLong(" << val << ")"; + + string ret = ss.str(); +- return *rval = c.toval( ret.c_str() ); ++ JS_SET_RVAL( cx , vp , c.toval( ret.c_str() ) ); ++ return JS_TRUE; + } + + JSFunctionSpec numberlong_functions[] = { +- { "valueOf" , numberlong_valueof , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "toNumber" , numberlong_tonumber , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { "toString" , numberlong_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT, 0 } , +- { 0 } ++ JS_FS( "valueOf" , numberlong_valueof , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "toNumber" , numberlong_tonumber , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS( "toString" , numberlong_tostring , 0 , JSPROP_READONLY | JSPROP_PERMANENT | JSFUN_FAST_NATIVE ) , ++ JS_FS_END + }; + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp) + JSClass minkey_class = { + "MinKey" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + JSClass maxkey_class = { + "MaxKey" , JSCLASS_HAS_PRIVATE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, + JS_EnumerateStub, JS_ResolveStub , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + + // dbquery + ++#ifdef JSFUN_CONSTRUCTOR ++ JSBool dbquery_constructor( JSContext* cx, uintN argc, jsval* vp ){ ++ jsval *argv = JS_ARGV( cx , vp ); ++ JSObject *obj = JS_NewObjectForConstructor( cx , vp ); ++ if( ! obj ) { ++ JS_ReportError( cx , "Failed to create 'this' object" ); ++ return JS_FALSE; ++ } ++#else + JSBool dbquery_constructor( JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval ) { ++#endif + smuassert( cx , "DDQuery needs at least 4 args" , argc >= 4 ); + + Convertor c(cx); +@@ -1001,28 +1231,35 @@ namespace mongo { + c.setProperty( obj , "_numReturned" , JSVAL_ZERO ); + c.setProperty( obj , "_special" , JSVAL_FALSE ); + ++#ifdef JSFUN_CONSTRUCTOR ++ JS_SET_RVAL( cx , vp , OBJECT_TO_JSVAL( obj ) ); ++#endif + return JS_TRUE; + } + +- JSBool dbquery_resolve( JSContext *cx, JSObject *obj, jsval id, uintN flags, JSObject **objp ) { ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSResolveOp) ++ JSBool dbquery_resolve( JSContext *cx, JSObject *obj, jsid id, uintN flags, JSObject **objp ){ ++ jsval idval; ++ JS_IdToValue( cx , id , &idval ); + if ( flags & JSRESOLVE_ASSIGNING ) + return JS_TRUE; + +- if ( ! JSVAL_IS_NUMBER( id ) ) ++ if ( ! JSVAL_IS_NUMBER( idval ) ) + return JS_TRUE; + + jsval val = JSVAL_VOID; +- assert( JS_CallFunctionName( cx , obj , "arrayAccess" , 1 , &id , &val ) ); ++ assert( JS_CallFunctionName( cx , obj , "arrayAccess" , 1 , &idval , &val ) ); + Convertor c(cx); +- c.setProperty( obj , c.toString( id ).c_str() , val ); ++ c.setProperty( obj , c.toString( idval ).c_str() , val ); + *objp = obj; + return JS_TRUE; + } + ++ // FIXME: This won't build on spidermonkey < 1.8.5 (JSStrictPropertyOp, JSResolveOp) + JSClass dbquery_class = { + "DBQuery" , JSCLASS_NEW_RESOLVE , +- JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, +- JS_EnumerateStub, (JSResolveOp)(&dbquery_resolve) , JS_ConvertStub, JS_FinalizeStub, ++ JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_StrictPropertyStub, ++ JS_EnumerateStub, (JSResolveOp)dbquery_resolve , JS_ConvertStub, JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS + }; + +@@ -1102,7 +1339,7 @@ namespace mongo { + return true; + } + +-#if defined( SM16 ) || defined( MOZJS ) ++#if defined( SM16 ) || JS_VERSION >= 181 + #warning dates do not work in your version of spider monkey + { + jsdouble d = js_DateGetMsecSinceEpoch( c->_context , o ); +@@ -1150,7 +1387,7 @@ namespace mongo { + } + + bool isDate( JSContext * cx , JSObject * o ) { +-#if defined( SM16 ) || defined( MOZJS ) || defined( XULRUNNER ) ++#if defined( SM16 ) || JS_VERSION >= 181 || defined( XULRUNNER ) + return js_DateGetMsecSinceEpoch( cx , o ) != 0; + #else + return JS_InstanceOf( cx , o, &js_DateClass, 0 ); diff --git a/community/mongodb/mongodb.install b/community/mongodb/mongodb.install index 9e13a4d14..8808eea0d 100755 --- a/community/mongodb/mongodb.install +++ b/community/mongodb/mongodb.install @@ -1,26 +1,27 @@ # vim: syntax=sh -show_msg(){ - if [ "$(arch)" != "x86_64" ] - then - cat <<END -==> Warning: the 32 bit version of MongoDB is limited to about 2GB of data. -==> See http://blog.mongodb.org/post/137788967/32-bit-limitations -END - fi -} - post_install() { useradd -r -g daemon -d /var/lib/mongodb -s /bin/bash mongodb chown -R mongodb:daemon /var/lib/mongodb chown -R mongodb:daemon /var/log/mongodb - show_msg + if [ "$(arch)" != "x86_64" ] + then + echo '==> Warning: the 32 bit version of MongoDB is limited to about 2GB of data.' + echo '==> See http://blog.mongodb.org/post/137788967/32-bit-limitations' + fi } post_upgrade() { chown -R mongodb:daemon /var/lib/mongodb chown -R mongodb:daemon /var/log/mongodb + + # have to fix my fudge up in 1.8.2-2 and 1.8.2-3 + # added july 5th, 2011 + usermod -s /bin/bash mongodb >& /dev/null + echo 'The dbpath has changed from /var/state/mongodb to /var/lib/mongodb' + echo 'Make sure you move your data files to the new dbpath before you start/restart mongodb' + echo 'The logpath has changed from /var/log/mongod to /var/log/mongodb/mongod.log' } pre_remove() { diff --git a/community/mtasc/PKGBUILD b/community/mtasc/PKGBUILD index 6fb8014a6..803856ff0 100644 --- a/community/mtasc/PKGBUILD +++ b/community/mtasc/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 50789 2011-07-01 09:55:48Z spupykin $ +# $Id: PKGBUILD 50978 2011-07-04 10:46:29Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Contributor: Niel Drummond <niel.drummond@grumpytoad.org> pkgname=mtasc pkgver=20091229 -pkgrel=2 +pkgrel=3 pkgdesc="An open source flash (swf) compiler" arch=(i686 x86_64 'mips64el') url="http://mtasc.org/" @@ -12,11 +12,10 @@ license=('GPL2') depends=('zlib') makedepends=('ocaml' 'cvs') source=("http://arch.p5n.pp.ru/~sergej/dl/mtasc-$pkgver.tar.gz") -md5sums=('eb686e4fcaa066dfa77d29b2d4551aab') +md5sums=('e3b1f31ae906ebbd92678fdac0fdd411') build() { cd $srcdir/mtasc-$pkgver - sed -i 's|let base_path = normalize_path (try Extc.executable_path() with _ -> ".") in|let base_path = "/usr/share/mtasc/" in|' ocaml/mtasc/main.ml (cd ocaml/extc && make) ocaml install.ml } diff --git a/community/packagekit/PKGBUILD b/community/packagekit/PKGBUILD index 5fa25de5f..bb65fc14e 100644 --- a/community/packagekit/PKGBUILD +++ b/community/packagekit/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 48954 2011-06-08 10:33:59Z jconder $ +# $Id: PKGBUILD 51085 2011-07-05 07:17:46Z jconder $ # Maintainer: Jonathan Conder <jonno.conder@gmail.com> pkgbase='packagekit' pkgname=('packagekit' 'packagekit-qt' 'packagekit-qt2' 'packagekit-python') -pkgver=0.6.15 +pkgver=0.6.16 pkgrel=1 pkgdesc="A system designed to make installation and updates of packages easier." arch=('i686' 'x86_64' 'mips64el') @@ -12,8 +12,8 @@ makedepends=('dbus-glib' 'gobject-introspection' 'gtk-doc' 'intltool' 'networkmanager' 'pacman' 'pm-utils' 'polkit' 'python2' 'qt' 'shared-mime-info' 'sqlite3' 'udev') options=('!libtool') -source=("http://www.packagekit.org/releases/PackageKit-$pkgver.tar.bz2") -sha256sums=('52b6d52721253d1b5cdc3b403f4fb366782a258c786d194594deaafbc153779b') +source=("http://www.packagekit.org/releases/PackageKit-$pkgver.tar.xz") +sha256sums=('28fc2149e2dac4bed5b6b0479488dacc8af7e8a18556851711502b26de567e67') build() { cd "$srcdir/PackageKit-$pkgver" diff --git a/community/perl-berkeleydb/PKGBUILD b/community/perl-berkeleydb/PKGBUILD index 78261c442..40708606c 100644 --- a/community/perl-berkeleydb/PKGBUILD +++ b/community/perl-berkeleydb/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 47458 2011-05-23 15:36:16Z tdziedzic $ +# $Id: PKGBUILD 49372 2011-06-15 09:28:37Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Charles Mauch <cmauch@gmail.com> # Contributor: Francois Charette <firmicus@gmx.net> pkgname=perl-berkeleydb pkgver=0.43 -pkgrel=5 +pkgrel=6 pkgdesc="Interface to Berkeley DB version 2, 3 or 4" arch=('i686' 'x86_64' 'mips64el') url="http://search.cpan.org/dist/BerkeleyDB/" @@ -16,12 +16,16 @@ source=(http://search.cpan.org/CPAN/authors/id/P/PM/PMQS/BerkeleyDB-$pkgver.tar. md5sums=('3d0cf0651ed8cd3fc36e328d5924a1e9') build() { -_dbver=`pacman -Q db | cut -d\ -f2 | cut -d- -f1` -depends=('perl' "db=$_dbver") - cd $srcdir/BerkeleyDB-$pkgver PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor make +} + +package() { + _dbver=`pacman -Q db | cut -d\ -f2 | cut -d- -f1` + depends=('perl' "db=$_dbver") + + cd $srcdir/BerkeleyDB-$pkgver make pure_install doc_install DESTDIR=$pkgdir find $pkgdir -name '.packlist' -delete find $pkgdir -name '*.pod' -delete diff --git a/community/perl-crypt-openssl-rsa/PKGBUILD b/community/perl-crypt-openssl-rsa/PKGBUILD index dc94b2d54..6ceca5e7a 100644 --- a/community/perl-crypt-openssl-rsa/PKGBUILD +++ b/community/perl-crypt-openssl-rsa/PKGBUILD @@ -1,24 +1,27 @@ -# $Id: PKGBUILD 47489 2011-05-23 15:56:48Z tdziedzic $ +# $Id: PKGBUILD 51051 2011-07-04 15:35:36Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=perl-crypt-openssl-rsa -pkgver=0.26 -pkgrel=4 +pkgver=0.27 +pkgrel=1 pkgdesc="Interface to OpenSSL RSA methods" arch=('i686' 'x86_64' 'mips64el') url="http://search.cpan.org/dist/Crypt-OpenSSL-RSA" depends=('perl-crypt-openssl-random' 'perl-crypt-openssl-bignum') license=('GPL') options=('!emptydirs') -source=(http://www.cpan.org/authors/id/I/IR/IROBERTS/Crypt-OpenSSL-RSA-$pkgver.tar.gz) -md5sums=('baf875f01ee39b88335b8f0962fe4bbc') +source=("http://search.cpan.org/CPAN/authors/id/T/TO/TODDR/Crypt-OpenSSL-RSA-$pkgver.tar.gz") +md5sums=('08ed5352354116a88a7922ba2da57efa') build() { - cd $startdir/src/Crypt-OpenSSL-RSA-$pkgver + cd $srcdir/Crypt-OpenSSL-RSA-$pkgver PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor make - make pure_install doc_install DESTDIR=$startdir/pkg - find $startdir/pkg -name '.packlist' -delete - find $startdir/pkg -name '*.pod' -delete } +package() { + cd $srcdir/Crypt-OpenSSL-RSA-$pkgver + make pure_install doc_install DESTDIR=$pkgdir + find $pkgdir -name '.packlist' -delete + find $pkgdir -name '*.pod' -delete +} diff --git a/community/perl-file-path-expand/PKGBUILD b/community/perl-file-path-expand/PKGBUILD deleted file mode 100644 index e5ba300a2..000000000 --- a/community/perl-file-path-expand/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id: PKGBUILD 35631 2010-12-21 23:05:38Z tdziedzic $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: Charles Mauch <cmauch@gmail.com> - -pkgname=perl-file-path-expand -pkgver=1.02 -pkgrel=5 -pkgdesc="Perl/CPAN Module File::Path::Expand" -arch=("i686" "x86_64" 'mips64el') -url="http://search.cpan.org/dist/File-Path-Expand" -license=("GPL" "PerlArtistic") -source=("http://www.cpan.org/authors/id/R/RC/RCLAMP/File-Path-Expand-1.02.tar.gz") -md5sums=('742aa40a4ffb26d14de01192764bd7ab') - -build() { - cd $srcdir/File-Path-Expand-1.02 - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make - make install DESTDIR=$pkgdir - find $pkgdir -name '.packlist' -delete - find $pkgdir -name '*.pod' -delete -} diff --git a/community/perl-file-slurp/PKGBUILD b/community/perl-file-slurp/PKGBUILD deleted file mode 100644 index aa3102841..000000000 --- a/community/perl-file-slurp/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman -# Contributor: François Charette <firmicus ατ gmx δοτ net> - -pkgname=perl-file-slurp -pkgver=9999.13 -pkgrel=3 -pkgdesc="Read/write/append files quickly" -arch=('i686' 'x86_64' 'mips64el') -url="http://search.cpan.org/dist/File-Slurp" -license=('GPL' 'PerlArtistic') -depends=('perl>=5.10.0') -options=('!emptydirs') -source=(http://www.cpan.org/authors/id/D/DR/DROLSKY/File-Slurp-$pkgver.tar.gz) -md5sums=('ac3cd9d466b99d1534762ff3549aaa66') - -build() { - cd $startdir/src/File-Slurp-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make - make install DESTDIR=$startdir/pkg - find $startdir/pkg -name '.packlist' -delete - find $startdir/pkg -name '*.pod' -delete -} diff --git a/community/perl-getopt-argvfile/PKGBUILD b/community/perl-getopt-argvfile/PKGBUILD deleted file mode 100644 index 3322633d8..000000000 --- a/community/perl-getopt-argvfile/PKGBUILD +++ /dev/null @@ -1,25 +0,0 @@ -# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman -# Maintainer: Daniel J Griffiths <ghost1227@archlinux.us> -# Contributor: François Charette <firmicus αÄ gmx δοÄ net> - -pkgname=perl-getopt-argvfile -pkgver=1.11 -pkgrel=4 -pkgdesc="Take options from files" -arch=('i686' 'x86_64' 'mips64el') -url="http://search.cpan.org/~JSTENZEL/Getopt-ArgvFile" -license=('GPL' 'PerlArtistic') -depends=('perl>=5.10.0') -options=('!emptydirs') -source=(http://www.cpan.org/authors/id/J/JS/JSTENZEL/Getopt-ArgvFile-$pkgver.tar.gz) -md5sums=('42117db2af4a24c062b2da25d4fdf756') - -build() { - cd $startdir/src/Getopt-ArgvFile-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make - make install DESTDIR=$startdir/pkg - find $startdir/pkg -name '.packlist' -delete - find $startdir/pkg -name '*.pod' -delete -} - diff --git a/community/perl-graphics-colornames/PKGBUILD b/community/perl-graphics-colornames/PKGBUILD deleted file mode 100644 index e5711a4b9..000000000 --- a/community/perl-graphics-colornames/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# $Id: PKGBUILD 35649 2010-12-21 23:12:27Z tdziedzic $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: Charles Mauch <cmauch@gmail.com> - -pkgname=perl-graphics-colornames -pkgver=2.11 -pkgrel=3 -pkgdesc="Perl/CPAN Module Graphics::ColorNames : provides RGB values for standard color names" -arch=("i686" "x86_64" 'mips64el') -url="http://search.cpan.org/~rrwo/Graphics-ColorNames/" -license=("GPL" "PerlArtistic") -depends=("perl") -source=("http://search.cpan.org/CPAN/authors/id/R/RR/RRWO/Graphics-ColorNames-$pkgver.tar.gz") -md5sums=('047eabbb48d7c29cfebac6f9da8478f6') - -build() { - cd $srcdir/Graphics-ColorNames-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make - make pure_install doc_install DESTDIR=$pkgdir - find $pkgdir -name '.packlist' -delete - find $pkgdir -name '*.pod' -delete -} diff --git a/community/perl-html-tableextract/PKGBUILD b/community/perl-html-tableextract/PKGBUILD deleted file mode 100644 index a12888533..000000000 --- a/community/perl-html-tableextract/PKGBUILD +++ /dev/null @@ -1,24 +0,0 @@ -# $Id: PKGBUILD 35670 2010-12-21 23:33:04Z tdziedzic $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: Charles Mauch <cmauch@gmail.com> - -pkgname=perl-html-tableextract -pkgver=2.10 -pkgrel=6 -pkgdesc="Perl/CPAN Module HTML::TableExtract : Flexible HTML table extraction" -arch=("i686" "x86_64" 'mips64el') -url="http://search.cpan.org/~msisk/HTML-TableExtract/" -license=("GPL" "PerlArtistic") -makedepends=("perl-html-parser" "perl-html-element-extended") -depends=("perl-html-parser" "perl-html-element-extended") -source=("http://www.cpan.org/authors/id/M/MS/MSISK/HTML-TableExtract-2.10.tar.gz") -md5sums=('e6e355f6049dc57706e719c5ce61ff39') - -build() { - cd $srcdir/HTML-TableExtract-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make - make install DESTDIR=$pkgdir - find $pkgdir -name '.packlist' -delete - find $pkgdir -name '*.pod' -delete -} diff --git a/community/perl-libapreq2/PKGBUILD b/community/perl-libapreq2/PKGBUILD index c499f0940..91aa495fe 100644 --- a/community/perl-libapreq2/PKGBUILD +++ b/community/perl-libapreq2/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 47519 2011-05-23 18:19:22Z jelle $ +# $Id: PKGBUILD 49380 2011-06-15 09:32:23Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Tom K <tomk@runbox.com> pkgname=perl-libapreq2 pkgver=2.12 -pkgrel=8 +pkgrel=9 pkgdesc="A safe, standards-compliant, high-performance library used for parsing HTTP cookies, query-strings and POST data." arch=('i686' 'x86_64' 'mips64el') url="http://search.cpan.org/dist/libapreq2" @@ -17,12 +17,9 @@ md5sums=('76e2acde0d82246dea6f2565f3746eec') build() { cd $srcdir/libapreq2-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL --with-apache2-apxs=/usr/sbin/apxs - - find . -type f -name Makefile -exec sed -i 's#-ldb-4.8#-ldb-5.1#' {} \; - sed -i 's#-ldb-4.8#-ldb-5.1#' apreq2-config - + find . -type f -name Makefile -exec sed -i 's#-ldb-5.1#-ldb-5.2#' {} \; + sed -i 's#-ldb-5.1#-ldb-5.2#' apreq2-config make } package(){ diff --git a/community/perl-xml-libxslt/PKGBUILD b/community/perl-xml-libxslt/PKGBUILD index 2c9aa87f8..2ebf0f050 100644 --- a/community/perl-xml-libxslt/PKGBUILD +++ b/community/perl-xml-libxslt/PKGBUILD @@ -3,7 +3,7 @@ pkgname=perl-xml-libxslt pkgver=1.70 -pkgrel=5 +pkgrel=6 pkgdesc="Interface to the gnome libxslt library " arch=('i686' 'x86_64' 'mips64el') url="http://search.cpan.org/dist/XML-LibXSLT" diff --git a/community/perl-xml-regexp/PKGBUILD b/community/perl-xml-regexp/PKGBUILD deleted file mode 100644 index 11a76fe34..000000000 --- a/community/perl-xml-regexp/PKGBUILD +++ /dev/null @@ -1,23 +0,0 @@ -# This PKGBUILD was generated by cpan4pacman via CPANPLUS::Dist::Pacman -# Contributor: François Charette <firmicus ατ gmx δοτ net> - -pkgname=perl-xml-regexp -pkgver=0.03 -pkgrel=5 -pkgdesc="Regular expressions for XML tokens" -arch=('i686' 'x86_64' 'mips64el') -url="http://search.cpan.org/dist/XML-RegExp" -license=('GPL' 'PerlArtistic') -depends=('perl>=5.10.0') -options=('!emptydirs') -source=(http://www.cpan.org/authors/id/T/TJ/TJMATHER/XML-RegExp-$pkgver.tar.gz) -md5sums=('5826b24e0d05714e25c2bb04e1f1c09b') - -build() { - cd $startdir/src/XML-RegExp-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor - make - make install DESTDIR=$startdir/pkg - find $startdir/pkg -name '.packlist' -delete - find $startdir/pkg -name '*.pod' -delete -} diff --git a/community/perlio-eol/PKGBUILD b/community/perlio-eol/PKGBUILD deleted file mode 100644 index 10f8998b9..000000000 --- a/community/perlio-eol/PKGBUILD +++ /dev/null @@ -1,22 +0,0 @@ -# $Id: PKGBUILD 22036 2010-07-19 14:45:47Z spupykin $ -# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> -# Maintainer: Charles Mauch <cmauch@gmail.com> - -pkgname=perlio-eol -pkgver=0.14 -pkgrel=4 -pkgdesc="Perl/CPAN Module PerlIO::eol" -arch=("i686" "x86_64" 'mips64el') -url="http://search.cpan.org/dist/PerlIO-eol" -license=("GPL" "PerlArtistic") -source=("http://www.cpan.org/authors/id/A/AU/AUDREYT/PerlIO-eol-$pkgver.tar.gz") -md5sums=('55c5d3fafab00a511ff1c2722060235c') - -build() { - cd $srcdir/PerlIO-eol-$pkgver - PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor || return 1 - make || return 1 - make install DESTDIR=$pkgdir || return 1 - find $pkgdir -name '.packlist' -delete - find $pkgdir -name '*.pod' -delete -} diff --git a/community/poedit/PKGBUILD b/community/poedit/PKGBUILD index 66ced5b74..e7fb0b4e3 100644 --- a/community/poedit/PKGBUILD +++ b/community/poedit/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 34005 2010-11-30 20:55:18Z lcarlier $ +# $Id: PKGBUILD 49387 2011-06-15 09:36:08Z spupykin $ # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: Giovanni Scafora <giovanni@archlinux.org> # Contributor: Alexander Fehr <pizzapunk@gmail.com> @@ -6,7 +6,7 @@ pkgname=poedit pkgver=1.4.6.1 -pkgrel=4 +pkgrel=5 pkgdesc="Cross-platform gettext catalogs (.po files) editor" arch=('i686' 'x86_64' 'mips64el') url="http://www.poedit.net/" diff --git a/community/postgis/PKGBUILD b/community/postgis/PKGBUILD index f442dda5f..2b7fbe2f4 100644 --- a/community/postgis/PKGBUILD +++ b/community/postgis/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 31335 2010-10-30 06:31:18Z jlichtblau $ +# $Id: PKGBUILD 51024 2011-07-04 13:40:25Z stephane $ # Maintainer: Jaroslav Lichtblau <dragonlord@aur.archlinux.org> # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org # Contributor: William Rea <sillywilly@gmail.com> pkgname=postgis -pkgver=1.5.2 +pkgver=1.5.3 pkgrel=1 pkgdesc="Adds support for geographic objects to PostgreSQL" arch=('i686' 'x86_64' 'mips64el') @@ -12,18 +12,18 @@ url="http://postgis.refractions.net/" license=('GPL') depends=('postgresql' 'proj' 'geos') changelog=$pkgname.changelog -source=(http://postgis.refractions.net/download/$pkgname-$pkgver.tar.gz) -md5sums=('772ec1d0f04d6800cd7e2420a97a7483') +source=(http://postgis.refractions.net/download/${pkgname}-${pkgver}.tar.gz) +md5sums=('05a61df5e1b78bf51c9ce98bea5526fc') build() { - cd ${srcdir}/$pkgname-$pkgver + cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr make } package() { - cd ${srcdir}/$pkgname-$pkgver + cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install } diff --git a/community/python-bsddb/PKGBUILD b/community/python-bsddb/PKGBUILD index 589e2745e..4c1015bb1 100644 --- a/community/python-bsddb/PKGBUILD +++ b/community/python-bsddb/PKGBUILD @@ -1,29 +1,62 @@ -# $Id: PKGBUILD 40159 2011-02-21 14:49:30Z stephane $ +# $Id: PKGBUILD 50695 2011-06-29 15:25:25Z stephane $ # Maintainer: Kaiting Chen <kaitocracy@gmail.com> +# Contributor: Stéphane Gaudreault <stephane@archlinux.org> # Contributor: Douglas Soares de Andrade <dsandrade@gmail.com> # Contributor: William Rea <sillywilly@gmail.com> -pkgname=python-bsddb -pkgver=5.1.0 -pkgrel=3 +pkgbase=python-bsddb +pkgname=('python2-bsddb' 'python-bsddb') +_hgrel=600 +pkgver=5.1.2.${_hgrel} +pkgrel=1 pkgdesc="Python interface for BerkeleyDB" license=('MIT') arch=('i686' 'x86_64' 'mips64el') url="http://www.jcea.es/programacion/pybsddb.htm" -depends=('db' 'python') -source=("http://pypi.python.org/packages/source/b/bsddb3/bsddb3-${pkgver}.tar.gz" +makedepends=('python2-distribute' 'python-distribute' 'mercurial') +source=("ftp://ftp.archlinux.org/other/community/${pkgbase}/${pkgbase}-${pkgver}.src.tar.xz" 'LICENSE') -md5sums=('6d72d2533f0f3a4bb4b1207598624d6a' - 'f412b3fb37739f1c4be64c1e7a5dee67') +sha1sums=('50e7b4c9c11b06c6d871dd93af1cc228687a0227' + 'ef4e4caf618781104dbf5824279ed39d127b4713') + +# source PKGBUILD && mksource +mksource() { + _hgroot="http://hg.jcea.es/pybsddb/" + _hgrepo=pybsddb + [ -d "${_hgrepo}" ] && hg pull -u -r ${_hgrel} || hg clone ${_hgroot} -r ${_hgrel} + + _dirname=${pkgbase}-${pkgver} + mv ${_hgrepo} ${_dirname} + tar -cJvf ${_dirname}.src.tar.xz ${_dirname} + rm -fr ${_dirname} +} build () { - cd ${srcdir}/bsddb3-${pkgver} + cd "${srcdir}" + + cp -r ${pkgbase}-${pkgver}{,-python2} + + # Build python 3 module + cd ${pkgbase}-${pkgver} python setup.py --berkeley-db=/usr build + + # Build python 2 module + cd ../${pkgbase}-${pkgver}-python2 + python2 setup.py --berkeley-db=/usr build +} + +package_python2-bsddb() { + depends=('db' 'python2>=2.7') + cd "${srcdir}/${pkgbase}-${pkgver}-python2" + + python2 setup.py --berkeley-db=/usr install --root="${pkgdir}" --skip-build --optimize=1 + install -Dm644 "${srcdir}"/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE } -package() { - cd ${srcdir}/bsddb3-${pkgver} - python setup.py --berkeley-db=/usr install --root=${pkgdir} --optimize=1 +package_python-bsddb() { + depends=('db' 'python>=3.2') + cd "${srcdir}/${pkgbase}-${pkgver}" - install -Dm644 ${srcdir}/LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + python setup.py --berkeley-db=/usr install --root="${pkgdir}" --skip-build --optimize=1 + install -Dm644 "${srcdir}"/LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE } diff --git a/community/python-psycopg2/PKGBUILD b/community/python-psycopg2/PKGBUILD index f6cd2951b..73717c807 100644 --- a/community/python-psycopg2/PKGBUILD +++ b/community/python-psycopg2/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 46836 2011-05-12 20:05:43Z spupykin $ +# $Id: PKGBUILD 51180 2011-07-05 16:56:35Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve> # Maintainer: Douglas Soares de Andrade <dsa@aur.archlinux.org> pkgbase=python-psycopg2 pkgname=('python-psycopg2' 'python2-psycopg2') -pkgver=2.4.1 +pkgver=2.4.2 pkgrel=1 pkgdesc="A PostgreSQL database adapter for the Python programming language." arch=('i686' 'x86_64') @@ -13,7 +13,7 @@ url="http://initd.org/psycopg/" license=('LGPL3') makedepends=('python2' 'python' 'postgresql-libs>=8.4.1') source=(http://initd.org/psycopg/tarballs/PSYCOPG-2-4/psycopg2-$pkgver.tar.gz) -md5sums=('6ae7a33bf1c967e52be65514472c270a') +md5sums=('920c533806f112787b480806ea125406') build() { cd "$srcdir/psycopg2-$pkgver" diff --git a/community/python2-basemap/PKGBUILD b/community/python2-basemap/PKGBUILD index a903b14ed..1c4567710 100644 --- a/community/python2-basemap/PKGBUILD +++ b/community/python2-basemap/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 50811 2011-07-01 15:17:50Z stephane $ +# $Id: PKGBUILD 51032 2011-07-04 14:39:21Z stephane $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> # Contributor: Julien Morin <jmorin@cp.dias.ie> pkgname=python2-basemap pkgver=1.0.1 -pkgrel=1 +pkgrel=2 pkgdesc="Toolkit for plotting data on map projections" arch=('i686' 'x86_64' 'mips64el') url="http://matplotlib.sourceforge.net/basemap/doc/html/" diff --git a/community/qgis/PKGBUILD b/community/qgis/PKGBUILD index e919541a7..4ff4815c8 100644 --- a/community/qgis/PKGBUILD +++ b/community/qgis/PKGBUILD @@ -4,7 +4,7 @@ pkgname=qgis pkgver=1.7.0 -pkgrel=1 +pkgrel=2 pkgdesc='A Geographic Information System (GIS) that supports vector, raster & database formats' url='http://qgis.org/' license=('GPL') diff --git a/community/redis/PKGBUILD b/community/redis/PKGBUILD index 58c498abd..cb8d48f99 100644 --- a/community/redis/PKGBUILD +++ b/community/redis/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 49856 2011-06-21 12:25:02Z spupykin $ +# $Id: PKGBUILD 51232 2011-07-06 10:22:03Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Jan-Erik Rediger <badboy at archlinux dot us> # Contributor: nofxx <x@<nick>.com> pkgname=redis -pkgver=2.2.10 +pkgver=2.2.11 pkgrel=1 pkgdesc="Advanced key-value store" arch=('i686' 'x86_64' 'mips64el') @@ -18,7 +18,7 @@ backup=("etc/redis.conf" source=("http://redis.googlecode.com/files/${pkgname}-${pkgver}.tar.gz" "redis.d" "redis.logrotate") -md5sums=('5b08ea64334b7a59df2c25ad7e42de7e' +md5sums=('5501c90ca02ae7ea93c34f067b3e0619' 'bf61968d18d0e42529880f5c488ea9ed' '9e2d75b7a9dc421122d673fe520ef17f') diff --git a/community/root/PKGBUILD b/community/root/PKGBUILD index ee86cf453..cfea810b2 100644 --- a/community/root/PKGBUILD +++ b/community/root/PKGBUILD @@ -3,7 +3,7 @@ pkgname=root pkgver=5.30.00 -pkgrel=1 +pkgrel=2 pkgdesc='C++ data analysis framework and interpreter from CERN.' arch=('i686' 'x86_64' 'mips64el') url='http://root.cern.ch' @@ -16,16 +16,22 @@ source=("ftp://root.cern.ch/root/root_v${pkgver}.source.tar.gz" 'root.sh' 'rootd' 'root.desktop' - 'root.xml') + 'root.xml' + 'reorder-lzma-search-r40128.diff') md5sums=('b4e00f419f63d5ec6b7f1aace33c0c6f' '0e883ad44f99da9bc7c23bc102800b62' 'efd06bfa230cc2194b38e0c8939e72af' 'ac61b17395d75a2705fefa2ef841a6bf' - 'e2cf69b204192b5889ceb5b4dedc66f7') + 'e2cf69b204192b5889ceb5b4dedc66f7' + '6b5d5b875913d8468940b9fbb1ceeb60') build() { cd ${pkgname} + # causes an error because it includes lzma/lzma.h directly + # http://root.cern.ch/phpBB3/viewtopic.php?f=3&t=13013&p=55971 + patch -Np2 -i ${srcdir}/reorder-lzma-search-r40128.diff + if [ ${CARCH} == 'i686' ]; then TARGET=linux; else @@ -44,7 +50,7 @@ build() { --disable-builtin-glew \ --disable-builtin-pcre \ --disable-builtin-zlib \ - --enable-builtin-lzma \ + --disable-builtin-lzma \ --enable-gdml \ --enable-gsl-shared \ --enable-minuit2 \ @@ -57,10 +63,6 @@ build() { # move from aur #--disable-builtin-afterimage \ - # causes an error because it includes lzma/lzma.h directly.. need to file a BR for this - # http://root.cern.ch/phpBB3/viewtopic.php?f=3&t=13013&p=55971 - #--disable-builtin-lzma \ - make } diff --git a/community/root/reorder-lzma-search-r40128.diff b/community/root/reorder-lzma-search-r40128.diff new file mode 100644 index 000000000..1dd0fc56e --- /dev/null +++ b/community/root/reorder-lzma-search-r40128.diff @@ -0,0 +1,14 @@ +--- branches/v5-30-00-patches/configure 2011/06/27 13:38:32 39993 ++++ branches/v5-30-00-patches/configure 2011/07/04 15:43:59 40128 +@@ -2430,8 +2430,9 @@ + check_header "lzma.h" "" \ + $LZMA ${LZMA:+$LZMA/include} \ + ${finkdir:+$finkdir/include} \ +- /usr/local/include /usr/include/lzma /usr/local/include/lzma \ +- /opt/lzma/include /usr/include ++ /usr/local/include /usr/include \ ++ /usr/local/include/lzma /usr/include/lzma \ ++ /opt/lzma/include + if test "x$found_dir" = "x" ; then + enable_builtin_lzma=yes + else diff --git a/community/rsyslog/PKGBUILD b/community/rsyslog/PKGBUILD index b33ec036f..1804ebda9 100644 --- a/community/rsyslog/PKGBUILD +++ b/community/rsyslog/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 48294 2011-05-31 09:32:45Z spupykin $ +# $Id: PKGBUILD 51093 2011-07-05 08:47:52Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=rsyslog -pkgver=5.8.1 +pkgver=5.8.2 pkgrel=1 pkgdesc="An enhanced multi-threaded syslogd with a focus on security and reliability" url="http://www.rsyslog.com/" @@ -22,7 +22,7 @@ source=("http://www.rsyslog.com/files/download/rsyslog/rsyslog-$pkgver.tar.gz" 'rsyslog' 'rsyslog.logrotate' 'rsyslog.conf.d') -md5sums=('909d4d867450aeedd6b388c199d79222' +md5sums=('fd7822622e974cc263bbd54768d5621c' 'a18bbcbb6ebdaa13a6ec6d9f3d9eb2da' '8065db4bef3061a4f000ba58779f6829' '1a0cd4530dd5d1439456d5ae230574d9') @@ -44,7 +44,6 @@ build() { package() { cd ${srcdir}/${pkgname}-${pkgver} make install DESTDIR=${pkgdir} - # Install Daemons and Configuration Files install -D -m755 ${srcdir}/${pkgname} ${pkgdir}/etc/rc.d/${pkgname}d install -D -m644 ${pkgname}.conf ${pkgdir}/etc/${pkgname}.conf diff --git a/community/splix/PKGBUILD b/community/splix/PKGBUILD index bc8fb8361..e2962a372 100644 --- a/community/splix/PKGBUILD +++ b/community/splix/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 45807 2011-04-29 11:10:15Z spupykin $ +# $Id: PKGBUILD 50983 2011-07-04 10:54:47Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve> # Contributor: Francis Carroll (franciscarroll at gmail dot com) pkgname=splix pkgver=2.0.0 -pkgrel=9 +pkgrel=10 pkgdesc="CUPS drivers for SPL (Samsung Printer Language) printers" arch=('i686' 'x86_64' 'mips64el') url="http://splix.ap2c.org/" @@ -18,17 +18,14 @@ md5sums=('f3aa735c22a926818b3d8b26c9964186') build() { cd "$srcdir/$pkgname-$pkgver" - sed -i 's#const PPDFile::Value::Value #const PPDFile::Value #' src/ppdfile.cpp - - make PSTORASTER=gstoraster + make PSTORASTER=gstoraster } package() { cd "$srcdir/$pkgname-$pkgver" - install -d "$pkgdir/usr/lib/cups/filter" install -d "$pkgdir/usr/share/cups/model/samsung" - make DESTDIR="$pkgdir" install + ln -s gstoraster $pkgdir/usr/lib/cups/filter/pstoraster } diff --git a/community/tracker/PKGBUILD b/community/tracker/PKGBUILD index 70aa386f9..fea186f0f 100644 --- a/community/tracker/PKGBUILD +++ b/community/tracker/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 49818 2011-06-21 09:19:30Z spupykin $ +# $Id: PKGBUILD 51237 2011-07-06 10:22:55Z spupykin $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> # Maintainer: Alexander Fehr <pizzapunk gmail com> pkgname=tracker -pkgver=0.10.18 +pkgver=0.10.19 pkgrel=1 pkgdesc="Powerful object database, tag/metadata database, search tool and indexer" arch=('i686' 'x86_64' 'mips64el') @@ -25,7 +25,7 @@ conflicts=('libtracker') provides=("libtracker") install=tracker.install source=(http://ftp.gnome.org/pub/GNOME/sources/tracker/0.10/tracker-$pkgver.tar.bz2) -md5sums=('571b915d0173d9d5f2e3310ffd02e8e6') +md5sums=('59f105fbe7248749aee7ae8d9432b6a9') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/community/virtualbox/PKGBUILD b/community/virtualbox/PKGBUILD index 8756295d8..868d24f2a 100644 --- a/community/virtualbox/PKGBUILD +++ b/community/virtualbox/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 50284 2011-06-27 19:43:47Z ibiru $ +# $Id: PKGBUILD 51016 2011-07-04 12:35:27Z ibiru $ #Maintainer: Ionut Biru <ibiru@archlinux.org> pkgbase=virtualbox pkgname=('virtualbox' 'virtualbox-guest-additions' 'virtualbox-guest-modules' 'virtualbox-sdk') pkgver=4.0.10 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') url='http://virtualbox.org' license=('GPL' 'custom') @@ -16,7 +16,8 @@ source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver} virtualbox-4-makeself-check.patch virtualbox-4-mkisofs-check.patch 10-vboxdrv.rules 60-vboxguest.rules vboxdrv-reference.patch LocalConfig.kmk vboxdrv.sh 18-system-xorg.patch - change_default_driver_dir.patch) + change_default_driver_dir.patch + usb-2.0.patch) _kernver=2.6.39-LIBRE build() { @@ -27,6 +28,7 @@ build() { patch -Np1 -i "$srcdir/vboxdrv-reference.patch" patch -Np1 -i "$srcdir/18-system-xorg.patch" patch -Np1 -i "$srcdir/change_default_driver_dir.patch" + patch -Np0 -i "$srcdir/usb-2.0.patch" cp "$srcdir/LocalConfig.kmk" . @@ -46,9 +48,7 @@ build() { package_virtualbox() { pkgdesc="Powerful x86 virtualization for enterprise as well as home use" depends=('libxml2' 'libxcursor' 'libidl2' 'libxinerama' 'sdl' 'libxmu' 'curl' 'libvncserver' 'libpng' 'kernel26-headers' 'gcc' 'make') - optdepends=('libxt: for shared clipboard' - 'python2: for python support' - 'qt: for VirtualBox GUI' + optdepends=('qt: for VirtualBox GUI' 'vde2: Virtual Distributed Ethernet support' 'virtualbox-sdk: developer kit') @@ -75,6 +75,8 @@ package_virtualbox() { ln -sf VBox "$pkgdir/usr/bin/VirtualBox" ln -sf VBox "$pkgdir/usr/bin/virtualbox" ln -sf VBox "$pkgdir/usr/bin/vboxwebsrv" + ln -sf VBox "$pkgdir/usr/bin/VBoxBalloonCtrl" + ln -sf VBox "$pkgdir/usr/bin/vboxballoonctrl" install -m 0755 VBoxTunctl "$pkgdir/usr/bin" @@ -88,7 +90,7 @@ package_virtualbox() { #setuid root binaries install -m 4755 VBoxSDL VirtualBox VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl -t "$pkgdir/usr/lib/virtualbox" #other binaries - install -m 0755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL vboxwebsrv webtest -t "$pkgdir/usr/lib/virtualbox" + install -m 0755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL VBoxBalloonCtrl vboxwebsrv webtest -t "$pkgdir/usr/lib/virtualbox" #language install -m 0755 nls/*.qm -t "$pkgdir/usr/share/virtualbox/nls" @@ -128,6 +130,7 @@ package_virtualbox() { package_virtualbox-sdk() { pkgdesc=" VirtualBox Software Developer Kit (SDK)" + depends=('python2') mkdir -p "$pkgdir/usr/lib/virtualbox" @@ -214,4 +217,5 @@ md5sums=('956af570597850ab4d3275b54bbed049' 'c1a07f044c476a190af8486fe78bee0f' '47da2e88de582bb2bab14580a3aa47b1' '8a22b33c9dfaf8fb79bb2d26304e650b' - 'ac43f7cf44b934d8dbdbc3bb6f7879ad') + 'ac43f7cf44b934d8dbdbc3bb6f7879ad' + '696002ad0017512fc27781b07259f37c') diff --git a/community/virtualbox/usb-2.0.patch b/community/virtualbox/usb-2.0.patch new file mode 100644 index 000000000..38aa36ef4 --- /dev/null +++ b/community/virtualbox/usb-2.0.patch @@ -0,0 +1,161 @@ +Index: Config.kmk +=================================================================== +--- Config.kmk (revision 37751) ++++ Config.kmk (revision 37752) +@@ -409,6 +409,9 @@ + ifdef VBOX_WITH_USB + VBOX_WITH_VUSB = 1 + endif ++ifdef VBOX_WITH_EHCI ++ VBOX_WITH_EHCI_IMPL = 1 ++endif + # Enable the hal/sysfs USB code on Linux. + ifeq ($(KBUILD_TARGET),linux) + VBOX_USB_WITH_SYSFS = 1 +@@ -920,7 +923,7 @@ + # + ifdef VBOX_OSE + VBOX_WITH_VRDP= +- VBOX_WITH_EHCI= ++ VBOX_WITH_EHCI_IMPL= + VBOX_WITH_EXTPACK_PUEL= + VBOX_WITH_PCI_PASSTHROUGH= + VBOX_WITH_OS2_ADDITIONS_BIN= +Index: src/VBox/Devices/Makefile.kmk +=================================================================== +--- src/VBox/Devices/Makefile.kmk (revision 37751) ++++ src/VBox/Devices/Makefile.kmk (revision 37752) +@@ -57,8 +57,8 @@ + ifdef VBOX_WITH_USB + VBoxDDU_DEFS += VBOX_WITH_USB IN_USBLIB + VBoxDDU_SDKS.win = WINPSDK W2K3DDK +- if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL) +- VBoxDDU_DEFS += VBOX_WITH_EHCI ++ if defined(VBOX_WITH_EHCI_IMPL) && !defined(VBOX_WITH_EXTPACK_PUEL) ++ VBoxDDU_DEFS += VBOX_WITH_EHCI_IMPL + endif + ifdef VBOX_WITH_NEW_USB_CODE_ON_DARWIN + VBoxDDU_DEFS.darwin += VBOX_WITH_NEW_USB_CODE_ON_DARWIN +@@ -122,8 +122,8 @@ + VBoxDD_DEFS = VBOX_ACPI + ifdef VBOX_WITH_USB + VBoxDD_DEFS += VBOX_WITH_USB +- if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL) +- VBoxDD_DEFS += VBOX_WITH_EHCI ++ if defined(VBOX_WITH_EHCI_IMPL) && !defined(VBOX_WITH_EXTPACK_PUEL) ++ VBoxDD_DEFS += VBOX_WITH_EHCI_IMPL + endif + endif + ifdef VBOX_WITH_VUSB +@@ -448,8 +448,8 @@ + endif + ifdef VBOX_WITH_USB + DevicesR3_DEFS += VBOX_WITH_USB +- if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL) +- DevicesR3_DEFS += VBOX_WITH_EHCI ++ if defined(VBOX_WITH_EHCI_IMPL) && !defined(VBOX_WITH_EXTPACK_PUEL) ++ DevicesR3_DEFS += VBOX_WITH_EHCI_IMPL + DevicesR3_SOURCES += \ + USB/DevEHCI.cpp + endif +@@ -603,8 +603,8 @@ + + ifdef VBOX_WITH_USB + VBoxDDGC_DEFS += VBOX_WITH_USB +- if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL) +- VBoxDDGC_DEFS += VBOX_WITH_EHCI ++ if defined(VBOX_WITH_EHCI_IMPL) && !defined(VBOX_WITH_EXTPACK_PUEL) ++ VBoxDDGC_DEFS += VBOX_WITH_EHCI_IMPL + VBoxDDGC_SOURCES += \ + USB/DevEHCI.cpp + endif +@@ -708,8 +708,8 @@ + endif + ifdef VBOX_WITH_USB + VBoxDDR0_DEFS += VBOX_WITH_USB +- if defined(VBOX_WITH_EHCI) && !defined(VBOX_WITH_EXTPACK_PUEL) +- VBoxDDR0_DEFS += VBOX_WITH_EHCI ++ if defined(VBOX_WITH_EHCI_IMPL) && !defined(VBOX_WITH_EXTPACK_PUEL) ++ VBoxDDR0_DEFS += VBOX_WITH_EHCI_IMPL + VBoxDDR0_SOURCES += \ + USB/DevEHCI.cpp + endif +Index: src/VBox/Devices/build/VBoxDD.cpp +=================================================================== +--- src/VBox/Devices/build/VBoxDD.cpp (revision 37751) ++++ src/VBox/Devices/build/VBoxDD.cpp (revision 37752) +@@ -132,7 +132,7 @@ + if (RT_FAILURE(rc)) + return rc; + #endif +-#ifdef VBOX_WITH_EHCI ++#ifdef VBOX_WITH_EHCI_IMPL + rc = pCallbacks->pfnRegister(pCallbacks, &g_DeviceEHCI); + if (RT_FAILURE(rc)) + return rc; +Index: src/VBox/Devices/testcase/tstDeviceStructSizeRC.cpp +=================================================================== +--- src/VBox/Devices/testcase/tstDeviceStructSizeRC.cpp (revision 37751) ++++ src/VBox/Devices/testcase/tstDeviceStructSizeRC.cpp (revision 37752) +@@ -62,7 +62,7 @@ + #ifdef VBOX_WITH_USB + # undef LOG_GROUP + # include "../USB/DevOHCI.cpp" +-# ifdef VBOX_WITH_EHCI ++# ifdef VBOX_WITH_EHCI_IMPL + # include "../USB/DevEHCI.cpp" + # endif + #endif +@@ -928,7 +928,7 @@ + GEN_CHECK_OFF(OHCI, StatDroppedUrbs); + GEN_CHECK_OFF(OHCI, StatTimer); + # endif +-# ifdef VBOX_WITH_EHCI ++# ifdef VBOX_WITH_EHCI_IMPL + /* USB/DevEHCI.cpp */ + GEN_CHECK_SIZE(EHCIHUBPORT); + GEN_CHECK_OFF(EHCIHUBPORT, fReg); +@@ -1005,7 +1005,7 @@ + GEN_CHECK_OFF(EHCI, pEOFTimerNoSyncRC); + GEN_CHECK_OFF(EHCI, pEOFTimerNoSyncR3); + GEN_CHECK_OFF(EHCI, pEOFTimerNoSyncR0); +-# endif /* VBOX_WITH_EHCI */ ++# endif /* VBOX_WITH_EHCI_IMPL */ + #endif /* VBOX_WITH_USB */ + + /* VMMDev/VBoxDev.cpp */ +Index: src/VBox/Devices/testcase/tstDeviceStructSize.cpp +=================================================================== +--- src/VBox/Devices/testcase/tstDeviceStructSize.cpp (revision 37751) ++++ src/VBox/Devices/testcase/tstDeviceStructSize.cpp (revision 37752) +@@ -67,7 +67,7 @@ + #ifdef VBOX_WITH_USB + # undef LOG_GROUP + # include "../USB/DevOHCI.cpp" +-# ifdef VBOX_WITH_EHCI ++# ifdef VBOX_WITH_EHCI_IMPL + # include "../USB/DevEHCI.cpp" + # endif + #endif +@@ -284,7 +284,7 @@ + #endif + //CHECK_MEMBER_ALIGNMENT(E1KSTATE, csTx, 8); + #ifdef VBOX_WITH_USB +-# ifdef VBOX_WITH_EHCI ++# ifdef VBOX_WITH_EHCI_IMPL + CHECK_MEMBER_ALIGNMENT(EHCI, RootHub, 8); + # ifdef VBOX_WITH_STATISTICS + CHECK_MEMBER_ALIGNMENT(EHCI, StatCanceledIsocUrbs, 8); +Index: src/VBox/Devices/testcase/Makefile.kmk +=================================================================== +--- src/VBox/Devices/testcase/Makefile.kmk (revision 37751) ++++ src/VBox/Devices/testcase/Makefile.kmk (revision 37752) +@@ -28,7 +28,7 @@ + VBOX_DEVICES_TESTS_FEATURES = \ + $(if $(VBOX_WITH_RAW_MODE),VBOX_WITH_RAW_MODE,) \ + $(if $(VBOX_WITH_USB),VBOX_WITH_USB,) \ +- $(if $(VBOX_WITH_EHCI),VBOX_WITH_EHCI,) \ ++ $(if $(VBOX_WITH_EHCI_IMPL),VBOX_WITH_EHCI_IMPL,) \ + $(if $(VBOX_WITH_AHCI),VBOX_WITH_AHCI,) \ + $(if $(VBOX_WITH_E1000),VBOX_WITH_E1000,) \ + $(if $(VBOX_WITH_VIRTIO),VBOX_WITH_VIRTIO,) \ diff --git a/community/wml/PKGBUILD b/community/wml/PKGBUILD index b08069bb4..2124c148a 100644 --- a/community/wml/PKGBUILD +++ b/community/wml/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 47762 2011-05-25 13:41:49Z tdziedzic $ +# $Id: PKGBUILD 50698 2011-06-29 15:35:12Z stephane $ # Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> pkgname=wml pkgver=2.0.11 -pkgrel=6 +pkgrel=7 pkgdesc="The Website Meta Language" arch=('i686' 'x86_64' 'mips64el') url="http://thewml.org/" diff --git a/community/xemacs/PKGBUILD b/community/xemacs/PKGBUILD index 3071a16ea..df901e7ab 100644 --- a/community/xemacs/PKGBUILD +++ b/community/xemacs/PKGBUILD @@ -1,48 +1,37 @@ -# $Id: PKGBUILD 96361 2010-10-19 23:18:53Z stephane $ +# $Id: PKGBUILD 49690 2011-06-19 10:01:11Z ebelanger $ # Maintainer: juergen <juergen@archlinux.org> # Contributor : Stéphane Gaudreault <stephane@archlinux.org> pkgname=xemacs -pkgver=21.5.29 -pkgrel=3 -pkgdesc="highly customizable open source text editor and application development system forked from GNU Emacs" -arch=(i686 x86_64 'mips64el') +pkgver=21.5.31 +pkgrel=2 +pkgdesc="An highly customizable open source text editor and application development system forked from GNU Emacs" +arch=('i686' 'x86_64' 'mips64el') url="http://www.xemacs.org/" license=('GPL') -depends=('db' 'libpng' 'libtiff' 'gpm>=1.20.4' 'bash' 'ncurses>=5.6-7' 'desktop-file-utils' 'libxaw' 'libjpeg') +depends=('db' 'libpng' 'libtiff' 'gpm' 'desktop-file-utils' 'libxaw' 'gdbm' 'giflib') optdepends=('xorg-fonts-75dpi: X bitmap fonts needed for the interface' 'xorg-fonts-100dpi: X bitmap fonts needed for the interface') -makedepends=('giflib' 'xbitmaps') +makedepends=('xbitmaps') install=xemacs.install source=(http://ftp.xemacs.org/pub/xemacs/beta/$pkgname-$pkgver.tar.gz xemacs.desktop - xemacs-21.5.29-large-images.patch - xemacs-21.5.29-optimization-bug.patch - xemacs-21.5.29-vcdiff.patch) -md5sums=('5364192ae0d3de23d9f4ce197e6493b5' + xemacs-21.5.29-optimization-bug.patch) +md5sums=('0185fe905d0b8d8d094d9b60cf262d4a' 'a4d3d5c0aa2c7ce7bec491f809ca3694' - '23ca5a7c50fe7ebebd9fc4525882cdf1' - 'eb061b10ea3bbe1026df5326ae1618e3' - '4ada657a351b226cdd557f9faaeab075') + 'eb061b10ea3bbe1026df5326ae1618e3') build() { cd "${srcdir}/${pkgname}-${pkgver}" - # Fix security issue in vcdiff script - patch -Np0 -i ../xemacs-21.5.29-vcdiff.patch - - # Fix problem caused by improper optimization with GCC>=4.1.2 on i686 - # (and possibly other arches). See - # http://tracker.xemacs.org/XEmacs/its/issue354 - # for the upstream bug report. +# Fix problem caused by improper optimization with GCC>=4.1.2 on i686 +# (and possibly other arches). See +# http://tracker.xemacs.org/XEmacs/its/issue354 +# for the upstream bug report. patch -Np0 -i ../xemacs-21.5.29-optimization-bug.patch - # Fix for security bug - # See http://bugs.gentoo.org/show_bug.cgi?id=275397 - patch -Np1 -i ../xemacs-21.5.29-large-images.patch - ./configure --build="${CHOST}" --prefix=/usr --with-dynamic \ - --with-x11 --without-postgresql --with-athena=xaw \ + --without-postgresql --with-athena=xaw \ --enable-database=berkdb --without-ldap \ --enable-menubars=lucid --enable-scrollbars=lucid \ --enable-widgets=athena --enable-dialogs=athena \ @@ -60,20 +49,17 @@ package() { cd "${srcdir}/${pkgname}-${pkgver}" make -j1 prefix="${pkgdir}/usr" mandir="${pkgdir}/usr/share/man/man1" infodir="${pkgdir}/usr/share/info" install gzip-el - rm ${pkgdir}/usr/bin/{b2m,ctags,etags,rcs-checkin} - rm ${pkgdir}/usr/share/man/man1/{ctags.1,etags.1} + rm "${pkgdir}"/usr/bin/{b2m,ctags,etags} + rm "${pkgdir}"/usr/share/man/man1/{ctags.1,etags.1} # fix FS#7927 install -d -m755 "${pkgdir}/usr/share/pixmaps" - install -d -m755 "${pkgdir}/usr/share/applications" - install -m644 "${srcdir}/${pkgname}.desktop" ${pkgdir}/usr/share/applications/ || return 1 - ln -sf /usr/lib/xemacs-21.5-b28/etc/xemacs-icon.xpm "${pkgdir}/usr/share/pixmaps/" || return 1 + install -D -m644 "${srcdir}/${pkgname}.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" + ln -sf /usr/share/xemacs-${pkgver%.*}-b${pkgver##*.}/etc/xemacs-icon.xpm "${pkgdir}/usr/share/pixmaps/xemacs-icon.xpm" # correct permissions chown -R root:root "${pkgdir}" - rm ${pkgdir}/usr/share/info/dir - gzip ${pkgdir}/usr/share/info/* - rm ${pkgdir}/usr/share/info/{info.info.gz,texinfo.info-2.gz,cl.info.gz,texinfo.info-1.gz,texinfo.info.gz,standards.info.gz,widget.info.gz} + rm "${pkgdir}"/usr/share/info/{info.info,texinfo.info-2,cl.info,texinfo.info-1,texinfo.info,standards.info,widget.info} } # vim: ts=2 sw=2 et ft=sh diff --git a/community/xemacs/xemacs-21.5.29-large-images.patch b/community/xemacs/xemacs-21.5.29-large-images.patch deleted file mode 100644 index 535c87186..000000000 --- a/community/xemacs/xemacs-21.5.29-large-images.patch +++ /dev/null @@ -1,96 +0,0 @@ -APPROVE COMMIT 21.5 - -This patch has been committed. When trying to open very large image -files (or image files with header files that claim the image is very -large), we multiply length times width to get the number of pixels in -the image (and possibly multiply that number if a pixel occupies more -than 1 byte). The multiplication can overflow, resulting in passing -negative or insufficiently positive size values to malloc. This patch -checks whether the multiplication will overflow. If so, XEmacs -refuses to attempt to load the image. - -(Patch taken from upstream, already applied there) - ---- a/src/glyphs-eimage.c Mon Jun 29 08:20:47 2009 -0600 -+++ b/src/glyphs-eimage.c Wed Jul 01 15:42:54 2009 -0600 -@@ -409,6 +409,7 @@ - */ - - { -+ UINT_64_BIT pixels_sq; - int jpeg_gray = 0; /* if we're dealing with a grayscale */ - /* Step 4: set parameters for decompression. */ - -@@ -431,7 +432,10 @@ - jpeg_start_decompress (&cinfo); - - /* Step 6: Read in the data and put into EImage format (8bit RGB triples)*/ -- -+ pixels_sq = -+ (UINT_64_BIT) cinfo.output_width * (UINT_64_BIT) cinfo.output_height; -+ if (pixels_sq > ((size_t) -1) / 3) -+ signal_image_error ("JPEG image too large to instantiate", instantiator); - unwind.eimage = - xnew_binbytes (cinfo.output_width * cinfo.output_height * 3); - if (!unwind.eimage) -@@ -677,6 +681,7 @@ - { - ColorMapObject *cmo = unwind.giffile->SColorMap; - int i, j, row, pass, interlace, slice; -+ UINT_64_BIT pixels_sq; - Binbyte *eip; - /* interlaced gifs have rows in this order: - 0, 8, 16, ..., 4, 12, 20, ..., 2, 6, 10, ..., 1, 3, 5, ... */ -@@ -685,6 +690,9 @@ - - height = unwind.giffile->SHeight; - width = unwind.giffile->SWidth; -+ pixels_sq = (UINT_64_BIT) width * (UINT_64_BIT) height; -+ if (pixels_sq > ((size_t) -1) / (3 * unwind.giffile->ImageCount)) -+ signal_image_error ("GIF image too large to instantiate", instantiator); - unwind.eimage = - xnew_binbytes (width * height * 3 * unwind.giffile->ImageCount); - if (!unwind.eimage) -@@ -948,11 +956,15 @@ - { - int y; - Binbyte **row_pointers; -+ UINT_64_BIT pixels_sq; - height = info_ptr->height; - width = info_ptr->width; -+ pixels_sq = (UINT_64_BIT) width * (UINT_64_BIT) height; -+ if (pixels_sq > ((size_t) -1) / 3) -+ signal_image_error ("PNG image too large to instantiate", instantiator); - - /* Wow, allocate all the memory. Truly, exciting. */ -- unwind.eimage = xnew_array_and_zero (Binbyte, width * height * 3); -+ unwind.eimage = xnew_array_and_zero (Binbyte, (size_t) (pixels_sq * 3)); - /* libpng expects that the image buffer passed in contains a - picture to draw on top of if the png has any transparencies. - This could be a good place to pass that in... */ -@@ -1299,6 +1311,7 @@ - - uint32 *raster; - Binbyte *ep; -+ UINT_64_BIT pixels_sq; - - assert (!NILP (data)); - -@@ -1321,12 +1334,15 @@ - - TIFFGetField (unwind.tiff, TIFFTAG_IMAGEWIDTH, &width); - TIFFGetField (unwind.tiff, TIFFTAG_IMAGELENGTH, &height); -- unwind.eimage = xnew_binbytes (width * height * 3); -+ pixels_sq = (UINT_64_BIT) width * (UINT_64_BIT) height; -+ if (pixels_sq >= 1 << 29) -+ signal_image_error ("TIFF image too large to instantiate", instantiator); -+ unwind.eimage = xnew_binbytes (pixels_sq * 3); - - /* #### This is little more than proof-of-concept/function testing. - It needs to be reimplemented via scanline reads for both memory - compactness. */ -- raster = (uint32*) _TIFFmalloc (width * height * sizeof (uint32)); -+ raster = (uint32*) _TIFFmalloc ((tsize_t) (pixels_sq * sizeof (uint32))); - if (raster != NULL) - { - int i, j; diff --git a/community/xemacs/xemacs-21.5.29-vcdiff.patch b/community/xemacs/xemacs-21.5.29-vcdiff.patch deleted file mode 100644 index 105eb549e..000000000 --- a/community/xemacs/xemacs-21.5.29-vcdiff.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- lib-src/vcdiff.~1~ 1996-12-18 23:42:33.000000000 +0100 -+++ lib-src/vcdiff 2008-04-09 08:20:36.000000000 +0200 -@@ -79,14 +79,14 @@ - case $f in - s.* | */s.*) - if -- rev1=/tmp/geta$$ -+ rev1=`mktemp /tmp/geta.XXXXXXXX` - get -s -p -k $sid1 "$f" > $rev1 && - case $sid2 in - '') - workfile=`expr " /$f" : '.*/s.\(.*\)'` - ;; - *) -- rev2=/tmp/getb$$ -+ rev2=`mktemp /tmp/getb.XXXXXXXX` - get -s -p -k $sid2 "$f" > $rev2 - workfile=$rev2 - esac diff --git a/community/xemacs/xemacs.install b/community/xemacs/xemacs.install index 2cdf5e488..a04ee187f 100644 --- a/community/xemacs/xemacs.install +++ b/community/xemacs/xemacs.install @@ -1,4 +1,4 @@ -infodir=/usr/share/info +infodir=usr/share/info filelist=(beta.info.gz custom.info.gz emodules.info.gz external-widget.info.gz internals.info-1.gz internals.info-2.gz diff --git a/core/cronie/crontab b/core/cronie/crontab deleted file mode 100644 index f2ce71030..000000000 --- a/core/cronie/crontab +++ /dev/null @@ -1 +0,0 @@ -# without this file, crond disables inotify support at startup diff --git a/core/db/PKGBUILD b/core/db/PKGBUILD index 376007190..66b78e4f3 100644 --- a/core/db/PKGBUILD +++ b/core/db/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 108790 2011-02-03 13:05:02Z allan $ -# Maintainer: Allan McRae <allan@archlinux.org> +# $Id: PKGBUILD 127440 2011-06-15 00:33:22Z stephane $ +# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> +# Contributor: Allan McRae <allan@archlinux.org> # Contributor: Andreas Radke <andyrtr@archlinux.org> pkgname=db -pkgver=5.1.25 -_basever=5.1.25 +pkgver=5.2.28 pkgrel=1 pkgdesc="The Berkeley DB embedded database system" arch=('i686' 'x86_64' 'mips64el') @@ -13,20 +13,20 @@ license=('custom') depends=('gcc-libs' 'sh') options=('!libtool') install=db.install -source=(http://download-uk.oracle.com/berkeley-db/db-${_basever}.tar.gz) -md5sums=('06656429bfc1abb6c0498eaeff70cd04') +source=(http://download.oracle.com/berkeley-db/db-${pkgver}.tar.gz) +sha1sums=('e6572e3356cf8bc998da4e889db3b12638833435') build() { - cd ${srcdir}/$pkgname-${_basever}/build_unix + cd "${srcdir}/$pkgname-${pkgver}/build_unix" ../dist/configure --prefix=/usr --enable-compat185 \ --enable-shared --enable-static --enable-cxx --enable-dbm make LIBSO_LIBS=-lpthread } package() { - cd ${srcdir}/$pkgname-${_basever}/build_unix - make DESTDIR=${pkgdir} install - rm -rf ${pkgdir}/usr/docs - install -Dm644 ${srcdir}/${pkgname}-${_basever}/LICENSE \ - ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE + cd "${srcdir}/$pkgname-${pkgver}/build_unix" + make DESTDIR="${pkgdir}" install + rm -rf "${pkgdir}"/usr/docs + install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/LICENSE \ + "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE } diff --git a/core/gawk/PKGBUILD b/core/gawk/PKGBUILD index 26c039ca7..6782d02f1 100644 --- a/core/gawk/PKGBUILD +++ b/core/gawk/PKGBUILD @@ -1,36 +1,41 @@ -# $Id: PKGBUILD 100064 2010-11-20 03:46:49Z allan $ +# $Id: PKGBUILD 130241 2011-07-04 15:07:06Z allan $ # Maintainer: # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=gawk -pkgver=3.1.8 -pkgrel=2 -pkgdesc="Gnu version of awk" -arch=(i686 x86_64 'mips64el') +pkgver=4.0.0 +pkgrel=1 +pkgdesc="GNU version of awk" +arch=('i686' 'x86_64' 'mips64el') url="http://www.gnu.org/directory/GNU/gawk.html" license=('GPL') groups=('base') +depends=('sh' 'glibc') provides=('awk') install=gawk.install source=(ftp://ftp.gnu.org/pub/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz) -depends=('sh' 'glibc') -md5sums=('35937a0f83f0efe7a8c2dee635624784') +md5sums=('51e417b71287629940051e6f652c6492') build() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr + ./configure --prefix=/usr --libexecdir=/usr/lib make } +check() { + cd ${srcdir}/${pkgname}-${pkgver} + + make -j1 check +} + package() { - cd "${srcdir}/${pkgname}-${pkgver}" + cd ${srcdir}/${pkgname}-${pkgver} make DESTDIR=${pkgdir} install - mv ${pkgdir}/usr/libexec ${pkgdir}/usr/lib - install -dm755 ${pkgdir}/bin + + install -dm755 ${pkgdir}/bin mv ${pkgdir}/usr/bin/gawk* ${pkgdir}/bin/ - mv ${pkgdir}/usr/bin/awk ${pkgdir}/bin/ - cd ${pkgdir}/usr/bin/ - ln -sf /bin/gawk gawk + ln -sf gawk ${pkgdir}/bin/awk + ln -sf /bin/gawk ${pkgdir}/usr/bin/ } diff --git a/core/gawk/gawk.install b/core/gawk/gawk.install index 95973e40a..3f7f24cfe 100644 --- a/core/gawk/gawk.install +++ b/core/gawk/gawk.install @@ -1,4 +1,4 @@ -infodir=/usr/share/info +infodir=usr/share/info filelist=(gawk.info.gz gawkinet.info.gz) post_install() { diff --git a/core/iproute2/PKGBUILD b/core/iproute2/PKGBUILD index 499584d3f..1dabfd091 100644 --- a/core/iproute2/PKGBUILD +++ b/core/iproute2/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 126335 2011-06-04 22:38:16Z tomegun $ +# $Id: PKGBUILD 127646 2011-06-17 12:59:11Z stephane $ # Maintainer: Ronald van Haren <ronald.archlinux.org> # Contributor: Judd Vinet <jvinet@zeroflux.org> pkgname=iproute2 pkgver=2.6.38 -pkgrel=3 +pkgrel=4 pkgdesc="IP Routing Utilities" arch=('i686' 'x86_64' 'mips64el') license=('GPL2') diff --git a/core/krb5/PKGBUILD b/core/krb5/PKGBUILD index 6cfa48497..f8300bf83 100644 --- a/core/krb5/PKGBUILD +++ b/core/krb5/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 122855 2011-05-06 19:36:38Z stephane $ +# $Id: PKGBUILD 129991 2011-06-30 18:09:30Z stephane $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> pkgname=krb5 pkgver=1.9.1 -pkgrel=1 +pkgrel=2 pkgdesc="The Kerberos network authentication system" arch=('i686' 'x86_64' 'mips64el') url="http://web.mit.edu/kerberos/" @@ -13,12 +13,12 @@ makedepends=('perl') provides=('heimdal') replaces=('heimdal') conflicts=('heimdal') -backup=('etc/krb5/krb5.conf' 'etc/krb5/kdc.conf') +backup=('etc/krb5.conf' 'var/lib/krb5kdc/kdc.conf') source=(http://web.mit.edu/kerberos/dist/${pkgname}/1.9/${pkgname}-${pkgver}-signed.tar - kadmind.rc - krb5-kdc.rc) + krb5-kadmind + krb5-kdc) sha1sums=('e23a1795a237521493da9cf3443ac8b98a90c066' - '640e3046c6558313d2be81cf2252afc8622892b0' + '2aa229369079ed1bbb201a1ef72c47bf143f4dbe' '77d2312ecd8bf12a6e72cc8fd871a8ac93b23393') options=('!emptydirs') @@ -29,7 +29,6 @@ build() { export CFLAGS+=" -fPIC -fno-strict-aliasing -fstack-protector-all" export CPPFLAGS+=" -I/usr/include/et" ./configure --prefix=/usr \ - --sysconfdir=/etc/krb5 \ --mandir=/usr/share/man \ --localstatedir=/var/lib \ --enable-shared \ @@ -39,26 +38,24 @@ build() { --without-tcl \ --enable-dns-for-realm \ --with-ldap - make } -check() { - # We can't do this in the build directory. - cd "${srcdir}/${pkgname}-${pkgver}" - make -C src check -} - package() { cd "${srcdir}/${pkgname}-${pkgver}/src" make DESTDIR="${pkgdir}" EXAMPLEDIR="/usr/share/doc/${pkgname}/examples" install - install -D -m 644 config-files/kdc.conf "${pkgdir}"/etc/krb5/kdc.conf - install -D -m 644 config-files/krb5.conf "${pkgdir}"/etc/krb5/krb5.conf + # Sample KDC config file + install -dm 755 "${pkgdir}"/var/lib/krb5kdc + install -pm 644 config-files/kdc.conf "${pkgdir}"/var/lib/krb5kdc/kdc.conf + + # Default configuration file + install -dm 755 "${pkgdir}"/etc + install -pm 644 config-files/krb5.conf "${pkgdir}"/etc/krb5.conf - install -d -m 755 "${pkgdir}"/etc/rc.d - install -m 755 ../../krb5-kdc.rc "${pkgdir}"/etc/rc.d - install -m 755 ../../kadmind.rc "${pkgdir}"/etc/rc.d + install -dm 755 "${pkgdir}"/etc/rc.d + install -m 755 ../../krb5-kdc "${pkgdir}"/etc/rc.d + install -m 755 ../../krb5-kadmind "${pkgdir}"/etc/rc.d install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/NOTICE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE } diff --git a/core/krb5/kadmind.rc b/core/krb5/kadmind.rc deleted file mode 100644 index 45835e35b..000000000 --- a/core/krb5/kadmind.rc +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash - -# general config -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/sbin/kadmind` -case "$1" in - start) - stat_busy "Starting Kerberos Admin Daemon" - if [ -z "$PID" ]; then - /usr/sbin/kadmind - fi - if [ ! -z "$PID" -o $? -gt 0 ]; then - stat_fail - else - add_daemon kadmind - stat_done - fi - ;; - stop) - stat_busy "Stopping Kerberos Admin Daemon" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon kadmind - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" - ;; -esac -exit 0 diff --git a/testing/krb5/krb5-kadmind b/core/krb5/krb5-kadmind index 04df0dcff..04df0dcff 100644 --- a/testing/krb5/krb5-kadmind +++ b/core/krb5/krb5-kadmind diff --git a/testing/krb5/krb5-kdc b/core/krb5/krb5-kdc index 05a03411e..05a03411e 100644 --- a/testing/krb5/krb5-kdc +++ b/core/krb5/krb5-kdc diff --git a/core/krb5/krb5-kdc.rc b/core/krb5/krb5-kdc.rc deleted file mode 100644 index 05a03411e..000000000 --- a/core/krb5/krb5-kdc.rc +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash - -# general config -. /etc/rc.conf -. /etc/rc.d/functions - -PID=`pidof -o %PPID /usr/sbin/krb5kdc` -case "$1" in - start) - stat_busy "Starting Kerberos Authentication" - if [ -z "$PID" ]; then - /usr/sbin/krb5kdc - fi - if [ ! -z "$PID" -o $? -gt 0 ]; then - stat_fail - else - add_daemon krb5-kdc - stat_done - fi - ;; - stop) - stat_busy "Stopping Kerberos Authentication" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon krb5-kdc - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" - ;; -esac -exit 0 diff --git a/core/libsasl/PKGBUILD b/core/libsasl/PKGBUILD index 193fc4bb5..ea01c4201 100644 --- a/core/libsasl/PKGBUILD +++ b/core/libsasl/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 96213 2010-10-19 11:41:43Z allan $ +# $Id: PKGBUILD 127649 2011-06-17 13:03:28Z stephane $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=libsasl pkgver=2.1.23 -pkgrel=5 +pkgrel=6 pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" arch=('i686' 'x86_64' 'mips64el') url="http://cyrusimap.web.cmu.edu/downloads.html#sasl" diff --git a/core/pam/PKGBUILD b/core/pam/PKGBUILD index 175275b88..769db7bb1 100644 --- a/core/pam/PKGBUILD +++ b/core/pam/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 104544 2011-01-03 22:58:23Z tpowa $ +# $Id: PKGBUILD 127852 2011-06-18 20:12:05Z stephane $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgname=pam pkgver=1.1.3 -pkgrel=1 +pkgrel=2 pkgdesc="PAM (Pluggable Authentication Modules) library" arch=('i686' 'x86_64' 'mips64el') license=('GPL2') diff --git a/core/perl/PKGBUILD b/core/perl/PKGBUILD index 6b24e8eb8..16db02b6f 100644 --- a/core/perl/PKGBUILD +++ b/core/perl/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 128400 2011-06-23 21:11:34Z angvp $ +# $Id: PKGBUILD 129898 2011-06-29 17:25:10Z foutrelis $ # Maintainer: Angel Velasquez <angvp@archlinux.org> # Contributor: kevin <kevin.archlinux.org> # Contributor: judd <jvinet.zeroflux.org> # Contributor: francois <francois.archlinux.org> pkgname=perl pkgver=5.14.1 -pkgrel=1 +pkgrel=3 pkgdesc="A highly capable, feature-rich programming language" arch=(i686 x86_64 'mips64el') license=('GPL' 'PerlArtistic') @@ -21,7 +21,7 @@ install=perl.install options=('!makeflags' '!purge') md5sums=('97cd306a2c22929cc141a09568f43bb0' '5ed2542fdb9a60682f215bd33701e61a' - 'd76445605c49886c77734446247e439d' + '1f0cbbee783e8a6d32f01be5118e0d5e' 'c25d86206d649046538c3daab7874564') build() { diff --git a/core/perl/perlbin.csh b/core/perl/perlbin.csh index cc0d5d553..535f0b18d 100644 --- a/core/perl/perlbin.csh +++ b/core/perl/perlbin.csh @@ -4,12 +4,10 @@ # Remove /usr/lib/perl5/*_perl/bin in next release [ -d /usr/bin/site_perl ] && setenv PATH ${PATH}:/usr/bin/site_perl -[ -d /usr/lib/perl5/site_perl/bin ] && setenv PATH -${PATH}:/usr/lib/perl5/site_perl/bin +[ -d /usr/lib/perl5/site_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/site_perl/bin [ -d /usr/bin/vendor_perl ] && setenv PATH ${PATH}:/usr/bin/vendor_perl -[ -d /usr/lib/perl5/vendor_perl/bin ] && setenv PATH -${PATH}:/usr/lib/perl5/vendor_perl/bin +[ -d /usr/lib/perl5/vendor_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/vendor_perl/bin [ -d /usr/bin/core_perl ] && setenv PATH ${PATH}:/usr/bin/core_perl diff --git a/extra/apr-util/PKGBUILD b/extra/apr-util/PKGBUILD index 8c4d5cc9e..05a1627f5 100644 --- a/extra/apr-util/PKGBUILD +++ b/extra/apr-util/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 125819 2011-05-30 09:26:18Z jgc $ +# $Id: PKGBUILD 129453 2011-06-28 01:17:42Z stephane $ # Maintainer: Jan de Groot <jgc@archlinux.org> # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgname=apr-util pkgver=1.3.12 -pkgrel=1 +pkgrel=2 pkgdesc="The Apache Portable Runtime" arch=('i686' 'x86_64' 'mips64el') url="http://apr.apache.org/" @@ -20,5 +20,9 @@ build() { --without-pgsql --without-mysql --without-sqlite2 --without-sqlite3 \ --with-berkeley-db=/usr --with-gdbm=/usr --with-ldap make +} + +package() { + cd "${srcdir}/apr-util-${pkgver}" make DESTDIR="${pkgdir}" install } diff --git a/extra/archboot/PKGBUILD b/extra/archboot/PKGBUILD index 693b4afad..9521ead0d 100644 --- a/extra/archboot/PKGBUILD +++ b/extra/archboot/PKGBUILD @@ -1,14 +1,19 @@ -# $Id: PKGBUILD 102962 2010-12-13 17:55:11Z tpowa $ +# $Id: PKGBUILD 130388 2011-07-06 10:05:42Z tpowa $ # Maintainer : Tobias Powalowski <tpowa@archlinux.org> pkgname=archboot -pkgver=2010.12 +pkgver=2011.06 pkgrel=1 pkgdesc="Advanced, modular arch boot/install image creation utility" arch=(i686 x86_64 'mips64el') license=('GPL') url="http://www.archlinux.org/" -depends=('mkinitcpio>=0.6.7-1' 'mksyslinux>=2010.08-1' 'mkpxelinux>=2010.08-1' 'mkisolinux>=2010.08-1' 'initscripts>=2010.07-2' 'subversion>=1.6.13-1' 'wget>=1.12-2' 'bash>=4.1.009-3' 'coreutils>=8.7-1' 'cryptsetup>=1.1.3-1' 'dialog>=1.1_20100428-2' 'e2fsprogs>=1.41.12-1' 'findutils>=4.4.2-3' 'gawk>=3.1.8-2' 'grep>=2.7-1' 'iputils>=20100214-2' 'jfsutils>=1.1.14-2' 'less>=436-2' 'lvm2>=2.02.77-1' 'mdadm>=3.1.4-1' 'module-init-tools>=3.12-1' 'nano>=2.2.6-1' 'ncurses>=5.7-4' 'net-tools>=1.60-14' 'gnu-netcat>=0.7.1-3' 'ntfsprogs>=2.0.0-4' 'pcmciautils>=017-1' 'procps>=3.2.8-2' 'psmisc>=22.13-1' 'reiserfsprogs>=3.6.21-3' 'sed>=4.2.1-3' 'snarf>=7.0-4' 'syslog-ng>=3.2.1-1' 'sysvinit>=2.88-2' 'tar>=1.25-1' 'util-linux-ng>=2.18-3' 'which>=2.20-4' 'kbd>=1.15.2-1' 'wireless_tools>=29-4' 'xfsprogs>=3.1.4-1' 'dnsutils>=9.7.1.P2-1' 'hdparm>=9.36-1' 'memtest86+>=4.10-1' 'grub>=0.97-17' 'inetutils>=1.8-2' 'openssh>=5.6p1-1' 'hwdetect>=2010.08-1' 'shadow>=4.1.4.2-3' 'bridge-utils>=1.4-3' 'ifenslave>=1.1.0-5' 'cpufrequtils>=008-1' 'links>=2.2-4' 'tcp_wrappers>=7.6-12' 'dosfstools>=3.0.10-1' 'glibc>=2.12.1-4' 'linux-api-headers>=2.6.34-1' 'kernel26>=2.6.36.2-1' 'kernel26-lts>=2.6.32.27-1' 'xinetd>=2.3.14-6' 'kexec-tools>=2.0.2-2' 'ppp>=2.4.5-1' 'rp-pppoe>=3.10-5' 'lilo>=23.1-2' 'iptables>=1.4.10-1' 'capi4k-utils>=050718-7' 'isdn4k-utils>=3.2p1-6' 'ntfs-3g>=2010.10.2-1' 'pciutils>=3.1.7-1' 'usbutils>=0.91-4' 'vpnc>=0.5.3-3' 'openvpn>=2.1.4-1' 'b43-fwcutter>=013-2' 'wpa_supplicant>=0.7.3-1' 'rsync>=3.0.7-1' 'gzip>=1.4-2' 'libarchive>=2.8.4-2' 'device-mapper>=2.02.77-1' 'screen>=4.0.3-10' 'elfutils>=0.149-2' 'pam>=1.1.1-2' 'cracklib>=2.8.16-1' 'nfs-utils>=1.2.2-4' 'nfsidmap>=0.23-4' 'readline>=6.1.002-2' 'acl>=2.2.49-1' 'attr>=2.4.44-2' 'pcre>=8.11-1' 'cpio>=2.11-2' 'fuse>=2.8.5-1' 'libusb>=1.0.8-1' 'vim>=7.3.69-2' 'lzo2>=2.04-1' 'libsasl>=2.1.23-5' 'libldap>=2.4.23-1' 'gpm>=1.20.6-6' 'libevent>=1.4.14b-2' 'gcc-libs>=4.5.1-2' 'sdparm>=1.06-1' 'licenses>=2.6-1' 'pptpclient>=1.7.2-3' 'ndiswrapper>=1.56-6' 'ndiswrapper-utils>=1.56-2' 'zd1211-firmware>=1.4-4' 'ipw2100-fw>=1.3-5' 'ipw2200-fw>=3.1-3' 'smbclient>=3.5.6-1' 'bittorrent>=5.2.2-3' 'dhcpcd>=5.2.9-1' 'openssl>=1.0.0.c-1' 'git>=1.7.3.3-1' 'dmraid>=1.0.0.rc16+CVS-2' 'linux-atm>=2.5.1-1' 'netcfg>=2.5.4-1' 'tiacx>=20080210-18' 'tiacx-firmware>=2-3' 'parted>=2.3-1' 'tzdata>=2010o-1' 'ntp>=4.2.6.p2-1' 'libgcrypt>=1.4.6-1' 'iw>=0.9.20-1' 'crda>=1.1.1-1' 'libnl>=1.1-2' 'iproute2>=2.6.35-4' 'wireless-regdb>=2010.11.24-1' 'v86d>=0.1.9-11' 'dhclient>=4.2.0.1-1' 'syslinux>=4.03-1' 'mtools>=4.0.14-1' 'fsarchiver>=0.6.10-2' 'xz>=5.0.0-1' 'libtirpc>=0.2.1-2' 'librpcsecgss>=0.19-3' 'rpcbind>=0.2.0-2' 'testdisk>=6.11.3-3' 'wipe>=2.3.0-1' 'clamav>=0.96.5-1' 'ddrescue>=1.13-1' 'udev>=164-3' 'ifplugd>=0.28-7' 'wpa_actiond>=1.1-1' 'nouveau-firmware>=20091212-4' 'rfkill>=0.4-1' 'libgssglue>=0.1-3' 'mkinitcpio-nfs-utils>=0.2-1' 'gdisk>=0.6.13-1' 'nilfs-utils>=2.0.20-1' 'btrfs-progs-unstable>=0.19.20100607-3' 'ndiswrapper-lts>=1.56-3' 'nouveau-drm-lts>=0.0.16_20100313-4' 'linux-firmware>=20101108-1' 'iana-etc>=2.30-1' 'libusb-compat>=0.1.3-1') +depends=('mkinitcpio>=0.6.12-1' 'mksyslinux>=2010.08-1' 'mkpxelinux>=2010.08-1' 'mkisolinux>=2010.08-1' 'initscripts>=2011.05.2-1' 'subversion>=1.6.15-2' 'wget>=1.12-7' 'bash>=4.2.010-1' 'coreutils>=8.12-1' 'cryptsetup>=1.3.0-1' 'dialog>=1.1_20110302-1' 'e2fsprogs>=1.41.14-1' 'findutils>=4.4.2-3' 'gawk>=3.1.8-2' 'grep>=2.7-1' 'iputils>=20101006-1' 'jfsutils>=1.1.14-2' 'less>=443-1' 'lvm2>=2.02.85-1' 'mdadm>=3.2.1-3' 'module-init-tools>=3.12-2' 'nano>=2.2.6-1' 'ncurses>=5.9-1' 'net-tools>=1.60-14' 'gnu-netcat>=0.7.1-3' 'ntfsprogs>=2011.4.12-1' 'pcmciautils>=017-2' 'procps>=3.2.8-3' 'psmisc>=22.13-1' 'reiserfsprogs>=3.6.21-3' 'sed>=4.2.1-3' 'snarf>=7.0-4' 'syslog-ng>=3.2.4-1' 'sysvinit>=2.88-2' 'tar>=1.26-1' 'util-linux>=2.19.1-2' 'which>=2.20-4' 'kbd>=1.15.3-1' 'wireless_tools>=29-4' 'xfsprogs>=3.1.5-1' 'dnsutils>=9.8.0.P1-1' 'hdparm>=9.37-1' 'memtest86+>=4.20-1' 'inetutils>=1.8-2' 'openssh>=5.8p2-6' 'hwdetect>=2011.03-1' 'shadow>=4.1.4.3-1' 'bridge-utils>=1.4-4' 'ifenslave>=1.1.0-6' 'cpufrequtils>=008-1' 'links>=2.3pre1-1' 'tcp_wrappers>=7.6-12' 'dosfstools>=3.0.11-1' 'glibc>=2.13-5' 'linux-api-headers>=2.6.38.1-1' 'kernel26>=2.6.38.6-2' 'kernel26-lts>=2.6.32.40-1' 'xinetd>=2.3.14-6' 'kexec-tools>=2.0.2-3' 'ppp>=2.4.5-2' 'rp-pppoe>=3.10-6' 'lilo>=23.2-1' 'iptables>=1.4.10-1' 'capi4k-utils>=050718-7' 'isdn4k-utils>=3.2p1-6' 'ntfs-3g>=2011.4.12-1' 'pciutils>=3.1.7-4' 'usbutils>=002-3' 'vpnc>=0.5.3-3' 'openvpn>=2.2.0-1' 'b43-fwcutter>=014-1' 'wpa_supplicant>=0.7.3-3' 'rsync>=3.0.8-1' 'gzip>=1.4-2' 'libarchive>=2.8.4-2' 'device-mapper>=2.02.85-1' 'screen>=4.0.3-11' 'elfutils>=0.152-1' 'pam>=1.1.3-1' 'cracklib>=2.8.18-1' 'nfs-utils>=1.2.3-2' 'nfsidmap>=0.24-2' 'readline>=6.2.001-1' 'acl>=2.2.51-1' 'attr>=2.4.46-1' 'pcre>=8.12-1' 'cpio>=2.11-2' 'fuse>=2.8.5-1' 'libusb>=1.0.8-1' 'vim>=7.3.177-1' 'lzo2>=2.05-1' 'libsasl>=2.1.23-5' 'libldap>=2.4.24-1' 'gpm>=1.20.6-6' 'libevent>=2.0.11-1' 'gcc-libs>=4.6.0-5' 'sdparm>=1.06-1' 'licenses>=2.8-1' 'pptpclient>=1.7.2-3' 'zd1211-firmware>=1.4-4' 'ipw2100-fw>=1.3-5' 'ipw2200-fw>=3.1-3' 'smbclient>=3.5.8-3' 'bittorrent>=5.2.2-4' 'dhcpcd>=5.2.12-1' 'openssl>=1.0.0.d-1' 'git>=1.7.5.1-1' 'dmraid>=1.0.0.rc16.3-1' 'linux-atm>=2.5.1-2' 'netcfg>=2.5.4-1' 'parted>=2.3-1' 'tzdata>=2011g-1' 'ntp>=4.2.6.p3-3' 'libgcrypt>=1.4.6-3' 'iw>=0.9.22-1' 'crda>=1.1.1-3' 'libnl>=1.1-2' 'iproute2>=2.6.38-2' 'wireless-regdb>=2010.11.24-1' 'v86d>=0.1.10-1' 'dhclient>=4.2.1.1-1' 'syslinux>=4.04-1' 'mtools>=4.0.16-1' 'fsarchiver>=0.6.12-1' 'xz>=5.0.2-1' 'libtirpc>=0.2.1-3' 'librpcsecgss>=0.19-5' 'rpcbind>=0.2.0-3' 'testdisk>=6.12-1' 'wipe>=2.3.1-1' 'ddrescue>=1.14-1' 'udev>=168-1' 'ifplugd>=0.28-7' 'wpa_actiond>=1.1-2' 'nouveau-firmware>=20091212-4' 'rfkill>=0.4-2' 'libgssglue>=0.1-4' 'mkinitcpio-nfs-utils>=0.2-1' 'gptfdisk>=0.7.1-1' 'nilfs-utils>=2.0.23-1' 'btrfs-progs-unstable>=0.19.20101006-1' 'nouveau-drm-lts>=0.0.16_20100313-5' 'linux-firmware>=20110512-2' 'iana-etc>=2.30-1' 'libusb-compat>=0.1.3-1' 'eject>=2.1.5-5' 'keyutils>=1.4-1') +optdepends=('grub2-bios: for grub2 support' + 'grub2-efi-i386: for grub2 support' + 'grub2-efi-x86_64: for grub2 support' + 'efibootmgr: for grub2 support' +) source=(ftp://ftp.archlinux.org/other/$pkgname/$pkgname-$pkgver-$pkgrel.tar.bz2 vmware-detect.c) backup=('etc/archboot/allinone.conf' 'etc/archboot/allinone-lts.conf' @@ -39,5 +44,5 @@ build() gcc -o vmware-detect vmware-detect.c install -D -m 755 vmware-detect $startdir/pkg/usr/bin/vmware-detect } -md5sums=('c122578bfa40e4d11f570ab066a98abf' +md5sums=('eac77ae13bf2e6b5a92317b9885c69dd' '7e2b03463747cb22ab388e79a09fa0cb') diff --git a/extra/archboot/archboot.install b/extra/archboot/archboot.install index 25d9c88d4..315f97d7e 100644 --- a/extra/archboot/archboot.install +++ b/extra/archboot/archboot.install @@ -18,7 +18,3 @@ EOF post_upgrade() { post_install $1 } - -op=$1 -shift -$op $* diff --git a/extra/bogofilter/PKGBUILD b/extra/bogofilter/PKGBUILD index c75b6be38..9c939fe03 100644 --- a/extra/bogofilter/PKGBUILD +++ b/extra/bogofilter/PKGBUILD @@ -1,21 +1,21 @@ -# $Id: PKGBUILD 110357 2011-02-18 23:42:09Z allan $ +# $Id: PKGBUILD 127873 2011-06-19 06:22:51Z eric $ # Maintainer: tobias <tobias@archlinux.org> # Contributor: Low Kian Seong <fastmail_low@speedymail.org> pkgname=bogofilter pkgver=1.2.2 -pkgrel=2 +pkgrel=3 pkgdesc="A fast Bayesian spam filtering tool" arch=('i686' 'x86_64' 'mips64el') -license=(GPL3) +license=('GPL3') url="http://bogofilter.sourceforge.net" depends=('db' 'perl' 'gsl') -backup=(etc/bogofilter/bogofilter.cf) +backup=('etc/bogofilter/bogofilter.cf') source=(http://sourceforge.net/projects/${pkgname}/files/${pkgname}-current/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.bz2) md5sums=('4bcabdf8c5e7efefcb508eda7e80eebc') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}/${pkgname}-${pkgver}" ./configure --prefix=/usr \ --sysconfdir=/etc/bogofilter \ --localstatedir=/var \ @@ -24,11 +24,11 @@ build() { } package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install - mv ${pkgdir}/etc/bogofilter/bogofilter.cf.example ${pkgdir}/etc/bogofilter/bogofilter.cf + mv "${pkgdir}/etc/bogofilter/bogofilter.cf.example" "${pkgdir}/etc/bogofilter/bogofilter.cf" - install -dm755 ${pkgdir}/usr/share/${pkgname}/contrib - install -m644 contrib/* ${pkgdir}/usr/share/${pkgname}/contrib/ + install -dm755 "${pkgdir}/usr/share/${pkgname}/contrib" + install -m644 contrib/* "${pkgdir}/usr/share/${pkgname}/contrib/" } diff --git a/extra/claws-mail/PKGBUILD b/extra/claws-mail/PKGBUILD index ef3b236bf..f68c15b6d 100644 --- a/extra/claws-mail/PKGBUILD +++ b/extra/claws-mail/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 124918 2011-05-25 08:15:13Z ibiru $ +# $Id: PKGBUILD 127579 2011-06-16 17:10:43Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgname=claws-mail pkgver=3.7.9 -pkgrel=3 +pkgrel=4 pkgdesc="A GTK+ based e-mail client." arch=('i686' 'x86_64' 'mips64el') license=('GPL3') diff --git a/extra/evolution-data-server/PKGBUILD b/extra/evolution-data-server/PKGBUILD index f4b528fbf..023b2ff4e 100644 --- a/extra/evolution-data-server/PKGBUILD +++ b/extra/evolution-data-server/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 124640 2011-05-23 17:24:46Z ibiru $ +# $Id: PKGBUILD 129456 2011-06-28 01:27:57Z stephane $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=evolution-data-server pkgver=3.0.2.1 -pkgrel=1 +pkgrel=2 pkgdesc="Central location for addressbook and calendar storage in the GNOME Desktop" arch=('i686' 'x86_64' 'mips64el') depends=('libsoup' 'nss' 'libgnome-keyring' 'krb5' 'libgweather' 'libical' 'db' 'libgdata') diff --git a/extra/evolution-exchange/PKGBUILD b/extra/evolution-exchange/PKGBUILD index db3854d78..85f5189c5 100644 --- a/extra/evolution-exchange/PKGBUILD +++ b/extra/evolution-exchange/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 124646 2011-05-23 18:11:32Z ibiru $ +# $Id: PKGBUILD 129506 2011-06-28 14:23:10Z stephane $ # Maintainer: Jan de Groot <jgc@archlinux.org> pkgname=evolution-exchange pkgver=3.0.2 -pkgrel=1 +pkgrel=2 pkgdesc="Ximian Connector Exchange plugin for Evolution" arch=('i686' 'x86_64' 'mips64el') license=('GPL') diff --git a/extra/feh/PKGBUILD b/extra/feh/PKGBUILD index 77bd376a2..d799ce65a 100644 --- a/extra/feh/PKGBUILD +++ b/extra/feh/PKGBUILD @@ -1,21 +1,21 @@ -# $Id: PKGBUILD 124340 2011-05-19 23:17:46Z bisson $ +# $Id: PKGBUILD 130244 2011-07-04 19:18:20Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Andrea Scarpino <andrea@archlinux.org> # Contributor: dorphell <dorphell@archlinux.org> # Contributor: Tom Newsom <Jeepster@gmx.co.uk> pkgname=feh -pkgver=1.14.1 +pkgver=1.14.2 pkgrel=1 pkgdesc='Fast, lightweight image viewer which uses imlib2' arch=('i686' 'x86_64' 'mips64el') -url='http://derf.homelinux.org/projects/feh/' +url='http://feh.finalrewind.org/' license=('MIT') depends=('giblib' 'curl' 'libxinerama') optdepends=('perl: feh-cam, webcam wrapper for feh') makedepends=('libxt') source=("${url}${pkgname}-${pkgver}.tar.bz2") -sha1sums=('4d35b14c41cd8a753e6d8d334bab216c69361688') +sha1sums=('55af60f35fb21825e5450b6713f5d781f7a34cde') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/gcin/PKGBUILD b/extra/gcin/PKGBUILD index a7f0f6536..dacfd800a 100644 --- a/extra/gcin/PKGBUILD +++ b/extra/gcin/PKGBUILD @@ -1,35 +1,30 @@ -# $Id: PKGBUILD 122612 2011-05-05 01:46:31Z bisson $ +# $Id: PKGBUILD 130320 2011-07-05 06:30:24Z bisson $ # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Contributor: Andreas Radke <andyrtr@archlinux.org> # Contributor: damir <damir@archlinux.org> pkgname=gcin -pkgver=1.6.3 +pkgver=1.6.4 pkgrel=1 pkgdesc='Input method server supporting various input methods' arch=('i686' 'x86_64' 'mips64el') license=('LGPL') -url='http://cle.linux.org.tw/trac/' +url='http://hyperrate.com/dir.php?eid=67' depends=('gtk2' 'libxtst') makedepends=('qt' 'gtk3' 'anthy') optdepends=('qt: support for qt4 input method' 'gtk3: support for gtk3 input method' 'anthy: support for anthy input method') source=("http://www.csie.nctu.edu.tw/~cp76/gcin/download/${pkgname}-${pkgver}.tar.bz2" - 'fix_x86_64_libdir.patch' - 'fix_qt4_paths.patch') -sha1sums=('50522908d3e64319baafb5317c0b4327bbe0fb18' - 'e5c113e50420bf4750f5547641df6ec4b7e437e0' - '16d004424caed541d5baaa6874f708b1c138ab08') + 'qt4-lib64.patch') +sha1sums=('36ed067b354abb1e0707a4b327e2ad624cb6f88d' + '4307b0d7d6dc10f15909c94973c4357caf31de7e') install=install build() { cd "${srcdir}/${pkgname}-${pkgver}" - patch -p1 -i ../fix_x86_64_libdir.patch - patch -p1 -i ../fix_qt4_paths.patch - sed '/^GTK2IM=/c GTK2IM=gtk-2.0/2.10.0/immodules' -i gtk-im/Makefile - sed '/^GTK3IM=/c GTK3IM=gtk-3.0/3.0.0/immodules' -i gtk-im/Makefile # FS#24051 + patch -p1 -i ../qt4-lib64.patch ./configure --prefix=/usr --use_i18n=Y make } diff --git a/extra/gcin/fix_x86_64_libdir.patch b/extra/gcin/fix_x86_64_libdir.patch deleted file mode 100644 index 5f4df6a9e..000000000 --- a/extra/gcin/fix_x86_64_libdir.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -aur old/configure new/configure ---- old/configure 2011-02-10 20:34:20.943348819 +0100 -+++ new/configure 2011-02-10 20:34:48.153348697 +0100 -@@ -151,7 +151,7 @@ - - LIB='lib' - if [ -d /lib64 ]; then --LIB='lib64' -+LIB='lib' - fi - - QT_IM='N' diff --git a/extra/gcin/fix_qt4_paths.patch b/extra/gcin/qt4-lib64.patch index b029c17e5..13cb3dc15 100644 --- a/extra/gcin/fix_qt4_paths.patch +++ b/extra/gcin/qt4-lib64.patch @@ -1,18 +1,27 @@ diff -aur old/configure new/configure ---- old/configure 2011-02-10 20:34:48.153348697 +0100 -+++ new/configure 2011-02-10 20:35:09.623348816 +0100 -@@ -174,7 +174,7 @@ +--- old/configure 2011-06-08 16:00:37.000000000 +0200 ++++ new/configure 2011-07-05 08:02:33.223601351 +0200 +@@ -164,7 +164,7 @@ + + LIB='lib' + if [ -d /lib64 ]; then +-LIB='lib64' ++LIB='lib' + fi + + QT_IM='N' +@@ -188,7 +188,7 @@ QT4_IM='N' -QT4_IM_DIR=/usr/$LIB/qt4/plugins/inputmethods +QT4_IM_DIR=/usr/$LIB/qt/plugins/inputmethods echo "testing if you have qt4 support" - if [ -d $QT4_IM_DIR ]; then - QT4_IM='Y' + pkg-config --libs QtCore QtGui > /dev/null 2> /dev/null + if [ $? = 0 ]; then diff -aur old/qt4-im/Makefile new/qt4-im/Makefile ---- old/qt4-im/Makefile 2011-02-10 20:34:23.236682152 +0100 -+++ new/qt4-im/Makefile 2011-02-10 20:35:09.623348816 +0100 +--- old/qt4-im/Makefile 2011-06-08 15:03:50.000000000 +0200 ++++ new/qt4-im/Makefile 2011-07-05 08:04:15.717731695 +0200 @@ -1,5 +1,5 @@ include ../config.mak -QT=qt4 @@ -24,7 +33,7 @@ diff -aur old/qt4-im/Makefile new/qt4-im/Makefile $(CXX) -E $(CFLAGS) $(INCS) $< > $@ moc_gcin-qt.cpp: gcin-qt.h -- /usr/lib/$(QT)/bin/moc $< -o moc_gcin-qt.cpp +- /usr/$(LIB)/$(QT)/bin/moc $< -o moc_gcin-qt.cpp + /usr/bin/moc $< -o moc_gcin-qt.cpp im-gcin.so: $(OBJS) diff --git a/extra/gnome-phone-manager/PKGBUILD b/extra/gnome-phone-manager/PKGBUILD index c864cf3c0..fd5962276 100644 --- a/extra/gnome-phone-manager/PKGBUILD +++ b/extra/gnome-phone-manager/PKGBUILD @@ -1,26 +1,34 @@ -# $Id: PKGBUILD 91582 2010-09-27 13:16:18Z ibiru $ +# $Id: PKGBUILD 130236 2011-07-04 15:05:37Z jgc $ # Maintainer: Roman Kyrylych <roman@archlinux.org> pkgname=gnome-phone-manager -pkgver=0.65 -pkgrel=3 -pkgdesc="Control your mobile phone from your GNOME 2 desktop." +pkgver=0.66 +pkgrel=1 +pkgdesc="Control your mobile phone from your GNOME desktop." arch=('i686' 'x86_64' 'mips64el') url="http://live.gnome.org/PhoneManager" license=('GPL') -depends=('evolution-data-server>=2.31.92' 'gnokii>=0.6.29' 'gnome-bluetooth>=2.31.90' 'gnome-icon-theme>=2.30.3' 'gtkspell' 'libcanberra>=0.25' 'libglade') -makedepends=('intltool') -options=('!emptydirs') +depends=('evolution-data-server' 'gnokii' 'gnome-bluetooth' 'gnome-icon-theme' 'libcanberra') +makedepends=('intltool' 'gnome-common') +options=('!emptydirs' '!libtool') install=gnome-phone-manager.install -source=(http://ftp.gnome.org/pub/GNOME/sources/gnome-phone-manager/0.65/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('7fd6854702446133511650e0a24698a71bf4096a11546a25b453d5dd74890e96') +source=(http://ftp.gnome.org/pub/GNOME/sources/gnome-phone-manager/${pkgver}/${pkgname}-${pkgver}.tar.bz2 + git-update.patch + gtk3.patch) +sha256sums=('a4a389b1086e59acf5771cce5b560510d633326053dae83c20d86c2d53164c35' + '08d0db962b203d8e21e083a72a95b2625d2e649b25a3c0b8ba688ef517bf8638' + '50af2e8becfba84b8ef7684a8e4351270dca863a0e2ff94df21ba834c02c78a1') build() { cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i "${srcdir}/git-update.patch" + patch -Np1 -i "${srcdir}/gtk3.patch" + libtoolize --force + autoreconf ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var + --localstatedir=/var --disable-static make - make DESTDIR="${pkgdir}" install + make DESTDIR="${pkgdir}" GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 install install -m755 -d "${pkgdir}/usr/share/gconf/schemas" gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-phone-manager ${pkgdir}/etc/gconf/schemas/*.schemas diff --git a/extra/gnome-phone-manager/git-update.patch b/extra/gnome-phone-manager/git-update.patch new file mode 100644 index 000000000..cd2430be9 --- /dev/null +++ b/extra/gnome-phone-manager/git-update.patch @@ -0,0 +1,3052 @@ +diff --git a/configure.in b/configure.in +index f43ee35..2338f4b 100644 +--- a/configure.in ++++ b/configure.in +@@ -45,7 +45,7 @@ PKG_CHECK_MODULES(TMP_EVO, libebook-1.2, + PKG_CHECK_MODULES(LIBGSM, glib-2.0 gobject-2.0 $GNOKII_REQS gthread-2.0 bluez $evo_pc_file) + + PKG_CHECK_MODULES(PHONEMGR, gtk+-2.0 >= 2.18 glib-2.0 >= 2.25.0 +- libcanberra-gtk gdk-pixbuf-2.0 gconf-2.0 ++ libcanberra-gtk gconf-2.0 + $GNOME_BLUETOOTH_REQS $evo_pc_file + gmodule-2.0 dbus-glib-1 gnome-icon-theme >= 2.19.1 + gtkspell-2.0 +diff --git a/data/gnome-phone-manager.1 b/data/gnome-phone-manager.1 +index abffb72..0ea62db 100644 +--- a/data/gnome-phone-manager.1 ++++ b/data/gnome-phone-manager.1 +@@ -1,13 +1,13 @@ +-.TH "GNOME-PHONE-MANAGER" "1" "January 2011" "Francesco Namuri" "User Commands" ++.TH "GNOME-PHONE-MANAGER" "1" "June 2011" "Francesco Namuri" "User Commands" + .SH "NAME" + gnome\-phone\-manager \- Manage your mobile phone + .SH "USAGE" + .B gnome-phone-manager +-[\-\-identify\ <baddr>] [\-\-config] [\-d|\-\-debug]] [\-\-display=DISPLAY] ++[\-\-identify\=PORT] [\-\-config=PORT] [\-d|\-\-debug] [\-\-display=DISPLAY] + .SH "DESCRIPTION" + This manual page documents briefly the \fBgnome\-phone\-manager\fR command. + +-\fBgnome\-phone\-manager\fR is a program created to allow you to control aspects of your mobile phone from your GNOME 2 desktop. ++\fBgnome\-phone\-manager\fR is a program created to allow you to control aspects of your mobile phone from your GNOME desktop. + .TP + Current features include: + .BR \- +@@ -17,10 +17,10 @@ Runs in the background; indicates status on the panel notification area, + Display on\-screen alert when text message (SMS) arrives, + .br + .BR \- +-Text message (SMS) sending facility, ++Text message (SMS) sending facility with Evolution Addressbook integration, + .br + .BR \- +-Evolution Addressbook integration. ++Sync phone clock with the computer's. + .SH "OPTIONS" + .SS "Help Options:" + .TP +@@ -55,6 +55,6 @@ X display to use + .SH "SEE ALSO" + Homepage: http://live.gnome.org/PhoneManager + .SH "AUTHOR" +-\fBgnome\-phone\-manager\fR was written by Bastien Nocera <<hadess@hadess.net>> and Edd Dumbill <edd@usefullinc.com> ++\fBgnome\-phone\-manager\fR was written by Bastien Nocera <hadess@hadess.net> and Edd Dumbill <edd@usefullinc.com> + + This manual page was written by Francesco Namuri <francesco@namuri.it> for the Debian project (but may be used by others). +diff --git a/po/da.po b/po/da.po +index 95bfc91..e35d83c 100644 +--- a/po/da.po ++++ b/po/da.po +@@ -1,127 +1,133 @@ + # Danish translation for phonemgr. +-# Copyright (C) 2009 phonemgr & Joe Hansen. ++# Copyright (C) 2011 phonemgr & Joe Hansen. + # This file is distributed under the same license as the phonemgr package. +-# Joe Hansen <joedalton2@yahoo.dk>, 2009. ++# Joe Hansen <joedalton2@yahoo.dk>, 2009, 2011. + # + msgid "" + msgstr "" + "Project-Id-Version: phonemgr master\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2009-12-03 23:46+0100\n" +-"PO-Revision-Date: 2009-12-01 22:41+0200\n" ++"POT-Creation-Date: 2011-03-26 14:52+0100\n" ++"PO-Revision-Date: 2011-03-17 22:41+0200\n" + "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n" + "Language-Team: Danish <dansk@dansk-gruppen.dk>\n" ++"Language: da\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + "Plural-Forms: nplurals=2; plural=(n != 1);\n" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:152 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:153 + #, c-format + msgid "Cannot get contact: %s" + msgstr "Kan ikke fÃ¥ kontakt: %s" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:185 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:186 + #, c-format + msgid "Could not find contact: %s" + msgstr "Kunne ikke finde kontakt: %s" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:411 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:414 + msgid "Cannot create searchable view." + msgstr "Kan ikke oprette søgbar visning." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:883 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:886 + msgid "Success" + msgstr "Succes" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:885 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:888 + msgid "An argument was invalid." + msgstr "Et argument var ugyldigt." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:887 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:890 + msgid "The address book is busy." + msgstr "Adressebogen er optaget." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:889 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:892 + msgid "The address book is offline." + msgstr "Adressebogen er offline." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:891 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:894 + msgid "The address book does not exist." + msgstr "Adressebogen eksisterer ikke." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:893 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:896 + msgid "The \"Me\" contact does not exist." + msgstr "Kontakten \"Mig\" eksisterer ikke." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:895 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:898 + msgid "The address book is not loaded." + msgstr "Adressebogen er ikke indlæst." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:897 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:900 + msgid "The address book is already loaded." + msgstr "Adressebogen er allerede indlæst." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:899 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:902 + msgid "Permission was denied when accessing the address book." + msgstr "Adgang blev nægtet under tilgang til adressebogen." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:901 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:904 + msgid "The contact was not found." + msgstr "Kontakten blev ikke fundet." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:903 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:906 + msgid "This contact ID already exists." + msgstr "Dette kontakt-id eksisterer allerede." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:905 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:908 + msgid "The protocol is not supported." + msgstr "Protokollen er ikke understøttet." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:907 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:910 + msgid "The operation was cancelled." + msgstr "Handlingen blev afbrudt." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:909 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:912 + msgid "The operation could not be cancelled." + msgstr "Handlingen kunne ikke afbrydes." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:911 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:914 + msgid "The address book authentication failed." + msgstr "Godkendelse af adressebogen mislykkedes." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:913 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:916 + msgid "" + "Authentication is required to access the address book and was not given." + msgstr "" + "Godkendelse er krævet for at tilgÃ¥ adressebogen og denne blev ikke givet." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:915 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:918 + msgid "A secure connection is not available." + msgstr "En sikker forbindelse er ikke tilgængelig." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:917 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:920 + msgid "A CORBA error occurred whilst accessing the address book." + msgstr "En CORBA-fejl opstod under tilgang til adressebogen." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:919 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:922 + msgid "The address book source does not exist." + msgstr "Adressebogkilden eksisterer ikke." + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:921 + #: ../cut-n-paste/e-contact-entry/e-contact-entry.c:924 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:927 + msgid "An unknown error occurred." + msgstr "En ukendt fejl opstod." + +-#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1221 ++#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1233 + #, c-format + msgid "GConf error: %s" + msgstr "GConf-fejl: %s" + +-#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1231 ++#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1238 + msgid "All further errors shown only on terminal." + msgstr "Alle yderligere fejl vises kun i terminal." + ++#. Translators: "device" is a phone or a modem ++#: ../gnome-bluetooth/phonemgr.c:133 ++msgid "Use this device with Phone Manager" ++msgstr "Brug denne enhed med telefonhÃ¥ndteringen" ++ + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar + #: ../src/connection.c:124 +@@ -138,7 +144,7 @@ msgstr "Forbundet til enhed pÃ¥ %s" + msgid "Failed connection to device on %s" + msgstr "Mislykket forbindelse til enhed pÃ¥ %s" + +-#: ../src/gnome-phone-manager.desktop.in.h:1 ../src/menu.c:49 ../src/menu.c:51 ++#: ../src/gnome-phone-manager.desktop.in.h:1 ../src/menu.c:50 ../src/menu.c:52 + msgid "Phone Manager" + msgstr "TelefonhÃ¥ndtering" + +@@ -166,6 +172,10 @@ msgstr "Ikke forbundet" + msgid "Show model name of a specific device" + msgstr "Vis modelnavn pÃ¥ en specifik enhed" + ++#: ../src/main.c:38 ../src/main.c:39 ++msgid "PORT" ++msgstr "PORT" ++ + #: ../src/main.c:39 + msgid "Write the configuration file for gnokii debugging" + msgstr "Skriv konfigurationsfilen for fejlsøgning i gnokii" +@@ -182,48 +192,48 @@ msgstr "Vis versionsinformation og afslut" + msgid "- Manage your mobile phone" + msgstr "- HÃ¥ndter din mobiltelefon" + +-#: ../src/main.c:72 ++#: ../src/main.c:74 + #, c-format + msgid "gnome-phone-manager version %s\n" + msgstr "gnome-phone-manager version %s\n" + +-#: ../src/menu.c:40 ++#: ../src/menu.c:43 ++msgid "Send and receive messages from your mobile phone." ++msgstr "Send og modtag beskeder fra din mobiltelefon." ++ ++#: ../src/menu.c:55 + msgid "translator_credits" + msgstr "" +-"Joe Hansen <joedalton2@yahoo.dk>, 2009.\n" ++"Joe Hansen, 2009, 2011.\n" + "\n" + "Dansk-gruppen <dansk@dansk-gruppen.dk>\n" + "Mere info: http://www.dansk-gruppen.dk" + +-#: ../src/menu.c:44 +-msgid "Send and receive messages from your mobile phone." +-msgstr "Send og modtag beskeder fra din mobiltelefon." +- +-#: ../src/menu.c:56 ++#: ../src/menu.c:57 + msgid "Phone Manager website" + msgstr "TelefonhÃ¥ndteringens hjemmeside" + +-#: ../src/menu.c:87 ++#: ../src/menu.c:88 + msgid "_Send Message" + msgstr "_Send besked" + +-#: ../src/ui.c:166 ++#: ../src/ui.c:111 + msgid "New text message received" + msgstr "Ny tekstbesked modtaget" + +-#: ../src/ui.c:331 ++#: ../src/ui.c:277 + msgid "Message too long!" + msgstr "Besked for lang!" + +-#: ../data/phonemgr.glade.h:1 ++#: ../data/phonemgr.ui.h:1 + msgid "Alerting" + msgstr "Alarmerer" + +-#: ../data/phonemgr.glade.h:2 ++#: ../data/phonemgr.ui.h:2 + msgid "Alternative device filename, e.g. /dev/ttyS3" + msgstr "Alternativt enhedsfilnavn, for eksempel /dev/ttyS3" + +-#: ../data/phonemgr.glade.h:3 ++#: ../data/phonemgr.ui.h:3 + msgid "" + "Always try and reconnect whenever a connection is not immediately available. " + "Use this with Bluetooth to ensure your phone connects whenever it comes in " +@@ -233,136 +243,136 @@ msgstr "" + "tilgængelig. Brug denne med Bluetooth for at sikre at din telefon forbinder " + "sÃ¥ snart den er inden for rækkevidde." + +-#: ../data/phonemgr.glade.h:4 ++#: ../data/phonemgr.ui.h:4 + msgid "Automated Tasks" + msgstr "Automatiske opgaver" + +-#: ../data/phonemgr.glade.h:5 ++#: ../data/phonemgr.ui.h:5 + msgid "Automatically _retry connections" + msgstr "Forsøg automatisk at forbinde _igen" + +-#: ../data/phonemgr.glade.h:6 ++#: ../data/phonemgr.ui.h:6 + msgid "Characters left:" + msgstr "Tegn tilbage:" + +-#: ../data/phonemgr.glade.h:7 ++#: ../data/phonemgr.ui.h:7 + msgid "Connect using an alternative serial device" + msgstr "Forbind med brug af en alternativ serielenhed" + +-#: ../data/phonemgr.glade.h:8 ++#: ../data/phonemgr.ui.h:8 + msgid "Connect using infrared communication" + msgstr "Forbind med brug af infrarød kommunikation" + +-#: ../data/phonemgr.glade.h:9 ++#: ../data/phonemgr.ui.h:9 + msgid "Connect using serial port 1, also known as COM1 or /dev/ttyS0" + msgstr "Forbind med brug af serielport 1, ogsÃ¥ kendt som COM1 eller /dev/ttyS0" + +-#: ../data/phonemgr.glade.h:10 ++#: ../data/phonemgr.ui.h:10 + msgid "Connect using serial port 2, also known as COM2 or /dev/ttyS1" + msgstr "Forbind med brug af serielport 2, ogsÃ¥ kendt som COM2 eller /dev/ttyS1" + +-#: ../data/phonemgr.glade.h:11 ++#: ../data/phonemgr.ui.h:11 + msgid "Connection" + msgstr "Forbindelse" + +-#: ../data/phonemgr.glade.h:12 ++#: ../data/phonemgr.ui.h:12 + msgid "Date:" + msgstr "Dato:" + +-#: ../data/phonemgr.glade.h:13 ++#: ../data/phonemgr.ui.h:13 + msgid "Enter the text message you want to send." + msgstr "Indtast tekstbeskeden du ønsker at sende." + +-#: ../data/phonemgr.glade.h:14 ++#: ../data/phonemgr.ui.h:14 + msgid "Enter your text message" + msgstr "Indtast din tekstbesked" + +-#: ../data/phonemgr.glade.h:15 ++#: ../data/phonemgr.ui.h:15 + msgid "I_nfra red (/dev/ircomm0)" + msgstr "I_nfrarød (/dev/ircomm0)" + +-#: ../data/phonemgr.glade.h:16 ++#: ../data/phonemgr.ui.h:16 + msgid "Interface" + msgstr "Grænseflade" + +-#: ../data/phonemgr.glade.h:17 ++#: ../data/phonemgr.ui.h:17 + msgid "Message Received" + msgstr "Besked modtaget" + +-#: ../data/phonemgr.glade.h:18 ++#: ../data/phonemgr.ui.h:18 + msgid "Other _port" + msgstr "Anden _port" + +-#: ../data/phonemgr.glade.h:19 ++#: ../data/phonemgr.ui.h:19 + msgid "Phone Connection" + msgstr "Telefonforbindelse" + +-#: ../data/phonemgr.glade.h:20 ++#: ../data/phonemgr.ui.h:20 + msgid "Phone Manager Preferences" + msgstr "Indstillinger for telefonhÃ¥ndtering" + +-#: ../data/phonemgr.glade.h:21 ++#: ../data/phonemgr.ui.h:21 + msgid "Play _sound when messages arrive" + msgstr "Afspil _lyd nÃ¥r beskeder ankommer" + +-#: ../data/phonemgr.glade.h:22 ++#: ../data/phonemgr.ui.h:22 + msgid "Send Message" + msgstr "Send besked" + +-#: ../data/phonemgr.glade.h:23 ++#: ../data/phonemgr.ui.h:23 + msgid "Sender:" + msgstr "Afsender:" + +-#: ../data/phonemgr.glade.h:24 ++#: ../data/phonemgr.ui.h:24 + msgid "Serial port _1 (/dev/ttyS0)" + msgstr "Serielport _1 (/dev/ttyS0)" + +-#: ../data/phonemgr.glade.h:25 ++#: ../data/phonemgr.ui.h:25 + msgid "Serial port _2 (/dev/ttyS1)" + msgstr "Serielport _2 (/dev/ttyS1)" + +-#: ../data/phonemgr.glade.h:26 ++#: ../data/phonemgr.ui.h:26 + msgid "Synchronise phone's _time and date" + msgstr "Synkroniser telefonens _tid og dato" + +-#: ../data/phonemgr.glade.h:27 ++#: ../data/phonemgr.ui.h:27 + msgid "Synchronise phone's time and date with the computer's clock" + msgstr "Synkroniser telefonens tid og dato med computerens ur" + +-#: ../data/phonemgr.glade.h:28 ++#: ../data/phonemgr.ui.h:28 + msgid "Use Bluetooth wireless networking to connect to your phone" + msgstr "Brug Bluetooths trÃ¥dløse netværk til at forbinde til din telefon" + +-#: ../data/phonemgr.glade.h:29 ++#: ../data/phonemgr.ui.h:29 + msgid "You have received a message" + msgstr "Du har modtaget en besked" + +-#: ../data/phonemgr.glade.h:30 ++#: ../data/phonemgr.ui.h:30 + msgid "_Bluetooth" + msgstr "_Bluetooth" + +-#: ../data/phonemgr.glade.h:31 ++#: ../data/phonemgr.ui.h:31 + msgid "_Message:" + msgstr "_Besked:" + + #. This is a receipt from the SMS server saying the message has been delivered to the recipient's phone +-#: ../data/phonemgr.glade.h:33 ++#: ../data/phonemgr.ui.h:33 + msgid "_Notify when message is delivered" + msgstr "_Giv besked nÃ¥r besked er leveret" + +-#: ../data/phonemgr.glade.h:34 ++#: ../data/phonemgr.ui.h:34 + msgid "_Pop-up window for new messages" + msgstr "_Pop op-vindue til nye beskeder" + +-#: ../data/phonemgr.glade.h:35 ++#: ../data/phonemgr.ui.h:35 + msgid "_Recipient:" + msgstr "_Modtager:" + +-#: ../data/phonemgr.glade.h:36 ++#: ../data/phonemgr.ui.h:36 + msgid "_Reply" + msgstr "_Svar" + +-#: ../data/phonemgr.glade.h:37 ++#: ../data/phonemgr.ui.h:37 + msgid "_Send" + msgstr "_Send" + +diff --git a/po/de.po b/po/de.po +index 94da8ec..0488597 100644 +--- a/po/de.po ++++ b/po/de.po +@@ -3,16 +3,15 @@ + # This file is distributed under the same license as the phonemgr package. + # Hendrik Brandt <heb@gnome-de.org>, 2004-2005. + # Jens Seidel <jseidel@cvs.gnome.org>, 2005. +-# Mario Blättermann <mariobl@gnome.org>, 2009, 2010. +-# ++# Mario Blättermann <mariobl@gnome.org>, 2009-2011. + # + msgid "" + msgstr "" + "Project-Id-Version: phonemgr master\n" + "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-" + "phone-manager&component=general\n" +-"POT-Creation-Date: 2010-12-12 15:33+0000\n" +-"PO-Revision-Date: 2010-12-17 14:50+0100\n" ++"POT-Creation-Date: 2011-02-15 20:00+0000\n" ++"PO-Revision-Date: 2011-02-26 22:23+0100\n" + "Last-Translator: Mario Blättermann <mariobl@gnome.org>\n" + "Language-Team: German <gnome-de@gnome.org>\n" + "MIME-Version: 1.0\n" +@@ -128,6 +127,11 @@ msgstr "GConf-Fehler: %s" + msgid "All further errors shown only on terminal." + msgstr "Alle weiteren Fehlermeldungen werden nur im Terminal angezeigt." + ++#. Translators: "device" is a phone or a modem ++#: ../gnome-bluetooth/phonemgr.c:133 ++msgid "Use this device with Phone Manager" ++msgstr "Dieses Gerät mit der Telefonverwaltung verwenden" ++ + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar + #: ../src/connection.c:124 +@@ -172,14 +176,14 @@ msgstr "Nicht verbunden" + msgid "Show model name of a specific device" + msgstr "Modellname eines bestimmten Geräts anzeigen" + ++#: ../src/main.c:38 ../src/main.c:39 ++msgid "PORT" ++msgstr "PORT" ++ + #: ../src/main.c:39 + msgid "Write the configuration file for gnokii debugging" + msgstr "Konfigurationsdatei für gnokii-Debugging schreiben" + +-#: ../src/main.c:39 +-msgid "PORT" +-msgstr "PORT" +- + #: ../src/main.c:40 + msgid "Enable debug" + msgstr "Debugging aktivieren" +@@ -192,7 +196,7 @@ msgstr "Versionsinformationen anzeigen und beenden" + msgid "- Manage your mobile phone" + msgstr "- Verwalten Ihres Mobiltelefons" + +-#: ../src/main.c:72 ++#: ../src/main.c:74 + #, c-format + msgid "gnome-phone-manager version %s\n" + msgstr "gnome-phone-manager version %s\n" +@@ -216,23 +220,23 @@ msgstr "Phone-Manager-Webseite" + msgid "_Send Message" + msgstr "Nachrichten _senden" + +-#: ../src/ui.c:166 ++#: ../src/ui.c:111 + msgid "New text message received" + msgstr "Neue Nachricht erhalten" + +-#: ../src/ui.c:331 ++#: ../src/ui.c:277 + msgid "Message too long!" + msgstr "Ihre Nachricht ist zu lang!" + +-#: ../data/phonemgr.glade.h:1 ++#: ../data/phonemgr.ui.h:1 + msgid "Alerting" + msgstr "Benachrichtigung" + +-#: ../data/phonemgr.glade.h:2 ++#: ../data/phonemgr.ui.h:2 + msgid "Alternative device filename, e.g. /dev/ttyS3" + msgstr "Anderer Gerätename, z.B. /dev/ttyS3" + +-#: ../data/phonemgr.glade.h:3 ++#: ../data/phonemgr.ui.h:3 + msgid "" + "Always try and reconnect whenever a connection is not immediately available. " + "Use this with Bluetooth to ensure your phone connects whenever it comes in " +@@ -243,142 +247,142 @@ msgstr "" + "dass Ihr Telefon jedes Mal verbunden wird, sobald es in Bluetooth-Reichweite " + "kommt." + +-#: ../data/phonemgr.glade.h:4 ++#: ../data/phonemgr.ui.h:4 + msgid "Automated Tasks" + msgstr "Automatisierte Aufgaben" + +-#: ../data/phonemgr.glade.h:5 ++#: ../data/phonemgr.ui.h:5 + msgid "Automatically _retry connections" + msgstr "Verbindung automatisch wieder herstellen" + +-#: ../data/phonemgr.glade.h:6 ++#: ../data/phonemgr.ui.h:6 + msgid "Characters left:" + msgstr "Verbleibende Zeichen:" + +-#: ../data/phonemgr.glade.h:7 ++#: ../data/phonemgr.ui.h:7 + msgid "Connect using an alternative serial device" + msgstr "Zum Verbinden ein anderes serielles Gerät verwenden" + +-#: ../data/phonemgr.glade.h:8 ++#: ../data/phonemgr.ui.h:8 + msgid "Connect using infrared communication" + msgstr "Zum Verbinden die Infrarotschnittstelle verwenden" + +-#: ../data/phonemgr.glade.h:9 ++#: ../data/phonemgr.ui.h:9 + msgid "Connect using serial port 1, also known as COM1 or /dev/ttyS0" + msgstr "" + "Zum Verbinden die serielle Schnittstelle 1 verwenden (auch COM1 oder /dev/" + "ttyS0)" + +-#: ../data/phonemgr.glade.h:10 ++#: ../data/phonemgr.ui.h:10 + msgid "Connect using serial port 2, also known as COM2 or /dev/ttyS1" + msgstr "" + "Zum Verbinden die serielle Schnittstelle 2 verwenden (auch COM2 oder /dev/" + "ttyS1)" + +-#: ../data/phonemgr.glade.h:11 ++#: ../data/phonemgr.ui.h:11 + msgid "Connection" + msgstr "Verbindung" + +-#: ../data/phonemgr.glade.h:12 ++#: ../data/phonemgr.ui.h:12 + msgid "Date:" + msgstr "Datum:" + +-#: ../data/phonemgr.glade.h:13 ++#: ../data/phonemgr.ui.h:13 + msgid "Enter the text message you want to send." + msgstr "Bitte geben Sie die zu verschickende Textnachricht ein." + +-#: ../data/phonemgr.glade.h:14 ++#: ../data/phonemgr.ui.h:14 + msgid "Enter your text message" + msgstr "Bitte geben Sie Ihre Textnachricht ein" + +-#: ../data/phonemgr.glade.h:15 ++#: ../data/phonemgr.ui.h:15 + msgid "I_nfra red (/dev/ircomm0)" + msgstr "_Infrarot (/dev/ircomm0)" + +-#: ../data/phonemgr.glade.h:16 ++#: ../data/phonemgr.ui.h:16 + msgid "Interface" + msgstr "Schnittstelle" + +-#: ../data/phonemgr.glade.h:17 ++#: ../data/phonemgr.ui.h:17 + msgid "Message Received" + msgstr "Nachricht erhalten" + +-#: ../data/phonemgr.glade.h:18 ++#: ../data/phonemgr.ui.h:18 + msgid "Other _port" + msgstr "Anderer _Port" + +-#: ../data/phonemgr.glade.h:19 ++#: ../data/phonemgr.ui.h:19 + msgid "Phone Connection" + msgstr "Telefonverbindung" + +-#: ../data/phonemgr.glade.h:20 ++#: ../data/phonemgr.ui.h:20 + msgid "Phone Manager Preferences" + msgstr "Einstellungen der Telefonverwaltung" + +-#: ../data/phonemgr.glade.h:21 ++#: ../data/phonemgr.ui.h:21 + msgid "Play _sound when messages arrive" + msgstr "Einen _Klang abspielen, wenn eine neue Nachricht eintrifft" + +-#: ../data/phonemgr.glade.h:22 ++#: ../data/phonemgr.ui.h:22 + msgid "Send Message" + msgstr "Nachricht versenden" + +-#: ../data/phonemgr.glade.h:23 ++#: ../data/phonemgr.ui.h:23 + msgid "Sender:" + msgstr "Sender:" + +-#: ../data/phonemgr.glade.h:24 ++#: ../data/phonemgr.ui.h:24 + msgid "Serial port _1 (/dev/ttyS0)" + msgstr "Serielle Schnittstelle _1 (/dev/ttyS0)" + +-#: ../data/phonemgr.glade.h:25 ++#: ../data/phonemgr.ui.h:25 + msgid "Serial port _2 (/dev/ttyS1)" + msgstr "Serielle Schnittstelle _2 (/dev/ttyS1)" + +-#: ../data/phonemgr.glade.h:26 ++#: ../data/phonemgr.ui.h:26 + msgid "Synchronise phone's _time and date" + msgstr "Zei_t und Datum des Mobiltelefons abgleichen" + +-#: ../data/phonemgr.glade.h:27 ++#: ../data/phonemgr.ui.h:27 + msgid "Synchronise phone's time and date with the computer's clock" + msgstr "Abgleich der Uhr des Telefons mit der des Rechners" + +-#: ../data/phonemgr.glade.h:28 ++#: ../data/phonemgr.ui.h:28 + msgid "Use Bluetooth wireless networking to connect to your phone" + msgstr "" + "Wenn diese Option ausgewählt ist, wird das drahtlose Bluetooth-Netzwerk " + "verwendet, um eine Verbindung mit Ihrem Telefon herzustellen" + +-#: ../data/phonemgr.glade.h:29 ++#: ../data/phonemgr.ui.h:29 + msgid "You have received a message" + msgstr "Sie haben eine Nachricht erhalten" + +-#: ../data/phonemgr.glade.h:30 ++#: ../data/phonemgr.ui.h:30 + msgid "_Bluetooth" + msgstr "_Bluetooth" + +-#: ../data/phonemgr.glade.h:31 ++#: ../data/phonemgr.ui.h:31 + msgid "_Message:" + msgstr "_Nachricht:" + + #. This is a receipt from the SMS server saying the message has been delivered to the recipient's phone +-#: ../data/phonemgr.glade.h:33 ++#: ../data/phonemgr.ui.h:33 + msgid "_Notify when message is delivered" + msgstr "Be_nachrichtigen, wenn eine neue Nachricht eintrifft" + +-#: ../data/phonemgr.glade.h:34 ++#: ../data/phonemgr.ui.h:34 + msgid "_Pop-up window for new messages" + msgstr "_Dialogfenster für neue Nachrichten" + +-#: ../data/phonemgr.glade.h:35 ++#: ../data/phonemgr.ui.h:35 + msgid "_Recipient:" + msgstr "_Empfänger:" + +-#: ../data/phonemgr.glade.h:36 ++#: ../data/phonemgr.ui.h:36 + msgid "_Reply" + msgstr "_Antworten" + +-#: ../data/phonemgr.glade.h:37 ++#: ../data/phonemgr.ui.h:37 + msgid "_Send" + msgstr "_Senden" + +@@ -461,163 +465,3 @@ msgid "Whether to synchronise the phone clock with the computer's." + msgstr "" + "Legt fest, ob die Uhr des Telefons mit der des Rechners abgeglichen werden " + "soll." +- +-#~ msgid "Selection mode" +-#~ msgstr "Auswahlmodus" +- +-#~ msgid "The selection mode" +-#~ msgstr "Der Auswahlmodus" +- +-#~ msgid "Sorted" +-#~ msgstr "Geordnet" +- +-#~ msgid "Icon list is sorted" +-#~ msgstr "Symbolliste ist geordnet" +- +-#~ msgid "Sort order" +-#~ msgstr "Sortierreihenfolge" +- +-#~ msgid "Sort direction the icon list should use" +-#~ msgstr "Sortierrichtung der Symbolliste" +- +-#~ msgid "Icon padding" +-#~ msgstr "Symbolabstand" +- +-#~ msgid "Number of pixels between icons" +-#~ msgstr "Anzahl der Pixel zwischen zwei Symbolen" +- +-#~ msgid "Top margin" +-#~ msgstr "Oberer Rand" +- +-#~ msgid "Number of pixels in top margin" +-#~ msgstr "Anzahl der Pixel des oberen Randes" +- +-#~ msgid "Bottom margin" +-#~ msgstr "Unterer Rand" +- +-#~ msgid "Number of pixels in bottom margin" +-#~ msgstr "Anzahl der Pixel des unteren Randes" +- +-#~ msgid "Left margin" +-#~ msgstr "Linker Rand" +- +-#~ msgid "Number of pixels in left margin" +-#~ msgstr "Anzahl der Pixel des linken Randes" +- +-#~ msgid "Right margin" +-#~ msgstr "Rechter Rand" +- +-#~ msgid "Number of pixels in right margin" +-#~ msgstr "Anzahl der Pixel des rechten Randes" +- +-#~ msgid "Selection Box Color" +-#~ msgstr "Auswahlboxfarbe" +- +-#~ msgid "Color of the selection box" +-#~ msgstr "Die Farbe der Auswahlbox" +- +-#~ msgid "Selection Box Alpha" +-#~ msgstr "Auswahlbox-Alphakanal" +- +-#~ msgid "Opacity of the selection box" +-#~ msgstr "Deckkraft der Auswahlbox" +- +-#~ msgid "Pixbuf" +-#~ msgstr "Pixbuf" +- +-#~ msgid "A GdkPixbuf to display" +-#~ msgstr "Ein anzuzeigender GdkPixbuf" +- +-#~ msgid "Filename" +-#~ msgstr "Dateiname" +- +-#~ msgid "Filename to load and display" +-#~ msgstr "Der Name der zu ladende und anzuzeigende Datei" +- +-#~ msgid "Stock ID" +-#~ msgstr "Stock ID" +- +-#~ msgid "Stock ID for a stock image to display" +-#~ msgstr "Stock ID für ein anzuzeigendes Stock-Image" +- +-#~ msgid "Animation" +-#~ msgstr "Animation" +- +-#~ msgid "GdkPixbufAnimation to display" +-#~ msgstr "Eine anzuzeigende GdkPixbufAnimation" +- +-#~ msgid "Image type" +-#~ msgstr "Bildtyp" +- +-#~ msgid "The representation being used for image data" +-#~ msgstr "Die zu verwendende Darstellung für Bilddaten" +- +-#~ msgid "Size" +-#~ msgstr "Größe" +- +-#~ msgid "The size of the icon" +-#~ msgstr "Die Größe des Symbols" +- +-#~ msgid "Blinking" +-#~ msgstr "Blinkend" +- +-#~ msgid "Whether or not the status icon is blinking" +-#~ msgstr "Legen Sie hier fest, ob das Statussymbol blinken soll" +- +-#~ msgid "Orientation" +-#~ msgstr "Ausrichtung" +- +-#~ msgid "The orientation of the tray." +-#~ msgstr "Die Ausrichtung des Benachrichtigungsfeldes" +- +-#~ msgid "" +-#~ "<span weight=\"bold\" size=\"larger\">Couldn't find notification area</" +-#~ "span>\n" +-#~ "\n" +-#~ "Phone Manager uses the notification area to display information and " +-#~ "provide access to message sending and preferences. You can add it by right-" +-#~ "clicking on your panel and choosing <i>Add to Panel -> Utility -> " +-#~ "Notification Area</i>." +-#~ msgstr "" +-#~ "<span weight=\"bold\" size=\"larger\">Benachrichtigungsfeld konnte nicht " +-#~ "gefunden werden</span>\n" +-#~ "\n" +-#~ "Die Telefonverwaltung verwendet das Benachrichtigungsfeld um Informationen " +-#~ "anzuzeigen und außerdem um es Ihnen zu ermöglichen Nachrichten zu " +-#~ "versenden und Einstellungen vorzunehmen. Sie können das " +-#~ "Benachrichtigungsfeld zu Ihrem Panel hinzufügen, in dem Sie es mit der " +-#~ "rechten Maustaste anklicken, »Zum Panel hinzufügen...« auswählen und " +-#~ "anschließend im erscheindenen Dialog»Benachrichtigungsfeld« markieren und " +-#~ "es mit »Hinzufügen« hinzufügen." +- +-#~ msgid "Couldn't create phone listener." +-#~ msgstr "Der Telefonempfänger konnte nicht angelegt werden." +- +-#~ msgid "No Bluetooth device chosen." +-#~ msgstr "Es wurde kein Bluetooth-Gerät ausgewählt." +- +-#~ msgid "/dev/ttyS2" +-#~ msgstr "/dev/ttyS2" +- +-#~ msgid "<b>Error Handling</b>" +-#~ msgstr "<b>Fehlerbehandlung</b>" +- +-#~ msgid "<span weight=\"bold\" size=\"larger\">Enter your text message</span>" +-#~ msgstr "" +-#~ "<span weight=\"bold\" size=\"larger\">Bitte geben Sie Ihre Textnachricht " +-#~ "ein</span>" +- +-#~ msgid "" +-#~ "<span weight=\"bold\" size=\"larger\">You have received a message</span>" +-#~ msgstr "" +-#~ "<span weight=\"bold\" size=\"larger\">Sie haben eine Nachricht erhalten</" +-#~ "span>" +- +-#~ msgid "Choo_se" +-#~ msgstr "Au_swählen" +- +-#~ msgid "Number of characters left in the message" +-#~ msgstr "Die Anzahl der Zeichen, die für diese Nachricht verbleiben" +- +-#~ msgid "message body" +-#~ msgstr "Nachrichtenkörper" +diff --git a/po/fr.po b/po/fr.po +index cfacc58..a723c09 100644 +--- a/po/fr.po ++++ b/po/fr.po +@@ -1,20 +1,21 @@ + # French translation of phonemgr. +-# Copyright (C) 2003-2009 The Free Software Foundation, Inc. ++# Copyright (C) 2003-2011 The Free Software Foundation, Inc. + # This file is distributed under the GNU General Public License Version 2. + # + # Gaël Chamoulaud (strider) <strider@freespiders.org>, 2003. + # Audrey Simons <asimons@redhat.com>, 2004. + # Jonathan Ernst <jonathan@ernstfamily.ch>, 2006. + # Robert-André Mauchin <zebob.m@pengzone.org>, 2007-2008. ++# Bruno Brouard <annoa.b@gmail.com>, 2011. + # + msgid "" + msgstr "" + "Project-Id-Version: phonemgr 0.4\n" + "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-" + "phone-manager&component=general\n" +-"POT-Creation-Date: 2010-12-12 15:33+0000\n" +-"PO-Revision-Date: 2009-10-16 23:38+0200\n" +-"Last-Translator: Claude Paroz <claude@2xlibre.net>\n" ++"POT-Creation-Date: 2011-02-15 20:00+0000\n" ++"PO-Revision-Date: 2011-03-20 12:51+0100\n" ++"Last-Translator: Bruno Brouard <annoa.b@gmail.com>\n" + "Language-Team: GNOME French Team <gnomefr@traduc.org>\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" +@@ -128,6 +129,11 @@ msgstr "Erreur GConf : %s" + msgid "All further errors shown only on terminal." + msgstr "Toutes les futures erreurs apparaissent uniquement dans le terminal." + ++#. Translators: "device" is a phone or a modem ++#: ../gnome-bluetooth/phonemgr.c:133 ++msgid "Use this device with Phone Manager" ++msgstr "Utiliser ce périphérique avec Phone Manager" ++ + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar + #: ../src/connection.c:124 +@@ -173,14 +179,14 @@ msgstr "Non connecté" + msgid "Show model name of a specific device" + msgstr "Afficher le modèle d'un périphérique spécifique" + ++#: ../src/main.c:38 ../src/main.c:39 ++msgid "PORT" ++msgstr "PORT" ++ + #: ../src/main.c:39 + msgid "Write the configuration file for gnokii debugging" + msgstr "Écrire le fichier de configuration pour le débogage de gnokii" + +-#: ../src/main.c:39 +-msgid "PORT" +-msgstr "PORT" +- + #: ../src/main.c:40 + msgid "Enable debug" + msgstr "Activer le débogage" +@@ -193,7 +199,7 @@ msgstr "Afficher les informations de version et quitter" + msgid "- Manage your mobile phone" + msgstr "- Gestion de votre téléphone portable" + +-#: ../src/main.c:72 ++#: ../src/main.c:74 + #, c-format + msgid "gnome-phone-manager version %s\n" + msgstr "gnome-phone-manager version %s\n" +@@ -218,23 +224,23 @@ msgstr "Site Web de Phone Manager" + msgid "_Send Message" + msgstr "Envoyer le me_ssage" + +-#: ../src/ui.c:166 ++#: ../src/ui.c:111 + msgid "New text message received" + msgstr "Nouveau message texte reçu" + +-#: ../src/ui.c:331 ++#: ../src/ui.c:277 + msgid "Message too long!" + msgstr "Message trop long !" + +-#: ../data/phonemgr.glade.h:1 ++#: ../data/phonemgr.ui.h:1 + msgid "Alerting" + msgstr "Avertir" + +-#: ../data/phonemgr.glade.h:2 ++#: ../data/phonemgr.ui.h:2 + msgid "Alternative device filename, e.g. /dev/ttyS3" + msgstr "Autre fichier de périphérique, par exemple /dev/ttyS3" + +-#: ../data/phonemgr.glade.h:3 ++#: ../data/phonemgr.ui.h:3 + msgid "" + "Always try and reconnect whenever a connection is not immediately available. " + "Use this with Bluetooth to ensure your phone connects whenever it comes in " +@@ -244,138 +250,138 @@ msgstr "" + "immédiatement disponible. Utilisez ceci avec Bluetooth afin de vous assurer " + "que votre téléphone se connecte dès qu'il devient à portée." + +-#: ../data/phonemgr.glade.h:4 ++#: ../data/phonemgr.ui.h:4 + msgid "Automated Tasks" + msgstr "Tâches automatisées" + +-#: ../data/phonemgr.glade.h:5 ++#: ../data/phonemgr.ui.h:5 + msgid "Automatically _retry connections" + msgstr "Tentatives de _reconnexion automatiques" + +-#: ../data/phonemgr.glade.h:6 ++#: ../data/phonemgr.ui.h:6 + msgid "Characters left:" + msgstr "Caractères restants :" + +-#: ../data/phonemgr.glade.h:7 ++#: ../data/phonemgr.ui.h:7 + msgid "Connect using an alternative serial device" + msgstr "Se connecter par un autre périphérique série" + +-#: ../data/phonemgr.glade.h:8 ++#: ../data/phonemgr.ui.h:8 + msgid "Connect using infrared communication" + msgstr "Se connecter par communication infrarouge" + +-#: ../data/phonemgr.glade.h:9 ++#: ../data/phonemgr.ui.h:9 + msgid "Connect using serial port 1, also known as COM1 or /dev/ttyS0" + msgstr "Se connecter par le port série 1, aussi appelé COM1 ou /dev/ttyS0" + +-#: ../data/phonemgr.glade.h:10 ++#: ../data/phonemgr.ui.h:10 + msgid "Connect using serial port 2, also known as COM2 or /dev/ttyS1" + msgstr "Se connecter par le port série 2, aussi appelé COM2 ou /dev/ttyS1" + +-#: ../data/phonemgr.glade.h:11 ++#: ../data/phonemgr.ui.h:11 + msgid "Connection" + msgstr "Connexion" + +-#: ../data/phonemgr.glade.h:12 ++#: ../data/phonemgr.ui.h:12 + msgid "Date:" + msgstr "Date :" + +-#: ../data/phonemgr.glade.h:13 ++#: ../data/phonemgr.ui.h:13 + msgid "Enter the text message you want to send." + msgstr "Saisissez le message texte à envoyer." + +-#: ../data/phonemgr.glade.h:14 ++#: ../data/phonemgr.ui.h:14 + msgid "Enter your text message" + msgstr "Saisissez le message texte" + +-#: ../data/phonemgr.glade.h:15 ++#: ../data/phonemgr.ui.h:15 + msgid "I_nfra red (/dev/ircomm0)" + msgstr "I_nfrarouge (/dev/ircomm0)" + +-#: ../data/phonemgr.glade.h:16 ++#: ../data/phonemgr.ui.h:16 + msgid "Interface" + msgstr "Interface" + +-#: ../data/phonemgr.glade.h:17 ++#: ../data/phonemgr.ui.h:17 + msgid "Message Received" + msgstr "Message reçu" + +-#: ../data/phonemgr.glade.h:18 ++#: ../data/phonemgr.ui.h:18 + msgid "Other _port" + msgstr "Autre _port" + +-#: ../data/phonemgr.glade.h:19 ++#: ../data/phonemgr.ui.h:19 + msgid "Phone Connection" + msgstr "Connexion au téléphone" + +-#: ../data/phonemgr.glade.h:20 ++#: ../data/phonemgr.ui.h:20 + msgid "Phone Manager Preferences" + msgstr "Préférences de Phone Manager" + +-#: ../data/phonemgr.glade.h:21 ++#: ../data/phonemgr.ui.h:21 + msgid "Play _sound when messages arrive" + msgstr "Jouer un _son à l'arrivée d'un message" + +-#: ../data/phonemgr.glade.h:22 ++#: ../data/phonemgr.ui.h:22 + msgid "Send Message" + msgstr "Envoyer le message" + +-#: ../data/phonemgr.glade.h:23 ++#: ../data/phonemgr.ui.h:23 + msgid "Sender:" + msgstr "Expéditeur :" + +-#: ../data/phonemgr.glade.h:24 ++#: ../data/phonemgr.ui.h:24 + msgid "Serial port _1 (/dev/ttyS0)" + msgstr "Port série _1 (/dev/ttyS0)" + +-#: ../data/phonemgr.glade.h:25 ++#: ../data/phonemgr.ui.h:25 + msgid "Serial port _2 (/dev/ttyS1)" + msgstr "Port série _2 (/dev/ttyS1)" + +-#: ../data/phonemgr.glade.h:26 ++#: ../data/phonemgr.ui.h:26 + msgid "Synchronise phone's _time and date" + msgstr "Synchroniser l'_heure et la date du téléphone" + +-#: ../data/phonemgr.glade.h:27 ++#: ../data/phonemgr.ui.h:27 + msgid "Synchronise phone's time and date with the computer's clock" + msgstr "" + "Synchronise l'heure et la date du téléphone avec celles de l'ordinateur" + +-#: ../data/phonemgr.glade.h:28 ++#: ../data/phonemgr.ui.h:28 + msgid "Use Bluetooth wireless networking to connect to your phone" + msgstr "" + "Utiliser la communication Bluetooth pour se connecter à votre téléphone" + +-#: ../data/phonemgr.glade.h:29 ++#: ../data/phonemgr.ui.h:29 + msgid "You have received a message" + msgstr "Vous avez reçu un message" + +-#: ../data/phonemgr.glade.h:30 ++#: ../data/phonemgr.ui.h:30 + msgid "_Bluetooth" + msgstr "_Bluetooth" + +-#: ../data/phonemgr.glade.h:31 ++#: ../data/phonemgr.ui.h:31 + msgid "_Message:" + msgstr "_Message :" + + #. This is a receipt from the SMS server saying the message has been delivered to the recipient's phone +-#: ../data/phonemgr.glade.h:33 ++#: ../data/phonemgr.ui.h:33 + msgid "_Notify when message is delivered" + msgstr "_Demander un accusé de réception" + +-#: ../data/phonemgr.glade.h:34 ++#: ../data/phonemgr.ui.h:34 + msgid "_Pop-up window for new messages" + msgstr "Afficher les nouveaux messages dans une fenêtre _pop-up" + +-#: ../data/phonemgr.glade.h:35 ++#: ../data/phonemgr.ui.h:35 + msgid "_Recipient:" + msgstr "Destinatai_re :" + +-#: ../data/phonemgr.glade.h:36 ++#: ../data/phonemgr.ui.h:36 + msgid "_Reply" + msgstr "_Répondre" + +-#: ../data/phonemgr.glade.h:37 ++#: ../data/phonemgr.ui.h:37 + msgid "_Send" + msgstr "_Envoyer" + +@@ -413,7 +419,7 @@ msgid "" + "The device node for the serial device to connect to. Requires " + "connection_type to be 4 to be used." + msgstr "" +-"Le nÅ“ud de périphérique pour le périphérique série auquel se connecter." ++"Le nÅ“ud de périphérique pour le périphérique série auquel se connecter. " + "Nécessite que « connection_type » soit défini à 4 pour être utilisé." + + #: ../data/gnome-phone-manager.schemas.in.h:7 +diff --git a/po/he.po b/po/he.po +index e73207c..384af21 100644 +--- a/po/he.po ++++ b/po/he.po +@@ -6,14 +6,14 @@ msgid "" + msgstr "" + "Project-Id-Version: gnome-phone-manager\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2011-01-26 17:39+0200\n" +-"PO-Revision-Date: 2011-01-26 18:02+0200\n" ++"POT-Creation-Date: 2011-02-28 19:27+0200\n" ++"PO-Revision-Date: 2011-02-28 19:27+0200\n" + "Last-Translator: Yaron Shahrabani <sh.yaron@gmail.com>\n" + "Language-Team: Gezer (Hebrew) <gezer@lists.launchpad.net>\n" +-"Language: he\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" ++"Language: he\n" + "Plural-Forms: nplurals=2; plural=(n != 1);\n" + "X-Generator: Virtaal 0.7.0-beta4\n" + "X-Project-Style: gnome\n" +@@ -126,6 +126,11 @@ msgstr "שגי×ת GConf:†%s" + msgid "All further errors shown only on terminal." + msgstr "כל ש×ר השגי×ות מופיעות רק במסוף." + ++#. Translators: "device" is a phone or a modem ++#: ../gnome-bluetooth/phonemgr.c:133 ++msgid "Use this device with Phone Manager" ++msgstr "שימוש בהתקן ×–×” ×¢× Phone Manager" ++ + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar + #: ../src/connection.c:124 +@@ -142,7 +147,7 @@ msgstr "מחובר להתקן שב־%s" + msgid "Failed connection to device on %s" + msgstr "החיבור להתקן שב־%s × ×›×©×œ" + +-#: ../src/gnome-phone-manager.desktop.in.h:1 ../src/menu.c:49 ../src/menu.c:51 ++#: ../src/gnome-phone-manager.desktop.in.h:1 ../src/menu.c:51 ../src/menu.c:53 + msgid "Phone Manager" + msgstr "×ž× ×”×œ ×”×˜×œ×¤×•× ×™×" + +@@ -203,31 +208,31 @@ msgstr "ירון ×©×”×¨×‘× ×™ <sh.yaron@gmail.com>" + msgid "Send and receive messages from your mobile phone." + msgstr "קבלה ושליחה של הודעות טקסט ×ל ומהטלפון ×”× ×™×™×“ שלך." + +-#: ../src/menu.c:56 ++#: ../src/menu.c:58 + msgid "Phone Manager website" + msgstr "×”×תר של ×ž× ×”×œ ×”×˜×œ×¤×•× ×™×" + +-#: ../src/menu.c:87 ++#: ../src/menu.c:89 + msgid "_Send Message" + msgstr "_שליחת הודעה" + +-#: ../src/ui.c:166 ++#: ../src/ui.c:111 + msgid "New text message received" + msgstr "התקבלה הודעת טקסט חדשה" + +-#: ../src/ui.c:331 ++#: ../src/ui.c:277 + msgid "Message too long!" + msgstr "ההודעה ×רוכה מדי!" + +-#: ../data/phonemgr.glade.h:1 ++#: ../data/phonemgr.ui.h:1 + msgid "Alerting" + msgstr "התרעה" + +-#: ../data/phonemgr.glade.h:2 ++#: ../data/phonemgr.ui.h:2 + msgid "Alternative device filename, e.g. /dev/ttyS3" + msgstr "×©× ×—×œ×•×¤×™ להתקן, לדוגמה ‎/dev/ttyS3" + +-#: ../data/phonemgr.glade.h:3 ++#: ../data/phonemgr.ui.h:3 + msgid "" + "Always try and reconnect whenever a connection is not immediately available. " + "Use this with Bluetooth to ensure your phone connects whenever it comes in " +@@ -236,136 +241,136 @@ msgstr "" + "תמיד יש ×œ× ×¡×•×ª להתחבר מחדש ×›×שר החיבור ××™× ×• זמין ב×ותו הרגע. יש להשתמש " + "בבלוטות׳ כדי ×œ×•×•×“× ×©×”×˜×œ×¤×•×Ÿ שלך מתחבר מתי ×©×”×•× × ×›× ×¡ לטווח." + +-#: ../data/phonemgr.glade.h:4 ++#: ../data/phonemgr.ui.h:4 + msgid "Automated Tasks" + msgstr "משימות ×וטומטיות" + +-#: ../data/phonemgr.glade.h:5 ++#: ../data/phonemgr.ui.h:5 + msgid "Automatically _retry connections" + msgstr "× ×™_סיון התחברות חוזר" + +-#: ../data/phonemgr.glade.h:6 ++#: ../data/phonemgr.ui.h:6 + msgid "Characters left:" + msgstr "×ª×•×•×™× ×©× ×•×ª×¨×•:" + +-#: ../data/phonemgr.glade.h:7 ++#: ../data/phonemgr.ui.h:7 + msgid "Connect using an alternative serial device" + msgstr "התחברות ב×מצעות התקן טורי חלופי" + +-#: ../data/phonemgr.glade.h:8 ++#: ../data/phonemgr.ui.h:8 + msgid "Connect using infrared communication" + msgstr "התחברות ב×מצעות תקשורת ××™× ×¤×¨× ×דו×" + +-#: ../data/phonemgr.glade.h:9 ++#: ../data/phonemgr.ui.h:9 + msgid "Connect using serial port 1, also known as COM1 or /dev/ttyS0" + msgstr "התחברות ב×מצעות היצי××” הטורית 1, הידועה ×’× ×‘×©× COM1 ×ו ‎/dev/ttyS0" + +-#: ../data/phonemgr.glade.h:10 ++#: ../data/phonemgr.ui.h:10 + msgid "Connect using serial port 2, also known as COM2 or /dev/ttyS1" + msgstr "התחברות ב×מצעות היצי××” הטורית 2, הידועה ×’× ×‘×©× COM2 ×ו ‎/dev/ttyS1" + +-#: ../data/phonemgr.glade.h:11 ++#: ../data/phonemgr.ui.h:11 + msgid "Connection" + msgstr "חיבור" + +-#: ../data/phonemgr.glade.h:12 ++#: ../data/phonemgr.ui.h:12 + msgid "Date:" + msgstr "ת×ריך:" + +-#: ../data/phonemgr.glade.h:13 ++#: ../data/phonemgr.ui.h:13 + msgid "Enter the text message you want to send." + msgstr "× × ×œ×”×–×™×Ÿ ×ת הודעה הטקסט ×ותה ×‘×¨×¦×•× ×š לשלוח." + +-#: ../data/phonemgr.glade.h:14 ++#: ../data/phonemgr.ui.h:14 + msgid "Enter your text message" + msgstr "× × ×œ×”×–×™×Ÿ ×ת הודעה הטקסט שלך" + +-#: ../data/phonemgr.glade.h:15 ++#: ../data/phonemgr.ui.h:15 + msgid "I_nfra red (/dev/ircomm0)" + msgstr "_××™× ×¤×¨× ××“×•× (‎/dev/ircomm0)" + +-#: ../data/phonemgr.glade.h:16 ++#: ../data/phonemgr.ui.h:16 + msgid "Interface" + msgstr "×ž× ×©×§" + +-#: ../data/phonemgr.glade.h:17 ++#: ../data/phonemgr.ui.h:17 + msgid "Message Received" + msgstr "התקבלה הודעה" + +-#: ../data/phonemgr.glade.h:18 ++#: ../data/phonemgr.ui.h:18 + msgid "Other _port" + msgstr "_פתחה ×חרת" + +-#: ../data/phonemgr.glade.h:19 ++#: ../data/phonemgr.ui.h:19 + msgid "Phone Connection" + msgstr "חיבור טלפון" + +-#: ../data/phonemgr.glade.h:20 ++#: ../data/phonemgr.ui.h:20 + msgid "Phone Manager Preferences" + msgstr "העדפות ×ž× ×”×œ ×”×˜×œ×¤×•× ×™×" + +-#: ../data/phonemgr.glade.h:21 ++#: ../data/phonemgr.ui.h:21 + msgid "Play _sound when messages arrive" + msgstr "השמעת _צליל בעת קבלת הודעות" + +-#: ../data/phonemgr.glade.h:22 ++#: ../data/phonemgr.ui.h:22 + msgid "Send Message" + msgstr "שליחת הודעה" + +-#: ../data/phonemgr.glade.h:23 ++#: ../data/phonemgr.ui.h:23 + msgid "Sender:" + msgstr "שולח" + +-#: ../data/phonemgr.glade.h:24 ++#: ../data/phonemgr.ui.h:24 + msgid "Serial port _1 (/dev/ttyS0)" + msgstr "יצי××” טורית _1 (‎/dev/ttyS0)" + +-#: ../data/phonemgr.glade.h:25 ++#: ../data/phonemgr.ui.h:25 + msgid "Serial port _2 (/dev/ttyS1)" + msgstr "יצי××” טורית _2 (‎/dev/ttyS1)" + +-#: ../data/phonemgr.glade.h:26 ++#: ../data/phonemgr.ui.h:26 + msgid "Synchronise phone's _time and date" + msgstr "×¡× ×›×¨×•×Ÿ ×”_זמן והת×ריך של הטלפון" + +-#: ../data/phonemgr.glade.h:27 ++#: ../data/phonemgr.ui.h:27 + msgid "Synchronise phone's time and date with the computer's clock" + msgstr "×¡× ×›×¨×•×Ÿ השעה והת×ריך של הטלפון שלך ×¢× ×לו של שעון המחשב" + +-#: ../data/phonemgr.glade.h:28 ++#: ../data/phonemgr.ui.h:28 + msgid "Use Bluetooth wireless networking to connect to your phone" + msgstr "שימוש ברשת בלוטות׳ ×לחוטית כדי להתחבר לטלפון שלך" + +-#: ../data/phonemgr.glade.h:29 ++#: ../data/phonemgr.ui.h:29 + msgid "You have received a message" + msgstr "קיבלת הודעה" + +-#: ../data/phonemgr.glade.h:30 ++#: ../data/phonemgr.ui.h:30 + msgid "_Bluetooth" + msgstr "_בלוטות׳" + +-#: ../data/phonemgr.glade.h:31 ++#: ../data/phonemgr.ui.h:31 + msgid "_Message:" + msgstr "הו_דעה:" + + #. This is a receipt from the SMS server saying the message has been delivered to the recipient's phone +-#: ../data/phonemgr.glade.h:33 ++#: ../data/phonemgr.ui.h:33 + msgid "_Notify when message is delivered" + msgstr "×”_צגת התרעה בעת קבלת הודעה" + +-#: ../data/phonemgr.glade.h:34 ++#: ../data/phonemgr.ui.h:34 + msgid "_Pop-up window for new messages" + msgstr "×”_קפצת חלון ×¢× ×§×‘×œ×ª הודעות חדשות" + +-#: ../data/phonemgr.glade.h:35 ++#: ../data/phonemgr.ui.h:35 + msgid "_Recipient:" + msgstr "_× ×ž×¢×Ÿ:" + +-#: ../data/phonemgr.glade.h:36 ++#: ../data/phonemgr.ui.h:36 + msgid "_Reply" + msgstr "ת_גובה" + +-#: ../data/phonemgr.glade.h:37 ++#: ../data/phonemgr.ui.h:37 + msgid "_Send" + msgstr "_שליחה" + +diff --git a/po/lv.po b/po/lv.po +index 373a0ab..d93632f 100644 +--- a/po/lv.po ++++ b/po/lv.po +@@ -3,25 +3,140 @@ + # This file is distributed under the same license as the PACKAGE package. + # + # Raivis Dejus <orvils@gmail.com>, 2008. ++# RÅ«dofls Mazurs <rudolfs.mazurs@gmail.com>, 2011. + msgid "" + msgstr "" + "Project-Id-Version: gnome-phone-manager\n" +-"Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2008-08-11 00:58+0300\n" +-"PO-Revision-Date: 2008-08-11 13:18+0300\n" +-"Last-Translator: Raivis Dejus <orvils@gmail.com>\n" ++"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug." ++"cgi?product=gnome-phone-manager&component=general\n" ++"POT-Creation-Date: 2011-02-15 20:00+0000\n" ++"PO-Revision-Date: 2011-03-31 19:23+0300\n" ++"Last-Translator: RÅ«dofls Mazurs <rudolfs.mazurs@gmail.com>\n" + "Language-Team: Latvian <locale@laka.lv>\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + "X-Poedit-Language: Latvian\n" + "X-Poedit-Country: LATVIA\n" +-"X-Generator: KBabel 1.11.4\n" +-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" ++"X-Generator: Lokalize 1.1\n" ++"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " ++"2);\n" ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:153 ++#, c-format ++msgid "Cannot get contact: %s" ++msgstr "Nevaru dabÅ«t kontaktinformÄciju: %s" ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:186 ++#, c-format ++msgid "Could not find contact: %s" ++msgstr "Nevaru atrast kontaktinformÄciju: %s" ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:414 ++msgid "Cannot create searchable view." ++msgstr "Nevaru izveidot meklÄ“jamu skatu." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:886 ++msgid "Success" ++msgstr "VeiksmÄ«gi" ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:888 ++msgid "An argument was invalid." ++msgstr "Nepareiza argumenta vÄ“rtÄ«ba." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:890 ++msgid "The address book is busy." ++msgstr "PieslÄ“gums adreÅ¡u grÄmatai ir aizņemts." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:892 ++msgid "The address book is offline." ++msgstr "AdreÅ¡u grÄmata ir atsaistÄ“." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:894 ++msgid "The address book does not exist." ++msgstr "AdreÅ¡u grÄmata neeksistÄ“." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:896 ++msgid "The \"Me\" contact does not exist." ++msgstr "\"Mana\" kontaktinformÄcija nav atrodama." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:898 ++msgid "The address book is not loaded." ++msgstr "AdreÅ¡u grÄmata nav ielÄdÄ“ta." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:900 ++msgid "The address book is already loaded." ++msgstr "AdreÅ¡u grÄmata jau ir ielÄdÄ“ta." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:902 ++msgid "Permission was denied when accessing the address book." ++msgstr "Pieeja adreÅ¡u grÄmatai liegta." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:904 ++msgid "The contact was not found." ++msgstr "KontaktinformÄcija nav atrasta." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:906 ++msgid "This contact ID already exists." ++msgstr "KontaktinformÄcijas ID jau eksistÄ“." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:908 ++msgid "The protocol is not supported." ++msgstr "Protokols netiek atbalstÄ«ts." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:910 ++msgid "The operation was cancelled." ++msgstr "DarbÄ«ba tika atcelta." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:912 ++msgid "The operation could not be cancelled." ++msgstr "PieprasÄ«to operÄciju nevar atcelt." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:914 ++msgid "The address book authentication failed." ++msgstr "AdreÅ¡u grÄmatas autentifikÄcija neizdevÄs." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:916 ++msgid "" ++"Authentication is required to access the address book and was not given." ++msgstr "" ++"Lai lasÄ«tu adreÅ¡u grÄmatu, bija nepiecieÅ¡ama autentificÄ“Å¡anÄs, kura netika " ++"nodroÅ¡inÄta." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:918 ++msgid "A secure connection is not available." ++msgstr "DroÅ¡s savienojums nav pieejams." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:920 ++msgid "A CORBA error occurred whilst accessing the address book." ++msgstr "Lasot adreÅ¡u grÄmatu, notikusi CORBA kļūda." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:922 ++msgid "The address book source does not exist." ++msgstr "AdreÅ¡u grÄmatas primÄrais dokuments neeksistÄ“." ++ ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:924 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:927 ++msgid "An unknown error occurred." ++msgstr "AtgadÄ«jÄs nezinÄma kļūda." ++ ++#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1233 ++#, c-format ++msgid "GConf error: %s" ++msgstr "GConf kļūda: %s" ++ ++#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1238 ++msgid "All further errors shown only on terminal." ++msgstr "Visas turpmÄkÄs kļūdas tiks parÄdÄ«tas tikai terminÄlÄ«." ++ ++#. Translators: "device" is a phone or a modem ++#: ../gnome-bluetooth/phonemgr.c:133 ++msgid "Use this device with Phone Manager" ++msgstr "Izmantot Å¡o ierÄ«ci ar TÄlruņa pÄrvaldnieku" + + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar +-#: ../src/connection.c:113 ++#: ../src/connection.c:124 + #, c-format + msgid "Connected to device on %s" + msgstr "Savienots ar iekÄrtu %s" +@@ -30,23 +145,12 @@ msgstr "Savienots ar iekÄrtu %s" + #. bother changing the icon ourselves at this point + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar +-#: ../src/connection.c:119 ++#: ../src/connection.c:130 + #, c-format + msgid "Failed connection to device on %s" + msgstr "NeizdevÄs savienoties ar iekÄrtu %s" + +-#: ../src/gconf-bridge.c:1218 +-#, c-format +-msgid "GConf error: %s" +-msgstr "GConf kļūda: %s" +- +-#: ../src/gconf-bridge.c:1228 +-msgid "All further errors shown only on terminal." +-msgstr "Visas turpmÄkÄs kļūdas tiks parÄdÄ«tas tikai terminÄlÄ«." +- +-#: ../src/gnome-phone-manager.desktop.in.h:1 +-#: ../src/menu.c:49 +-#: ../src/menu.c:51 ++#: ../src/gnome-phone-manager.desktop.in.h:1 ../src/menu.c:49 ../src/menu.c:51 + msgid "Phone Manager" + msgstr "TÄlruņa pÄrvaldnieks" + +@@ -70,27 +174,31 @@ msgstr "Savienojos ar tÄlruni" + msgid "Not connected" + msgstr "Nav savienots" + +-#: ../src/main.c:37 ++#: ../src/main.c:38 + msgid "Show model name of a specific device" + msgstr "RÄdÄ«t iekÄrtas modeli" + +-#: ../src/main.c:38 ++#: ../src/main.c:38 ../src/main.c:39 ++msgid "PORT" ++msgstr "PORTS" ++ ++#: ../src/main.c:39 + msgid "Write the configuration file for gnokii debugging" + msgstr "RakstÄ«t konfigurÄcijas failu gnokii lÄgoÅ¡anai" + +-#: ../src/main.c:39 ++#: ../src/main.c:40 + msgid "Enable debug" + msgstr "IeslÄ“gt lÄgoÅ¡anu" + +-#: ../src/main.c:40 ++#: ../src/main.c:41 + msgid "Show version information and exit" + msgstr "SkatÄ«t versijas informÄciju un iziet" + +-#: ../src/main.c:59 ++#: ../src/main.c:60 + msgid "- Manage your mobile phone" + msgstr "- PÄrvalda jÅ«su mobilo tÄlruni" + +-#: ../src/main.c:72 ++#: ../src/main.c:74 + #, c-format + msgid "gnome-phone-manager version %s\n" + msgstr "gnome-phone-manager versija %s\n" +@@ -111,152 +219,166 @@ msgstr "TÄlruņa pÄrvaldnieka mÄjas lapa" + msgid "_Send Message" + msgstr "_SÅ«tÄ«t Ä«sziņu" + +-#: ../src/phonemgr-chooser-button.c:80 +-#: ../src/phonemgr-chooser-button.c:190 +-msgid "Click to select device..." +-msgstr "KlikÅ¡Ä·iniet, lai izvÄ“lÄ“tos iekÄrtu..." ++#: ../src/ui.c:111 ++#| msgid "Message Received" ++msgid "New text message received" ++msgstr "Saņemta jauna teksta Ä«sziņa" + +-#: ../src/ui.c:335 ++#: ../src/ui.c:277 + msgid "Message too long!" + msgstr "Īsziņa ir pÄrÄk gara!" + +-#: ../data/phonemgr.glade.h:1 +-msgid "/dev/ttyS2" +-msgstr "/dev/ttyS2" +- +-#: ../data/phonemgr.glade.h:2 ++#: ../data/phonemgr.ui.h:1 + msgid "Alerting" + msgstr "BrÄ«dinÄÅ¡ana" + +-#: ../data/phonemgr.glade.h:3 ++#: ../data/phonemgr.ui.h:2 + msgid "Alternative device filename, e.g. /dev/ttyS3" + msgstr "AlternatÄ«vs ierÄ«ces faila nosaukums, piem. /dev/ttyS3" + +-#: ../data/phonemgr.glade.h:4 +-msgid "Always try and reconnect whenever a connection is not immediately available. Use this with Bluetooth to ensure your phone connects whenever it comes in range." +-msgstr "VienmÄ“r censties atjaunot zaudÄ“tu savienojumu. Lietojiet Bluetooth, lai nodroÅ¡inÄtu savienojumu, tikko tÄlrunis ir parÄdÄ«jies pieejamajÄ diapazonÄ." ++#: ../data/phonemgr.ui.h:3 ++msgid "" ++"Always try and reconnect whenever a connection is not immediately available. " ++"Use this with Bluetooth to ensure your phone connects whenever it comes in " ++"range." ++msgstr "" ++"VienmÄ“r censties atjaunot zaudÄ“tu savienojumu. Lietojiet Bluetooth, lai " ++"nodroÅ¡inÄtu savienojumu, tikko tÄlrunis ir parÄdÄ«jies pieejamajÄ diapazonÄ." ++ ++#: ../data/phonemgr.ui.h:4 ++msgid "Automated Tasks" ++msgstr "AutomatizÄ“tie uzdevumi" + +-#: ../data/phonemgr.glade.h:5 ++#: ../data/phonemgr.ui.h:5 + msgid "Automatically _retry connections" + msgstr "AutomÄtiski mÄ“Ä£inÄt pieslÄ“gties vÄ“l_reiz" + +-#: ../data/phonemgr.glade.h:6 ++#: ../data/phonemgr.ui.h:6 + msgid "Characters left:" + msgstr "AtlikuÅ¡ais zÄ«mju skaits:" + +-#: ../data/phonemgr.glade.h:7 ++#: ../data/phonemgr.ui.h:7 + msgid "Connect using an alternative serial device" + msgstr "Savienoties ar tÄlruni, izmantojot citu seriÄlo iekÄrtu" + +-#: ../data/phonemgr.glade.h:8 ++#: ../data/phonemgr.ui.h:8 + msgid "Connect using infrared communication" + msgstr "Savienoties ar tÄlruni, izmantojot infrasarkanos sakarus" + +-#: ../data/phonemgr.glade.h:9 ++#: ../data/phonemgr.ui.h:9 + msgid "Connect using serial port 1, also known as COM1 or /dev/ttyS0" +-msgstr "Savienoties ar tÄlruni, izmantojot pirmo seriÄlo portu, zinÄmu arÄ« kÄ COM1 vai /dev/ttyS0" ++msgstr "" ++"Savienoties ar tÄlruni, izmantojot pirmo seriÄlo portu, zinÄmu arÄ« kÄ COM1 " ++"vai /dev/ttyS0" + +-#: ../data/phonemgr.glade.h:10 ++#: ../data/phonemgr.ui.h:10 + msgid "Connect using serial port 2, also known as COM2 or /dev/ttyS1" +-msgstr "Savienoties ar tÄlruni, izmantojot otro seriÄlo portu, zinÄmu arÄ« kÄ COM2 vai /dev/ttyS1" ++msgstr "" ++"Savienoties ar tÄlruni, izmantojot otro seriÄlo portu, zinÄmu arÄ« kÄ COM2 " ++"vai /dev/ttyS1" + +-#: ../data/phonemgr.glade.h:11 ++#: ../data/phonemgr.ui.h:11 + msgid "Connection" + msgstr "Savienojums" + +-#: ../data/phonemgr.glade.h:12 ++#: ../data/phonemgr.ui.h:12 + msgid "Date:" + msgstr "Datums:" + +-#: ../data/phonemgr.glade.h:13 ++#: ../data/phonemgr.ui.h:13 + msgid "Enter the text message you want to send." + msgstr "Ievadiet Ä«sziņas tekstu, kuru vÄ“laties nosÅ«tÄ«t." + +-#: ../data/phonemgr.glade.h:14 ++#: ../data/phonemgr.ui.h:14 + msgid "Enter your text message" + msgstr "Ievadiet Ä«sziņas tekstu" + +-#: ../data/phonemgr.glade.h:15 +-msgid "Error Handling" +-msgstr "Kļūdu apstrÄde" +- +-#: ../data/phonemgr.glade.h:16 ++#: ../data/phonemgr.ui.h:15 + msgid "I_nfra red (/dev/ircomm0)" + msgstr "I_nfrasarkanais (/dev/ircomm0)" + +-#: ../data/phonemgr.glade.h:17 ++#: ../data/phonemgr.ui.h:16 + msgid "Interface" + msgstr "Saskarne" + +-#: ../data/phonemgr.glade.h:18 ++#: ../data/phonemgr.ui.h:17 + msgid "Message Received" + msgstr "Saņemta Ä«sziņa" + +-#: ../data/phonemgr.glade.h:19 ++#: ../data/phonemgr.ui.h:18 + msgid "Other _port" + msgstr "Cits _ports" + +-#: ../data/phonemgr.glade.h:20 ++#: ../data/phonemgr.ui.h:19 + msgid "Phone Connection" + msgstr "TÄlruņa savienojums" + +-#: ../data/phonemgr.glade.h:21 ++#: ../data/phonemgr.ui.h:20 + msgid "Phone Manager Preferences" + msgstr "TÄlruņa pÄrvaldnieka iestatÄ«jumi" + +-#: ../data/phonemgr.glade.h:22 ++#: ../data/phonemgr.ui.h:21 + msgid "Play _sound when messages arrive" + msgstr "_Saņemot Ä«sziņu, atskaņot signÄlu" + +-#: ../data/phonemgr.glade.h:23 ++#: ../data/phonemgr.ui.h:22 + msgid "Send Message" + msgstr "SÅ«tÄ«t Ä«sziņu" + +-#: ../data/phonemgr.glade.h:24 ++#: ../data/phonemgr.ui.h:23 + msgid "Sender:" + msgstr "SÅ«tÄ«tÄjs:" + +-#: ../data/phonemgr.glade.h:25 ++#: ../data/phonemgr.ui.h:24 + msgid "Serial port _1 (/dev/ttyS0)" + msgstr "Pirmais seriÄlais ports ( _1 /dev/ttyS0) " + +-#: ../data/phonemgr.glade.h:26 ++#: ../data/phonemgr.ui.h:25 + msgid "Serial port _2 (/dev/ttyS1)" + msgstr "Otrais seriÄlais ports ( _2 /dev/ttyS1) " + +-#: ../data/phonemgr.glade.h:27 ++#: ../data/phonemgr.ui.h:26 ++msgid "Synchronise phone's _time and date" ++msgstr "SinhronizÄ“t _tÄlruņa laiku un datumu" ++ ++#: ../data/phonemgr.ui.h:27 ++msgid "Synchronise phone's time and date with the computer's clock" ++msgstr "SinhronizÄ“t tÄlruņa laiku un datumu ar datora pulksteni" ++ ++#: ../data/phonemgr.ui.h:28 + msgid "Use Bluetooth wireless networking to connect to your phone" + msgstr "Savienoties ar tÄlruni, izmantojot Bluetooth bezvadu savienojumu" + +-#: ../data/phonemgr.glade.h:28 ++#: ../data/phonemgr.ui.h:29 + msgid "You have received a message" + msgstr "Saņemta jauna Ä«sziņa" + +-#: ../data/phonemgr.glade.h:29 ++#: ../data/phonemgr.ui.h:30 + msgid "_Bluetooth" + msgstr "_Bluetooth" + +-#: ../data/phonemgr.glade.h:30 ++#: ../data/phonemgr.ui.h:31 + msgid "_Message:" + msgstr "Īs_ziņa:" + +-#: ../data/phonemgr.glade.h:31 ++#. This is a receipt from the SMS server saying the message has been delivered to the recipient's phone ++#: ../data/phonemgr.ui.h:33 + msgid "_Notify when message is delivered" + msgstr "Saņemt Ä«sziņas piegÄdes paziņojumu" + +-#: ../data/phonemgr.glade.h:32 ++#: ../data/phonemgr.ui.h:34 + msgid "_Pop-up window for new messages" + msgstr "JaunÄs Ä«sziņas _parÄdÄ«t uznirstoÅ¡Ä logÄ" + +-#: ../data/phonemgr.glade.h:33 ++#: ../data/phonemgr.ui.h:35 + msgid "_Recipient:" + msgstr "_SaņēmÄ“js:" + +-#: ../data/phonemgr.glade.h:34 ++#: ../data/phonemgr.ui.h:36 + msgid "_Reply" + msgstr "_AtbildÄ“t" + +-#: ../data/phonemgr.glade.h:35 ++#: ../data/phonemgr.ui.h:37 + msgid "_Send" + msgstr "_SÅ«tÄ«t" + +@@ -265,24 +387,36 @@ msgid "Bluetooth address of the device to connect to" + msgstr "IekÄrtas ar kuru savienoties, Bluetooth adrese" + + #: ../data/gnome-phone-manager.schemas.in.h:2 +-msgid "Bluetooth address of the device to connect to. Requires connection_type to be 1 to be used." +-msgstr "Bluetooth adrese iekÄrtai, kurai pieslÄ“gties. Pieprasa izmantot savienojuma veidu 1." ++msgid "" ++"Bluetooth address of the device to connect to. Requires connection_type to " ++"be 1 to be used." ++msgstr "" ++"Bluetooth adrese iekÄrtai, kurai pieslÄ“gties. Pieprasa izmantot savienojuma " ++"veidu 1." + + #: ../data/gnome-phone-manager.schemas.in.h:3 + msgid "The connection type used by gnome-phone-manager" + msgstr "Savienojuma veids, kuru izmanto Gnome tÄlruņa pÄrvaldnieks" + + #: ../data/gnome-phone-manager.schemas.in.h:4 +-msgid "The connection type used by gnome-phone-manager: Bluetooth is 0 Serial 1 is 1 Serial 2 is 2 IrDa is 3 Other connection types are 4" +-msgstr "Gnome tÄlruņa pÄrvaldnieka savienojuma veidi: Bluetooth - 0, seriÄlais ports 1 ir 1, seriÄlais ports2 ir 2, IrDA (infrasarkanais) - 3, citi savienojumi - 4" ++msgid "" ++"The connection type used by gnome-phone-manager: Bluetooth is 0 Serial 1 is " ++"1 Serial 2 is 2 IrDa is 3 Other connection types are 4" ++msgstr "" ++"Gnome tÄlruņa pÄrvaldnieka savienojuma veidi: Bluetooth - 0, seriÄlais ports " ++"1 ir 1, seriÄlais ports2 ir 2, IrDA (infrasarkanais) - 3, citi savienojumi - " ++"4" + + #: ../data/gnome-phone-manager.schemas.in.h:5 + msgid "The device node for the serial device to connect to" + msgstr "SeriÄlÄs iekÄrtas fails pieslÄ“gumam" + + #: ../data/gnome-phone-manager.schemas.in.h:6 +-msgid "The device node for the serial device to connect to. Requires connection_type to be 4 to be used." +-msgstr "SeriÄlÄs iekÄrtas fails pieslÄ“gumam. Pieprasa izmantot savienojuma tipu 4." ++msgid "" ++"The device node for the serial device to connect to. Requires " ++"connection_type to be 4 to be used." ++msgstr "" ++"SeriÄlÄs iekÄrtas fails pieslÄ“gumam. Pieprasa izmantot savienojuma tipu 4." + + #: ../data/gnome-phone-manager.schemas.in.h:7 + msgid "Whether to play a sound alert when a new message comes in" +@@ -297,109 +431,36 @@ msgid "Whether to popup new messages on the desktop" + msgstr "Jaunas Ä«sziņas izmanto uznirstoÅ¡u logu darbvirsmÄ" + + #: ../data/gnome-phone-manager.schemas.in.h:10 +-msgid "Whether to popup new messages on the desktop as soon as they're received, as opposed to showing them when clicking on the tray icon." +-msgstr "Vai jaunas Ä«sziņas, tikko saņemtas, izmanto uznirstoÅ¡u logu darbvirsmÄ, pretÄ“jÄ gadÄ«jumÄ parÄdot tÄs nokliÅ¡Ä·inot uz paneļa ikonas." ++msgid "" ++"Whether to popup new messages on the desktop as soon as they're received, as " ++"opposed to showing them when clicking on the tray icon." ++msgstr "" ++"Vai jaunas Ä«sziņas, tikko saņemtas, izmanto uznirstoÅ¡u logu darbvirsmÄ, " ++"pretÄ“jÄ gadÄ«jumÄ parÄdot tÄs nokliÅ¡Ä·inot uz paneļa ikonas." + + #: ../data/gnome-phone-manager.schemas.in.h:11 + msgid "Whether to retry connecting to the mobile phone" + msgstr "Vai mÄ“Ä£inÄt atkÄrtoti savienoties ar tÄlruni" + + #: ../data/gnome-phone-manager.schemas.in.h:12 +-msgid "Whether to retry connecting to the mobile phone if the connection fails at some point." ++msgid "" ++"Whether to retry connecting to the mobile phone if the connection fails at " ++"some point." + msgstr "Vai mÄ“Ä£inÄt atkÄrtoti atjaunot pÄrtrauktu savienojumu." + +-#: ../src/e-contact-entry.c:158 +-#, c-format +-msgid "Cannot get contact: %s" +-msgstr "Nevaru dabÅ«t kontaktinformÄciju: %s" +- +-#: ../src/e-contact-entry.c:191 +-#, c-format +-msgid "Could not find contact: %s" +-msgstr "Nevaru atrast kontaktinformÄciju: %s" +- +-#: ../src/e-contact-entry.c:417 +-msgid "Cannot create searchable view." +-msgstr "Nevaru izveidot meklÄ“jamu skatu." +- +-#: ../src/e-contact-entry.c:890 +-msgid "Success" +-msgstr "VeiksmÄ«gi" +- +-#: ../src/e-contact-entry.c:892 +-msgid "An argument was invalid." +-msgstr "Nepareiza argumenta vÄ“rtÄ«ba." +- +-#: ../src/e-contact-entry.c:894 +-msgid "The address book is busy." +-msgstr "PieslÄ“gums adreÅ¡u grÄmatai ir aizņemts." +- +-#: ../src/e-contact-entry.c:896 +-msgid "The address book is offline." +-msgstr "AdreÅ¡u grÄmata ir atsaistÄ“." +- +-#: ../src/e-contact-entry.c:898 +-msgid "The address book does not exist." +-msgstr "AdreÅ¡u grÄmata neeksistÄ“." +- +-#: ../src/e-contact-entry.c:900 +-msgid "The \"Me\" contact does not exist." +-msgstr "\"Mana\" kontaktinformÄcija nav atrodama." +- +-#: ../src/e-contact-entry.c:902 +-msgid "The address book is not loaded." +-msgstr "AdreÅ¡u grÄmata nav ielÄdÄ“ta." +- +-#: ../src/e-contact-entry.c:904 +-msgid "The address book is already loaded." +-msgstr "AdreÅ¡u grÄmata jau ir ielÄdÄ“ta." +- +-#: ../src/e-contact-entry.c:906 +-msgid "Permission was denied when accessing the address book." +-msgstr "Pieeja adreÅ¡u grÄmatai liegta." +- +-#: ../src/e-contact-entry.c:908 +-msgid "The contact was not found." +-msgstr "KontaktinformÄcija nav atrasta." +- +-#: ../src/e-contact-entry.c:910 +-msgid "This contact ID already exists." +-msgstr "KontaktinformÄcijas ID jau eksistÄ“." +- +-#: ../src/e-contact-entry.c:912 +-msgid "The protocol is not supported." +-msgstr "Protokols netiek atbalstÄ«ts." +- +-#: ../src/e-contact-entry.c:914 +-msgid "The operation was cancelled." +-msgstr "DarbÄ«ba tika atcelta." +- +-#: ../src/e-contact-entry.c:916 +-msgid "The operation could not be cancelled." +-msgstr "PieprasÄ«to operÄciju nevar atcelt." +- +-#: ../src/e-contact-entry.c:918 +-msgid "The address book authentication failed." +-msgstr "AdreÅ¡u grÄmatas autentifikÄcija neizdevÄs." +- +-#: ../src/e-contact-entry.c:920 +-msgid "Authentication is required to access the address book and was not given." +-msgstr "Lai lasÄ«tu adreÅ¡u grÄmatu, bija nepiecieÅ¡ama autentificÄ“Å¡anÄs, kura netika nodroÅ¡inÄta." ++#: ../data/gnome-phone-manager.schemas.in.h:13 ++msgid "Whether to synchronise the phone clock with the computer's" ++msgstr "Vai sinhronizÄ“t tÄlruņa pulksteni ar datora" + +-#: ../src/e-contact-entry.c:922 +-msgid "A secure connection is not available." +-msgstr "DroÅ¡s savienojums nav pieejams." ++#: ../data/gnome-phone-manager.schemas.in.h:14 ++msgid "Whether to synchronise the phone clock with the computer's." ++msgstr "Vai sinhronizÄ“t tÄlruņa pulksteni ar datora." + +-#: ../src/e-contact-entry.c:924 +-msgid "A CORBA error occurred whilst accessing the address book." +-msgstr "Lasot adreÅ¡u grÄmatu, notikusi CORBA kļūda." ++#~ msgid "Click to select device..." ++#~ msgstr "KlikÅ¡Ä·iniet, lai izvÄ“lÄ“tos iekÄrtu..." + +-#: ../src/e-contact-entry.c:926 +-msgid "The address book source does not exist." +-msgstr "AdreÅ¡u grÄmatas primÄrais dokuments neeksistÄ“." +- +-#: ../src/e-contact-entry.c:928 +-#: ../src/e-contact-entry.c:931 +-msgid "An unknown error occurred." +-msgstr "AtgadÄ«jÄs nezinÄma kļūda." ++#~ msgid "/dev/ttyS2" ++#~ msgstr "/dev/ttyS2" + ++#~ msgid "Error Handling" ++#~ msgstr "Kļūdu apstrÄde" +diff --git a/po/pt_BR.po b/po/pt_BR.po +index a9c19a5..501f8e9 100644 +--- a/po/pt_BR.po ++++ b/po/pt_BR.po +@@ -3,19 +3,21 @@ + # This file is distributed under the same license as the phonemgr package. + # Raphael Higino <In Memorian>, 2004. + # Fábio Nogueira <deb-user-ba@ubuntu.com>, 2008. +-# + msgid "" + msgstr "" + "Project-Id-Version: phonemgr\n" + "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-" + "phone-manager&component=general\n" +-"POT-Creation-Date: 2010-12-26 01:41+0000\n" +-"PO-Revision-Date: 2010-12-29 14:15-0300\n" +-"Last-Translator: Mateus Zenaide <matzenh@gmail.com>\n" +-"Language-Team: Brazilian Portuguese <gnome-l10n-br@listas.cipsga.org.br>\n" ++"POT-Creation-Date: 2011-02-15 20:00+0000\n" ++"PO-Revision-Date: 2011-05-03 10:45-0200\n" ++"Last-Translator: Djavan Fagundes <djavan@comum.org>\n" ++"Language-Team: Brazilian Portuguese <gnome-pt_br-list@gnome.org>\n" ++"Language: pt_BR\n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" ++"Plural-Forms: nplurals=2; plural=(n > 1);\n" ++"X-Generator: Virtaal 0.6.1\n" + + #: ../cut-n-paste/e-contact-entry/e-contact-entry.c:153 + #, c-format +@@ -124,6 +126,11 @@ msgstr "Erro do gconf: %s" + msgid "All further errors shown only on terminal." + msgstr "Os próximos erros serão exibidos apenas no terminal." + ++#. Translators: "device" is a phone or a modem ++#: ../gnome-bluetooth/phonemgr.c:133 ++msgid "Use this device with Phone Manager" ++msgstr "Use este dispositivo com o gerenciador de telefones" ++ + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar + #: ../src/connection.c:124 +@@ -168,14 +175,14 @@ msgstr "Desconectado" + msgid "Show model name of a specific device" + msgstr "Mostra o nome do modelo de um dispositivo especÃfico" + ++#: ../src/main.c:38 ../src/main.c:39 ++msgid "PORT" ++msgstr "PORTA" ++ + #: ../src/main.c:39 + msgid "Write the configuration file for gnokii debugging" + msgstr "Escreve o arquivo de configuração para depuração gnokii" + +-#: ../src/main.c:39 +-msgid "PORT" +-msgstr "PORTA" +- + #: ../src/main.c:40 + msgid "Enable debug" + msgstr "Habilita depuração" +@@ -211,23 +218,23 @@ msgstr "Site do gerenciador de telefones" + msgid "_Send Message" + msgstr "_Enviar mensagem" + +-#: ../src/ui.c:166 ++#: ../src/ui.c:111 + msgid "New text message received" + msgstr "Nova mensagem recebida" + +-#: ../src/ui.c:331 ++#: ../src/ui.c:277 + msgid "Message too long!" + msgstr "Mensagem longa demais!" + +-#: ../data/phonemgr.glade.h:1 ++#: ../data/phonemgr.ui.h:1 + msgid "Alerting" + msgstr "Alertas" + +-#: ../data/phonemgr.glade.h:2 ++#: ../data/phonemgr.ui.h:2 + msgid "Alternative device filename, e.g. /dev/ttyS3" + msgstr "Nome do arquivo de dispositivo alternativo, p. ex. /dev/ttyS3" + +-#: ../data/phonemgr.glade.h:3 ++#: ../data/phonemgr.ui.h:3 + msgid "" + "Always try and reconnect whenever a connection is not immediately available. " + "Use this with Bluetooth to ensure your phone connects whenever it comes in " +@@ -237,138 +244,138 @@ msgstr "" + "imediatamente. Use isso com Bluetooth para garantir que o seu telefone se " + "conecte sempre que ele estiver na área do sinal." + +-#: ../data/phonemgr.glade.h:4 ++#: ../data/phonemgr.ui.h:4 + msgid "Automated Tasks" + msgstr "Tarefas automatizadas" + +-#: ../data/phonemgr.glade.h:5 ++#: ../data/phonemgr.ui.h:5 + msgid "Automatically _retry connections" + msgstr "_Re-tentar conexões automaticamente" + +-#: ../data/phonemgr.glade.h:6 ++#: ../data/phonemgr.ui.h:6 + msgid "Characters left:" + msgstr "Caracteres restantes:" + +-#: ../data/phonemgr.glade.h:7 ++#: ../data/phonemgr.ui.h:7 + msgid "Connect using an alternative serial device" + msgstr "Conectar usando um dispositivo serial alternativo" + +-#: ../data/phonemgr.glade.h:8 ++#: ../data/phonemgr.ui.h:8 + msgid "Connect using infrared communication" + msgstr "Conectar usando comunicação infra vermelho" + +-#: ../data/phonemgr.glade.h:9 ++#: ../data/phonemgr.ui.h:9 + msgid "Connect using serial port 1, also known as COM1 or /dev/ttyS0" + msgstr "" + "Conectar usando a porta serial 1, também conhecida como COM1 ou /dev/ttyS0" + +-#: ../data/phonemgr.glade.h:10 ++#: ../data/phonemgr.ui.h:10 + msgid "Connect using serial port 2, also known as COM2 or /dev/ttyS1" + msgstr "" + "Conectar usando a porta serial 2, também conhecida como COM2 ou /dev/ttyS1" + +-#: ../data/phonemgr.glade.h:11 ++#: ../data/phonemgr.ui.h:11 + msgid "Connection" + msgstr "Conexão" + +-#: ../data/phonemgr.glade.h:12 ++#: ../data/phonemgr.ui.h:12 + msgid "Date:" + msgstr "Data:" + +-#: ../data/phonemgr.glade.h:13 ++#: ../data/phonemgr.ui.h:13 + msgid "Enter the text message you want to send." + msgstr "Digite a mensagem de texto que quer enviar." + +-#: ../data/phonemgr.glade.h:14 ++#: ../data/phonemgr.ui.h:14 + msgid "Enter your text message" + msgstr "Digite a mensagem de texto" + +-#: ../data/phonemgr.glade.h:15 ++#: ../data/phonemgr.ui.h:15 + msgid "I_nfra red (/dev/ircomm0)" + msgstr "I_nfra vermelho (/dev/ircomm0)" + +-#: ../data/phonemgr.glade.h:16 ++#: ../data/phonemgr.ui.h:16 + msgid "Interface" + msgstr "Interface" + +-#: ../data/phonemgr.glade.h:17 ++#: ../data/phonemgr.ui.h:17 + msgid "Message Received" + msgstr "Mensagem recebida" + +-#: ../data/phonemgr.glade.h:18 ++#: ../data/phonemgr.ui.h:18 + msgid "Other _port" + msgstr "Outra _porta" + +-#: ../data/phonemgr.glade.h:19 ++#: ../data/phonemgr.ui.h:19 + msgid "Phone Connection" + msgstr "Conexão com o telefone" + +-#: ../data/phonemgr.glade.h:20 ++#: ../data/phonemgr.ui.h:20 + msgid "Phone Manager Preferences" + msgstr "Preferências do gerenciador de telefones" + +-#: ../data/phonemgr.glade.h:21 ++#: ../data/phonemgr.ui.h:21 + msgid "Play _sound when messages arrive" + msgstr "Reproduzir um _som quando chegar uma mensagem" + +-#: ../data/phonemgr.glade.h:22 ++#: ../data/phonemgr.ui.h:22 + msgid "Send Message" + msgstr "Enviar Mensagem" + +-#: ../data/phonemgr.glade.h:23 ++#: ../data/phonemgr.ui.h:23 + msgid "Sender:" + msgstr "Remetente:" + +-#: ../data/phonemgr.glade.h:24 ++#: ../data/phonemgr.ui.h:24 + msgid "Serial port _1 (/dev/ttyS0)" + msgstr "Porta serial _1 (/dev/ttyS0)" + +-#: ../data/phonemgr.glade.h:25 ++#: ../data/phonemgr.ui.h:25 + msgid "Serial port _2 (/dev/ttyS1)" + msgstr "Porta serial _2 (/dev/ttyS1)" + +-#: ../data/phonemgr.glade.h:26 ++#: ../data/phonemgr.ui.h:26 + msgid "Synchronise phone's _time and date" + msgstr "Sincronizar a _hora e data do telefone" + +-#: ../data/phonemgr.glade.h:27 ++#: ../data/phonemgr.ui.h:27 + msgid "Synchronise phone's time and date with the computer's clock" + msgstr "Sincronizar a hora e data do telefone com o relógio do computador" + +-#: ../data/phonemgr.glade.h:28 ++#: ../data/phonemgr.ui.h:28 + msgid "Use Bluetooth wireless networking to connect to your phone" + msgstr "Use rede sem fio Bluetooth para conectar no seu telefone" + +-#: ../data/phonemgr.glade.h:29 ++#: ../data/phonemgr.ui.h:29 + msgid "You have received a message" + msgstr "Você recebeu uma mensagem" + +-#: ../data/phonemgr.glade.h:30 ++#: ../data/phonemgr.ui.h:30 + msgid "_Bluetooth" + msgstr "_Bluetooth" + +-#: ../data/phonemgr.glade.h:31 ++#: ../data/phonemgr.ui.h:31 + msgid "_Message:" + msgstr "_Mensagem:" + + #. This is a receipt from the SMS server saying the message has been delivered to the recipient's phone +-#: ../data/phonemgr.glade.h:33 ++#: ../data/phonemgr.ui.h:33 + msgid "_Notify when message is delivered" + msgstr "_Informar quando a mensagem for entregue " + +-#: ../data/phonemgr.glade.h:34 ++#: ../data/phonemgr.ui.h:34 + msgid "_Pop-up window for new messages" + msgstr "Janela _instantânea para novas mensagens" + +-#: ../data/phonemgr.glade.h:35 ++#: ../data/phonemgr.ui.h:35 + msgid "_Recipient:" + msgstr "_Destinatário:" + +-#: ../data/phonemgr.glade.h:36 ++#: ../data/phonemgr.ui.h:36 + msgid "_Reply" + msgstr "_Responder" + +-#: ../data/phonemgr.glade.h:37 ++#: ../data/phonemgr.ui.h:37 + msgid "_Send" + msgstr "_Enviar" + +diff --git a/po/sv.po b/po/sv.po +index 7cc9ea0..77711d7 100644 +--- a/po/sv.po ++++ b/po/sv.po +@@ -1,7 +1,7 @@ + # Swedish messages for phonemgr. +-# Copyright (C) 2004-2010 Free Software Foundation, Inc. ++# Copyright (C) 2004-2011 Free Software Foundation, Inc. + # Christian Rose <menthos@menthos.com>, 2004. +-# Daniel Nylander <po@danielnylander.se>, 2006, 2007, 2008, 2009, 2010. ++# Daniel Nylander <po@danielnylander.se>, 2006, 2007, 2008, 2009, 2010, 2011. + # + # $Id: sv.po,v 1.2 2006/04/12 18:56:30 dnylande Exp $ + # +@@ -9,8 +9,8 @@ msgid "" + msgstr "" + "Project-Id-Version: phonemgr\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2010-12-29 15:05+0100\n" +-"PO-Revision-Date: 2010-12-29 18:35+0100\n" ++"POT-Creation-Date: 2011-03-01 01:09+0100\n" ++"PO-Revision-Date: 2011-03-01 08:54+0100\n" + "Last-Translator: Daniel Nylander <po@danielnylander.se>\n" + "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" + "Language: sv\n" +@@ -122,6 +122,11 @@ msgstr "GConf-fel: %s" + msgid "All further errors shown only on terminal." + msgstr "Alla ytterligare fel visas endast pÃ¥ terminalen." + ++#. Translators: "device" is a phone or a modem ++#: ../gnome-bluetooth/phonemgr.c:133 ++msgid "Use this device with Phone Manager" ++msgstr "Använd denna enhet med Telefonhanterare" ++ + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar + #: ../src/connection.c:124 +@@ -139,8 +144,8 @@ msgid "Failed connection to device on %s" + msgstr "Anslutning till enhet pÃ¥ %s misslyckades" + + #: ../src/gnome-phone-manager.desktop.in.h:1 +-#: ../src/menu.c:49 + #: ../src/menu.c:51 ++#: ../src/menu.c:53 + msgid "Phone Manager" + msgstr "Telefonhanterare" + +@@ -168,14 +173,15 @@ msgstr "Inte ansluten" + msgid "Show model name of a specific device" + msgstr "Visa modellnamn för en specifik enhet" + +-#: ../src/main.c:39 +-msgid "Write the configuration file for gnokii debugging" +-msgstr "Skriv konfigurationsfilen för gnokii-felsökning" +- ++#: ../src/main.c:38 + #: ../src/main.c:39 + msgid "PORT" + msgstr "PORT" + ++#: ../src/main.c:39 ++msgid "Write the configuration file for gnokii debugging" ++msgstr "Skriv konfigurationsfilen för gnokii-felsökning" ++ + #: ../src/main.c:40 + msgid "Enable debug" + msgstr "Aktivera felsökning" +@@ -196,174 +202,174 @@ msgstr "gnome-phone-manager version %s\n" + #: ../src/menu.c:40 + msgid "translator_credits" + msgstr "" +-"Daniel Nylander\n" ++"Daniel Nylander <po@danielnylander.se>\n" + "Christian Rose\n" + "\n" + "Skicka synpunkter pÃ¥ översättningen till\n" +-"tp-sv@listor.tp-sv.se" ++"<tp-sv@listor.tp-sv.se>." + + #: ../src/menu.c:44 + msgid "Send and receive messages from your mobile phone." + msgstr "Skicka och mottag meddelanden frÃ¥n din mobiltelefon." + +-#: ../src/menu.c:56 ++#: ../src/menu.c:58 + msgid "Phone Manager website" + msgstr "Webbplatsen för Telefonhanterare" + +-#: ../src/menu.c:87 ++#: ../src/menu.c:89 + msgid "_Send Message" + msgstr "_Skicka meddelande" + +-#: ../src/ui.c:166 ++#: ../src/ui.c:111 + msgid "New text message received" + msgstr "Nytt textmeddelande har mottagits" + +-#: ../src/ui.c:331 ++#: ../src/ui.c:277 + msgid "Message too long!" + msgstr "Meddelandet är för lÃ¥ngt!" + +-#: ../data/phonemgr.glade.h:1 ++#: ../data/phonemgr.ui.h:1 + msgid "Alerting" + msgstr "Varnar" + +-#: ../data/phonemgr.glade.h:2 ++#: ../data/phonemgr.ui.h:2 + msgid "Alternative device filename, e.g. /dev/ttyS3" + msgstr "Alternativt enhetsfilnamn, t.ex. /dev/ttyS3" + +-#: ../data/phonemgr.glade.h:3 ++#: ../data/phonemgr.ui.h:3 + msgid "Always try and reconnect whenever a connection is not immediately available. Use this with Bluetooth to ensure your phone connects whenever it comes in range." + msgstr "Försök alltid att ansluta igen när en anslutning inte är omedelbart tillgänglig. Använd detta tillsammans med Bluetooth för att försäkra dig om att din telefon ansluter när den är inom räckhÃ¥ll." + +-#: ../data/phonemgr.glade.h:4 ++#: ../data/phonemgr.ui.h:4 + msgid "Automated Tasks" + msgstr "Automatiserade funktioner" + +-#: ../data/phonemgr.glade.h:5 ++#: ../data/phonemgr.ui.h:5 + msgid "Automatically _retry connections" + msgstr "_Försök ansluta igen automatiskt" + +-#: ../data/phonemgr.glade.h:6 ++#: ../data/phonemgr.ui.h:6 + msgid "Characters left:" + msgstr "Tecken kvar:" + +-#: ../data/phonemgr.glade.h:7 ++#: ../data/phonemgr.ui.h:7 + msgid "Connect using an alternative serial device" + msgstr "Anslut genom att använda en alternativ seriell enhet" + +-#: ../data/phonemgr.glade.h:8 ++#: ../data/phonemgr.ui.h:8 + msgid "Connect using infrared communication" + msgstr "Anslut genom att använda infraröd kommunikation" + +-#: ../data/phonemgr.glade.h:9 ++#: ../data/phonemgr.ui.h:9 + msgid "Connect using serial port 1, also known as COM1 or /dev/ttyS0" + msgstr "Anslut genom att använda serieport 1, även känd som COM1 eller /dev/ttyS0" + +-#: ../data/phonemgr.glade.h:10 ++#: ../data/phonemgr.ui.h:10 + msgid "Connect using serial port 2, also known as COM2 or /dev/ttyS1" + msgstr "Anslut genom att använda serieport 2, även känd som COM2 eller /dev/ttyS1" + +-#: ../data/phonemgr.glade.h:11 ++#: ../data/phonemgr.ui.h:11 + msgid "Connection" + msgstr "Anslutning" + +-#: ../data/phonemgr.glade.h:12 ++#: ../data/phonemgr.ui.h:12 + msgid "Date:" + msgstr "Datum:" + +-#: ../data/phonemgr.glade.h:13 ++#: ../data/phonemgr.ui.h:13 + msgid "Enter the text message you want to send." + msgstr "Ange det textmeddelande som du vill skicka." + +-#: ../data/phonemgr.glade.h:14 ++#: ../data/phonemgr.ui.h:14 + msgid "Enter your text message" + msgstr "Ange ditt textmeddelande" + +-#: ../data/phonemgr.glade.h:15 ++#: ../data/phonemgr.ui.h:15 + msgid "I_nfra red (/dev/ircomm0)" + msgstr "I_nfrarött (/dev/ircomm0)" + +-#: ../data/phonemgr.glade.h:16 ++#: ../data/phonemgr.ui.h:16 + msgid "Interface" + msgstr "Gränssnitt" + +-#: ../data/phonemgr.glade.h:17 ++#: ../data/phonemgr.ui.h:17 + msgid "Message Received" + msgstr "Meddelande har mottagits" + +-#: ../data/phonemgr.glade.h:18 ++#: ../data/phonemgr.ui.h:18 + msgid "Other _port" + msgstr "Annan _port" + +-#: ../data/phonemgr.glade.h:19 ++#: ../data/phonemgr.ui.h:19 + msgid "Phone Connection" + msgstr "Telefonanslutning" + +-#: ../data/phonemgr.glade.h:20 ++#: ../data/phonemgr.ui.h:20 + msgid "Phone Manager Preferences" + msgstr "Inställningar för telefonhanteraren" + +-#: ../data/phonemgr.glade.h:21 ++#: ../data/phonemgr.ui.h:21 + msgid "Play _sound when messages arrive" + msgstr "Spela _ljudfil när meddelanden ankommer" + +-#: ../data/phonemgr.glade.h:22 ++#: ../data/phonemgr.ui.h:22 + msgid "Send Message" + msgstr "Skicka meddelande" + +-#: ../data/phonemgr.glade.h:23 ++#: ../data/phonemgr.ui.h:23 + msgid "Sender:" + msgstr "Avsändare:" + +-#: ../data/phonemgr.glade.h:24 ++#: ../data/phonemgr.ui.h:24 + msgid "Serial port _1 (/dev/ttyS0)" + msgstr "Serieport _1 (/dev/ttyS0)" + +-#: ../data/phonemgr.glade.h:25 ++#: ../data/phonemgr.ui.h:25 + msgid "Serial port _2 (/dev/ttyS1)" + msgstr "Serieport _2 (/dev/ttyS1)" + +-#: ../data/phonemgr.glade.h:26 ++#: ../data/phonemgr.ui.h:26 + msgid "Synchronise phone's _time and date" + msgstr "Synkronisera telefonens _tid och datum" + +-#: ../data/phonemgr.glade.h:27 ++#: ../data/phonemgr.ui.h:27 + msgid "Synchronise phone's time and date with the computer's clock" + msgstr "Synkronisera telefonens tid och datum med datorns klocka" + +-#: ../data/phonemgr.glade.h:28 ++#: ../data/phonemgr.ui.h:28 + msgid "Use Bluetooth wireless networking to connect to your phone" + msgstr "Använd trÃ¥dlöst blÃ¥tandsnätverk för att ansluta till din telefon" + +-#: ../data/phonemgr.glade.h:29 ++#: ../data/phonemgr.ui.h:29 + msgid "You have received a message" + msgstr "Du har fÃ¥tt ett meddelande" + +-#: ../data/phonemgr.glade.h:30 ++#: ../data/phonemgr.ui.h:30 + msgid "_Bluetooth" + msgstr "_Bluetooth" + +-#: ../data/phonemgr.glade.h:31 ++#: ../data/phonemgr.ui.h:31 + msgid "_Message:" + msgstr "_Meddelande:" + + #. This is a receipt from the SMS server saying the message has been delivered to the recipient's phone +-#: ../data/phonemgr.glade.h:33 ++#: ../data/phonemgr.ui.h:33 + msgid "_Notify when message is delivered" + msgstr "_Notifiera när meddelanden ankommer" + +-#: ../data/phonemgr.glade.h:34 ++#: ../data/phonemgr.ui.h:34 + msgid "_Pop-up window for new messages" + msgstr "_Popupfönster för nya meddelanden" + +-#: ../data/phonemgr.glade.h:35 ++#: ../data/phonemgr.ui.h:35 + msgid "_Recipient:" + msgstr "_Mottagare:" + +-#: ../data/phonemgr.glade.h:36 ++#: ../data/phonemgr.ui.h:36 + msgid "_Reply" + msgstr "_Svara" + +-#: ../data/phonemgr.glade.h:37 ++#: ../data/phonemgr.ui.h:37 + msgid "_Send" + msgstr "_Skicka" + +diff --git a/po/zh_CN.po b/po/zh_CN.po +index 40a4ede..1f7dce7 100644 +--- a/po/zh_CN.po ++++ b/po/zh_CN.po +@@ -9,7 +9,7 @@ msgstr "" + "Project-Id-Version: phonemgr master\n" + "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-" + "phone-manager&component=general\n" +-"POT-Creation-Date: 2010-02-05 17:50+0000\n" ++"POT-Creation-Date: 2011-02-15 20:00+0000\n" + "PO-Revision-Date: 2010-02-24 16:31+0800\n" + "Last-Translator: YunQiang Su <wzssyqa@gmail.com>\n" + "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n" +@@ -17,111 +17,116 @@ msgstr "" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:152 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:153 + #, c-format + msgid "Cannot get contact: %s" + msgstr "æ— æ³•èŽ·å–è”系人:%s" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:185 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:186 + #, c-format + msgid "Could not find contact: %s" + msgstr "æ— æ³•æ‰¾åˆ°è”系人:%s" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:411 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:414 + msgid "Cannot create searchable view." + msgstr "æ— æ³•åˆ›å»ºå¯æœç´¢è§†å›¾ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:883 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:886 + msgid "Success" + msgstr "æˆåŠŸ" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:885 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:888 + msgid "An argument was invalid." + msgstr "一个å‚æ•°æ— æ•ˆã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:887 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:890 + msgid "The address book is busy." + msgstr "地å€ç°¿å¿™ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:889 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:892 + msgid "The address book is offline." + msgstr "地å€ç°¿ç¦»çº¿" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:891 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:894 + msgid "The address book does not exist." + msgstr "地å€ç°¿ä¸å˜åœ¨ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:893 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:896 + msgid "The \"Me\" contact does not exist." + msgstr "“Meâ€è”系人ä¸å˜åœ¨ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:895 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:898 + msgid "The address book is not loaded." + msgstr "地å€ç°¿æœªåŠ 载。" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:897 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:900 + msgid "The address book is already loaded." + msgstr "地å€ç°¿å·²ç»åŠ 载。" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:899 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:902 + msgid "Permission was denied when accessing the address book." + msgstr "访问地å€ç°¿æ—¶è®¸å¯è¢«æ‹’ç»ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:901 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:904 + msgid "The contact was not found." + msgstr "è”系人未找到。" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:903 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:906 + msgid "This contact ID already exists." + msgstr "è”系人 ID å·²ç»å˜åœ¨ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:905 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:908 + msgid "The protocol is not supported." + msgstr "åè®®ä¸å—支æŒã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:907 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:910 + msgid "The operation was cancelled." + msgstr "æ“作被å–消。" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:909 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:912 + msgid "The operation could not be cancelled." + msgstr "æ“ä½œæ— æ³•å–消。" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:911 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:914 + msgid "The address book authentication failed." + msgstr "地å€ç°¿è®¤è¯å¤±è´¥ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:913 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:916 + msgid "" + "Authentication is required to access the address book and was not given." + msgstr "访问地å€ç°¿éœ€è¦è®¤è¯ä½†æ˜¯æ²¡æœ‰ç»™å‡ºã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:915 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:918 + msgid "A secure connection is not available." + msgstr "安全连接ä¸å¯ç”¨ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:917 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:920 + msgid "A CORBA error occurred whilst accessing the address book." + msgstr "访问地å€ç°¿æ—¶å‘生 CORBA 错误。" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:919 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:922 + msgid "The address book source does not exist." + msgstr "地å€ç°¿æºä¸å˜åœ¨ã€‚" + +-#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:921 + #: ../cut-n-paste/e-contact-entry/e-contact-entry.c:924 ++#: ../cut-n-paste/e-contact-entry/e-contact-entry.c:927 + msgid "An unknown error occurred." + msgstr "å‘生了一个未知错误。" + +-#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1221 ++#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1233 + #, c-format + msgid "GConf error: %s" + msgstr "GConf 错误:%s" + +-#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1231 ++#: ../cut-n-paste/gconf-bridge/gconf-bridge.c:1238 + msgid "All further errors shown only on terminal." + msgstr "进一æ¥çš„错误åªåœ¨ç»ˆç«¯ä¸æ˜¾ç¤ºã€‚" + ++#. Translators: "device" is a phone or a modem ++#: ../gnome-bluetooth/phonemgr.c:133 ++msgid "Use this device with Phone Manager" ++msgstr "" ++ + #. translators: the '%s' will be substituted with '/dev/ttyS0' + #. or similar + #: ../src/connection.c:124 +@@ -166,6 +171,10 @@ msgstr "未连接" + msgid "Show model name of a specific device" + msgstr "显示指定设备的型å·å" + ++#: ../src/main.c:38 ../src/main.c:39 ++msgid "PORT" ++msgstr "" ++ + #: ../src/main.c:39 + msgid "Write the configuration file for gnokii debugging" + msgstr "为 gnokii 调试写é…置文件" +@@ -182,7 +191,7 @@ msgstr "显示版本信æ¯ç„¶åŽé€€å‡º" + msgid "- Manage your mobile phone" + msgstr " - 管ç†æ‚¨çš„移动电è¯" + +-#: ../src/main.c:72 ++#: ../src/main.c:74 + #, c-format + msgid "gnome-phone-manager version %s\n" + msgstr "gnome-phone-manager 版本 %s\n" +@@ -203,23 +212,23 @@ msgstr "电è¯ç®¡ç†å™¨ç½‘ç«™" + msgid "_Send Message" + msgstr "å‘é€æ¶ˆæ¯(_S)" + +-#: ../src/ui.c:166 ++#: ../src/ui.c:111 + msgid "New text message received" + msgstr "收到了新文本消æ¯" + +-#: ../src/ui.c:331 ++#: ../src/ui.c:277 + msgid "Message too long!" + msgstr "消æ¯å¤ªé•¿ï¼" + +-#: ../data/phonemgr.glade.h:1 ++#: ../data/phonemgr.ui.h:1 + msgid "Alerting" + msgstr "æ醒" + +-#: ../data/phonemgr.glade.h:2 ++#: ../data/phonemgr.ui.h:2 + msgid "Alternative device filename, e.g. /dev/ttyS3" + msgstr "其它设备文件å,例如 /dev/ttyS3" + +-#: ../data/phonemgr.glade.h:3 ++#: ../data/phonemgr.ui.h:3 + msgid "" + "Always try and reconnect whenever a connection is not immediately available. " + "Use this with Bluetooth to ensure your phone connects whenever it comes in " +@@ -228,136 +237,136 @@ msgstr "" + "æ¯å½“连接ä¸ç«‹å³å¯ç”¨æ—¶ï¼Œæ€»ä½¿å°è¯•é‡æ–°è¿žæŽ¥ã€‚对è“牙使用æ¤é€‰é¡¹å¯ä»¥ç¡®ä¿ï¼Œæ¯å½“手机进" + "å…¥å¯ç”¨åŒºåŸŸï¼Œè‡ªåŠ¨è¿žæŽ¥ã€‚" + +-#: ../data/phonemgr.glade.h:4 ++#: ../data/phonemgr.ui.h:4 + msgid "Automated Tasks" + msgstr "自动任务" + +-#: ../data/phonemgr.glade.h:5 ++#: ../data/phonemgr.ui.h:5 + msgid "Automatically _retry connections" + msgstr "自动é‡è¯•è¿žæŽ¥(_R)" + +-#: ../data/phonemgr.glade.h:6 ++#: ../data/phonemgr.ui.h:6 + msgid "Characters left:" + msgstr "所剩å—符数:" + +-#: ../data/phonemgr.glade.h:7 ++#: ../data/phonemgr.ui.h:7 + msgid "Connect using an alternative serial device" + msgstr "使用å¦å¤–的串行设备连接" + +-#: ../data/phonemgr.glade.h:8 ++#: ../data/phonemgr.ui.h:8 + msgid "Connect using infrared communication" + msgstr "使用红外连接" + +-#: ../data/phonemgr.glade.h:9 ++#: ../data/phonemgr.ui.h:9 + msgid "Connect using serial port 1, also known as COM1 or /dev/ttyS0" + msgstr "ä½¿ç”¨ä¸²å£ 1 连接,也就是 COM1 或 /dev/ttyS0" + +-#: ../data/phonemgr.glade.h:10 ++#: ../data/phonemgr.ui.h:10 + msgid "Connect using serial port 2, also known as COM2 or /dev/ttyS1" + msgstr "ä½¿ç”¨ä¸²å£ 2 连接,也就是 COM2 或 /dev/ttyS1" + +-#: ../data/phonemgr.glade.h:11 ++#: ../data/phonemgr.ui.h:11 + msgid "Connection" + msgstr "连接" + +-#: ../data/phonemgr.glade.h:12 ++#: ../data/phonemgr.ui.h:12 + msgid "Date:" + msgstr "日期:" + +-#: ../data/phonemgr.glade.h:13 ++#: ../data/phonemgr.ui.h:13 + msgid "Enter the text message you want to send." + msgstr "输入您想è¦å‘é€çš„æ–‡å—消æ¯ã€‚" + +-#: ../data/phonemgr.glade.h:14 ++#: ../data/phonemgr.ui.h:14 + msgid "Enter your text message" + msgstr "输入您的文本消æ¯ã€‚" + +-#: ../data/phonemgr.glade.h:15 ++#: ../data/phonemgr.ui.h:15 + msgid "I_nfra red (/dev/ircomm0)" + msgstr "红外(/dev/ircomm0)(_N)" + +-#: ../data/phonemgr.glade.h:16 ++#: ../data/phonemgr.ui.h:16 + msgid "Interface" + msgstr "ç•Œé¢" + +-#: ../data/phonemgr.glade.h:17 ++#: ../data/phonemgr.ui.h:17 + msgid "Message Received" + msgstr "收到了消æ¯" + +-#: ../data/phonemgr.glade.h:18 ++#: ../data/phonemgr.ui.h:18 + msgid "Other _port" + msgstr "其它端å£(_P)" + +-#: ../data/phonemgr.glade.h:19 ++#: ../data/phonemgr.ui.h:19 + msgid "Phone Connection" + msgstr "电è¯è¿žæŽ¥" + +-#: ../data/phonemgr.glade.h:20 ++#: ../data/phonemgr.ui.h:20 + msgid "Phone Manager Preferences" + msgstr "电è¯ç®¡ç†å™¨é¦–选项" + +-#: ../data/phonemgr.glade.h:21 ++#: ../data/phonemgr.ui.h:21 + msgid "Play _sound when messages arrive" + msgstr "收到消æ¯æ—¶æ’放声音(_S)" + +-#: ../data/phonemgr.glade.h:22 ++#: ../data/phonemgr.ui.h:22 + msgid "Send Message" + msgstr "å‘é€æ¶ˆæ¯" + +-#: ../data/phonemgr.glade.h:23 ++#: ../data/phonemgr.ui.h:23 + msgid "Sender:" + msgstr "å‘é€äººï¼š" + +-#: ../data/phonemgr.glade.h:24 ++#: ../data/phonemgr.ui.h:24 + msgid "Serial port _1 (/dev/ttyS0)" + msgstr "串å£1(/dev/ttyS0)(_1)" + +-#: ../data/phonemgr.glade.h:25 ++#: ../data/phonemgr.ui.h:25 + msgid "Serial port _2 (/dev/ttyS1)" + msgstr "串å£2(/dev/ttyS1)(_2)" + +-#: ../data/phonemgr.glade.h:26 ++#: ../data/phonemgr.ui.h:26 + msgid "Synchronise phone's _time and date" + msgstr "åŒæ¥ç”µè¯çš„时间和日期(_T)" + +-#: ../data/phonemgr.glade.h:27 ++#: ../data/phonemgr.ui.h:27 + msgid "Synchronise phone's time and date with the computer's clock" + msgstr "使用计算机时钟åŒæ¥ç”µè¯æ—¶é—´å’Œæ—¥æœŸ" + +-#: ../data/phonemgr.glade.h:28 ++#: ../data/phonemgr.ui.h:28 + msgid "Use Bluetooth wireless networking to connect to your phone" + msgstr "使用è“ç‰™æ— çº¿ç½‘ç»œè¿žæŽ¥åˆ°æ‚¨çš„ç”µè¯" + +-#: ../data/phonemgr.glade.h:29 ++#: ../data/phonemgr.ui.h:29 + msgid "You have received a message" + msgstr "您收到了一æ¡æ¶ˆæ¯" + +-#: ../data/phonemgr.glade.h:30 ++#: ../data/phonemgr.ui.h:30 + msgid "_Bluetooth" + msgstr "è“牙(_B)" + +-#: ../data/phonemgr.glade.h:31 ++#: ../data/phonemgr.ui.h:31 + msgid "_Message:" + msgstr "消æ¯(_M):" + + #. This is a receipt from the SMS server saying the message has been delivered to the recipient's phone +-#: ../data/phonemgr.glade.h:33 ++#: ../data/phonemgr.ui.h:33 + msgid "_Notify when message is delivered" + msgstr "消æ¯æˆåŠŸä¼ é€æ—¶é€šçŸ¥(_N)" + +-#: ../data/phonemgr.glade.h:34 ++#: ../data/phonemgr.ui.h:34 + msgid "_Pop-up window for new messages" + msgstr "新消æ¯å¼¹å‡ºçª—å£(_P)" + +-#: ../data/phonemgr.glade.h:35 ++#: ../data/phonemgr.ui.h:35 + msgid "_Recipient:" + msgstr "收件人(_R):" + +-#: ../data/phonemgr.glade.h:36 ++#: ../data/phonemgr.ui.h:36 + msgid "_Reply" + msgstr "回å¤(_R)" + +-#: ../data/phonemgr.glade.h:37 ++#: ../data/phonemgr.ui.h:37 + msgid "_Send" + msgstr "å‘é€(_S)" + +diff --git a/src/e-phone-entry.h b/src/e-phone-entry.h +index 2b4eae6..2431836 100644 +--- a/src/e-phone-entry.h ++++ b/src/e-phone-entry.h +@@ -29,10 +29,10 @@ + + G_BEGIN_DECLS + +-#define E_PHONE_ENTRY(obj) (GTK_CHECK_CAST ((obj), e_phone_entry_get_type (), EPhoneEntry)) +-#define E_PHONE_ENTRY_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), e_phone_entry_get_type (), EPhoneEntryClass)) +-#define E_IS_PHONE_ENTRY(obj) (GTK_CHECK_TYPE (obj, e_phone_entry_get_type ())) +-#define E_IS_PHONE_ENTRY_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), e_phone_entry_get_type ())) ++#define E_PHONE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), e_phone_entry_get_type (), EPhoneEntry)) ++#define E_PHONE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), e_phone_entry_get_type (), EPhoneEntryClass)) ++#define E_IS_PHONE_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, e_phone_entry_get_type ())) ++#define E_IS_PHONE_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), e_phone_entry_get_type ())) + #define E_PHONE_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), E_PHONE_ENTRY_TYPE, EPhoneEntryClass)) + + typedef struct EPhoneEntry EPhoneEntry; +diff --git a/src/icon.c b/src/icon.c +index 45d1683..4224ae2 100644 +--- a/src/icon.c ++++ b/src/icon.c +@@ -56,18 +56,18 @@ set_icon_state (MyApp *app) + gtk_widget_set_sensitive (app->send_item, TRUE); + if (app->messages) { + gtk_status_icon_set_from_icon_name (app->tray_icon, "phone-message"); +- gtk_status_icon_set_tooltip (app->tray_icon, _("Message arrived")); ++ gtk_status_icon_set_tooltip_text (app->tray_icon, _("Message arrived")); + } else { + gtk_status_icon_set_from_icon_name (app->tray_icon, "phone"); +- gtk_status_icon_set_tooltip (app->tray_icon, _("Connected")); ++ gtk_status_icon_set_tooltip_text (app->tray_icon, _("Connected")); + } + } else if (app->connecting) { + gtk_status_icon_set_from_icon_name (app->tray_icon, "phone-connecting"); +- gtk_status_icon_set_tooltip (app->tray_icon, _("Connecting to phone")); ++ gtk_status_icon_set_tooltip_text (app->tray_icon, _("Connecting to phone")); + gtk_widget_set_sensitive (app->send_item, FALSE); + } else { + gtk_status_icon_set_from_icon_name (app->tray_icon, "phone-error"); +- gtk_status_icon_set_tooltip (app->tray_icon, _("Not connected")); ++ gtk_status_icon_set_tooltip_text (app->tray_icon, _("Not connected")); + gtk_widget_set_sensitive (app->send_item, FALSE); + } + } +diff --git a/src/menu.c b/src/menu.c +index e8ebeae..98905a0 100644 +--- a/src/menu.c ++++ b/src/menu.c +@@ -37,7 +37,6 @@ about_activated(GtkMenuItem *item, gpointer data) + { + const char *authors[] = { "Bastien Nocera <hadess@hadess.net>", "Edd Dumbill <edd@usefulinc.com>", NULL }; + const char *documenters[] = { NULL }; +- const char *translator_credits = _("translator_credits"); + + gtk_show_about_dialog (NULL, + "authors", authors, +@@ -53,7 +52,7 @@ about_activated(GtkMenuItem *item, gpointer data) + "name", _("Phone Manager"), + #endif /* GTK+ 2.11.0 */ + "version", VERSION, +- "translator-credits", strcmp (translator_credits, "translator_credits") != 0 ? translator_credits : NULL, ++ "translator-credits", _("translator_credits"), + "website", "http://live.gnome.org/PhoneManager", + "website-label", _("Phone Manager website"), + NULL); +diff --git a/src/ui.c b/src/ui.c +index 7daf22d..56a70ad 100644 +--- a/src/ui.c ++++ b/src/ui.c +@@ -451,12 +451,6 @@ ui_init (MyApp *app) + "active"); + + /* And the address chooser */ +- /* XXX Force a value to the device property else if there is no valid value in gconf +- and the Bluetooth chooser button won't show any label +- */ +- g_object_set (G_OBJECT (gtk_builder_get_object (app->ui, "btchooser")), +- "device", NULL, +- NULL); + gconf_bridge_bind_property (bridge, + CONFBASE"/bluetooth_addr", + G_OBJECT (gtk_builder_get_object (app->ui, "btchooser")), diff --git a/extra/gnome-phone-manager/gtk3.patch b/extra/gnome-phone-manager/gtk3.patch new file mode 100644 index 000000000..141e53a2c --- /dev/null +++ b/extra/gnome-phone-manager/gtk3.patch @@ -0,0 +1,66 @@ +From 4944880ed2227f666b0761961663b0fbbcc45aa8 Mon Sep 17 00:00:00 2001 +From: Jan de Groot <jan@jgc.homeip.net> +Date: Thu, 30 Jun 2011 19:54:21 +0200 +Subject: [PATCH] Port to gtk3. This raises the required version for + gnome-bluetooth to 3.0, as this is the first released + version that uses gtk3. + +--- + configure.in | 7 +++---- + src/ui.c | 6 ------ + 2 files changed, 3 insertions(+), 10 deletions(-) + +diff --git a/configure.in b/configure.in +index 2338f4b..e486768 100644 +--- a/configure.in ++++ b/configure.in +@@ -13,7 +13,7 @@ dnl Initialize libtool + AM_PROG_LIBTOOL + + GNOKII_REQS="gnokii >= 0.6.28" +-GNOME_BLUETOOTH_REQS="gnome-bluetooth-1.0" ++GNOME_BLUETOOTH_REQS="gnome-bluetooth-1.0 >= 3.0" + + AC_PROG_CC + AC_PROG_INSTALL +@@ -44,11 +44,10 @@ PKG_CHECK_MODULES(TMP_EVO, libebook-1.2, + + PKG_CHECK_MODULES(LIBGSM, glib-2.0 gobject-2.0 $GNOKII_REQS gthread-2.0 bluez $evo_pc_file) + +-PKG_CHECK_MODULES(PHONEMGR, gtk+-2.0 >= 2.18 glib-2.0 >= 2.25.0 +- libcanberra-gtk gconf-2.0 ++PKG_CHECK_MODULES(PHONEMGR, gtk+-3.0 >= 3.0 glib-2.0 >= 2.25.0 ++ libcanberra-gtk3 gconf-2.0 + $GNOME_BLUETOOTH_REQS $evo_pc_file + gmodule-2.0 dbus-glib-1 gnome-icon-theme >= 2.19.1 +- gtkspell-2.0 + ) + + DBUSLIBDIR="`$PKG_CONFIG dbus-glib-1 --variable=libdir`" +diff --git a/src/ui.c b/src/ui.c +index 56a70ad..bc89bf4 100644 +--- a/src/ui.c ++++ b/src/ui.c +@@ -22,7 +22,6 @@ + #include <glib/gi18n.h> + #include <stdlib.h> + #include <gtk/gtk.h> +-#include <gtkspell/gtkspell.h> + #include <canberra-gtk.h> + #include <time.h> + #include <string.h> +@@ -343,11 +342,6 @@ create_send_dialog (MyApp *app, GtkDialog *parent, const char *recip) + buf = gtk_text_view_get_buffer (view); + gtk_text_buffer_set_text (buf, "", 0); + +- if (!gtkspell_new_attach (view, NULL, &err)) { +- g_warning ("Couldn't initialise spell checking: %s", err->message); +- g_error_free (err); +- } +- + entry = GTK_ENTRY (gtk_builder_get_object (ui, "recipient")); + if (recip) + gtk_entry_set_text (entry, recip); +-- +1.7.6 + diff --git a/extra/libetpan/PKGBUILD b/extra/libetpan/PKGBUILD index f7e9b6a75..cd4a89a5d 100644 --- a/extra/libetpan/PKGBUILD +++ b/extra/libetpan/PKGBUILD @@ -1,14 +1,14 @@ -# $Id: PKGBUILD 96521 2010-10-22 00:32:21Z allan $ +# $Id: PKGBUILD 127576 2011-06-16 17:03:09Z andyrtr $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> pkgname=libetpan pkgver=1.0 -pkgrel=2 +pkgrel=3 pkgdesc="A portable middleware for email access" arch=('i686' 'x86_64' 'mips64el') url="http://www.etpan.org/" license=("custom:etpan") -depends=('db>=5.1' 'libsasl>=2.1.23' 'curl>=7.19.5' 'expat>=2.0.1-1') +depends=('db>=5.2.28' 'libsasl>=2.1.23' 'curl>=7.21.' 'expat>=2.0.1-1') options=('!libtool') source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz) md5sums=('5addc766141a0b1d29ee1ca4ba1b6808') diff --git a/extra/libreoffice/PKGBUILD b/extra/libreoffice/PKGBUILD index 4ec3d5b00..74b940110 100644 --- a/extra/libreoffice/PKGBUILD +++ b/extra/libreoffice/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 129540 2011-06-28 18:38:58Z andyrtr $ +# $Id: PKGBUILD 130106 2011-07-02 19:39:19Z andyrtr $ # Maintainer: AndyRTR <andyrtr@archlinux.org> pkgbase="libreoffice" @@ -26,7 +26,7 @@ pkgname=('libreoffice' 'libreoffice-sdk' 'libreoffice-extension-wiki-publisher') _LOver=3.4.1.3 pkgver=3.4.1 -pkgrel=1 +pkgrel=2 arch=('i686' 'x86_64') #_LO_tree="3.4" _OFFICEUPD="340" diff --git a/extra/libreoffice/libreoffice.install b/extra/libreoffice/libreoffice.install index 27f3173ae..177f0d4e6 100644 --- a/extra/libreoffice/libreoffice.install +++ b/extra/libreoffice/libreoffice.install @@ -4,7 +4,7 @@ gtk-update-icon-cache -f -q /usr/share/icons/hicolor update-desktop-database -q update-mime-database usr/share/mime > /dev/null 2>&1 -echo " * see http://wiki.archlinux.org/index.php/Openoffice" +echo " * see https://wiki.archlinux.org/index.php/LibreOffice" echo " * you may want to pacman -Ss libreoffice-extensions" echo " to see what extensions are prepared to install" echo " * it's recommended to install {hunspell,mythes,hyphen}-xx pkg for spell checking" diff --git a/extra/libwebkit/replace-switch-with-given-when.patch b/extra/libwebkit/replace-switch-with-given-when.patch deleted file mode 100644 index 4e64610bb..000000000 --- a/extra/libwebkit/replace-switch-with-given-when.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -upr webkit-1.4.0.orig/Source/WebCore/make-hash-tools.pl webkit-1.4.0/Source/WebCore/make-hash-tools.pl ---- webkit-1.4.0.orig/Source/WebCore/make-hash-tools.pl 2011-04-25 22:27:15.000000000 +0300 -+++ webkit-1.4.0/Source/WebCore/make-hash-tools.pl 2011-06-02 00:41:26.000000000 +0300 -@@ -20,7 +20,7 @@ - # Boston, MA 02110-1301, USA. - - use strict; --use Switch; -+use feature 'switch'; - use File::Basename; - - my $outdir = $ARGV[0]; -@@ -28,9 +28,9 @@ shift; - my $option = basename($ARGV[0],".gperf"); - - --switch ($option) { -+given ($option) { - --case "DocTypeStrings" { -+when ("DocTypeStrings") { - - my $docTypeStringsGenerated = "$outdir/DocTypeStrings.cpp"; - my $docTypeStringsGperf = $ARGV[0]; -@@ -38,9 +38,9 @@ case "DocTypeStrings" { - - system("gperf --key-positions=\"*\" -s 2 $docTypeStringsGperf > $docTypeStringsGenerated") == 0 || die "calling gperf failed: $?"; - --} # case "DocTypeStrings" -+} # when ("DocTypeStrings") - --case "ColorData" { -+when ("ColorData") { - - my $colorDataGenerated = "$outdir/ColorData.cpp"; - my $colorDataGperf = $ARGV[0]; -@@ -48,6 +48,6 @@ case "ColorData" { - - system("gperf --key-positions=\"*\" -D -s 2 $colorDataGperf > $colorDataGenerated") == 0 || die "calling gperf failed: $?"; - --} # case "ColorData" -+} # when ("ColorData") - --} # switch ($option) -+} # given ($option) diff --git a/extra/lighttpd/PKGBUILD b/extra/lighttpd/PKGBUILD index 537b1c591..ff3a34673 100644 --- a/extra/lighttpd/PKGBUILD +++ b/extra/lighttpd/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 120925 2011-04-27 13:05:01Z pierre $ +# $Id: PKGBUILD 130222 2011-07-04 13:03:05Z pierre $ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgname=lighttpd -pkgver=1.4.28 -pkgrel=6 +pkgver=1.4.29 +pkgrel=1 pkgdesc='a secure, fast, compliant and very flexible web-server' license=('custom') arch=('i686' 'x86_64' 'mips64el') @@ -18,7 +18,7 @@ backup=('etc/lighttpd/lighttpd.conf' 'etc/logrotate.d/lighttpd') options=('!libtool' 'emptydirs') source=("http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${pkgver}.tar.bz2" 'lighttpd.rc.d' 'lighttpd.logrotate.d' 'lighttpd.conf') -md5sums=('586eb535d31ac299652495b058dd87c4' +md5sums=('e6e67b09986cb504db630b5a86b2dd76' '369f2eea6231342b514ca4777bf395c8' '913e2157fa78d990c32146f387d44c2b' '2803a9ee7f20409c69f1566d2d90720e') diff --git a/extra/moc/PKGBUILD b/extra/moc/PKGBUILD index e9712ad35..dbb54a577 100644 --- a/extra/moc/PKGBUILD +++ b/extra/moc/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 126916 2011-06-08 17:30:45Z eric $ +# $Id: PKGBUILD 127443 2011-06-15 03:16:57Z eric $ # Maintainer: Eric Bélanger <eric@archlinux.org> pkgname=moc pkgver=20110528 -pkgrel=2 +pkgrel=3 pkgdesc="An ncurses console audio player with support for the mp3, ogg, and wave formats" arch=('i686' 'x86_64' 'mips64el') url="http://moc.daper.net/" diff --git a/extra/mod_perl/PKGBUILD b/extra/mod_perl/PKGBUILD index cb74e10f6..7e6ef8cc6 100644 --- a/extra/mod_perl/PKGBUILD +++ b/extra/mod_perl/PKGBUILD @@ -1,10 +1,10 @@ -# $Id: PKGBUILD 129570 2011-06-28 22:45:51Z angvp $ +# $Id: PKGBUILD 129799 2011-06-28 23:07:22Z angvp $ # Maintainer: Firmicus <francois.archlinux.org> # Contributor: Tom K <tomk@runbox.com> pkgname=mod_perl pkgver=2.0.5 -pkgrel=6 +pkgrel=7 pkgdesc="Apache module that embeds the Perl interpreter within the server" url="http://search.cpan.org/dist/${pkgname}/" depends=('perl' 'apache' 'db' 'apr-util' 'perl-linux-pid') diff --git a/extra/mysql/PKGBUILD b/extra/mysql/PKGBUILD index ee78f3d3c..92ecff27a 100644 --- a/extra/mysql/PKGBUILD +++ b/extra/mysql/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 126056 2011-06-01 08:38:57Z andrea $ +# $Id: PKGBUILD 130378 2011-07-06 07:48:11Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Douglas Soares de Andrade <douglas@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgbase=mysql pkgname=('libmysqlclient' 'mysql-clients' 'mysql') -pkgver=5.5.13 +pkgver=5.5.14 pkgrel=1 arch=('i686' 'x86_64' 'mips64el') license=('GPL') @@ -15,7 +15,7 @@ options=('!libtool') source=("http://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-5.5/${pkgbase}-${pkgver}.tar.gz" 'mysqld' 'my.cnf') -md5sums=('f0e519e90ee7c00fceb0730edf859d7b' +md5sums=('19f43bb9c72b1b5f7ff86a7f921c9244' '2234207625baa29b2ff7d7b4f088abce' '1c949c0dbea5206af0db14942d9927b6') @@ -103,7 +103,7 @@ package_mysql(){ pkgdesc="A fast SQL database server" backup=('etc/mysql/my.cnf') install=mysql.install - depends=('mysql-clients') + depends=('mysql-clients' 'net-tools') optdepends=('perl-dbi' 'perl-dbd-mysql') cd "${srcdir}"/build diff --git a/extra/openldap/PKGBUILD b/extra/openldap/PKGBUILD index 33a3b2000..9d63627af 100644 --- a/extra/openldap/PKGBUILD +++ b/extra/openldap/PKGBUILD @@ -1,16 +1,16 @@ -# $Id: PKGBUILD 109957 2011-02-14 13:18:22Z andrea $ +# $Id: PKGBUILD 127879 2011-06-19 07:32:04Z andrea $ # Maintainer: # Contributor: Judd Vinet <jvinet@zeroflux.org> pkgname=openldap pkgver=2.4.24 -pkgrel=1 +pkgrel=2 pkgdesc="LDAP Server" arch=('i686' 'x86_64' 'mips64el') license=('custom') url="http://www.openldap.org/" backup=('etc/openldap/slapd.conf' 'etc/default/slapd' 'etc/conf.d/slapd') -depends=("libldap>=${pkgver}" 'db' 'tcp_wrappers' 'libfetch' 'util-linux-ng') +depends=("libldap>=${pkgver}" 'tcp_wrappers' 'libfetch' 'util-linux-ng') provides=('openldap-clients') replaces=('openldap-clients') source=("ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/${pkgname}-${pkgver}.tgz" @@ -19,9 +19,10 @@ source=("ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/${pkgname}-${pkgve md5sums=('116fe1e23a7b67686d5e62274367e6c0' '832354417c495f29affd2c772808959d' '6be69f6b7e522cb64cce8703da81ed32') +options=('emptydirs') build() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}"/${pkgname}-${pkgver} export LIBS=-ldb ./configure --prefix=/usr \ @@ -71,36 +72,36 @@ build() { } package() { - cd ${srcdir}/${pkgname}-${pkgver} + cd "${srcdir}"/${pkgname}-${pkgver} cd servers - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install cd ../clients - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install cd ../doc/man for dir in man{1,5,8}; do pushd ${dir} - make DESTDIR=${pkgdir} install + make DESTDIR="${pkgdir}" install popd done - rm ${pkgdir}/usr/share/man/man5/ldap.conf.5 + rm "${pkgdir}"/usr/share/man/man5/ldap.conf.5 cd ../.. - install -dm700 ${pkgdir}/etc/openldap/slapd.d - install -Dm755 ${srcdir}/slapd ${pkgdir}/etc/rc.d/slapd - install -Dm644 ${srcdir}/slapd.default ${pkgdir}/etc/conf.d/slapd - install -dm700 ${pkgdir}/var/lib/openldap + install -dm700 "${pkgdir}"/etc/openldap/slapd.d + install -Dm755 "${srcdir}"/slapd "${pkgdir}"/etc/rc.d/slapd + install -Dm644 "${srcdir}"/slapd.default "${pkgdir}"/etc/conf.d/slapd + install -dm700 "${pkgdir}"/var/lib/openldap # get rid of duplicate default conf files - rm ${pkgdir}/etc/openldap/*.default + rm "${pkgdir}"/etc/openldap/*.default # hack to fix screwed up dirs sed -e 's|^pidfile[[:space:]].*$|pidfile /var/run/slapd.pid|g' \ -e 's|^argsfile[[:space:]].*$|argsfile /var/run/slapd.args|g' \ - -i ${pkgdir}/etc/openldap/slapd.conf + -i "${pkgdir}"/etc/openldap/slapd.conf - install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/$pkgname/LICENSE + install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/$pkgname/LICENSE } diff --git a/extra/php/PKGBUILD b/extra/php/PKGBUILD index dd3f42f36..1f5d3465f 100644 --- a/extra/php/PKGBUILD +++ b/extra/php/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 126095 2011-06-01 12:12:00Z pierre $ +# $Id: PKGBUILD 127446 2011-06-15 08:33:01Z pierre $ # Maintainer: Pierre Schmitz <pierre@archlinux.de> pkgbase=php @@ -24,7 +24,7 @@ pkgname=('php' 'php-tidy' 'php-xsl') pkgver=5.3.6 -pkgrel=4 +pkgrel=5 _suhosinver=${pkgver}-0.9.10 arch=('i686' 'x86_64' 'mips64el') license=('PHP') diff --git a/extra/postfix/PKGBUILD b/extra/postfix/PKGBUILD index 417ab5c15..cfa680456 100644 --- a/extra/postfix/PKGBUILD +++ b/extra/postfix/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 124325 2011-05-19 16:07:15Z bisson $ +# $Id: PKGBUILD 127765 2011-06-18 08:12:47Z bisson $ # Contributor: Jeff Brodnax <tullyarcher@bellsouth.net> # Maintainer: Gaetan Bisson <bisson@archlinux.org> # Maintainer: Paul Mattal <paul@archlinux.org> pkgname=postfix pkgver=2.8.3 -pkgrel=3 +pkgrel=4 pkgdesc='Secure, fast, easy to administer drop in replacement for Sendmail (MTA)' url='http://www.postfix.org/' arch=('i686' 'x86_64' 'mips64el') diff --git a/extra/python2/PKGBUILD b/extra/python2/PKGBUILD index 8ccafa245..3579d7ed7 100644 --- a/extra/python2/PKGBUILD +++ b/extra/python2/PKGBUILD @@ -1,31 +1,27 @@ -# $Id: PKGBUILD 127261 2011-06-12 03:23:25Z stephane $ +# $Id: PKGBUILD 129895 2011-06-29 15:22:59Z stephane $ # Maintainer: Stéphane Gaudreault <stephane@archlinux.org> # Contributer: Allan McRae <allan@archlinux.org> # Contributer: Jason Chu <jason@archlinux.org> pkgname=python2 pkgver=2.7.2 -pkgrel=1 +pkgrel=2 _pybasever=2.7 pkgdesc="A high-level scripting language" arch=('i686' 'x86_64' 'mips64el') license=('PSF') url="http://www.python.org/" -depends=('db' 'bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite3' 'libffi') +depends=('bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite3' 'libffi') makedepends=('tk') optdepends=('tk: for IDLE') conflicts=('python<3') options=('!makeflags') -source=(http://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz - python-2.7-db51.patch) -sha1sums=('56700044141402dc35e7a0a24aa7ffda1a8c1a53' - '9667a2a2f8594902b352793e649f78696a77bd13') +source=(http://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz) +sha1sums=('56700044141402dc35e7a0a24aa7ffda1a8c1a53') build() { cd "${srcdir}/Python-${pkgver}" - patch -Np1 -i ../python-2.7-db51.patch - # Temporary workaround for FS#22322 # See http://bugs.python.org/issue10835 for upstream report sed -i "/progname =/s/python/python${_pybasever}/" Python/pythonrun.c @@ -33,7 +29,7 @@ build() { # Enable built-in SQLite3 module to load extensions (fix FS#22122) sed -i "/SQLITE_OMIT_LOAD_EXTENSION/d" setup.py - # FS#2399 + # FS#23997 sed -i -e "s|^#.* /usr/local/bin/python|#!/usr/bin/python2|" Lib/cgi.py # Ensure that we are using the system copy of various libraries (expat, zlib and libffi), diff --git a/extra/python2/python-2.7-db51.patch b/extra/python2/python-2.7-db51.patch deleted file mode 100644 index 2da95c375..000000000 --- a/extra/python2/python-2.7-db51.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -Naur Python-2.7-orig//Modules/_bsddb.c Python-2.7/Modules/_bsddb.c ---- Python-2.7-orig//Modules/_bsddb.c 2010-05-10 00:46:46.000000000 +1000 -+++ Python-2.7/Modules/_bsddb.c 2010-10-20 13:19:26.436669911 +1000 -@@ -9765,8 +9765,11 @@ - - ADD_INT(d, DB_REP_PERMANENT); - --#if (DBVER >= 44) -+#if (DBVER >= 44) && (DBVER <= 48) - ADD_INT(d, DB_REP_CONF_NOAUTOINIT); -+#endif -+ -+#if (DBVER >= 44) - ADD_INT(d, DB_REP_CONF_DELAYCLIENT); - ADD_INT(d, DB_REP_CONF_BULK); - ADD_INT(d, DB_REP_CONF_NOWAIT); -diff -Naur Python-2.7-orig//setup.py Python-2.7/setup.py ---- Python-2.7-orig//setup.py 2010-06-27 22:36:16.000000000 +1000 -+++ Python-2.7/setup.py 2010-10-20 13:10:48.256670026 +1000 -@@ -765,7 +765,7 @@ - # a release. Most open source OSes come with one or more - # versions of BerkeleyDB already installed. - -- max_db_ver = (4, 8) -+ max_db_ver = (5, 1) - min_db_ver = (4, 1) - db_setup_debug = False # verbose debug prints from this script? - -@@ -787,8 +787,12 @@ - return True - - def gen_db_minor_ver_nums(major): -- if major == 4: -+ if major == 5: - for x in range(max_db_ver[1]+1): -+ if allow_db_ver((5, x)): -+ yield x -+ if major == 4: -+ for x in range(9): - if allow_db_ver((4, x)): - yield x - elif major == 3: diff --git a/extra/qtcurve-gtk2/PKGBUILD b/extra/qtcurve-gtk2/PKGBUILD index 8b591cc28..c76550443 100644 --- a/extra/qtcurve-gtk2/PKGBUILD +++ b/extra/qtcurve-gtk2/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 118935 2011-04-09 13:48:28Z andrea $ +# $Id: PKGBUILD 130208 2011-07-04 08:59:54Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=qtcurve-gtk2 -pkgver=1.8.8 +pkgver=1.8.9 pkgrel=1 arch=('i686' 'x86_64' 'mips64el') groups=('qtcurve') @@ -14,10 +14,10 @@ depends=('gtk2') makedepends=('pkgconfig' 'cmake') options=('!libtool') source=("http://craigd.wikispaces.com/file/view/QtCurve-Gtk2-${pkgver}.tar.bz2") -md5sums=('2146fda49c8e078c985725db30228b9a') +md5sums=('e3248bd1b926f250b3a6ff9699134abd') build() { - cd $srcdir + cd "${srcdir}" mkdir build cd build cmake ../QtCurve-Gtk2-${pkgver} \ @@ -27,6 +27,6 @@ build() { } package() { - cd $srcdir/build - make DESTDIR=$pkgdir install + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install } diff --git a/extra/qtcurve-kde4/PKGBUILD b/extra/qtcurve-kde4/PKGBUILD index e3870f0ce..9455f4bb7 100644 --- a/extra/qtcurve-kde4/PKGBUILD +++ b/extra/qtcurve-kde4/PKGBUILD @@ -1,9 +1,9 @@ -# $Id: PKGBUILD 118930 2011-04-09 13:46:54Z andrea $ +# $Id: PKGBUILD 130203 2011-07-04 08:57:57Z andrea $ # Maintainer: Andrea Scarpino <andrea@archlinux.org> # Contributor: Pierre Schmitz <pierre@archlinux.de> pkgname=qtcurve-kde4 -pkgver=1.8.7 +pkgver=1.8.8 pkgrel=1 arch=('i686' 'x86_64' 'mips64el') groups=('qtcurve') @@ -14,16 +14,16 @@ depends=('kdebase-workspace') makedepends=('cmake' 'automoc4') source=("http://craigd.wikispaces.com/file/view/QtCurve-KDE4-${pkgver}.tar.bz2" 'bypass-kde-config.patch') -md5sums=('a874fade6bf67ee052dc656dd76ffe37' +md5sums=('b264d80b4c1e0e8d59e91d571cb639e4' '3f6681147cc361bd2bfd4d7477f2a8d0') build() { - cd ${srcdir}/QtCurve-KDE4-${pkgver} + cd "${srcdir}"/QtCurve-KDE4-${pkgver} # Bypass KDE prefix detection by kde4-config, see: # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=541667 - patch -Np1 -i ${srcdir}/bypass-kde-config.patch + patch -p1 -i "${srcdir}"/bypass-kde-config.patch - cd ${srcdir} + cd "${srcdir}" mkdir build cd build cmake ../QtCurve-KDE4-${pkgver} \ @@ -33,6 +33,6 @@ build() { } package() { - cd $srcdir/build - make DESTDIR=$pkgdir install + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install } diff --git a/extra/raptor/PKGBUILD b/extra/raptor/PKGBUILD index a2f657246..2200c4ea7 100644 --- a/extra/raptor/PKGBUILD +++ b/extra/raptor/PKGBUILD @@ -1,22 +1,31 @@ -# $Id: PKGBUILD 126317 2011-06-04 16:06:41Z andyrtr $ +# $Id: PKGBUILD 130397 2011-07-06 11:19:50Z andrea $ # Maintainer: Andreas Radke <andyrtr at archlinux.org> # Contributor: eric <eric@archlinux.org> # Contributor: Damir Perisa <damir.perisa@bluewin.ch> pkgname=raptor pkgver=2.0.3 -pkgrel=1 +pkgrel=2 pkgdesc="A C library that parses RDF/XML/N-Triples into RDF triples" arch=('i686' 'x86_64' 'mips64el') url="http://librdf.org/raptor" -depends=('libxml2>=2.7.8' 'curl>=7.21.2' 'zlib>=1.2.5' 'libxslt>=1.1.26') +depends=('libxml2>=2.7.8' 'curl>=7.21.7' 'zlib>=1.2.5' 'libxslt>=1.1.26') license=('LGPL') options=('!libtool') -source=(http://librdf.org/dist/source/raptor2-$pkgver.tar.gz) -md5sums=('46eff4b20f8752d1146a3e0c8b2168dd') +source=("http://librdf.org/dist/source/raptor2-$pkgver.tar.gz" + 'fix-soprano-bug.patch') +md5sums=('46eff4b20f8752d1146a3e0c8b2168dd' + 'fd63150d1e9f83bb59af0d86c373c8fa') build() { cd ${srcdir}/raptor2-${pkgver} + + # see http://bugs.librdf.org/mantis/view.php?id=451 + patch -p1 -i "${srcdir}"/fix-soprano-bug.patch + + # fix build with curl >= 7.21.2 + sed -i '/#include <curl\/types.h>/d' src/raptor_internal.h + ./configure --prefix=/usr --disable-static make } diff --git a/extra/raptor/fix-soprano-bug.patch b/extra/raptor/fix-soprano-bug.patch new file mode 100644 index 000000000..ec7f087e0 --- /dev/null +++ b/extra/raptor/fix-soprano-bug.patch @@ -0,0 +1,20 @@ +diff --git a/src/turtle_lexer.l b/src/turtle_lexer.l +index c2f249b..f133747 100644 +--- a/src/turtle_lexer.l ++++ b/src/turtle_lexer.l +@@ -381,9 +381,13 @@ EXPONENT [eE][+-]?[0-9]+ + while(1) { + int c = yytext[yyleng - 1]; + if(c == '{' || c == ' ' || c=='\t' || c == '\v' || c == '\n' || +- c == ':' || c == '-') { ++ c == '=' ) { + yyleng--; +- } else ++ } ++ else if ( yyleng >= 2 && ( c == '-' && yytext[yyleng - 2] == ':' ) ) { ++ yyleng -= 2; ++ } ++ else + break; + } + yytext[yyleng] = '\0'; diff --git a/extra/redland/PKGBUILD b/extra/redland/PKGBUILD index 02ae91e1b..739a36fd5 100644 --- a/extra/redland/PKGBUILD +++ b/extra/redland/PKGBUILD @@ -1,20 +1,20 @@ -# $Id: PKGBUILD 120965 2011-04-27 19:29:40Z andrea $ +# $Id: PKGBUILD 129914 2011-06-29 19:31:01Z andrea $ # Maintainer: AndyRTR <andyrtr@archlinux.org> # Contributor: Francois Charette <francois.archlinux.org> pkgbase=redland epoch=1 pkgname=('redland' 'redland-storage-mysql' 'redland-storage-postgresql' 'redland-storage-virtuoso' 'redland-storage-sqlite') -pkgver=1.0.12 -pkgrel=1 +pkgver=1.0.13 +pkgrel=4 url="http://librdf.org/" license=("GPL") arch=('i686' 'x86_64' 'mips64el') -makedepends=('rasqal>=0.9.21' 'raptor1' 'db>=5.1' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3') +makedepends=('rasqal>=0.9.26' 'raptor>=2.0.3' 'db>=5.2' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3') options=('!libtool') source=(http://download.librdf.org/source/$pkgname-$pkgver.tar.gz rpath.diff) -md5sums=('40f37a5ad97fdfbf984f78dcea0c6115' +md5sums=('96c15f36f842ad7e1c9d225e4ca97b68' 'acc85e784f01a656bd56777f95880787') build() { @@ -34,9 +34,7 @@ build() { package_redland() { pkgdesc="Library that provides a high-level interface to RDF data" - depends=('rasqal>=0.9.21' 'raptor1' 'libtool') - replaces=('redland-compat' 'redland-compat-devel') - conflicts=('redland-compat' 'redland-compat-devel') + depends=('rasqal>=0.9.26' 'raptor>=2.0.3' 'libtool') cd ${srcdir}/${pkgbase}-${pkgver} make DESTDIR=${pkgdir} install diff --git a/extra/ruby/PKGBUILD b/extra/ruby/PKGBUILD index 68afc9243..e4eb89384 100644 --- a/extra/ruby/PKGBUILD +++ b/extra/ruby/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 125918 2011-05-31 21:19:50Z andrea $ +# $Id: PKGBUILD 127449 2011-06-15 09:33:37Z eric $ # Maintainer: # Contributor: Allan McRae <allan@archlinux.org> # Contributor: John Proctor <jproctor@prium.net> @@ -7,7 +7,7 @@ pkgbase=ruby pkgname=('ruby' 'ruby-docs') pkgver=1.9.2_p180 -pkgrel=2 +pkgrel=3 pkgdesc="An object-oriented language for quick and easy programming" arch=('i686' 'x86_64' 'mips64el') url="http://www.ruby-lang.org/en/" @@ -46,6 +46,6 @@ package_ruby-docs() { depends=('ruby') cd "${srcdir}/${pkgbase}-${pkgver//_/-}" - make -j1 DESTDIR="${pkgdir}" install-doc install-capi + make DESTDIR="${pkgdir}" install-doc install-capi install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" } diff --git a/extra/samba/PKGBUILD b/extra/samba/PKGBUILD index 69a26c0d3..03e72f86b 100644 --- a/extra/samba/PKGBUILD +++ b/extra/samba/PKGBUILD @@ -1,15 +1,15 @@ -# $Id: PKGBUILD 122577 2011-05-04 17:48:52Z ibiru $ +# $Id: PKGBUILD 130383 2011-07-06 08:32:50Z tpowa $ # Maintainer: Tobias Powalowski <tpowa@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> pkgbase=samba pkgname=('smbclient' 'samba') -pkgver=3.5.8 +pkgver=3.5.9 # We use the 'A' to fake out pacman's version comparators. Samba chooses # to append 'a','b',etc to their subsequent releases, which pamcan # misconstrues as alpha, beta, etc. Bad samba! -_realver=3.5.8 -pkgrel=3 -arch=(i686 x86_64 'mips64el') +_realver=3.5.9 +pkgrel=2 +arch=(i686 x86_64 mips64el) url="http://www.samba.org" license=('GPL3') makedepends=('db' 'popt' 'libcups' 'acl' 'libldap' 'libcap' 'krb5' 'pam' 'fam' 'gnutls>=2.4.1' 'talloc' 'tdb') @@ -79,7 +79,6 @@ backup=(etc/logrotate.d/samba etc/conf.d/samba) depends=('db' 'popt' 'libcups' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap' 'krb5' 'pam' 'fam' 'gnutls' 'e2fsprogs' 'tdb' 'talloc') cd ${srcdir}/samba-${_realver}/source3 - mkdir -p ${pkgdir}/var/log/samba mkdir -p ${pkgdir}/etc/samba/private chmod 700 ${pkgdir}/etc/samba/private make DESTDIR=${pkgdir} install @@ -130,8 +129,8 @@ depends=('db' 'popt' 'libcups' 'acl' 'libldap' "smbclient>=$pkgver" 'libcap' 'kr # copy ldap example install -D -m644 ${srcdir}/samba-${_realver}/examples/LDAP/samba.schema ${pkgdir}/usr/share/doc/samba/examples/LDAP/samba.schema } -md5sums=('355b4530c20997e94aebc74cd6ea5307' - '891b9be03e7adf65c9a00319c76d33e5' +md5sums=('fc3fe1103cf9d71abe12a8c604f31c76' + 'a3da19515a234c703876cf850c44e996' '5697da77590ec092cc8a883bae06093c' 'a4bbfa39fee95bba2e7ad6b535fae7e6' '96f82c38f3f540b53f3e5144900acf17' diff --git a/extra/samba/samba b/extra/samba/samba index 1b222d6cc..458eb8e2b 100755 --- a/extra/samba/samba +++ b/extra/samba/samba @@ -13,6 +13,9 @@ case "$1" in if [ ! -x /var/run/samba ] ; then install -m755 -g 81 -o 81 -d /var/run/samba fi + if [ ! -x /var/log/samba ] ; then + install -m755 -g 81 -o 81 -d /var/log/samba + fi for d in ${SAMBA_DAEMONS[@]}; do PID=`pidof -o %PPID /usr/sbin/$d` [ -z "$PID" ] && /usr/sbin/$d -D diff --git a/extra/squirrelmail/PKGBUILD b/extra/squirrelmail/PKGBUILD deleted file mode 100644 index 4eb9b7fac..000000000 --- a/extra/squirrelmail/PKGBUILD +++ /dev/null @@ -1,50 +0,0 @@ -# $Id: PKGBUILD 71649 2010-03-07 23:43:31Z paul $ -# Maintainer: Paul Mattal <paul@archlinux.org> -# Contributor: Manolis Tzanidakis <manolis@archlinux.org> - -pkgname=squirrelmail -pkgver=1.4.20 -pkgrel=1 -pkgdesc="Webmail for Nuts!" -arch=(i686 x86_64 'mips64el') -license=('GPL') -url="http://www.squirrelmail.org" -depends=('php' 'perl' 'imap-server') -makedepends=('findutils') -backup=(srv/http/squirrelmail/.htaccess srv/http/squirrelmail/config/config.php) -install=$pkgname.install -source=(http://superb-sea2.dl.sf.net/sourceforge/$pkgname/$pkgname-$pkgver.tar.gz) -md5sums=('60ffedc61b295650c7695c2b74209294') - -build() { - # install - mkdir -p $startdir/pkg/srv/http/squirrelmail || return 1 - cd $startdir/pkg/srv/http/squirrelmail || return 1 - cp -a $startdir/src/squirrelmail-$pkgver/* . || return 1 - - # remove CVS dirs - find $startdir/pkg -type d -name CVS -exec rm -rf {} \; || return 1 - - # customize config (data and attachments in /var/lib/squirrelmail) - cd config || return 1 - cp -p config_default.php config.php || return 1 - sed -i 's|^$attachment_dir = $data_dir;|$attachment_dir = "/var/lib/squirrelmail/attachments";|' config.php || return 1 - sed -i 's|^$data_dir = "/var/local/squirrelmail/data";|$data_dir = "/var/lib/squirrelmail/data";|' config.php || return 1 - - # create data and attachments directories, set ownership/permissions - # ideally we would set attachments differently to root:-1 with 0730, but - # I don't know how to get chgrp to take "-1" properly; perhaps someday - # I'll figure out how to make this work - mkdir -p $startdir/pkg/var/lib/squirrelmail/{data,attachments} || return 1 - chown -R http:http $startdir/pkg/var/lib/squirrelmail/data \ - || return 1 - chown -R http:http $startdir/pkg/var/lib/squirrelmail/attachments \ - || return 1 - chmod 0700 $startdir/pkg/var/lib/squirrelmail/data || return 1 - chmod 0300 $startdir/pkg/var/lib/squirrelmail/attachments || return 1 - - # restrict access to squirrelmail by default - echo "deny from all" >$startdir/pkg/srv/http/squirrelmail/.htaccess \ - || return 1 -} -# vim: ts=2 sw=2 et ft=sh diff --git a/extra/squirrelmail/squirrelmail.install b/extra/squirrelmail/squirrelmail.install deleted file mode 100644 index 06f411f16..000000000 --- a/extra/squirrelmail/squirrelmail.install +++ /dev/null @@ -1,34 +0,0 @@ -post_install() { - /bin/cat <<THEEND - -NOTE ----- -To configure squirrelmail : -$ cd /srv/http/squirrelmail/config -$ perl conf.pl - -Make sure to check the documentation on its webpage for more details, -especially about securing your setup. The default attachments dir -has been placed in /var/lib/squirrelmail/attachments. - -Also make sure your php module is loaded in your Apache config. - -THEEND -} - -post_upgrade() { - /bin/true -} - -pre_remove() { - /bin/true -} - -post_remove() { - /bin/true -} - -op=$1 -shift - -$op $* diff --git a/extra/subversion/PKGBUILD b/extra/subversion/PKGBUILD index b1bedaf9e..353d161fb 100644 --- a/extra/subversion/PKGBUILD +++ b/extra/subversion/PKGBUILD @@ -1,29 +1,37 @@ -# $Id: PKGBUILD 127222 2011-06-11 09:32:25Z andrea $ +# $Id: PKGBUILD 130071 2011-07-01 21:53:41Z stephane $ # Maintainer: Paul Mattal <paul@archlinux.org> # Contributor: Jason Chu <jason@archlinux.org> pkgname=subversion pkgver=1.6.17 -pkgrel=4 -pkgdesc="Replacement for CVS, another versioning system (SVN)" +pkgrel=6 +pkgdesc="A Modern Concurrent Version Control System" arch=('i686' 'x86_64' 'mips64el') license=('apache' 'bsd') depends=('neon' 'apr-util' 'sqlite3') +optdepends=('libgnome-keyring' 'kdeutils-kwallet' 'bash-completion: for svn bash completion') makedepends=('krb5' 'apache' 'python2' 'perl' 'swig' 'ruby' 'java-runtime' 'autoconf' 'db' 'e2fsprogs' 'libgnome-keyring' 'kdelibs') [ "$CARCH" = "mips64el" ] && \ makedepends=('krb5' 'apache' 'python2' 'perl' 'swig' 'autoconf' 'sqlite3' 'db' 'e2fsprogs' 'libgnome-keyring') #'java-runtime' 'kdelibs' 'ruby' -source=(http://subversion.tigris.org/downloads/$pkgname-$pkgver.tar.bz2 - svnserve svn svnserve.conf svnmerge.py - subversion.rpath.fix.patch - subversion.suppress.deprecation.warnings.patch) - backup=('etc/xinetd.d/svn' 'etc/conf.d/svnserve') url="http://subversion.apache.org/" provides=('svn') options=('!makeflags' '!libtool') -optdepends=('libgnome-keyring' 'kdeutils-kwallet' 'bash-completion: for svn bash completion') +source=(http://subversion.tigris.org/downloads/$pkgname-$pkgver.tar.bz2 + svnserve svn svnserve.conf svnmerge.py + subversion.rpath.fix.patch + subversion.suppress.deprecation.warnings.patch + subversion-perl-bindings.patch) +md5sums=('81e5dc5beee4b3fc025ac70c0b6caa14' + 'a2b029e8385007ffb99b437b30521c90' + 'a0db6dd43af33952739b6ec089852630' + 'c459e299192552f61578f3438abf0664' + 'a6371baeda7e224504629ecdda2749b4' + '6b4340ba9d8845cd8497e013ae01be3f' + '1166f3b7413d7e7450299b3525680bbe' + '0591aa39837931161b4d61ff35c7b147') build() { cd "${srcdir}/${pkgname}-${pkgver}" @@ -33,13 +41,14 @@ build() { # apply patches patch -Np0 -i ../subversion.rpath.fix.patch patch -Np1 -i ../subversion.suppress.deprecation.warnings.patch + patch -Np1 -i ../subversion-perl-bindings.patch # configure autoreconf ./configure --prefix=/usr --with-apr=/usr --with-apr-util=/usr \ - --with-zlib=/usr --with-neon=/usr --with-apxs \ - --with-sqlite=/usr --with-berkeley-db=:/usr/include/:/usr/lib:db-5.1 \ - --with-gnome-keyring # --with-kwallet --enable-javahl + --with-zlib=/usr --with-neon=/usr --with-apxs \ + --with-sqlite=/usr --with-berkeley-db=:/usr/include/:/usr/lib:db-5.2 \ + --enable-javahl --with-gnome-keyring --with-kwallet # build (make external-all && make LT_LDFLAGS="-L$Fdestdir/usr/lib" local-all ) @@ -76,8 +85,10 @@ package() { make DESTDIR=${pkgdir} swig-rb make install-swig-rb DESTDIR=${pkgdir} -# make DESTDIR=${pkgdir} javahl -# make DESTDIR=${pkgdir} install-javahl + if [ "$CARCH" != "mips64el" ]; then + make DESTDIR=${pkgdir} javahl + make DESTDIR=${pkgdir} install-javahl + fi install -d ${pkgdir}/etc/{rc.d,xinetd.d,conf.d} @@ -92,10 +103,3 @@ package() { install -Dm 644 ${srcdir}/${pkgname}-${pkgver}/tools/client-side/bash_completion \ ${pkgdir}/etc/bash_completion.d/subversion } -md5sums=('81e5dc5beee4b3fc025ac70c0b6caa14' - 'a2b029e8385007ffb99b437b30521c90' - 'a0db6dd43af33952739b6ec089852630' - 'c459e299192552f61578f3438abf0664' - 'a6371baeda7e224504629ecdda2749b4' - '6b4340ba9d8845cd8497e013ae01be3f' - '1166f3b7413d7e7450299b3525680bbe') diff --git a/staging/subversion/subversion-perl-bindings.patch b/extra/subversion/subversion-perl-bindings.patch index 3c34daa47..3c34daa47 100644 --- a/staging/subversion/subversion-perl-bindings.patch +++ b/extra/subversion/subversion-perl-bindings.patch diff --git a/extra/truecrypt/PKGBUILD b/extra/truecrypt/PKGBUILD index db663334b..f6272e2a9 100644 --- a/extra/truecrypt/PKGBUILD +++ b/extra/truecrypt/PKGBUILD @@ -1,28 +1,34 @@ -# $Id: PKGBUILD 105442 2011-01-08 22:25:31Z paul $ +# $Id: PKGBUILD 130364 2011-07-06 02:01:03Z paul $ # Maintainer: Paul Mattal <paul.archlinux.org> pkgname=truecrypt pkgver=7.0a -pkgrel=2 +pkgrel=3 pkgdesc="Free open-source cross-platform disk encryption software" url="http://www.truecrypt.org/" arch=('i686' 'x86_64' 'mips64el') license=('custom') # TrueCrypt License v2.6 depends=('fuse>=2.8.0' 'wxgtk>=2.8.9' 'libsm' 'device-mapper') +makedepends=('nasm') optdepends=('sudo: mounting encrypted volumes as nonroot users') conflicts=('truecrypt-utils') replaces=('truecrypt-utils') -options=('force') # N.B. Truecrypt's web-based source download is incompatible with # makepkg. Source has been placed on ftp.archlinux.org instead source=('ftp://ftp.archlinux.org/other/tc/truecrypt-7.0a.tar.gz' \ 'ftp://ftp.archlinux.org/other/tc/pkcs-2.20.tar.gz' \ - "${pkgname}.desktop") + "${pkgname}.desktop" \ + "${pkgname}-arch-detection.patch") build() { export PKCS11_INC="${srcdir}/pkcs-2.20" cd ${srcdir}/${pkgname}-${pkgver}-source || return 1 + + # Work around buggy CPU type detection + patch -Np1 -i ../${pkgname}-arch-detection.patch || return 1 + + # Build make || return 1 # Install Binary @@ -37,4 +43,5 @@ build() { } md5sums=('0a61616bc5c5ad90e876b4014c004ac9' 'ce6a707b79411e82e8e558aa03e764b0' - '183b9bf04a943454d4e216130bcbac01') + '183b9bf04a943454d4e216130bcbac01' + '00ea70fa8437de877b31b027ac2b4060') diff --git a/extra/truecrypt/truecrypt-arch-detection.patch b/extra/truecrypt/truecrypt-arch-detection.patch new file mode 100644 index 000000000..bc16a2a36 --- /dev/null +++ b/extra/truecrypt/truecrypt-arch-detection.patch @@ -0,0 +1,15 @@ +diff -urN truecrypt-7.0a-source/Makefile truecrypt-7.0a-source.fixed/Makefile +--- truecrypt-7.0a-source/Makefile 2010-09-05 10:32:10.000000000 -0400 ++++ truecrypt-7.0a-source.fixed/Makefile 2011-07-05 21:41:50.296437879 -0400 +@@ -120,10 +120,7 @@ + + export CPU_ARCH ?= unknown + +-ARCH = $(shell uname -p) +-ifeq "$(ARCH)" "unknown" +- ARCH = $(shell uname -m) +-endif ++ARCH = $(shell uname -m) + + ifneq (,$(filter i386 i486 i586 i686 x86,$(ARCH))) + CPU_ARCH = x86 diff --git a/extra/vsftpd/PKGBUILD b/extra/vsftpd/PKGBUILD index 8ea4ffaeb..e68914a11 100644 --- a/extra/vsftpd/PKGBUILD +++ b/extra/vsftpd/PKGBUILD @@ -1,4 +1,4 @@ -# $Id: PKGBUILD 111119 2011-02-24 05:05:08Z eric $ +# $Id: PKGBUILD 130325 2011-07-05 09:57:35Z andrea $ # Maintainer: Andreas Radke <andyrtr@archlinux.org> # Contributor: judd <jvinet@zeroflux.org> @@ -7,17 +7,19 @@ pkgver=2.3.4 pkgrel=1 pkgdesc="Very Secure FTP daemon" arch=('i686' 'x86_64' 'mips64el') -url="http://vsftpd.beasts.org/" +url="https://security.appspot.com/vsftpd.html" license=('GPL2') depends=('tcp_wrappers' 'openssl') backup=('etc/vsftpd.conf' 'etc/xinetd.d/vsftpd') install=vsftpd.install -source=(ftp://vsftpd.beasts.org/users/cevans/vsftpd-$pkgver.tar.gz \ - vsftpd.xinetd vsftpd.d) -md5sums=('2ea5d19978710527bb7444d93b67767a' 'b07fd4609c70063c1d6b20142910c1a6'\ +source=("https://security.appspot.com/downloads/${pkgname}-${pkgver}.tar.gz" + 'vsftpd.xinetd' 'vsftpd.d') +md5sums=('2ea5d19978710527bb7444d93b67767a' + 'b07fd4609c70063c1d6b20142910c1a6' '60060a6c7db3b3b7baa1561a302e6923') -sha1sums=('b774cc6b4c50e20f4fe9ca7f6aa74169ce7fe5ea' 'c87b4ce56dac15223694a6e86c01ea813b877596'\ - '24f268956c24e78be0c234c6d31f41487922eafe') +sha1sums=('b774cc6b4c50e20f4fe9ca7f6aa74169ce7fe5ea' + 'c87b4ce56dac15223694a6e86c01ea813b877596' + '24f268956c24e78be0c234c6d31f41487922eafe') build() { cd "${srcdir}/${pkgname}-${pkgver}" diff --git a/extra/xawtv/PKGBUILD b/extra/xawtv/PKGBUILD index 28cce47b7..4bd5f8da5 100644 --- a/extra/xawtv/PKGBUILD +++ b/extra/xawtv/PKGBUILD @@ -1,42 +1,25 @@ -# $Id: PKGBUILD 63661 2010-01-18 09:35:32Z andrea $ -# Maintainer: +# $Id: PKGBUILD 130228 2011-07-04 14:14:56Z jgc $ +# Maintainer: Jan de Groot <jgc@archlinux.org> # Contributor: Sarah Hay <sarahhay@mb.sympatico.ca> # Contributor: Jason Chu <jason@archlinux.org> pkgname=xawtv -pkgver=3.95 -pkgrel=7 +pkgver=3.101 +pkgrel=1 pkgdesc="A simple Xaw-based TV program which uses the bttv driver or video4linux" arch=('i686' 'x86_64' 'mips64el') -url="http://linux.bytesex.org/xawtv/" +url="http://git.linuxtv.org/xawtv3.git" license=('GPL') -depends=('libjpeg' 'alsa-lib' 'lesstif' 'libdv' 'zvbi' 'aalib' 'libv4l' - 'libxxf86dga' 'libfs' 'libxrandr' 'libxinerama' 'libxv' 'libxaw' - 'libxxf86vm' 'libgl' 'gpm' 'lirc-utils' 'libxft') +depends=('aalib' 'v4l-utils' 'libxv' 'libxxf86dga' 'libxrandr' 'libgl' 'libdv' 'zvbi' 'libxinerama' 'lirc-utils' 'libxft' 'libxaw' 'xorg-fonts-misc') makedepends=('mesa') -options=('!makeflags') -source=(http://dl.bytesex.org/releases/$pkgname/$pkgname-$pkgver.tar.gz - xawtv-395.diff - xawtv-3.95-pagemask-fix.patch - xawtv-3.95-fixes.patch - xawtv-3.95-libv4l2.patch - xawtv-3.95-no-dga.patch) -md5sums=('ad25e03f7e128b318e392cb09f52207d' - '87a87b6c62b39348053704f052141843' - '97493dfaac8c80084d8b66891becd76c' - 'dc83378a5c76c029f4e49434214fc824' - '56932100c5060bf9dfc45b8af927e697' - 'c456147f15c8f836c678c6499f068085') +source=(http://linuxtv.org/downloads/xawtv/xawtv-${pkgver}.tar.bz2) +md5sums=('330ce1789595e370be34ad4cae3dc3fa') build() { - cd $srcdir/$pkgname-$pkgver - patch -Np1 -i $srcdir/xawtv-395.diff || return 1 - patch -Np1 -i $srcdir/xawtv-3.95-pagemask-fix.patch || return 1 - # Add patches from https://bugzilla.redhat.com/show_bug.cgi?id=457796 - patch -Np1 -i $srcdir/xawtv-3.95-fixes.patch || return 1 - patch -Np1 -i $srcdir/xawtv-3.95-libv4l2.patch || return 1 - patch -Np1 -i $srcdir/xawtv-3.95-no-dga.patch || return 1 - ./configure --prefix=/usr --mandir=/usr/share/man - make || return 1 - make DESTDIR=$pkgdir resdir=$pkgdir/usr/lib/X11 install + cd "${srcdir}/${pkgname}-${pkgver}" + autoconf + autoheader + ./configure --prefix=/usr --disable-motif --disable-quicktime + make + make DESTDIR="${pkgdir}" install } diff --git a/extra/xawtv/xawtv-3.95-fixes.patch b/extra/xawtv/xawtv-3.95-fixes.patch deleted file mode 100644 index b6cdf8dec..000000000 --- a/extra/xawtv/xawtv-3.95-fixes.patch +++ /dev/null @@ -1,72 +0,0 @@ -diff -up xawtv-3.95.new/libng/plugins/drv0-v4l2.c.fixes xawtv-3.95.new/libng/plugins/drv0-v4l2.c ---- xawtv-3.95.new/libng/plugins/drv0-v4l2.c.fixes 2005-02-11 18:56:24.000000000 +0100 -+++ xawtv-3.95.new/libng/plugins/drv0-v4l2.c 2008-08-03 20:46:32.000000000 +0200 -@@ -91,6 +91,7 @@ struct v4l2_handle { - struct ng_video_fmt fmt_me; - struct v4l2_requestbuffers reqbufs; - struct v4l2_buffer buf_v4l2[WANTED_BUFFERS]; -+ int buf_v4l2_size[WANTED_BUFFERS]; - struct ng_video_buf buf_me[WANTED_BUFFERS]; - unsigned int queue,waiton; - -@@ -166,7 +167,7 @@ xioctl(int fd, int cmd, void *arg, int m - int rc; - - rc = ioctl(fd,cmd,arg); -- if (0 == rc && ng_debug < 2) -+ if (rc >= 0 && ng_debug < 2) - return rc; - if (mayfail && errno == mayfail && ng_debug < 2) - return rc; -@@ -768,6 +769,7 @@ v4l2_waiton(struct v4l2_handle *h) - /* get it */ - memset(&buf,0,sizeof(buf)); - buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; -+ buf.memory = V4L2_MEMORY_MMAP; - if (-1 == xioctl(h->fd,VIDIOC_DQBUF,&buf, 0)) - return -1; - h->waiton++; -@@ -812,6 +814,7 @@ v4l2_start_streaming(struct v4l2_handle - h->buf_v4l2[i].memory = V4L2_MEMORY_MMAP; - if (-1 == xioctl(h->fd, VIDIOC_QUERYBUF, &h->buf_v4l2[i], 0)) - return -1; -+ h->buf_v4l2_size[i] = h->buf_v4l2[i].length; - h->buf_me[i].fmt = h->fmt_me; - h->buf_me[i].size = h->buf_me[i].fmt.bytesperline * - h->buf_me[i].fmt.height; -@@ -865,12 +868,16 @@ v4l2_stop_streaming(struct v4l2_handle * - ng_waiton_video_buf(&h->buf_me[i]); - if (ng_debug) - print_bufinfo(&h->buf_v4l2[i]); -- if (-1 == munmap(h->buf_me[i].data,h->buf_me[i].size)) -+ if (-1 == munmap(h->buf_me[i].data, h->buf_v4l2_size[i])) - perror("munmap"); - } - h->queue = 0; - h->waiton = 0; - -+ /* unrequest buffers (only needed for some drivers) */ -+ h->reqbufs.count = 0; -+ xioctl(h->fd, VIDIOC_REQBUFS, &h->reqbufs, EINVAL); -+ - /* turn on preview (if needed) */ - if (h->ov_on != h->ov_enabled) { - h->ov_on = h->ov_enabled; -@@ -907,6 +914,17 @@ v4l2_setformat(void *handle, struct ng_v - fmt->width = h->fmt_v4l2.fmt.pix.width; - fmt->height = h->fmt_v4l2.fmt.pix.height; - fmt->bytesperline = h->fmt_v4l2.fmt.pix.bytesperline; -+ /* struct v4l2_format.fmt.pix.bytesperline is bytesperline for the -+ main plane for planar formats, where as we want it to be the total -+ bytesperline for all planes */ -+ switch (fmt->fmtid) { -+ case VIDEO_YUV422P: -+ fmt->bytesperline *= 2; -+ break; -+ case VIDEO_YUV420P: -+ fmt->bytesperline = fmt->bytesperline * 3 / 2; -+ break; -+ } - if (0 == fmt->bytesperline) - fmt->bytesperline = fmt->width * ng_vfmt_to_depth[fmt->fmtid] / 8; - h->fmt_me = *fmt; diff --git a/extra/xawtv/xawtv-3.95-libv4l2.patch b/extra/xawtv/xawtv-3.95-libv4l2.patch deleted file mode 100644 index 45a5e69cb..000000000 --- a/extra/xawtv/xawtv-3.95-libv4l2.patch +++ /dev/null @@ -1,176 +0,0 @@ ---- xawtv-3.95/libng/plugins/Subdir.mk~ 2008-07-30 09:51:01.000000000 +0200 -+++ xawtv-3.95/libng/plugins/Subdir.mk 2008-07-30 09:51:01.000000000 +0200 -@@ -41,6 +41,7 @@ libng/plugins/read-qt.so : LDLIBS := $( - libng/plugins/write-qt.so : LDLIBS := $(QT_LIBS) - libng/plugins/read-dv.so : LDLIBS := $(DV_LIBS) - libng/plugins/write-dv.so : LDLIBS := $(DV_LIBS) -+libng/plugins/drv0-v4l2.so: LDLIBS := -lv4l2 - - # global targets - all:: $(TARGETS-plugins) -diff -up xawtv-3.95/libng/plugins/drv0-v4l2.c.orig xawtv-3.95/libng/plugins/drv0-v4l2.c ---- xawtv-3.95/libng/plugins/drv0-v4l2.c.orig 2008-08-03 21:26:13.000000000 +0200 -+++ xawtv-3.95/libng/plugins/drv0-v4l2.c 2008-08-03 21:27:50.000000000 +0200 -@@ -29,11 +29,26 @@ - #include "struct-dump.h" - #include "struct-v4l2.h" - -+/* FIXME replace with autoconf detection */ -+#define HAVE_LIBV4L -+ -+#ifdef HAVE_LIBV4L -+#include <libv4l2.h> -+#else -+#define v4l2_fd_open(fd, flags) (fd) -+#define v4l2_close close -+#define v4l2_dup dup -+#define v4l2_ioctl ioctl -+#define v4l2_read read -+#define v4l2_mmap mmap -+#define v4l2_munmap munmap -+#endif -+ - /* ---------------------------------------------------------------------- */ - - /* open+close */ --static void* v4l2_open(char *device); --static int v4l2_close(void *handle); -+static void* v4l2_open_handle(char *device); -+static int v4l2_close_handle(void *handle); - - /* attributes */ - static char* v4l2_devname(void *handle); -@@ -111,8 +126,8 @@ struct v4l2_handle { - - struct ng_vid_driver v4l2_driver = { - name: "v4l2", -- open: v4l2_open, -- close: v4l2_close, -+ open: v4l2_open_handle, -+ close: v4l2_close_handle, - - get_devname: v4l2_devname, - capabilities: v4l2_flags, -@@ -166,7 +181,7 @@ xioctl(int fd, int cmd, void *arg, int m - { - int rc; - -- rc = ioctl(fd,cmd,arg); -+ rc = v4l2_ioctl(fd,cmd,arg); - if (rc >= 0 && ng_debug < 2) - return rc; - if (mayfail && errno == mayfail && ng_debug < 2) -@@ -220,7 +235,7 @@ get_device_capabilities(struct v4l2_hand - } - - h->streamparm.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; -- ioctl(h->fd,VIDIOC_G_PARM,&h->streamparm); -+ v4l2_ioctl(h->fd,VIDIOC_G_PARM,&h->streamparm); - - /* controls */ - for (i = 0; i < MAX_CTRL; i++) { -@@ -444,10 +459,10 @@ static void v4l2_write_attr(struct ng_at - /* ---------------------------------------------------------------------- */ - - static void* --v4l2_open(char *device) -+v4l2_open_handle(char *device) - { - struct v4l2_handle *h; -- int i; -+ int i, libv4l2_fd; - - h = malloc(sizeof(*h)); - if (NULL == h) -@@ -459,6 +474,16 @@ v4l2_open(char *device) - goto err; - } - -+ /* Note the v4l2_xxx functions are designed so that if they get passed an -+ unknown fd, the will behave exactly as their regular xxx counterparts, so -+ if v4l2_fd_open fails, we continue as normal (missing the libv4l2 custom -+ cam format to normal formats conversion). Chances are big we will still -+ fail then though, as normally v4l2_fd_open only fails if the device is not -+ a v4l2 device. */ -+ libv4l2_fd = v4l2_fd_open(h->fd, 0); -+ if (libv4l2_fd != -1) -+ h->fd = libv4l2_fd; -+ - if (-1 == xioctl(h->fd,VIDIOC_QUERYCAP,&h->cap,EINVAL)) - goto err; - if (ng_debug) -@@ -495,21 +520,21 @@ v4l2_open(char *device) - - err: - if (h->fd != -1) -- close(h->fd); -+ v4l2_close(h->fd); - if (h) - free(h); - return NULL; - } - - static int --v4l2_close(void *handle) -+v4l2_close_handle(void *handle) - { - struct v4l2_handle *h = handle; - - if (ng_debug) - fprintf(stderr, "v4l2: close\n"); - -- close(h->fd); -+ v4l2_close(h->fd); - free(h); - return 0; - } -@@ -818,7 +843,7 @@ v4l2_start_streaming(struct v4l2_handle - h->buf_me[i].fmt = h->fmt_me; - h->buf_me[i].size = h->buf_me[i].fmt.bytesperline * - h->buf_me[i].fmt.height; -- h->buf_me[i].data = mmap(NULL, h->buf_v4l2[i].length, -+ h->buf_me[i].data = v4l2_mmap(NULL, h->buf_v4l2[i].length, - PROT_READ | PROT_WRITE, MAP_SHARED, - h->fd, h->buf_v4l2[i].m.offset); - if (MAP_FAILED == h->buf_me[i].data) { -@@ -859,7 +884,7 @@ v4l2_stop_streaming(struct v4l2_handle * - unsigned int i; - - /* stop capture */ -- if (-1 == ioctl(h->fd,VIDIOC_STREAMOFF,&h->fmt_v4l2.type)) -+ if (-1 == v4l2_ioctl(h->fd,VIDIOC_STREAMOFF,&h->fmt_v4l2.type)) - perror("ioctl VIDIOC_STREAMOFF"); - - /* free buffers */ -@@ -868,7 +893,7 @@ v4l2_stop_streaming(struct v4l2_handle * - ng_waiton_video_buf(&h->buf_me[i]); - if (ng_debug) - print_bufinfo(&h->buf_v4l2[i]); -- if (-1 == munmap(h->buf_me[i].data, h->buf_v4l2_size[i])) -+ if (-1 == v4l2_munmap(h->buf_me[i].data, h->buf_v4l2_size[i])) - perror("munmap"); - } - h->queue = 0; -@@ -989,7 +1014,7 @@ v4l2_nextframe(void *handle) - } else { - size = h->fmt_me.bytesperline * h->fmt_me.height; - buf = ng_malloc_video_buf(&h->fmt_me,size); -- rc = read(h->fd,buf->data,size); -+ rc = v4l2_read(h->fd,buf->data,size); - if (rc != size) { - if (-1 == rc) { - perror("v4l2: read"); -@@ -1023,11 +1048,11 @@ v4l2_getimage(void *handle) - size = h->fmt_me.bytesperline * h->fmt_me.height; - buf = ng_malloc_video_buf(&h->fmt_me,size); - if (h->cap.capabilities & V4L2_CAP_READWRITE) { -- rc = read(h->fd,buf->data,size); -+ rc = v4l2_read(h->fd,buf->data,size); - if (-1 == rc && EBUSY == errno && h->ov_on) { - h->ov_on = 0; - xioctl(h->fd, VIDIOC_OVERLAY, &h->ov_on, 0); -- rc = read(h->fd,buf->data,size); -+ rc = v4l2_read(h->fd,buf->data,size); - h->ov_on = 1; - xioctl(h->fd, VIDIOC_OVERLAY, &h->ov_on, 0); - } diff --git a/extra/xawtv/xawtv-3.95-no-dga.patch b/extra/xawtv/xawtv-3.95-no-dga.patch deleted file mode 100644 index 4509d4ba0..000000000 --- a/extra/xawtv/xawtv-3.95-no-dga.patch +++ /dev/null @@ -1,120 +0,0 @@ -diff -up xawtv-3.95/console/v4l-conf.c~ xawtv-3.95/console/v4l-conf.c ---- xawtv-3.95/console/v4l-conf.c~ 2008-08-03 22:22:01.000000000 +0200 -+++ xawtv-3.95/console/v4l-conf.c 2008-08-03 22:34:33.000000000 +0200 -@@ -221,6 +221,21 @@ displayinfo_x11(Display *dpy, struct DIS - } - } - -+#ifdef HAVE_LIBXXF86DGA -+static int dga_error = 0; -+static int dga_error_base; -+static int (*orig_xfree_error_handler)(Display *, XErrorEvent *); -+ -+static int dga_error_handler(Display *d, XErrorEvent *e) -+{ -+ if (e->error_code == (dga_error_base + XF86DGANoDirectVideoMode)) { -+ dga_error = 1; -+ return 0; -+ } -+ return orig_xfree_error_handler(d, e); -+} -+#endif -+ - static void - displayinfo_dga(Display *dpy, struct DISPLAYINFO *d) - { -@@ -228,7 +243,7 @@ displayinfo_dga(Display *dpy, struct DIS - int width,bar,foo,major,minor,flags=0; - void *base = NULL; - -- if (!XF86DGAQueryExtension(dpy,&foo,&bar)) { -+ if (!XF86DGAQueryExtension(dpy,&foo,&dga_error_base)) { - fprintf(stderr,"WARNING: Your X-Server has no DGA support.\n"); - return; - } -@@ -240,7 +255,14 @@ displayinfo_dga(Display *dpy, struct DIS - fprintf(stderr,"WARNING: No DGA support available for this display.\n"); - return; - } -+ orig_xfree_error_handler = XSetErrorHandler(dga_error_handler); - XF86DGAGetVideoLL(dpy,XDefaultScreen(dpy),(void*)&base,&width,&foo,&bar); -+ XSync(dpy, 0); -+ XSetErrorHandler(orig_xfree_error_handler); -+ if (dga_error) { -+ fprintf(stderr,"WARNING: No DGA direct video mode for this display.\n"); -+ return; -+ } - d->bpl = width * d->bpp/8; - d->base = base; - #else -diff -up xawtv-3.95/libng/plugins/drv0-v4l2.c~ xawtv-3.95/libng/plugins/drv0-v4l2.c ---- xawtv-3.95/libng/plugins/drv0-v4l2.c~ 2008-08-03 21:52:41.000000000 +0200 -+++ xawtv-3.95/libng/plugins/drv0-v4l2.c 2008-08-03 22:23:01.000000000 +0200 -@@ -618,7 +618,7 @@ v4l2_setupfb(void *handle, struct ng_vid - return -1; - - /* double-check settings */ -- if (NULL != base && h->ov_fb.base != base) { -+ if ((NULL != base && h->ov_fb.base != base) || h->ov_fb.base == NULL) { - fprintf(stderr,"v4l2: WARNING: framebuffer base address mismatch\n"); - fprintf(stderr,"v4l2: me=%p v4l=%p\n",base,h->ov_fb.base); - h->ov_error = 1; -diff -up xawtv-3.95/x11/xt.c~ xawtv-3.95/x11/xt.c ---- xawtv-3.95/x11/xt.c~ 2008-08-03 22:22:11.000000000 +0200 -+++ xawtv-3.95/x11/xt.c 2008-08-03 22:35:14.000000000 +0200 -@@ -1247,18 +1247,21 @@ FilterAction(Widget widget, XEvent *even - } - - /*----------------------------------------------------------------------*/ -+#ifdef HAVE_LIBXXF86DGA -+static int xfree_dga_error_base; -+#endif - - void - xfree_dga_init(Display *dpy) - { - #ifdef HAVE_LIBXXF86DGA -- int flags,foo,bar,ma,mi; -+ int flags,foo,ma,mi; - - if (!do_overlay) - return; - - if (args.dga) { -- if (XF86DGAQueryExtension(dpy,&foo,&bar)) { -+ if (XF86DGAQueryExtension(dpy,&foo,&xfree_dga_error_base)) { - XF86DGAQueryDirectVideo(dpy,XDefaultScreen(dpy),&flags); - if (flags & XF86DGADirectPresent) { - XF86DGAQueryVersion(dpy,&ma,&mi); -@@ -1348,6 +1351,19 @@ xfree_xinerama_init(Display *dpy) - #endif - } - -+#ifdef HAVE_LIBXXF86DGA -+static int (*orig_xfree_error_handler)(Display *, XErrorEvent *); -+ -+static int xfree_dga_error_handler(Display *d, XErrorEvent *e) -+{ -+ if (e->error_code == (xfree_dga_error_base + XF86DGANoDirectVideoMode)) { -+ have_dga = 0; -+ return 0; -+ } -+ return orig_xfree_error_handler(d, e); -+} -+#endif -+ - void - grabber_init() - { -@@ -1358,8 +1374,11 @@ grabber_init() - #ifdef HAVE_LIBXXF86DGA - if (have_dga) { - int bar,fred; -+ orig_xfree_error_handler = XSetErrorHandler(xfree_dga_error_handler); - XF86DGAGetVideoLL(dpy,XDefaultScreen(dpy),(void*)&base, - &screen.bytesperline,&bar,&fred); -+ XSync(dpy, 0); -+ XSetErrorHandler(orig_xfree_error_handler); - } - #endif - if (!do_overlay) { diff --git a/extra/xawtv/xawtv-3.95-pagemask-fix.patch b/extra/xawtv/xawtv-3.95-pagemask-fix.patch deleted file mode 100644 index ab635f73a..000000000 --- a/extra/xawtv/xawtv-3.95-pagemask-fix.patch +++ /dev/null @@ -1,44 +0,0 @@ -Patch from Andreas Jochens -http://lists.debian.org/debian-qa-packages/2006/08/msg00519.html - -diff -urN ../tmp-orig/xawtv-3.95/console/fbtools.c ./console/fbtools.c ---- ../tmp-orig/xawtv-3.95/console/fbtools.c 2003-02-14 14:14:04.000000000 +0000 -+++ ./console/fbtools.c 2006-08-23 10:57:40.000000000 +0000 -@@ -21,8 +21,6 @@ - #include <linux/vt.h> - #include <linux/fb.h> - --#include <asm/page.h> -- - #include "fbtools.h" - - /* -------------------------------------------------------------------- */ -@@ -424,7 +422,7 @@ - goto err; - } - #endif -- fb_mem_offset = (unsigned long)(fb_fix.smem_start) & (~PAGE_MASK); -+ fb_mem_offset = (unsigned long)(fb_fix.smem_start) & ~(sysconf(_SC_PAGE_SIZE)-1); - fb_mem = mmap(NULL,fb_fix.smem_len+fb_mem_offset, - PROT_READ|PROT_WRITE,MAP_SHARED,fb,0); - if (-1L == (long)fb_mem) { -diff -urN ../tmp-orig/xawtv-3.95/console/matrox.c ./console/matrox.c ---- ../tmp-orig/xawtv-3.95/console/matrox.c 2005-02-03 10:40:41.000000000 +0000 -+++ ./console/matrox.c 2006-08-23 11:09:51.000000000 +0000 -@@ -9,7 +9,6 @@ - #include <sys/ioctl.h> - #include <sys/mman.h> - --#include <asm/page.h> /* PAGE_SIZE */ - #include <linux/fb.h> - - #include "byteswap.h" -@@ -226,7 +225,7 @@ - return -1; - } - off = (unsigned long)fb_fix.mmio_start - -- ((unsigned long)fb_fix.mmio_start & ~(PAGE_SIZE-1)); -+ ((unsigned long)fb_fix.mmio_start & ~(sysconf(_SC_PAGE_SIZE)-1)); - bmmio += off; - mmio = (uint32_t*)bmmio; - return 0; diff --git a/extra/xawtv/xawtv-395.diff b/extra/xawtv/xawtv-395.diff deleted file mode 100644 index 970b2b00f..000000000 --- a/extra/xawtv/xawtv-395.diff +++ /dev/null @@ -1,60 +0,0 @@ -diff -Nru xawtv-3.95/Makefile.in xawtv-3.95.my/Makefile.in ---- xawtv-3.95/Makefile.in 2004-04-22 09:52:29.000000000 -0500 -+++ xawtv-3.95.my/Makefile.in 2006-06-04 19:05:24.000000000 -0500 -@@ -49,7 +49,7 @@ - VBI_LIBS := @LIBZVBI@ - GL_LIBS := @LIBGL@ - DV_LIBS := @LIBDV@ --FS_LIBS := -L@x_libraries@ @FSLIB@ -+FS_LIBS := @FSLIB@ - DLFLAGS := @DLFLAGS@ - - # stuff configure has found -diff -Nru xawtv-3.95/common/channel.c xawtv-3.95.my/common/channel.c ---- xawtv-3.95/common/channel.c 2003-03-28 06:22:06.000000000 -0600 -+++ xawtv-3.95.my/common/channel.c 2006-06-04 19:10:07.000000000 -0500 -@@ -181,6 +181,9 @@ - { -1, NULL, }, - }; - -+extern struct STRTAB booltab[]; -+extern struct STRTAB captab[]; -+ - /* just malloc memory for a new channel ... */ - struct CHANNEL* - add_channel(char *name) -diff -Nru xawtv-3.95/common/channel.h xawtv-3.95.my/common/channel.h ---- xawtv-3.95/common/channel.h 2003-02-14 08:14:04.000000000 -0600 -+++ xawtv-3.95.my/common/channel.h 2006-06-04 19:08:13.000000000 -0500 -@@ -90,8 +90,6 @@ - - /* ----------------------------------------------------------------------- */ - --extern struct STRTAB booltab[]; --extern struct STRTAB captab[]; - - int str_to_int(char *str, struct STRTAB *tab); - const char* int_to_str(int n, struct STRTAB *tab); -diff -Nru xawtv-3.95/common/commands.c xawtv-3.95.my/common/commands.c ---- xawtv-3.95/common/commands.c 2004-04-19 11:24:05.000000000 -0500 -+++ xawtv-3.95.my/common/commands.c 2006-06-04 19:11:48.000000000 -0500 -@@ -162,6 +162,9 @@ - - static int keypad_state = -1; - -+extern struct STRTAB booltab[]; -+extern struct STRTAB captab[]; -+ - /* ----------------------------------------------------------------------- */ - - void add_attrs(struct ng_attribute *new) -diff -Nru xawtv-3.95/console/fs.h xawtv-3.95.my/console/fs.h ---- xawtv-3.95/console/fs.h 2003-02-14 08:14:04.000000000 -0600 -+++ xawtv-3.95.my/console/fs.h 2006-06-04 19:00:20.000000000 -0500 -@@ -1,5 +1,5 @@ - #ifndef X_DISPLAY_MISSING --# include <FSlib.h> -+# include <X11/fonts/FSlib.h> - - struct fs_font { - Font font; diff --git a/staging/apr-util/PKGBUILD b/staging/apr-util/PKGBUILD deleted file mode 100644 index 5cdab4d99..000000000 --- a/staging/apr-util/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 129453 2011-06-28 01:17:42Z stephane $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Maintainer: Pierre Schmitz <pierre@archlinux.de> - -pkgname=apr-util -pkgver=1.3.12 -pkgrel=2 -pkgdesc="The Apache Portable Runtime" -arch=('i686' 'x86_64') -url="http://apr.apache.org/" -depends=('apr' 'gdbm' 'expat' 'db' 'libldap' 'unixodbc') -options=('!libtool') -license=('APACHE') -source=("http://www.apache.org/dist/apr/apr-util-${pkgver}.tar.bz2") -md5sums=('0f671b037ca62751a8a7005578085560') - -build() { - cd "${srcdir}/apr-util-${pkgver}" - ./configure --prefix=/usr --with-apr=/usr \ - --without-pgsql --without-mysql --without-sqlite2 --without-sqlite3 \ - --with-berkeley-db=/usr --with-gdbm=/usr --with-ldap - make -} - -package() { - cd "${srcdir}/apr-util-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/staging/bogofilter/PKGBUILD b/staging/bogofilter/PKGBUILD deleted file mode 100644 index 860895cf9..000000000 --- a/staging/bogofilter/PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# $Id: PKGBUILD 127873 2011-06-19 06:22:51Z eric $ -# Maintainer: tobias <tobias@archlinux.org> -# Contributor: Low Kian Seong <fastmail_low@speedymail.org> - -pkgname=bogofilter -pkgver=1.2.2 -pkgrel=3 -pkgdesc="A fast Bayesian spam filtering tool" -arch=('i686' 'x86_64') -license=('GPL3') -url="http://bogofilter.sourceforge.net" -depends=('db' 'perl' 'gsl') -backup=('etc/bogofilter/bogofilter.cf') -source=(http://sourceforge.net/projects/${pkgname}/files/${pkgname}-current/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('4bcabdf8c5e7efefcb508eda7e80eebc') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr \ - --sysconfdir=/etc/bogofilter \ - --localstatedir=/var \ - --enable-transactions - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - - mv "${pkgdir}/etc/bogofilter/bogofilter.cf.example" "${pkgdir}/etc/bogofilter/bogofilter.cf" - - install -dm755 "${pkgdir}/usr/share/${pkgname}/contrib" - install -m644 contrib/* "${pkgdir}/usr/share/${pkgname}/contrib/" -} diff --git a/staging/claws-mail/PKGBUILD b/staging/claws-mail/PKGBUILD deleted file mode 100644 index b48969b16..000000000 --- a/staging/claws-mail/PKGBUILD +++ /dev/null @@ -1,60 +0,0 @@ -# $Id: PKGBUILD 127579 2011-06-16 17:10:43Z andyrtr $ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> - -pkgname=claws-mail -pkgver=3.7.9 -pkgrel=4 -pkgdesc="A GTK+ based e-mail client." -arch=('i686' 'x86_64') -license=('GPL3') -url="http://www.claws-mail.org" -depends=('gtk2' 'gnutls' 'startup-notification' 'pilot-link' 'enchant' - 'gpgme' 'libetpan' 'libsm' 'db' 'dbus-glib' 'hicolor-icon-theme' 'desktop-file-utils') -makedepends=('compface' 'spamassassin' 'bogofilter' 'valgrind') -optdepends=('python2: needed for some tools' - 'perl: needed for some tools' - 'spamassassin: adds support for spamfiltering' - 'bogofilter: adds support for spamfiltering' - 'html2ps: AUR pkg - adds support for printing html mails together with html plugins') -replaces=('sylpheed-claws') -provides=('claws') -options=(!libtool) -install=claws-mail.install -source=(http://downloads.sourceforge.net/sourceforge/sylpheed-claws/${pkgname}-${pkgver}.tar.bz2 - claws-notify-crash.patch) -md5sums=('2f9d2dcabf84e312cfeb56efa799b5b3' - '9a2903449f679344b5f5f51c91825b45') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - patch -Np0 -i $srcdir/claws-notify-crash.patch - sed -i 's@^#!.*python.*@#!/usr/bin/python2@' tools/*.py - - ./configure --prefix=/usr --disable-static \ - --enable-enchant \ - --enable-gnutls \ - --enable-ldap \ - --disable-dillo-viewer-plugin \ - --enable-crash-dialog \ - --enable-pgpmime-plugin \ - --enable-spamassassin-plugin \ - --enable-bogofilter-plugin \ - --enable-jpilot - - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - - # build and install extra tools - cd tools - make - # all executables and .conf files ; only top directory - find -maxdepth 1 -type f -and -perm /111 -or -name '*.conf' | while read i ; do - install -D -m755 ${i} \ - ${pkgdir}/usr/lib/claws-mail/tools/${i} - done -} diff --git a/staging/claws-mail/claws-notify-crash.patch b/staging/claws-mail/claws-notify-crash.patch deleted file mode 100644 index e1d4eb686..000000000 --- a/staging/claws-mail/claws-notify-crash.patch +++ /dev/null @@ -1,18 +0,0 @@ -Index: src/main.c -=================================================================== -RCS file: //claws/src/main.c,v -retrieving revision 1.115.2.237 -retrieving revision 1.115.2.238 -diff -u -r1.115.2.237 -r1.115.2.238 ---- src/main.c 10 Apr 2011 17:19:04 -0000 1.115.2.237 -+++ src/main.c 30 Apr 2011 19:27:15 -0000 1.115.2.238 -@@ -331,7 +331,7 @@ - gtk_widget_show(hack); - } - -- xdisplay = gdk_display_get_default(); -+ xdisplay = GDK_DISPLAY_XDISPLAY(gdk_display_get_default()); - sn_display = sn_display_new(xdisplay, - sn_error_trap_push, - sn_error_trap_pop); - diff --git a/staging/db/PKGBUILD b/staging/db/PKGBUILD deleted file mode 100644 index 40d1b020b..000000000 --- a/staging/db/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# $Id: PKGBUILD 127440 2011-06-15 00:33:22Z stephane $ -# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> -# Contributor: Allan McRae <allan@archlinux.org> -# Contributor: Andreas Radke <andyrtr@archlinux.org> - -pkgname=db -pkgver=5.2.28 -pkgrel=1 -pkgdesc="The Berkeley DB embedded database system" -arch=('i686' 'x86_64') -url="http://www.oracle.com/technology/software/products/berkeley-db/index.html" -license=('custom') -depends=('gcc-libs' 'sh') -options=('!libtool') -install=db.install -source=(http://download.oracle.com/berkeley-db/db-${pkgver}.tar.gz) -sha1sums=('e6572e3356cf8bc998da4e889db3b12638833435') - -build() { - cd "${srcdir}/$pkgname-${pkgver}/build_unix" - ../dist/configure --prefix=/usr --enable-compat185 \ - --enable-shared --enable-static --enable-cxx --enable-dbm - make LIBSO_LIBS=-lpthread -} - -package() { - cd "${srcdir}/$pkgname-${pkgver}/build_unix" - make DESTDIR="${pkgdir}" install - rm -rf "${pkgdir}"/usr/docs - install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/LICENSE \ - "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/staging/db/db.install b/staging/db/db.install deleted file mode 100644 index 03b64042d..000000000 --- a/staging/db/db.install +++ /dev/null @@ -1,5 +0,0 @@ -post_upgrade() { - if [ "$(vercmp $2 5.1)" -lt 0 ]; then - echo " >> Major version update. Consider running db_upgrade on Berkeley DB databases." - fi -} diff --git a/staging/evolution-data-server/PKGBUILD b/staging/evolution-data-server/PKGBUILD deleted file mode 100644 index d7303a1eb..000000000 --- a/staging/evolution-data-server/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 129456 2011-06-28 01:27:57Z stephane $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=evolution-data-server -pkgver=3.0.2.1 -pkgrel=2 -pkgdesc="Central location for addressbook and calendar storage in the GNOME Desktop" -arch=('i686' 'x86_64') -depends=('libsoup' 'nss' 'libgnome-keyring' 'krb5' 'libgweather' 'libical' 'db' 'libgdata') -makedepends=('intltool' 'gperf' 'gobject-introspection') -options=('!libtool') -url="http://www.gnome.org" -license=('GPL') -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('1b14c57a835745ee2c0141a76a07d44688dfb2d758bf3b818fe1860b59451f9b') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --with-openldap=yes \ - --libexecdir=/usr/lib/evolution-data-server \ - --with-krb5=/usr --with-libdb=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/staging/evolution-exchange/PKGBUILD b/staging/evolution-exchange/PKGBUILD deleted file mode 100644 index a04bdc13b..000000000 --- a/staging/evolution-exchange/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 129506 2011-06-28 14:23:10Z stephane $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=evolution-exchange -pkgver=3.0.2 -pkgrel=2 -pkgdesc="Ximian Connector Exchange plugin for Evolution" -arch=('i686' 'x86_64') -license=('GPL') -url="http://www.ximian.com" -depends=('evolution-data-server' 'gtkhtml4' 'gnome-desktop' 'libunique3') -makedepends=('intltool' 'evolution') -options=('!libtool' '!emptydirs') -install=evolution-exchange.install -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('84f5c638aee1f6ed49de0d0f331d3b29907f7b211bd6c70f37698dedcd3e5f5a') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ - --libexecdir=/usr/lib/evolution --disable-static \ - --with-libdb=/usr --with-krb5=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - - install -m755 -d "${pkgdir}/usr/share/gconf/schemas" - gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain evolution-exchange-3.0 ${pkgdir}/etc/gconf/schemas/*.schemas - rm -f ${pkgdir}/etc/gconf/schemas/*.schemas -} diff --git a/staging/iproute2/PKGBUILD b/staging/iproute2/PKGBUILD deleted file mode 100644 index 57089f2c0..000000000 --- a/staging/iproute2/PKGBUILD +++ /dev/null @@ -1,50 +0,0 @@ -# $Id: PKGBUILD 127646 2011-06-17 12:59:11Z stephane $ -# Maintainer: Ronald van Haren <ronald.archlinux.org> -# Contributor: Judd Vinet <jvinet@zeroflux.org> - -pkgname=iproute2 -pkgver=2.6.38 -pkgrel=4 -pkgdesc="IP Routing Utilities" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://www.linux-foundation.org/en/Net:Iproute2" -depends=('perl') -makedepends=('linux-atm') -optdepends=('linux-atm: ATM support') -provides=('iproute') -conflicts=('iproute') -replaces=('iproute') -options=('!makeflags') -backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_protos' \ - 'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables') -source=(http://devresources.linux-foundation.org/dev/iproute2/download/iproute2-${pkgver}.tar.bz2 - 'iproute2-fhs.patch') -sha1sums=('e9f6d457a06866a2a20a6cba6b3a039b2ec3e14a' - '2416b11252364d7a6c742eabb4a6924a75637a46') - -build() { - cd $srcdir/iproute2-${pkgver} - - # set correct fhs structure - patch -Np1 -i ${srcdir}/iproute2-fhs.patch - - ./configure - - make -} - -package() { - cd $srcdir/iproute2-${pkgver} - - make DESTDIR=$pkgdir install - - # allow loopback to be started before /usr is mounted, this may not be supported in the future - mkdir -p ${pkgdir}/sbin - mv ${pkgdir}/usr/sbin/ip ${pkgdir}/sbin/ip - ln -s /sbin/ip ${pkgdir}/usr/sbin/ip - - # libnetlink isn't installed, install it FS#19385 - install -Dm644 include/libnetlink.h ${pkgdir}/usr/include/libnetlink.h - install -Dm644 lib/libnetlink.a ${pkgdir}/usr/lib/libnetlink.a -} diff --git a/staging/iproute2/iproute2-fhs.patch b/staging/iproute2/iproute2-fhs.patch deleted file mode 100644 index 2608414db..000000000 --- a/staging/iproute2/iproute2-fhs.patch +++ /dev/null @@ -1,84 +0,0 @@ -diff -Naur iproute2.old/Makefile iproute2-2.6.29/Makefile ---- iproute2.old/Makefile 2009-11-11 22:05:21.251407668 +0100 -+++ iproute2-2.6.29/Makefile 2009-11-11 22:07:09.891833516 +0100 -@@ -1,11 +1,12 @@ - DESTDIR=/usr/ - ROOTDIR=$(DESTDIR) - LIBDIR=/usr/lib/ --SBINDIR=/sbin -+SBINDIR=/usr/sbin - CONFDIR=/etc/iproute2 --DOCDIR=/share/doc/iproute2 --MANDIR=/share/man -+DOCDIR=/usr/share/doc/iproute2 -+MANDIR=/usr/share/man - ARPDDIR=/var/lib/arpd -+SHAREDIR=/usr/share - - # Path to db_185.h include - DBM_INCLUDE:=$(ROOTDIR)/usr/include -diff -Naur iproute2.old/tc/tc_util.c iproute2-2.6.29/tc/tc_util.c ---- iproute2.old/tc/tc_util.c 2009-11-11 22:05:21.298076943 +0100 -+++ iproute2-2.6.29/tc/tc_util.c 2009-11-11 22:09:32.865152646 +0100 -@@ -24,8 +24,8 @@ - #include "utils.h" - #include "tc_util.h" - --#ifndef LIBDIR --#define LIBDIR "/usr/lib/" -+#ifndef SHAREDIR -+#define SHAREDIR "/usr/share" - #endif - - const char *get_tc_lib(void) -@@ -34,7 +34,7 @@ - - lib_dir = getenv("TC_LIB_DIR"); - if (!lib_dir) -- lib_dir = LIBDIR "/tc/"; -+ lib_dir = SHAREDIR "/tc/"; - - return lib_dir; - } -diff -Naur iproute2.old/netem/Makefile iproute2-2.6.35/netem/Makefile ---- iproute2.old/netem/Makefile 2010-08-06 11:30:48.640940183 +0200 -+++ iproute2-2.6.35/netem/Makefile 2010-08-06 11:32:34.210908892 +0200 -@@ -20,9 +20,9 @@ - $(HOSTCC) $(CCOPTS) -I../include -o $@ $@.c -lm - - install: all -- mkdir -p $(DESTDIR)$(LIBDIR)/tc -+ mkdir -p $(DESTDIR)$(SHAREDIR)/tc - for i in $(DISTDATA); \ -- do install -m 644 $$i $(DESTDIR)$(LIBDIR)/tc; \ -+ do install -m 644 $$i $(DESTDIR)$(SHAREDIR)/tc; \ - done - - clean: -diff -Naur iproute2.old/tc/Makefile iproute2-2.6.35/tc/Makefile ---- iproute2.old/tc/Makefile 2010-08-06 11:48:35.607472252 +0200 -+++ iproute2-2.6.35/tc/Makefile 2010-08-06 11:49:36.977473380 +0200 -@@ -99,18 +99,11 @@ - $(AR) rcs $@ $(TCLIB) - - install: all -- mkdir -p $(MODDESTDIR) -- install -m 0755 tc $(DESTDIR)$(SBINDIR) -- for i in $(TCSO); \ -- do install -m 755 $$i $(MODDESTDIR); \ -- done -- if [ ! -f $(MODDESTDIR)/m_ipt.so ]; then \ -- if [ -f $(MODDESTDIR)/m_xt.so ]; \ -- then ln -s m_xt.so $(MODDESTDIR)/m_ipt.so ; \ -- elif [ -f $(MODDESTDIR)/m_xt_old.so ]; \ -- then ln -s m_xt_old.so $(MODDESTDIR)/m_ipt.so ; \ -- fi; \ -- fi -+ mkdir -p $(DESTDIR)$(LIBDIR)/tc -+ install -m 0755 tc $(DESTDIR)$(SBINDIR) -+ for i in $(TCSO); \ -+ do install -m 755 $$i $(DESTDIR)$(LIBDIR)/tc; \ -+ done - - clean: - rm -f $(TCOBJ) $(TCLIB) libtc.a tc *.so emp_ematch.yacc.h; \ diff --git a/staging/kdeaccessibility/PKGBUILD b/staging/kdeaccessibility/PKGBUILD new file mode 100644 index 000000000..39a14d91d --- /dev/null +++ b/staging/kdeaccessibility/PKGBUILD @@ -0,0 +1,98 @@ +# $Id: PKGBUILD 130258 2011-07-04 19:27:34Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdeaccessibility +pkgname=('kdeaccessibility-colorschemes' + 'kdeaccessibility-iconthemes' + 'kdeaccessibility-jovie' + 'kdeaccessibility-kaccessible' + 'kdeaccessibility-kmag' + 'kdeaccessibility-kmousetool' + 'kdeaccessibility-kmouth') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://accessibility.kde.org' +license=('GPL' 'FDL') +groups=('kde' 'kdeaccessibility') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'kdebase-runtime' + 'speech-dispatcher') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('6e40aab7c95671070cad0b5f59507ff887414ce0') + +build() { + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DWITH_Opentts=OFF + make +} + +package_kdeaccessibility-colorschemes() { + pkgdesc='KDE Accessibility color schemes' + cd $srcdir/build/ColorSchemes + make DESTDIR=$pkgdir install +} + +package_kdeaccessibility-iconthemes() { + pkgdesc='KDE Accessibility icon themes' + cd $srcdir/build/IconThemes + make DESTDIR=$pkgdir install +} + +package_kdeaccessibility-jovie() { + pkgdesc='A text to speech application' + depends=('kdebase-runtime' 'speech-dispatcher') + replaces=('kdeaccessibility-kttsd') + install='kdeaccessibility.install' + cd $srcdir/build/jovie + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/jovie + make DESTDIR=$pkgdir install +} + +package_kdeaccessibility-kaccessible() { + pkgdesc='Provides accessibility services like focus tracking and a screenreader' + depends=('kdebase-runtime' 'speech-dispatcher') + install='kdeaccessibility.install' + cd $srcdir/build/kaccessible + make DESTDIR=$pkgdir install +} + +package_kdeaccessibility-kmag() { + pkgdesc='Screen Magnifier' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/kmag/" + install='kdeaccessibility.install' + cd $srcdir/build/kmag + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kmag + make DESTDIR=$pkgdir install +} + +package_kdeaccessibility-kmousetool() { + pkgdesc='Clicks the mouse for you, reducing the effects of RSI' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/kmousetool/" + install='kdeaccessibility.install' + cd $srcdir/build/kmousetool + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kmousetool + make DESTDIR=$pkgdir install +} + +package_kdeaccessibility-kmouth() { + pkgdesc='Speech Synthesizer Frontend' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/kmouth/" + install='kdeaccessibility.install' + cd $srcdir/build/kmouth + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kmouth + make DESTDIR=$pkgdir install +} diff --git a/staging/kdeaccessibility/kdeaccessibility.install b/staging/kdeaccessibility/kdeaccessibility.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdeaccessibility/kdeaccessibility.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdeadmin/PKGBUILD b/staging/kdeadmin/PKGBUILD new file mode 100644 index 000000000..329404ead --- /dev/null +++ b/staging/kdeadmin/PKGBUILD @@ -0,0 +1,80 @@ +# $Id: PKGBUILD 130259 2011-07-04 19:27:38Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdeadmin +pkgname=('kdeadmin-kcron' + 'kdeadmin-ksystemlog' + 'kdeadmin-kuser' + 'kdeadmin-system-config-printer-kde') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdeadmin') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'kdebindings-python' + 'system-config-printer-common' 'python2-pyqt') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2" + 'syslog-path.patch') +sha1sums=('010912294a12461a8a0bfdce69c5373b37342cb6' + '20095ce6e0f3e5b6800a7c6e52de6fddba62c031') + +build() { + cd ${srcdir}/${pkgbase}-${pkgver} + patch -p1 -i ${srcdir}/syslog-path.patch + + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_kpackage=OFF \ + -DBUILD_knetworkconf=OFF \ + -DBUILD_lilo-config=OFF \ + -DBUILD_strigi-analyzer=OFF + make +} + +package_kdeadmin-kcron() { + pkgdesc='Configure and schedule tasks' + depends=('kdelibs') + cd $srcdir/build/kcron + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kcron + make DESTDIR=$pkgdir install +} + +package_kdeadmin-ksystemlog() { + pkgdesc='System log viewer tool' + depends=('kdebase-runtime') + url="http://kde.org/applications/system/ksystemlog/" + cd $srcdir/build/ksystemlog + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/ksystemlog + make DESTDIR=$pkgdir install +} + +package_kdeadmin-kuser() { + pkgdesc='User Manager' + depends=('kdepim-runtime') + url="http://kde.org/applications/system/kuser/" + install='kdeadmin.install' + cd $srcdir/build/kuser + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kuser + make DESTDIR=$pkgdir install +} + +package_kdeadmin-system-config-printer-kde() { + pkgdesc='Configure local and remote Printers' + depends=('kdebindings-python' 'system-config-printer-common' 'python2-pyqt') + url="http://kde.org/applications/system/printerapplet/" + cd $srcdir/build/system-config-printer-kde + make DESTDIR=$pkgdir install + + # Use the python2 executable + find ${pkgdir} -name '*.py' | xargs sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' +} diff --git a/staging/kdeadmin/kdeadmin.install b/staging/kdeadmin/kdeadmin.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdeadmin/kdeadmin.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdeadmin/syslog-path.patch b/staging/kdeadmin/syslog-path.patch new file mode 100644 index 000000000..8a9142bf6 --- /dev/null +++ b/staging/kdeadmin/syslog-path.patch @@ -0,0 +1,11 @@ +--- kdeadmin-4.6.0/ksystemlog/src/modes/system/systemConfiguration.h~ 2011-01-27 14:24:29.840000005 +0100 ++++ kdeadmin-4.6.0/ksystemlog/src/modes/system/systemConfiguration.h 2011-01-27 14:24:53.803333335 +0100 +@@ -39,7 +39,7 @@ + SystemConfiguration() : + GenericLogModeConfiguration( + QLatin1String( SYSTEM_LOG_MODE_ID ), +- QStringList() << QLatin1String( "/var/log/syslog" ), ++ QStringList() << QLatin1String( "/var/log/messages.log" ), + QList<int>() << INFORMATION_LOG_LEVEL_ID + ) { + diff --git a/staging/kdeartwork/PKGBUILD b/staging/kdeartwork/PKGBUILD new file mode 100644 index 000000000..c6aefa0d0 --- /dev/null +++ b/staging/kdeartwork/PKGBUILD @@ -0,0 +1,102 @@ +# $Id: PKGBUILD 130260 2011-07-04 19:27:42Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdeartwork +pkgname=('kdeartwork-aurorae' + 'kdeartwork-colorschemes' + 'kdeartwork-desktopthemes' + 'kdeartwork-emoticons' + 'kdeartwork-iconthemes' + 'kdeartwork-kscreensaver' + 'kdeartwork-sounds' + 'kdeartwork-styles' + 'kdeartwork-wallpapers' + 'kdeartwork-weatherwallpapers') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdeartwork') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'xscreensaver' 'eigen' + 'kdebase-workspace' 'kdegraphics-libs') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('9bcf223f7ee2ca0e12f9c8ab8235dcd35f589a8d') + +build() { + cd $srcdir + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdeartwork-aurorae() { + pkgdesc='An Aurorae theme based on the Oxygen plasma theme' + cd $srcdir/build/aurorae + make DESTDIR=$pkgdir install +} + +package_kdeartwork-colorschemes() { + pkgdesc='KDE color schemes' + cd $srcdir/build/ColorSchemes + make DESTDIR=$pkgdir install +} + +package_kdeartwork-desktopthemes() { + pkgdesc='KDE desktop themes' + cd $srcdir/build/desktopthemes + make DESTDIR=$pkgdir install +} + +package_kdeartwork-emoticons() { + pkgdesc='KDE emoticons' + cd $srcdir/build/emoticons + make DESTDIR=$pkgdir install +} + +package_kdeartwork-iconthemes() { + pkgdesc='KDE icon themes' + cd $srcdir/build/IconThemes + make DESTDIR=$pkgdir install +} + +package_kdeartwork-kscreensaver() { + pkgdesc='KDE screensaver' + depends=('kdebase-workspace' 'kdegraphics-libs') + cd $srcdir/build/kscreensaver + make DESTDIR=$pkgdir install +} + +package_kdeartwork-sounds() { + pkgdesc='KDE sounds' + cd $srcdir/build/sounds + make DESTDIR=$pkgdir install +} + +package_kdeartwork-styles() { + pkgdesc='KDE styles' + depends=('kdebase-workspace') + cd $srcdir/build/styles + make DESTDIR=$pkgdir install + cd $srcdir/build/kwin-styles + make DESTDIR=$pkgdir install +} + +package_kdeartwork-wallpapers() { + pkgdesc='KDE wallpapers' + cd $srcdir/build/wallpapers + make DESTDIR=$pkgdir install + cd $srcdir/build/HighResolutionWallpapers + make DESTDIR=$pkgdir install +} + +package_kdeartwork-weatherwallpapers() { + pkgdesc='KDE weather wallpapers' + cd $srcdir/build/WeatherWallpapers + make DESTDIR=$pkgdir install +} diff --git a/staging/kdebase-runtime/PKGBUILD b/staging/kdebase-runtime/PKGBUILD new file mode 100644 index 000000000..ca063d8c1 --- /dev/null +++ b/staging/kdebase-runtime/PKGBUILD @@ -0,0 +1,38 @@ +# $Id: PKGBUILD 130252 2011-07-04 19:27:07Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgname=kdebase-runtime +pkgver=4.6.5 +pkgrel=1 +pkgdesc="KDE Base Runtime Environment" +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL') +depends=('kdelibs' 'ntrack' 'smbclient' 'libssh' 'libcanberra' 'oxygen-icons' + 'xorg-xauth' 'hicolor-icon-theme') +makedepends=('pkg-config' 'cmake' 'automoc4' 'kdepimlibs' 'openslp' 'xine-lib') +optdepends=('htdig: to build the search index in khelpcenter' + 'rarian: needed by khelpcenter' + 'gdb: drkonq crash handler') +install="${pkgname}.install" +source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2") +sha1sums=('e91d35af2a916259305cc7efc2f3a3fbc8b22def') + +build() { + cd "${srcdir}" + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package() { + cd "$srcdir/build" + make DESTDIR="$pkgdir" install + rm -f "${pkgdir}/usr/share/icons/hicolor/index.theme" + ln -sf /usr/lib/kde4/libexec/kdesu "${pkgdir}/usr/bin/" +} diff --git a/staging/kdebase-runtime/kdebase-runtime.install b/staging/kdebase-runtime/kdebase-runtime.install new file mode 100644 index 000000000..3f06b8deb --- /dev/null +++ b/staging/kdebase-runtime/kdebase-runtime.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdebase-workspace/PKGBUILD b/staging/kdebase-workspace/PKGBUILD new file mode 100644 index 000000000..85be8853d --- /dev/null +++ b/staging/kdebase-workspace/PKGBUILD @@ -0,0 +1,72 @@ +# $Id: PKGBUILD 130255 2011-07-04 19:27:20Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgname=kdebase-workspace +pkgver=4.6.5 +pkgrel=1 +pkgdesc="KDE Base Workspace" +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde') +# note on libxdamage: +# not detected by namcap because libgl depends on it +# but nvidia providing libgl does not depend on libxdamage +depends=('kdepim-runtime' 'lm_sensors' 'libraw1394' 'qimageblitz' 'libqalculate' + 'polkit-kde' 'consolekit' 'xorg-xprop' 'libxdamage' 'libxklavier' 'libdmtx' + 'xorg-xsetroot' 'libxcomposite' 'libxinerama') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'kdebindings-python') +replaces=('kdmtheme' 'kde-common' 'guidance-power-manager' 'policykit-kde' 'kdebase-kinfocenter') +conflicts=('kde-common' 'guidance-power-manager' 'policykit-kde' 'kdebase-kinfocenter') +install="${pkgname}.install" +backup=('usr/share/config/kdm/kdmrc' + 'etc/pam.d/kde' + 'etc/pam.d/kde-np' + 'etc/pam.d/kscreensaver') +options=('emptydirs') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2" + 'kdm-zsh-profile.patch' 'kdm' 'kde.pam' 'kde-np.pam' 'kscreensaver.pam' + 'fixpath.patch' 'terminate-server.patch') +sha1sums=('190a524d57c4e52e69dcc1fc2e5a1c0681239a1c' + '8c2bdefb23a03b753b78d16944d03fa3939d2d99' + '5db3a245201bd4a50e65aa2ef583cf5490e4f646' + 'f7b38af38549242a240f1a90ab9964ca8a366129' + '603cc79c4d2b4eae62bb5f244aeecb3a778b5516' + '106635aa1aae51d6f0668b1853f6c49a4fe9d3d8' + 'd7b5883f7e65c6839b1f65f94d58026673dd0226' + 'ac7bc292c865bc1ab8c02e6341aa7aeaf1a3eeee') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + patch -p0 -i ${srcdir}/kdm-zsh-profile.patch + patch -p0 -i ${srcdir}/fixpath.patch + patch -p0 -i ${srcdir}/terminate-server.patch + + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DWITH_Xmms=OFF \ + -DWITH_Googlegadgets=OFF \ + -DWITH_NetworkManager=OFF + make +} + +package() { + cd $srcdir/build + make DESTDIR=$pkgdir install + + install -D -m755 ${srcdir}/kdm ${pkgdir}/etc/rc.d/kdm + install -D -m644 ${srcdir}/kde.pam ${pkgdir}/etc/pam.d/kde + install -D -m644 ${srcdir}/kde-np.pam ${pkgdir}/etc/pam.d/kde-np + install -D -m644 ${srcdir}/kscreensaver.pam ${pkgdir}/etc/pam.d/kscreensaver + install -d -m755 ${pkgdir}/usr/share/xsessions/ + ln -sf /usr/share/apps/kdm/sessions/kde-plasma{,-safe}.desktop ${pkgdir}/usr/share/xsessions/ + install -d -m755 ${pkgdir}/etc/kde/{env,shutdown} + + install -d -g 135 -o 135 ${pkgdir}/var/lib/kdm +} diff --git a/staging/kdebase-workspace/fixpath.patch b/staging/kdebase-workspace/fixpath.patch new file mode 100644 index 000000000..be2b8383e --- /dev/null +++ b/staging/kdebase-workspace/fixpath.patch @@ -0,0 +1,34 @@ +--- startkde.cmake.orig 2009-01-15 14:24:44.000000000 +0100 ++++ startkde.cmake 2009-01-15 14:33:08.000000000 +0100 +@@ -34,22 +34,6 @@ + MALLOC_CHECK_=2 + export MALLOC_CHECK_ + +-# in case we have been started with full pathname spec without being in PATH +-bindir=`echo "$0" | sed -n 's,^\(/.*\)/[^/][^/]*$,\1,p'` +-if [ -n "$bindir" ]; then +- qbindir=`$bindir/kde4-config --qt-binaries` +- if [ -n "$qbindir" ]; then +- case $PATH in +- $qbindir|$qbindir:*|*:$qbindir|*:$qbindir:*) ;; +- *) PATH=$qbindir:$PATH; export PATH;; +- esac +- fi +- case $PATH in +- $bindir|$bindir:*|*:$bindir|*:$bindir:*) ;; +- *) PATH=$bindir:$PATH; export PATH;; +- esac +-fi +- + # Boot sequence: + # + # kdeinit is used to fork off processes which improves memory usage +@@ -206,7 +190,7 @@ + # For anything else (that doesn't set env vars, or that needs a window manager), + # better use the Autostart folder. + +-libpath=`kde4-config --path lib | tr : '\n'` ++libpath=`kde4-config --path lib | tr : '\n'`$(echo -e '\n/etc/kde/lib/') + + for prefix in `echo "$libpath" | sed -n -e 's,/lib[^/]*/,/env/,p'`; do + for file in "$prefix"*.sh; do diff --git a/testing/pam/other b/staging/kdebase-workspace/kde-np.pam index 08498b423..81eeef47b 100644 --- a/testing/pam/other +++ b/staging/kdebase-workspace/kde-np.pam @@ -1,5 +1,7 @@ #%PAM-1.0 -auth required pam_unix.so +auth required pam_nologin.so +auth required pam_permit.so account required pam_unix.so password required pam_unix.so session required pam_unix.so +session required pam_limits.so
\ No newline at end of file diff --git a/staging/pam/other b/staging/kdebase-workspace/kde.pam index 08498b423..1a259390f 100644 --- a/staging/pam/other +++ b/staging/kdebase-workspace/kde.pam @@ -1,5 +1,7 @@ #%PAM-1.0 auth required pam_unix.so +auth required pam_nologin.so account required pam_unix.so password required pam_unix.so session required pam_unix.so +session required pam_limits.so
\ No newline at end of file diff --git a/staging/kdebase-workspace/kdebase-workspace.install b/staging/kdebase-workspace/kdebase-workspace.install new file mode 100644 index 000000000..f7d6d305b --- /dev/null +++ b/staging/kdebase-workspace/kdebase-workspace.install @@ -0,0 +1,25 @@ +post_install() { + groupadd -g 135 kdm &>/dev/null + useradd -u 135 -g kdm -d /var/lib/kdm -s /bin/false -r -M kdm &>/dev/null + chown -R 135:135 var/lib/kdm &>/dev/null + xdg-icon-resource forceupdate --theme hicolor &>/dev/null + update-desktop-database -q +} + +post_upgrade() { + getent group kdm >/dev/null 2>&1 || groupadd -g 135 kdm &>/dev/null + getent passwd kdm >/dev/null 2>&1 || useradd -u 135 -g kdm -d /var/lib/kdm -s /bin/false -r -M kdm &>/dev/null + chown -R 135:135 var/lib/kdm &>/dev/null + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_remove() { + if getent passwd kdm >/dev/null 2>&1; then + userdel kdm + fi + if getent group kdm >/dev/null 2>&1; then + groupdel kdm + fi + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} diff --git a/staging/kdebase-workspace/kdm b/staging/kdebase-workspace/kdm new file mode 100644 index 000000000..799d58f4b --- /dev/null +++ b/staging/kdebase-workspace/kdm @@ -0,0 +1,36 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=$(pidof -o %PPID /usr/bin/kdm) +case "$1" in + start) + stat_busy "Starting KDE Desktop Manager" + [ -z "$PID" ] && /usr/bin/kdm &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon kdm + stat_done + fi + ;; + stop) + stat_busy "Stopping KDE Desktop Manager" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon kdm + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/staging/kdebase-workspace/kdm-zsh-profile.patch b/staging/kdebase-workspace/kdm-zsh-profile.patch new file mode 100644 index 000000000..779456b39 --- /dev/null +++ b/staging/kdebase-workspace/kdm-zsh-profile.patch @@ -0,0 +1,11 @@ +--- kdm/kfrontend/genkdmconf.c 2008-02-13 09:40:49.000000000 +0000 ++++ kdm/kfrontend/genkdmconf.c 2008-05-16 12:47:36.000000000 +0000 +@@ -662,7 +662,7 @@ + " [ -d /etc/zsh ] && zdir=/etc/zsh || zdir=/etc\n" + " zhome=${ZDOTDIR:-$HOME}\n" + " # zshenv is always sourced automatically.\n" +-" [ -f $zdir/zprofile ] && . $zdir/zprofile\n" ++" [ -f /etc/profile ] && . /etc/profile\n" + " [ -f $zhome/.zprofile ] && . $zhome/.zprofile\n" + " [ -f $zdir/zlogin ] && . $zdir/zlogin\n" + " [ -f $zhome/.zlogin ] && . $zhome/.zlogin\n" diff --git a/staging/kdebase-workspace/kscreensaver.pam b/staging/kdebase-workspace/kscreensaver.pam new file mode 100644 index 000000000..b4d80c21f --- /dev/null +++ b/staging/kdebase-workspace/kscreensaver.pam @@ -0,0 +1 @@ +auth required pam_unix_auth.so diff --git a/staging/kdebase-workspace/terminate-server.patch b/staging/kdebase-workspace/terminate-server.patch new file mode 100644 index 000000000..094591317 --- /dev/null +++ b/staging/kdebase-workspace/terminate-server.patch @@ -0,0 +1,11 @@ +--- kdm/config.def 2009-08-27 10:17:39.000000000 +0200 ++++ kdm/config.def 2009-10-31 00:40:21.000000000 +0100 +@@ -1448,7 +1448,7 @@ + + Key: TerminateServer + Type: bool +-Default: false ++Default: true + User: core + Instance: #:*/! + Merge: xdm diff --git a/staging/kdebase/PKGBUILD b/staging/kdebase/PKGBUILD new file mode 100644 index 000000000..354b64302 --- /dev/null +++ b/staging/kdebase/PKGBUILD @@ -0,0 +1,129 @@ +# $Id: PKGBUILD 130256 2011-07-04 19:27:25Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdebase +pkgname=('kdebase-dolphin' + 'kdebase-kdepasswd' + 'kdebase-kdialog' + 'kdebase-keditbookmarks' + 'kdebase-kfind' + 'kdebase-konqueror' + 'kdebase-konsole' + 'kdebase-kwrite' + 'kdebase-lib' + 'kdebase-plasma') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdebase') +makedepends=('kdebase-workspace' 'pkgconfig' 'cmake' 'automoc4') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('1a902d22956daaf380ceefe68f8db75b8b760ae6') + +build() { + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdebase-dolphin() { + pkgdesc='File Manager' + depends=('kdebase-runtime' 'kdebase-lib') + optdepends=('ruby: servicemenu installation') + url="http://kde.org/applications/system/dolphin/" + cd $srcdir/build/dolphin + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/dolphin + make DESTDIR=$pkgdir install +} + +package_kdebase-kdepasswd() { + pkgdesc='Change Password' + depends=('kdebase-runtime' 'kdebase-lib') + cd $srcdir/build/kdepasswd + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kdepasswd + make DESTDIR=$pkgdir install +} + +package_kdebase-kdialog() { + pkgdesc='A utility for displaying dialog boxes from shell scripts' + depends=('kdebase-runtime') + cd $srcdir/build/kdialog + make DESTDIR=$pkgdir install +} + +package_kdebase-keditbookmarks() { + pkgdesc='Bookmark Organizer and Editor' + depends=('kdebase-runtime') + cd $srcdir/build/keditbookmarks + make DESTDIR=$pkgdir install +} + +package_kdebase-kfind() { + pkgdesc='Find Files/Folders' + depends=('kdebase-runtime' 'kdebase-lib') + url="http://kde.org/applications/utilities/kfind/" + install='kdebase.install' + cd $srcdir/build/kfind + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kfind + make DESTDIR=$pkgdir install +} + +package_kdebase-konqueror() { + pkgdesc='KDE File Manager & Web Browser' + depends=('kdebase-dolphin' 'kdebase-keditbookmarks') + optdepends=('kwebkitpart: to enable webkit engine') + url="http://kde.org/applications/internet/konqueror/" + install='kdebase.install' + conflicts=('kdebase-nsplugins') + replaces=('kdebase-nsplugins') + for i in konqueror doc/konqueror nsplugins; do + cd $srcdir/build/${i} + make DESTDIR=$pkgdir install + done +} + +package_kdebase-konsole() { + pkgdesc='Terminal' + depends=('kdebase-runtime') + url="http://kde.org/applications/system/konsole/" + cd $srcdir/build/konsole + make DESTDIR=$pkgdir install + cd $srcdir/build/konsole/doc/manual + make DESTDIR=$pkgdir install +} + +package_kdebase-kwrite() { + pkgdesc='Text Editor' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/kwrite/" + cd $srcdir/build/kwrite + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kwrite + make DESTDIR=$pkgdir install +} + +package_kdebase-lib() { + pkgdesc='KDE libraries for the basic desktop applications' + groups=() + depends=('kdelibs') + cd $srcdir/build/lib + make DESTDIR=$pkgdir install +} + +package_kdebase-plasma() { + pkgdesc='Display the contents of folders (User´s home folder as default)' + depends=('kdebase-workspace' 'kdebase-lib') + cd $srcdir/build/plasma + make DESTDIR=$pkgdir install +} diff --git a/staging/kdebase/kdebase.install b/staging/kdebase/kdebase.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdebase/kdebase.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdebindings/PKGBUILD b/staging/kdebindings/PKGBUILD new file mode 100644 index 000000000..af6812ec9 --- /dev/null +++ b/staging/kdebindings/PKGBUILD @@ -0,0 +1,72 @@ +# $Id: PKGBUILD 107102 2011-01-21 11:16:03Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdebindings +pkgname=('kdebindings-csharp' + 'kdebindings-python' + 'kdebindings-ruby' + 'kdebindings-smoke') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'python2-pyqt' 'kdepim-runtime' 'mono' + 'kdegraphics-okular' 'qwt' 'boost' 'qscintilla' 'ruby') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('e63a0b0eec92320df2c2c539b916c5ee9425a689') + +build() { + export MONO_SHARED_DIR="${srcdir}/build/.mono" + mkdir -p "$MONO_SHARED_DIR" + + cd ${srcdir}/build + + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DRUBY_SITE_LIB_DIR="/usr/lib/ruby/site_ruby/1.9.1" \ + -DRUBY_SITE_ARCH_DIR="/usr/lib/ruby/site_ruby/1.9.1/${CARCH}-linux" \ + -DBUILD_falcon=OFF \ + -DBUILD_java=OFF \ + -DBUILD_php=OFF \ + -DWITH_PolkitQt=OFF \ + -DWITH_Soprano=OFF + make +} + +package_kdebindings-csharp() { + pkgdesc='KDE bindings for mono' + depends=('kdebindings-smoke' 'mono') + export MONO_SHARED_DIR="${srcdir}/build/.mono" + mkdir -p "$MONO_SHARED_DIR" + cd $srcdir/build/csharp + make DESTDIR=$pkgdir install +} + +package_kdebindings-python() { + pkgdesc='KDE bindings for python' + depends=('kdepim-runtime' 'python2-pyqt' 'qscintilla') + cd $srcdir/build/python + make DESTDIR=$pkgdir install + + # Use the python2 executable + find "${pkgdir}" -name '*.py' | xargs sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' +} + +package_kdebindings-ruby() { + pkgdesc='KDE Bindings for ruby' + depends=('kdebindings-smoke' 'ruby') + cd $srcdir/build/ruby + make DESTDIR=$pkgdir install +} + +package_kdebindings-smoke() { + pkgdesc='Language independent library for Qt and KDE bindings' + depends=('qscintilla' 'kdegraphics-okular' 'kdepim-runtime') + cd $srcdir/build/smoke + make DESTDIR=$pkgdir install + cd $srcdir/build/generator/smokebase + make DESTDIR=$pkgdir install +} diff --git a/staging/kdeedu/PKGBUILD b/staging/kdeedu/PKGBUILD new file mode 100644 index 000000000..449a41c1c --- /dev/null +++ b/staging/kdeedu/PKGBUILD @@ -0,0 +1,273 @@ +# $Id: PKGBUILD 130257 2011-07-04 19:27:28Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdeedu +pkgname=('kdeedu-blinken' + 'kdeedu-cantor' + 'kdeedu-kalgebra' + 'kdeedu-kalzium' + 'kdeedu-kanagram' + 'kdeedu-kbruch' + 'kdeedu-kgeography' + 'kdeedu-khangman' + 'kdeedu-kig' + 'kdeedu-kiten' + 'kdeedu-klettres' + 'kdeedu-kmplot' + 'kdeedu-kstars' + 'kdeedu-ktouch' + 'kdeedu-kturtle' + 'kdeedu-kwordquiz' + 'kdeedu-libkdeedu' + 'kdeedu-marble' + 'kdeedu-parley' + 'kdeedu-rocs' + 'kdeedu-step') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdeedu') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'ocaml' 'facile' 'cfitsio' 'gpsd' + 'kdebase-runtime' 'libqalculate' 'gsl' 'boost' 'libindi' 'r' 'libspectre' + 'python2' 'avogadro') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2" + 'gpsd-2.96.patch' + 'remove-libkdeedu-libscience.patch') +sha1sums=('64247eb68b2710a66baaf824d798e46b34ca4d4f' + 'fd6b6b81945d951bb6ad0bb735df33c11bb2008e' + 'cd4e18f2b30d42f6e2bcc518ad72fd49839fd8dc') + +build() { + cd ${srcdir}/${pkgbase}-${pkgver} + patch -Np1 -i ${srcdir}/gpsd-2.96.patch + patch -p1 -i ${srcdir}/remove-libkdeedu-libscience.patch + + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=OFF \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdeedu-blinken() { + pkgdesc='A memory enhancement game' + depends=('kdebase-runtime' 'kdeedu-libkdeedu') + install='kdeedu.install' + cd $srcdir/build/blinken + make DESTDIR=$pkgdir install + cd $srcdir/build/blinken/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-cantor() { + pkgdesc='KDE Frontend to Mathematical Software' + depends=('kdeedu-libkdeedu' 'libspectre') + optdepends=('kdeedu-kalgebra: backend' + 'maxima: backend' + 'r: backend') + install='kdeedu.install' + cd $srcdir/build/cantor + make DESTDIR=$pkgdir install + cd $srcdir/build/cantor/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kalgebra() { + pkgdesc='Math Expression Solver and Plotter' + depends=('kdebase-runtime') + install='kdeedu.install' + cd $srcdir/build/kalgebra + make DESTDIR=$pkgdir install + cd $srcdir/build/kalgebra/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kalzium() { + pkgdesc='KDE Periodic Table of Elements' + depends=('kdebase-runtime' 'kdeedu-libkdeedu' 'avogadro') + install='kdeedu.install' + cd $srcdir/build/kalzium + make DESTDIR=$pkgdir install + cd $srcdir/build/kalzium/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kanagram() { + pkgdesc='KDE Letter Order Game' + depends=('kdebase-runtime' 'kdeedu-libkdeedu') + install='kdeedu.install' + cd $srcdir/build/kanagram + make DESTDIR=$pkgdir install + cd $srcdir/build/kanagram/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kbruch() { + pkgdesc='Practice exercises with fractions' + depends=('kdelibs' 'kdebase-runtime') + install='kdeedu.install' + cd $srcdir/build/kbruch + make DESTDIR=$pkgdir install + cd $srcdir/build/kbruch/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kgeography() { + pkgdesc='A Geography Learning Program' + depends=('kdebase-runtime') + install='kdeedu.install' + cd $srcdir/build/kgeography + make DESTDIR=$pkgdir install + cd $srcdir/build/kgeography/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-khangman() { + pkgdesc='KDE Hangman Game' + depends=('kdebase-runtime' 'kdeedu-libkdeedu') + install='kdeedu.install' + cd $srcdir/build/khangman + make DESTDIR=$pkgdir install + cd $srcdir/build/khangman/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kig() { + pkgdesc='Explore Geometric Constructions' + depends=('kdebase-runtime' 'boost-libs' 'python2') + install='kdeedu.install' + cd $srcdir/build/kig + make DESTDIR=$pkgdir install + cd $srcdir/build/kig/doc + make DESTDIR=$pkgdir install + + # Use the python2 executable + sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' ${pkgdir}/usr/bin/pykig.py +} + +package_kdeedu-kiten() { + pkgdesc='Japanese Reference and Study Tool' + depends=('kdebase-runtime') + install='kdeedu.install' + cd $srcdir/build/kiten + make DESTDIR=$pkgdir install + cd $srcdir/build/kiten/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-klettres() { + pkgdesc='a KDE program to learn the alphabet' + depends=('kdebase-runtime') + install='kdeedu.install' + cd $srcdir/build/klettres + make DESTDIR=$pkgdir install + cd $srcdir/build/klettres/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kmplot() { + pkgdesc='Function Plotter' + depends=('kdebase-runtime') + install='kdeedu.install' + cd $srcdir/build/kmplot + make DESTDIR=$pkgdir install + cd $srcdir/build/kmplot/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kstars() { + pkgdesc='Desktop Planetarium' + depends=('kdebase-runtime' 'libindi') + install='kdeedu.install' + cd $srcdir/build/kstars + make DESTDIR=$pkgdir install + cd $srcdir/build/kstars/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-ktouch() { + pkgdesc='Touch Typing Tutor' + depends=('kdebase-runtime') + install='kdeedu.install' + cd $srcdir/build/ktouch + make DESTDIR=$pkgdir install + cd $srcdir/build/ktouch/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kturtle() { + pkgdesc='Educational Programming Environment' + depends=('kdebase-runtime') + install='kdeedu.install' + cd $srcdir/build/kturtle + make DESTDIR=$pkgdir install + cd $srcdir/build/kturtle/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-kwordquiz() { + pkgdesc='A flashcard and vocabulary learning program' + depends=('kdebase-runtime' 'kdeedu-libkdeedu') + install='kdeedu.install' + cd $srcdir/build/kwordquiz + make DESTDIR=$pkgdir install + cd $srcdir/build/kwordquiz/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-libkdeedu() { + pkgdesc='Support library for KDE Educational Software' + groups=() + depends=('kdelibs') + install='kdeedu.install' + replaces=('kdeedu-data') + conflicts=('kdeedu-data') + cd $srcdir/build/libkdeedu + make DESTDIR=$pkgdir install +} + +package_kdeedu-marble() { + pkgdesc='Desktop Globe' + depends=('kdebase-runtime' 'gpsd') + install='kdeedu.install' + cd $srcdir/build/marble + make DESTDIR=$pkgdir install + cd $srcdir/build/marble/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-parley() { + pkgdesc='Vocabulary Trainer' + depends=('kdebase-runtime' 'kdeedu-libkdeedu' 'kdebindings-python') + install='kdeedu.install' + cd $srcdir/build/parley + make DESTDIR=$pkgdir install + cd $srcdir/build/parley/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-rocs() { + pkgdesc='Graph Theory Tool for Professors and Students.' + depends=('kdebase-runtime' 'kdeedu-libkdeedu') + install='kdeedu.install' + cd $srcdir/build/rocs + make DESTDIR=$pkgdir install + cd $srcdir/build/rocs/doc + make DESTDIR=$pkgdir install +} + +package_kdeedu-step() { + pkgdesc='Simulate physics experiments' + depends=('kdebase-runtime' 'gsl' 'libqalculate') + install='kdeedu.install' + cd $srcdir/build/step + make DESTDIR=$pkgdir install + cd $srcdir/build/step/doc + make DESTDIR=$pkgdir install +} diff --git a/staging/kdeedu/gpsd-2.96.patch b/staging/kdeedu/gpsd-2.96.patch new file mode 100644 index 000000000..ec515e99d --- /dev/null +++ b/staging/kdeedu/gpsd-2.96.patch @@ -0,0 +1,43 @@ +Index: kdeedu-4.5.5/marble/src/plugins/positionprovider/gpsd/GpsdConnection.cpp +=================================================================== +--- kdeedu-4.5.5.orig/marble/src/plugins/positionprovider/gpsd/GpsdConnection.cpp ++++ kdeedu-4.5.5/marble/src/plugins/positionprovider/gpsd/GpsdConnection.cpp +@@ -18,6 +18,9 @@ using namespace Marble; + + GpsdConnection::GpsdConnection( QObject* parent ) + : QObject( parent ), ++#if defined( GPSD_API_MAJOR_VERSION ) && ( GPSD_API_MAJOR_VERSION >= 5 ) ++ m_gpsd("localhost", DEFAULT_GPSD_PORT), ++#endif + m_timer( 0 ) + { + connect( &m_timer, SIGNAL( timeout() ), this, SLOT( update() ) ); +@@ -26,7 +29,11 @@ GpsdConnection::GpsdConnection( QObject* + void GpsdConnection::initialize() + { + m_timer.stop(); ++#if defined( GPSD_API_MAJOR_VERSION ) && ( GPSD_API_MAJOR_VERSION >= 5 ) ++ gps_data_t* data; ++#else + gps_data_t* data = m_gpsd.open(); ++#endif + if ( data ) { + m_status = PositionProviderStatusAcquiring; + emit statusChanged( m_status ); +@@ -73,8 +80,16 @@ void GpsdConnection::initialize() + void GpsdConnection::update() + { + #if defined( GPSD_API_MAJOR_VERSION ) && ( GPSD_API_MAJOR_VERSION >= 3 ) && defined( PACKET_SET ) ++#if defined( GPSD_API_MAJOR_VERSION ) && ( GPSD_API_MAJOR_VERSION >= 5 ) ++ if ( m_gpsd.waiting(0) ) { ++#else + if ( m_gpsd.waiting() ) { ++#endif ++#if defined( GPSD_API_MAJOR_VERSION ) && ( GPSD_API_MAJOR_VERSION >= 5 ) ++ gps_data_t* data = m_gpsd.read(); ++#else + gps_data_t* data = m_gpsd.poll(); ++#endif + if ( data && data->set & PACKET_SET ) { + emit gpsdInfo( *data ); + } diff --git a/staging/kdeedu/kdeedu.install b/staging/kdeedu/kdeedu.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdeedu/kdeedu.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdeedu/remove-libkdeedu-libscience.patch b/staging/kdeedu/remove-libkdeedu-libscience.patch new file mode 100644 index 000000000..a8643d49f --- /dev/null +++ b/staging/kdeedu/remove-libkdeedu-libscience.patch @@ -0,0 +1,10 @@ +--- kdeedu-4.6.4/libkdeedu/CMakeLists.txt~ 2011-06-10 16:59:34.922935038 +0000 ++++ kdeedu-4.6.4/libkdeedu/CMakeLists.txt 2011-06-10 16:59:56.279802081 +0000 +@@ -8,7 +8,6 @@ + + add_subdirectory(keduvocdocument) + add_subdirectory(kdeeduui) +-add_subdirectory(libscience) + add_subdirectory(data) + #add_subdirectory(widgets) + add_subdirectory(qtmmlwidget) diff --git a/staging/kdegames/PKGBUILD b/staging/kdegames/PKGBUILD new file mode 100644 index 000000000..21bc2765c --- /dev/null +++ b/staging/kdegames/PKGBUILD @@ -0,0 +1,514 @@ +# $Id: PKGBUILD 130261 2011-07-04 19:27:48Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdegames +pkgname=('kdegames-bomber' + 'kdegames-bovo' + 'kdegames-granatier' + 'kdegames-kajongg' + 'kdegames-kapman' + 'kdegames-katomic' + 'kdegames-kbattleship' + 'kdegames-kblackbox' + 'kdegames-kblocks' + 'kdegames-kbounce' + 'kdegames-kbreakout' + 'kdegames-kdiamond' + 'kdegames-kfourinline' + 'kdegames-kgoldrunner' + 'kdegames-kigo' + 'kdegames-killbots' + 'kdegames-kiriki' + 'kdegames-kjumpingcube' + 'kdegames-klines' + 'kdegames-klickety' + 'kdegames-kmahjongg' + 'kdegames-kmines' + 'kdegames-knetwalk' + 'kdegames-kolf' + 'kdegames-kollision' + 'kdegames-konquest' + 'kdegames-kpatience' + 'kdegames-kreversi' + 'kdegames-kshisen' + 'kdegames-ksirk' + 'kdegames-kspaceduel' + 'kdegames-ksquares' + 'kdegames-ksudoku' + 'kdegames-ktron' + 'kdegames-ktuberling' + 'kdegames-kubrick' + 'kdegames-libkdegames' + 'kdegames-libkmahjongg' + 'kdegames-lskat' + 'kdegames-palapeli') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdegames') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'ggz-client-libs' 'twisted' + 'kdebindings-python' 'openal') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('28c4908439f493fa30436875a77de01a21e88f4c') + +build() { + cd $srcdir + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdegames-bomber() { + pkgdesc='Arcade Bombing Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/bomber/" + install='kdegames.install' + cd $srcdir/build/bomber + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/bomber + make DESTDIR=$pkgdir install +} + +package_kdegames-bovo() { + pkgdesc='Five-in-a-row Board Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/bovo/" + install='kdegames.install' + cd $srcdir/build/bovo + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/bovo + make DESTDIR=$pkgdir install +} + +package_kdegames-granatier() { + pkgdesc='Granatier' + depends=('kdebase-runtime' 'kdegames-libkdegames' 'openal') + url="http://kde.org/applications/games/granatier/" + install='kdegames.install' + cd $srcdir/build/granatier + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/granatier + make DESTDIR=$pkgdir install +} + +package_kdegames-kajongg() { + pkgdesc='The ancient Chinese board game for 4 players' + depends=('kdegames-libkdegames' 'kdegames-libkmahjongg' 'kdebindings-python' 'twisted') + install='kdegames.install' + cd $srcdir/build/kajongg + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kajongg + make DESTDIR=$pkgdir install + + # Use the python2 executable + find "${pkgdir}" -name '*.py' | xargs sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' +} + +package_kdegames-kapman() { + pkgdesc='Eat pills escaping ghosts' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kapman/" + install='kdegames.install' + cd $srcdir/build/kapman + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kapman + make DESTDIR=$pkgdir install +} + +package_kdegames-katomic() { + pkgdesc='Sokoban-like Logic Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/katomic/" + install='kdegames.install' + cd $srcdir/build/katomic + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/katomic + make DESTDIR=$pkgdir install +} + +package_kdegames-kbattleship() { + pkgdesc='Battleship Game' + depends=('kdebase-runtime' 'kdegames-libkdegames' 'ggz-client-libs') + url="http://kde.org/applications/games/kbattleship/" + install='kdegames-kbattleship.install' + cd $srcdir/build/kbattleship + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kbattleship + make DESTDIR=$pkgdir install + install -D -m644 $srcdir/${pkgbase}-${pkgver}/kbattleship/src/module.dsc \ + $pkgdir/usr/share/ggz/kbattleship.dsc +} + +package_kdegames-kblackbox() { + pkgdesc='Blackbox Logic Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kblackbox/" + install='kdegames.install' + cd $srcdir/build/kblackbox + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kblackbox + make DESTDIR=$pkgdir install +} + +package_kdegames-kblocks() { + pkgdesc='Falling Blocks Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kblocks/" + install='kdegames.install' + cd $srcdir/build/kblocks + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kblocks + make DESTDIR=$pkgdir install +} + +package_kdegames-kbounce() { + pkgdesc='Ball Bouncing Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kbounce/" + install='kdegames.install' + cd $srcdir/build/kbounce + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kbounce + make DESTDIR=$pkgdir install +} + +package_kdegames-kbreakout() { + pkgdesc='Breakout-like Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kbreakout/" + install='kdegames.install' + cd $srcdir/build/kbreakout + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kbreakout + make DESTDIR=$pkgdir install +} + +package_kdegames-kdiamond() { + pkgdesc='Three-in-a-row game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kdiamond/" + install='kdegames.install' + cd $srcdir/build/kdiamond + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kdiamond + make DESTDIR=$pkgdir install +} + +package_kdegames-kfourinline() { + pkgdesc='Four-in-a-row Board Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kfourinline/" + install='kdegames-kfourinline.install' + cd $srcdir/build/kfourinline + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kfourinline + make DESTDIR=$pkgdir install +} + +package_kdegames-kgoldrunner() { + pkgdesc='A game of action and puzzle-solving' + depends=('kdebase-runtime' 'kdegames-libkdegames' 'openal') + url="http://kde.org/applications/games/kgoldrunner/" + install='kdegames.install' + cd $srcdir/build/kgoldrunner + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kgoldrunner + make DESTDIR=$pkgdir install +} + +package_kdegames-kigo() { + pkgdesc='Go Board Game' + depends=('kdebase-runtime' 'kdegames-libkdegames' 'gnugo') + url="http://kde.org/applications/games/kigo/" + install='kdegames-kigo.install' + cd $srcdir/build/kigo + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kigo + make DESTDIR=$pkgdir install +} + +package_kdegames-killbots() { + pkgdesc='Killbots' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/killbots/" + install='kdegames.install' + cd $srcdir/build/killbots + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/killbots + make DESTDIR=$pkgdir install +} + +package_kdegames-kiriki() { + pkgdesc='Yahtzee-like Dice Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kiriki/" + install='kdegames.install' + cd $srcdir/build/kiriki + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kiriki + make DESTDIR=$pkgdir install +} + +package_kdegames-kjumpingcube() { + pkgdesc='Territory Capture Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kjumpingcube/" + install='kdegames.install' + cd $srcdir/build/kjumpingcube + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kjumpingcube + make DESTDIR=$pkgdir install +} + +package_kdegames-klickety() { + pkgdesc='Board Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + replaces=('kdegames-ksame') + conflicts=('kdegames-ksame') + url="http://kde.org/applications/games/ksame/" + install='kdegames.install' + cd $srcdir/build/klickety + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/klickety + make DESTDIR=$pkgdir install +} + +package_kdegames-klines() { + pkgdesc='Tactical Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/klines/" + install='kdegames.install' + cd $srcdir/build/klines + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/klines + make DESTDIR=$pkgdir install +} + +package_kdegames-kmahjongg() { + pkgdesc='Mahjongg Solitaire' + depends=('kdebase-runtime' 'kdegames-libkdegames' 'kdegames-libkmahjongg') + url="http://kde.org/applications/games/kmahjongg/" + install='kdegames.install' + cd $srcdir/build/kmahjongg + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kmahjongg + make DESTDIR=$pkgdir install +} + +package_kdegames-kmines() { + pkgdesc='Minesweeper-like Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kmines/" + install='kdegames.install' + cd $srcdir/build/kmines + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kmines + make DESTDIR=$pkgdir install +} + +package_kdegames-knetwalk() { + pkgdesc='Network Construction Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/knetwalk/" + install='kdegames.install' + cd $srcdir/build/knetwalk + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/knetwalk + make DESTDIR=$pkgdir install +} + +package_kdegames-kolf() { + pkgdesc='Miniature Golf' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kolf/" + install='kdegames-kolf.install' + cd $srcdir/build/kolf + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kolf + make DESTDIR=$pkgdir install +} + +package_kdegames-kollision() { + pkgdesc='A simple ball dodging game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kollision/" + install='kdegames.install' + cd $srcdir/build/kollision + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kollision + make DESTDIR=$pkgdir install +} + +package_kdegames-konquest() { + pkgdesc='Galactic Strategy Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/konquest/" + install='kdegames.install' + cd $srcdir/build/konquest + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/konquest + make DESTDIR=$pkgdir install +} + +package_kdegames-kpatience() { + pkgdesc='Patience Card Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kpatience/" + install='kdegames.install' + replaces=('kdegames-kpat') + cd $srcdir/build/kpat + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kpat + make DESTDIR=$pkgdir install +} + +package_kdegames-kreversi() { + pkgdesc='Reversi Board Game' + depends=('kdebase-runtime' 'kdegames-libkdegames' 'ggz-client-libs') + url="http://kde.org/applications/games/kreversi/" + install='kdegames-kreversi.install' + cd $srcdir/build/kreversi + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kreversi + make DESTDIR=$pkgdir install + install -D -m644 $srcdir/${pkgbase}-${pkgver}/kreversi/module.dsc \ + $pkgdir/usr/share/ggz/kreversi.dsc +} + +package_kdegames-kshisen() { + pkgdesc='Shisen-Sho Mahjongg-like Tile Game' + depends=('kdebase-runtime' 'kdegames-libkdegames' 'kdegames-libkmahjongg') + url="http://kde.org/applications/games/kshisen/" + install='kdegames.install' + cd $srcdir/build/kshisen + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kshisen + make DESTDIR=$pkgdir install +} + +package_kdegames-ksirk() { + pkgdesc='World Domination Strategy Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/ksirk/" + install='kdegames.install' + cd $srcdir/build/ksirk + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/ksirk + make DESTDIR=$pkgdir install +} + +package_kdegames-kspaceduel() { + pkgdesc='Space Arcade Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kspaceduel/" + install='kdegames-kspaceduel.install' + cd $srcdir/build/kspaceduel + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kspaceduel + make DESTDIR=$pkgdir install +} + +package_kdegames-ksquares() { + pkgdesc='Connect the dots to create squares' + depends=('kdebase-runtime' 'kdegames-libkdegames' 'ggz-client-libs') + url="http://kde.org/applications/games/ksquares/" + install='kdegames-ksquares.install' + cd $srcdir/build/ksquares + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/ksquares + make DESTDIR=$pkgdir install + install -D -m644 $srcdir/${pkgbase}-${pkgver}/ksquares/src/module.dsc \ + $pkgdir/usr/share/ggz/ksquares.dsc +} + +package_kdegames-ksudoku() { + pkgdesc='KSudoku, Sudoku game & more for KDE' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/ksudoku/" + install='kdegames.install' + cd $srcdir/build/ksudoku + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/ksudoku + make DESTDIR=$pkgdir install +} + +package_kdegames-ktron() { + pkgdesc='Tron-like Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/ktron/" + install='kdegames.install' + cd $srcdir/build/ktron + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/ktron + make DESTDIR=$pkgdir install +} + +package_kdegames-ktuberling() { + pkgdesc='Picture Game for Children' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/ktuberling/" + install='kdegames-ktuberling.install' + cd $srcdir/build/ktuberling + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/ktuberling + make DESTDIR=$pkgdir install +} + +package_kdegames-kubrick() { + pkgdesc='A 3-D game based on Rubik´s Cube' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/kubrick/" + install='kdegames.install' + cd $srcdir/build/kubrick + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kubrick + make DESTDIR=$pkgdir install +} + +package_kdegames-libkdegames() { + pkgdesc='KDE game library' + groups=() + depends=('kdelibs') + cd $srcdir/build/libkdegames + make DESTDIR=$pkgdir install + for i in $srcdir/${pkgbase}-${pkgver}/cmake/modules/*.cmake; do + install -D -m644 $i $pkgdir/usr/share/apps/cmake/modules/$(basename $i) + done +} + +package_kdegames-libkmahjongg() { + pkgdesc='Library used for loading and rendering of Mahjongg tilesets' + groups=() + depends=('kdelibs') + cd $srcdir/build/libkmahjongg + make DESTDIR=$pkgdir install +} + +package_kdegames-lskat() { + pkgdesc='Card Game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/lskat/" + install='kdegames-lskat.install' + cd $srcdir/build/lskat + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/lskat + make DESTDIR=$pkgdir install +} + +package_kdegames-palapeli() { + pkgdesc='Jigsaw puzzle game' + depends=('kdebase-runtime' 'kdegames-libkdegames') + url="http://kde.org/applications/games/palapeli/" + install='kdegames-palapeli.install' + cd $srcdir/build/palapeli + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/palapeli + make DESTDIR=$pkgdir install +} diff --git a/staging/kdegames/kdegames-kbattleship.install b/staging/kdegames/kdegames-kbattleship.install new file mode 100644 index 000000000..ac4516ed0 --- /dev/null +++ b/staging/kdegames/kdegames-kbattleship.install @@ -0,0 +1,24 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q + ggz-config -i -f -m usr/share/ggz/kbattleship.dsc >& /dev/null +} + +pre_remove() { + if [ -f usr/share/ggz/kbattleship.dsc ]; then + ggz-config -r -m usr/share/ggz/kbattleship.dsc >& /dev/null + fi +} + +pre_upgrade() { + pre_remove +} + +post_upgrade() { + post_install +} + +post_remove() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} diff --git a/staging/kdegames/kdegames-kfourinline.install b/staging/kdegames/kdegames-kfourinline.install new file mode 100644 index 000000000..9b20edb30 --- /dev/null +++ b/staging/kdegames/kdegames-kfourinline.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdegames/kdegames-kigo.install b/staging/kdegames/kdegames-kigo.install new file mode 100644 index 000000000..9b20edb30 --- /dev/null +++ b/staging/kdegames/kdegames-kigo.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdegames/kdegames-kolf.install b/staging/kdegames/kdegames-kolf.install new file mode 100644 index 000000000..9b20edb30 --- /dev/null +++ b/staging/kdegames/kdegames-kolf.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdegames/kdegames-kreversi.install b/staging/kdegames/kdegames-kreversi.install new file mode 100644 index 000000000..4623e6e49 --- /dev/null +++ b/staging/kdegames/kdegames-kreversi.install @@ -0,0 +1,22 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + ggz-config -i -f -m usr/share/ggz/kreversi.dsc >& /dev/null +} + +pre_remove() { + if [ -f usr/share/ggz/kreversi.dsc ]; then + ggz-config -r -m usr/share/ggz/kreversi.dsc >& /dev/null + fi +} + +pre_upgrade() { + pre_remove +} + +post_upgrade() { + post_install +} + +post_remove() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} diff --git a/staging/kdegames/kdegames-kspaceduel.install b/staging/kdegames/kdegames-kspaceduel.install new file mode 100644 index 000000000..9b20edb30 --- /dev/null +++ b/staging/kdegames/kdegames-kspaceduel.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdegames/kdegames-ksquares.install b/staging/kdegames/kdegames-ksquares.install new file mode 100644 index 000000000..5a619897d --- /dev/null +++ b/staging/kdegames/kdegames-ksquares.install @@ -0,0 +1,22 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + ggz-config -i -f -m usr/share/ggz/ksquares.dsc >& /dev/null +} + +pre_remove() { + if [ -f usr/share/ggz/ksquares.dsc ]; then + ggz-config -r -m usr/share/ggz/ksquares.dsc >& /dev/null + fi +} + +pre_upgrade() { + pre_remove +} + +post_upgrade() { + post_install +} + +post_remove() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} diff --git a/staging/kdegames/kdegames-ktuberling.install b/staging/kdegames/kdegames-ktuberling.install new file mode 100644 index 000000000..9b20edb30 --- /dev/null +++ b/staging/kdegames/kdegames-ktuberling.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdegames/kdegames-lskat.install b/staging/kdegames/kdegames-lskat.install new file mode 100644 index 000000000..9b20edb30 --- /dev/null +++ b/staging/kdegames/kdegames-lskat.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdegames/kdegames-palapeli.install b/staging/kdegames/kdegames-palapeli.install new file mode 100644 index 000000000..c77e68041 --- /dev/null +++ b/staging/kdegames/kdegames-palapeli.install @@ -0,0 +1,13 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdegames/kdegames.install b/staging/kdegames/kdegames.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdegames/kdegames.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdegraphics/PKGBUILD b/staging/kdegraphics/PKGBUILD new file mode 100644 index 000000000..37ac0ab2e --- /dev/null +++ b/staging/kdegraphics/PKGBUILD @@ -0,0 +1,141 @@ +# $Id: PKGBUILD 130500 2011-07-06 23:50:56Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdegraphics +pkgname=('kdegraphics-gwenview' + 'kdegraphics-kamera' + 'kdegraphics-kcolorchooser' + 'kdegraphics-kgamma' + 'kdegraphics-kolourpaint' + 'kdegraphics-kruler' + 'kdegraphics-ksnapshot' + 'kdegraphics-libs' + 'kdegraphics-okular') +pkgver=4.6.5 +pkgrel=2 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdegraphics') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'qimageblitz' 'sane' 'lcms' + 'libxxf86vm' 'poppler-qt' 'libspectre' 'chmlib' 'djvulibre' + 'ebook-tools' 'kdebase-runtime') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('1e64698993d0754dfae1296d8d16ba9370f9a08c') + +build() { + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdegraphics-gwenview() { + pkgdesc='A simple image viewer' + depends=('kdebase-runtime' 'kdegraphics-libs') + url="http://kde.org/applications/graphics/gwenview/" + replaces=('gwenview' 'gwenview-i18n') + install='kdegraphics.install' + cd $srcdir/build/gwenview + make DESTDIR=$pkgdir install + cd $srcdir/build/gwenview/doc + make DESTDIR=$pkgdir install +} + +package_kdegraphics-kamera() { + pkgdesc='Configure Kamera' + depends=('kdelibs' 'libgphoto2') + cd $srcdir/build/kamera + make DESTDIR=$pkgdir install + cd $srcdir/build/kamera/doc + make DESTDIR=$pkgdir install +} + +package_kdegraphics-kcolorchooser() { + pkgdesc='Color Chooser' + depends=('kdebase-runtime') + url="http://kde.org/applications/graphics/kcolorchooser/" + install='kdegraphics.install' + cd $srcdir/build/kcolorchooser + make DESTDIR=$pkgdir install +} + +package_kdegraphics-kgamma() { + pkgdesc='A monitor calibration tool' + # note on libxxf86vm: + # not detected by namcap because libgl depends on it + # but nvidia providing libgl does not depend on libxxf86vm + depends=('kdebase-runtime' 'libxxf86vm') + install='kdegraphics.install' + cd $srcdir/build/kgamma + make DESTDIR=$pkgdir install + cd $srcdir/build/kgamma/doc + make DESTDIR=$pkgdir install +} + +package_kdegraphics-kolourpaint() { + pkgdesc='Paint Program' + depends=('kdebase-runtime' 'qimageblitz' 'kdegraphics-libs') + url="http://kde.org/applications/graphics/kolourpaint/" + install='kdegraphics.install' + cd $srcdir/build/kolourpaint + make DESTDIR=$pkgdir install + cd $srcdir/build/kolourpaint/doc + make DESTDIR=$pkgdir install +} + +package_kdegraphics-kruler() { + pkgdesc='Screen Ruler' + depends=('kdebase-runtime') + url="http://kde.org/applications/graphics/kruler/" + install='kdegraphics.install' + cd $srcdir/build/kruler + make DESTDIR=$pkgdir install + cd $srcdir/build/kruler/doc + make DESTDIR=$pkgdir install +} + +package_kdegraphics-ksnapshot() { + pkgdesc='Screen Capture Program' + depends=('kdebase-runtime' 'kdegraphics-libs') + url="http://kde.org/applications/graphics/ksnapshot/" + install='kdegraphics.install' + cd $srcdir/build/ksnapshot + make DESTDIR=$pkgdir install + cd $srcdir/build/ksnapshot/doc + make DESTDIR=$pkgdir install +} + +package_kdegraphics-libs() { + pkgdesc='Support library for KDE Graphics Software' + groups=() + depends=('kdelibs' 'sane' 'lcms') + conflicts=('kdegraphics-ksaneplugin' 'kdegraphics-strigi-analyzer' + 'kdegraphics-svgpart' 'kdegraphics-thumbnailers') + replaces=('libkexiv2' 'libkdcraw' 'kdegraphics-ksaneplugin' + 'kdegraphics-strigi-analyzer' 'kdegraphics-svgpart' 'kdegraphics-thumbnailers') + install='kdegraphics.install' + for i in libs ksaneplugin strigi-analyzer svgpart thumbnailers; do + cd $srcdir/build/${i} + make DESTDIR=$pkgdir install + done + install -D -m644 $srcdir/${pkgbase}-${pkgver}/cmake/modules/FindKSane.cmake \ + $pkgdir/usr/share/apps/cmake/modules/FindKSane.cmake +} + +package_kdegraphics-okular() { + pkgdesc='Document Viewer' + depends=('kdebase-runtime' 'qimageblitz' 'poppler-qt' 'chmlib' 'djvulibre' + 'ebook-tools' 'libspectre') + url="http://kde.org/applications/graphics/okular/" + install='kdegraphics.install' + cd $srcdir/build/okular + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/okular + make DESTDIR=$pkgdir install +} diff --git a/staging/kdegraphics/kdegraphics.install b/staging/kdegraphics/kdegraphics.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdegraphics/kdegraphics.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdelibs/PKGBUILD b/staging/kdelibs/PKGBUILD new file mode 100644 index 000000000..ab89b60f9 --- /dev/null +++ b/staging/kdelibs/PKGBUILD @@ -0,0 +1,63 @@ +# $Id: PKGBUILD 130249 2011-07-04 19:26:50Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgname=kdelibs +pkgver=4.6.5 +pkgrel=1 +pkgdesc="KDE Core Libraries" +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +depends=('strigi' 'attica' 'libxss' 'xz' 'openssl' 'soprano' 'krb5' + 'shared-desktop-ontologies' 'qca' 'libdbusmenu-qt' 'polkit-qt' 'grantlee' + 'shared-mime-info' 'enchant' 'giflib' 'jasper' 'openexr' 'xdg-utils' + 'phonon' 'hicolor-icon-theme' 'upower' 'udisks' 'libxcursor' + 'docbook-xsl') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'intltool' 'avahi' 'libgl' + 'hspell') +replaces=('arts' 'kdelibs-experimental') +install='kdelibs.install' +source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2" + 'kde-applications-menu.patch' 'archlinux-menu.patch' + 'abs-syntax-highlight.patch') +sha1sums=('9bb948769a3a5d4d5b6c65e84a8cf570bd7bc120' + '86ee8c8660f19de8141ac99cd6943964d97a1ed7' + '63a850ab4196b9d06934f2b4a13acd9f7739bc67' + 'd994f262356af5b9e4e9619646e471bd98c91efb') + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + # avoid file conflict with gnome-menu + patch -p1 -i $srcdir/kde-applications-menu.patch + # add Archlinux menu entry + patch -p1 -i $srcdir/archlinux-menu.patch + # add syntax highlightning for PKGBUILD and .install files + patch -p1 -i $srcdir/abs-syntax-highlight.patch + + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DKDE_DISTRIBUTION_TEXT='Arch Linux' \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DSYSCONF_INSTALL_DIR=/etc \ + -DHTML_INSTALL_DIR=/usr/share/doc/kde/html \ + -DKDE_DEFAULT_HOME='.kde4' \ + -DWITH_FAM=OFF \ + -DKAUTH_BACKEND=PolkitQt-1 + make +} + +package() { + cd $srcdir/build + make DESTDIR=$pkgdir install + + # cert bundle seems to be hardcoded + # link it to the one from ca-certificates + rm -f $pkgdir/usr/share/apps/kssl/ca-bundle.crt + ln -sf /etc/ssl/certs/ca-certificates.crt $pkgdir/usr/share/apps/kssl/ca-bundle.crt +} diff --git a/staging/kdelibs/abs-syntax-highlight.patch b/staging/kdelibs/abs-syntax-highlight.patch new file mode 100644 index 000000000..477479a9b --- /dev/null +++ b/staging/kdelibs/abs-syntax-highlight.patch @@ -0,0 +1,12 @@ +diff -Nura kdelibs-4.3.0.orig/kate/syntax/data/bash.xml kdelibs-4.3.0/kate/syntax/data/bash.xml +--- kdelibs-4.3.0.orig/kate/syntax/data/bash.xml 2009-04-15 12:26:37.000000000 +0200 ++++ kdelibs-4.3.0/kate/syntax/data/bash.xml 2009-07-30 13:24:01.000000000 +0200 +@@ -8,7 +8,7 @@ + <!ENTITY noword "(?![\w$+-])"> <!-- no word, $, + or - following --> + <!ENTITY pathpart "([\w_@.%*?+-]|\\ )"> <!-- valid character in a file name --> + ]> +-<language name="Bash" version="2.12" kateversion="2.4" section="Scripts" extensions="*.sh;*.bash;*.ebuild;*.eclass;.bashrc;.bash_profile;.bash_login;.profile" mimetype="application/x-shellscript" casesensitive="1" author="Wilbert Berendsen (wilbert@kde.nl)" license="LGPL"> ++<language name="Bash" version="2.12" kateversion="2.4" section="Scripts" extensions="*.sh;*.bash;*.ebuild;*.eclass;.bashrc;.bash_profile;.bash_login;.profile;PKGBUILD;*.install" mimetype="application/x-shellscript" casesensitive="1" author="Wilbert Berendsen (wilbert@kde.nl)" license="LGPL"> + + <!-- (c) 2004 by Wilbert Berendsen (wilbert@kde.nl) + Changes by Matthew Woehlke (mw_triad@users.sourceforge.net) diff --git a/staging/kdelibs/archlinux-menu.patch b/staging/kdelibs/archlinux-menu.patch new file mode 100644 index 000000000..546784fa2 --- /dev/null +++ b/staging/kdelibs/archlinux-menu.patch @@ -0,0 +1,22 @@ +--- kdelibs-4.3.98/kded/applications.menu 2010-01-31 19:28:11.000000000 +0000 ++++ kdelibs-4.3.98/kded/applications.menu 2010-01-31 22:25:53.556043077 +0000 +@@ -16,11 +16,19 @@ + </DefaultLayout> + <Layout> + <Merge type="menus"/> ++ <Menuname>Arch Linux</Menuname> + <Menuname>Applications</Menuname> + <Merge type="files"/> + </Layout> + + <Menu> ++ <Name>Arch Linux</Name> ++ <Directory>Archlinux.directory</Directory> ++ <Include> ++ <Category>Archlinux</Category> ++ </Include> ++ </Menu> ++ <Menu> + <Name>Applications</Name> + <Directory>kde-unknown.directory</Directory> + <OnlyUnallocated/> diff --git a/staging/kdelibs/kde-applications-menu.patch b/staging/kdelibs/kde-applications-menu.patch new file mode 100644 index 000000000..4b513298a --- /dev/null +++ b/staging/kdelibs/kde-applications-menu.patch @@ -0,0 +1,22 @@ +--- kdelibs-4.3.98/kded/CMakeLists.txt 2009-10-02 14:55:17.000000000 +0000 ++++ kdelibs-4.3.98/kded/CMakeLists.txt 2010-01-31 22:16:13.946933892 +0000 +@@ -69,7 +69,7 @@ + if (WIN32) + install( FILES applications.menu DESTINATION ${SHARE_INSTALL_PREFIX}/xdg/menus ) + else (WIN32) +-install( FILES applications.menu DESTINATION ${SYSCONF_INSTALL_DIR}/xdg/menus ) ++install( FILES applications.menu DESTINATION ${SYSCONF_INSTALL_DIR}/xdg/menus RENAME kde-applications.menu ) + endif (WIN32) + install( FILES kdedmodule.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} ) + install( FILES kded.upd DESTINATION ${DATA_INSTALL_DIR}/kconf_update ) +--- kdelibs-4.3.98/kded/kbuildsycoca.cpp 2009-12-04 23:10:18.000000000 +0000 ++++ kdelibs-4.3.98/kded/kbuildsycoca.cpp 2010-01-31 22:16:13.962766572 +0000 +@@ -302,7 +302,7 @@ + if (!m_trackId.isEmpty()) + g_vfolder->setTrackId(m_trackId); + +- VFolderMenu::SubMenu *kdeMenu = g_vfolder->parseMenu("applications.menu", true); ++ VFolderMenu::SubMenu *kdeMenu = g_vfolder->parseMenu("kde-applications.menu", true); + + KServiceGroup::Ptr entry = g_bsgf->addNew("/", kdeMenu->directoryFile, KServiceGroup::Ptr(), false); + entry->setLayoutInfo(kdeMenu->layoutList); diff --git a/staging/kdelibs/kdelibs.install b/staging/kdelibs/kdelibs.install new file mode 100644 index 000000000..ce5c32e1b --- /dev/null +++ b/staging/kdelibs/kdelibs.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +}
\ No newline at end of file diff --git a/staging/kdemultimedia/PKGBUILD b/staging/kdemultimedia/PKGBUILD new file mode 100644 index 000000000..85973e455 --- /dev/null +++ b/staging/kdemultimedia/PKGBUILD @@ -0,0 +1,109 @@ +# $Id: PKGBUILD 130262 2011-07-04 19:27:51Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdemultimedia +pkgname=('kdemultimedia-dragonplayer' + 'kdemultimedia-ffmpegthumbs' + 'kdemultimedia-juk' + 'kdemultimedia-kioslave' + 'kdemultimedia-kmix' + 'kdemultimedia-kscd' + 'kdemultimedia-mplayerthumbs') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdemultimedia') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'kdebase-runtime' 'tunepimp' + 'ffmpeg' 'mplayer' 'pulseaudio' 'libmusicbrainz3') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2" + 'mplayerthumbs.config') +sha1sums=('081bead5ee758d169f3119c138424929b001d04f' + 'ba016fa2563c14ffcba852c62506b66bfc6ee683') + +build() { + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DWITH_Xine=OFF + make +} + +package_kdemultimedia-dragonplayer() { + pkgdesc='Video Player' + depends=('kdebase-runtime') + url="http://kde.org/applications/multimedia/dragonplayer/" + install='kdemultimedia.install' + cd $srcdir/build/dragonplayer + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/dragonplayer + make DESTDIR=$pkgdir install +} + +package_kdemultimedia-ffmpegthumbs() { + pkgdesc='Video Files (ffmpegthumbs)' + depends=('kdebase-runtime' 'ffmpeg') + install='kdemultimedia.install' + cd $srcdir/build/ffmpegthumbs + make DESTDIR=$pkgdir install +} + +package_kdemultimedia-juk() { + pkgdesc='Music Player' + depends=('kdebase-runtime' 'tunepimp') + url="http://kde.org/applications/multimedia/juk" + install='kdemultimedia.install' + cd $srcdir/build/juk + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/juk + make DESTDIR=$pkgdir install +} + +package_kdemultimedia-kioslave() { + pkgdesc='Audio CD Browser' + depends=('kdelibs' 'libmusicbrainz3' 'cdparanoia') + conflicts=('kdemultimedia-libkcddb' 'kdemultimedia-libkcompactdisc') + replaces=('kdemultimedia-libkcddb' 'kdemultimedia-libkcompactdisc') + for i in kioslave doc/kioslave libkcddb libkcompactdisc; do + cd $srcdir/build/${i} + make DESTDIR=$pkgdir install + done +} + +package_kdemultimedia-kmix() { + pkgdesc='Sound Mixer' + depends=('kdebase-runtime') + url="http://kde.org/applications/multimedia/kmix" + install='kdemultimedia.install' + cd $srcdir/build/kmix + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kmix + make DESTDIR=$pkgdir install +} + +package_kdemultimedia-kscd() { + pkgdesc='CD Player' + depends=('kdebase-runtime' 'libmusicbrainz3') + url="http://kde.org/applications/multimedia/kscd" + install='kdemultimedia.install' + cd $srcdir/build/kscd + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kcontrol/cddbretrieval + make DESTDIR=$pkgdir install +} + +package_kdemultimedia-mplayerthumbs() { + pkgdesc='Video Files (MPlayerThumbs)' + depends=('kdebase-runtime' 'mplayer') + replaces=('mplayerthumbs') + conflicts=('mplayerthumbs') + cd $srcdir/build/mplayerthumbs + make DESTDIR=$pkgdir install + install -D -m644 $srcdir/mplayerthumbs.config $pkgdir/usr/share/config/mplayerthumbs +} diff --git a/staging/kdemultimedia/kdemultimedia.install b/staging/kdemultimedia/kdemultimedia.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdemultimedia/kdemultimedia.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdemultimedia/mplayerthumbs.config b/staging/kdemultimedia/mplayerthumbs.config new file mode 100644 index 000000000..761a17953 --- /dev/null +++ b/staging/kdemultimedia/mplayerthumbs.config @@ -0,0 +1,2 @@ +[MPlayerThumbsCfg] +backend=0 diff --git a/staging/kdenetwork/PKGBUILD b/staging/kdenetwork/PKGBUILD new file mode 100644 index 000000000..78a73889b --- /dev/null +++ b/staging/kdenetwork/PKGBUILD @@ -0,0 +1,115 @@ +# $Id: PKGBUILD 130263 2011-07-04 19:27:58Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdenetwork +pkgname=('kdenetwork-filesharing' + 'kdenetwork-kdnssd' + 'kdenetwork-kget' + 'kdenetwork-kopete' + 'kdenetwork-kppp' + 'kdenetwork-krdc' + 'kdenetwork-krfb') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdenetwork') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'speex' 'ortp' 'libotr' + 'qca-ossl' 'kdebase-workspace' 'kdebase-lib' 'libvncserver' 'libmsn' + 'ppp' 'v4l-utils' 'libidn' 'rdesktop' 'qimageblitz' 'libxdamage' 'libgadu' + 'telepathy-qt4' 'libktorrent' 'mediastreamer') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('cc398063da61f9f9ef0db4455dc0c989a4e68a25') + +build() { + cd "${srcdir}" + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DMOZPLUGIN_INSTALL_DIR=/usr/lib/mozilla/plugins/ \ + -DWITH_Xmms=OFF \ + -DWITH_LibMeanwhile=OFF \ + -DWITH_msiLBC=OFF + make +} + +package_kdenetwork-filesharing() { + pkgdesc='Konqueror properties dialog plugin to share a directory with the local network' + depends=('kdelibs' 'smbclient') + install='kdenetwork.install' + cd $srcdir/build/filesharing + make DESTDIR=$pkgdir install +} + +package_kdenetwork-kdnssd() { + pkgdesc='Monitors the network for DNS-SD services' + depends=('kdelibs') + cd $srcdir/build/kdnssd + make DESTDIR=$pkgdir install +} + +package_kdenetwork-kget() { + pkgdesc='Download Manager' + depends=('kdebase-workspace' 'kdebase-lib' 'libktorrent') + optdepends=('python2: YouTube plugin') + url="http://kde.org/applications/internet/kget/" + install='kdenetwork.install' + cd $srcdir/build/kget + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kget + make DESTDIR=$pkgdir install + + # Use the python2 executable + find ${pkgdir} -name '*.py' | xargs sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' +} + +package_kdenetwork-kopete() { + pkgdesc='Instant Messenger' + depends=('kdebase-runtime' 'kdepimlibs' 'qca-ossl' 'libotr' 'libmsn' + 'libidn' 'qimageblitz' 'v4l-utils' 'libgadu' 'mediastreamer') + url="http://kde.org/applications/internet/kopete/" + install='kdenetwork.install' + cd $srcdir/build/kopete + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kopete + make DESTDIR=$pkgdir install +} + +package_kdenetwork-kppp() { + pkgdesc='Internet Dial-Up Tool' + depends=('kdebase-runtime' 'ppp') + url="http://kde.org/applications/internet/kppp/" + install='kdenetwork.install' + cd $srcdir/build/kppp + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kppp + make DESTDIR=$pkgdir install +} + +package_kdenetwork-krdc() { + pkgdesc='Remote Desktop Client' + depends=('kdebase-runtime' 'libvncserver' 'rdesktop' 'telepathy-qt4') + optdepends=('kdebase-keditbookmarks: to edit bookmarks') + url="http://kde.org/applications/internet/krdc/" + cd $srcdir/build/krdc + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/krdc + make DESTDIR=$pkgdir install +} + +package_kdenetwork-krfb() { + pkgdesc='Desktop Sharing' + # note on libxdamage: + # not detected by namcap because libgl depends on it + # but nvidia providing libgl does not depend on libxdamage + depends=('kdebase-runtime' 'libvncserver' 'libxdamage') + cd $srcdir/build/krfb + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/krfb + make DESTDIR=$pkgdir install +} diff --git a/staging/kdenetwork/kdenetwork.install b/staging/kdenetwork/kdenetwork.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdenetwork/kdenetwork.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdepim-runtime/PKGBUILD b/staging/kdepim-runtime/PKGBUILD new file mode 100644 index 000000000..c53892f01 --- /dev/null +++ b/staging/kdepim-runtime/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 130494 2011-07-06 23:34:26Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgname=kdepim-runtime +pkgver=4.6.1 +pkgrel=1 +pkgdesc='KDE PIM Runtime Environment' +arch=('i686' 'x86_64') +url='http://pim.kde.org' +license=('GPL' 'LGPL' 'FDL') +depends=('kdepimlibs' 'kdebase-runtime') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost') +install=${pkgname}.install +source=("http://download.kde.org/stable/kdepim-${pkgver}/src/${pkgname}-${pkgver}.tar.bz2" + 'disable-l10n.patch') +sha1sums=('e416ffd0142c720a779b4eb2e4a841ca751efdce' + 'd4f8c39911cf288973a30d4b71087906ebb26359') + +build() { + cd "${srcdir}"/${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/disable-l10n.patch + + cd "${srcdir}" + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package() { + cd "${srcdir}"/build + make DESTDIR="${pkgdir}" install +} diff --git a/staging/kdepim-runtime/disable-l10n.patch b/staging/kdepim-runtime/disable-l10n.patch new file mode 100644 index 000000000..b49cd54a8 --- /dev/null +++ b/staging/kdepim-runtime/disable-l10n.patch @@ -0,0 +1,10 @@ +--- kdepim-runtime-4.6.0/CMakeLists.txt~ 2011-06-10 16:49:12.130427269 +0000 ++++ kdepim-runtime-4.6.0/CMakeLists.txt 2011-06-10 16:56:52.871414776 +0000 +@@ -194,7 +194,3 @@ + update_xdg_mimetypes(${XDG_MIME_INSTALL_DIR}) + + macro_display_feature_log() +- +-find_package(Msgfmt REQUIRED) +-find_package(Gettext REQUIRED) +-add_subdirectory(po) diff --git a/staging/kdepim-runtime/kdepim-runtime.install b/staging/kdepim-runtime/kdepim-runtime.install new file mode 100644 index 000000000..c77e68041 --- /dev/null +++ b/staging/kdepim-runtime/kdepim-runtime.install @@ -0,0 +1,13 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdepim/PKGBUILD b/staging/kdepim/PKGBUILD new file mode 100644 index 000000000..210df38c0 --- /dev/null +++ b/staging/kdepim/PKGBUILD @@ -0,0 +1,258 @@ +# $Id: PKGBUILD 130497 2011-07-06 23:35:24Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdepim +pkgname=('kdepim-akonadiconsole' + 'kdepim-akregator' + 'kdepim-blogilo' + 'kdepim-console' + 'kdepim-kaddressbook' + 'kdepim-kalarm' + 'kdepim-kjots' + 'kdepim-kleopatra' + 'kdepim-kmail' + 'kdepim-knode' + 'kdepim-knotes' + 'kdepim-kontact' + 'kdepim-korganizer' + 'kdepim-kresources' + 'kdepim-ktimetracker' + 'kdepim-libkdepim' + 'kdepim-wizards') +pkgver=4.6.1 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://pim.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdepim') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'kdepim-runtime' 'libxss' + 'pilot-link' 'kde-agent') +source=("http://download.kde.org/stable/${pkgbase}-${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2" + 'disable-l10n.patch') +sha1sums=('aa4dc75d33b3aa105e3f3b2f41e9d87b57cbf20a' + 'f52c8d3918e3cd6d8e0180af243333ee2d87d382') + +build() { + cd "${srcdir}"/${pkgbase}-${pkgver} + patch -p1 -i "${srcdir}"/disable-l10n.patch + + cd "${srcdir}" + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DKDEPIM_BUILD_MOBILE=OFF + make +} + +package_kdepim-akonadiconsole() { + pkgdesc='Akonadi Management and Debugging Console' + depends=('kdepim-libkdepim') + url='http://pim.kde.org' + install='kdepim.install' + cd "${srcdir}"/build/akonadiconsole + make DESTDIR="${pkgdir}" install +} + +package_kdepim-akregator() { + pkgdesc='A Feed Reader for KDE' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/internet/akregator/" + install='kdepim.install' + cd "${srcdir}"/build/akregator + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/akregator + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/kontact/plugins/akregator + make DESTDIR="${pkgdir}" install +} + +package_kdepim-blogilo() { + pkgdesc='A KDE Blogging Client' + depends=('kdepim-runtime') + url="http://kde.org/applications/internet/blogilo/" + replaces=('blogilo') + conflicts=('blogilo') + install='kdepim.install' + cd "${srcdir}"/build/blogilo + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/blogilo + make DESTDIR="${pkgdir}" install +} + +package_kdepim-console() { + pkgdesc='Command line tool for accessing calendar files' + depends=('kdepim-runtime') + url='http://pim.kde.org' + install='kdepim.install' + cd "${srcdir}"/build/console + make DESTDIR="${pkgdir}" install +} + +package_kdepim-kaddressbook() { + pkgdesc='Contact Manager' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/office/kaddressbook/" + install='kdepim.install' + cd "${srcdir}"/build/kaddressbook + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/kontact/plugins/kaddressbook + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/plugins/kaddressbook + make DESTDIR="${pkgdir}" install +} + +package_kdepim-kalarm() { + pkgdesc='Personal Alarm Scheduler' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/utilities/kalarm/" + install='kdepim.install' + cd "${srcdir}"/build/kalarm + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/kalarm + make DESTDIR="${pkgdir}" install +} + +package_kdepim-kjots() { + pkgdesc='Note Taker' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/utilities/kjots/" + install='kdepim.install' + cd "${srcdir}"/build/kjots + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/kjots + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/kontact/plugins/kjots + make DESTDIR="${pkgdir}" install +} + +package_kdepim-kleopatra() { + pkgdesc='Certificate Manager and Unified Crypto GUI' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/utilities/kleopatra/" + install='kdepim-kleopatra.install' + cd "${srcdir}"/build/kleopatra + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/kleopatra + make DESTDIR="${pkgdir}" install +} + +package_kdepim-kmail() { + pkgdesc='Mail Client' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/internet/kmail/" + install='kdepim-kmail.install' + conflicts=('kdepim-kmailcvt' 'kdepim-ksendemail' 'kdepim-libksieve' + 'kdepim-mimelib' 'kdepim-plugins') + replaces=('kdepim-kmailcvt' 'kdepim-ksendemail' 'kdepim-libksieve' + 'kdepim-mimelib' 'kdepim-plugins') + optdepends=('cyrus-sasl-plugins: CRAM-MD5 authentication') + for i in kmail doc/kmail kmailcvt ksendemail libksieve mailcommon \ + nepomuk_email_feeder ontologies templateparser kontact/plugins/kmail; do + cd "${srcdir}"/build/${i} + make DESTDIR="${pkgdir}" install + done +} + +package_kdepim-knode() { + pkgdesc='News Reader' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/internet/knode/" + install='kdepim.install' + cd "${srcdir}"/build/knode + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/knode + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/kontact/plugins/knode + make DESTDIR="${pkgdir}" install +} + +package_kdepim-knotes() { + pkgdesc='Popup Notes' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/utilities/knotes/" + install='kdepim.install' + cd "${srcdir}"/build/knotes + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/knotes + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/kontact/plugins/knotes + make DESTDIR="${pkgdir}" install +} + +package_kdepim-kontact() { + pkgdesc='Personal Information Manager' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/office/kontact/" + install='kdepim.install' + conflcits=('kdepim-kontactinterfaces') + replaces=('kdepim-kontactinterfaces') + for i in kontact/src doc/kontact \ + kontact/plugins/summary kontact/plugins/specialdates; do + cd "${srcdir}"/build/${i} + make DESTDIR="${pkgdir}" install + done +} + +package_kdepim-korganizer() { + pkgdesc='Calendar and Scheduling Program' + depends=('kdepim-libkdepim') + url="http://kde.org/applications/office/korganizer" + install='kdepim-korganizer.install' + cd "${srcdir}"/build/korganizer + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/korganizer + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/kontact/plugins/korganizer + make DESTDIR="${pkgdir}" install +} + +package_kdepim-kresources() { + pkgdesc='KDE PIM resources' + depends=('kdepim-libkdepim') + url='http://pim.kde.org' + cd "${srcdir}"/build/kresources + make DESTDIR="${pkgdir}" install +} + +package_kdepim-ktimetracker() { + pkgdesc='Personal Time Tracker' + depends=('kdepim-kresources') + url="http://kde.org/applications/utilities/ktimetracker/" + install='kdepim.install' + cd "${srcdir}"/build/ktimetracker + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/doc/ktimetracker + make DESTDIR="${pkgdir}" install + cd "${srcdir}"/build/kontact/plugins/ktimetracker + make DESTDIR="${pkgdir}" install +} + +package_kdepim-libkdepim() { + pkgdesc='Library for KDE PIM' + groups=() + depends=('kde-agent' 'kdepim-runtime') + url='http://pim.kde.org' + conflicts=('kdepim-icons' 'kdepim-libkleo' 'kdepim-libkpgp' + 'kdepim-strigi-analyzer' 'kdepim-akonadi') + replaces=('kdepim-icons' 'kdepim-libkleo' 'kdepim-libkpgp' + 'kdepim-strigi-analyzer' 'kdepim-akonadi') + for i in akonadi_next calendarsupport calendarviews incidenceeditor-ng \ + kdgantt2 libkdepim libkdepimdbusinterfaces libkleo libkpgp \ + messagecomposer messagecore messagelist messageviewer icons \ + strigi-analyzer plugins/messageviewer plugins/ktexteditor; do + cd "${srcdir}"/build/${i} + make DESTDIR="${pkgdir}" install + done +} + +package_kdepim-wizards() { + pkgdesc='KDE Groupware Wizard' + depends=('kdepim-kresources') + url='http://pim.kde.org' + cd "${srcdir}"/build/wizards + make DESTDIR="${pkgdir}" install +} diff --git a/staging/kdepim/disable-l10n.patch b/staging/kdepim/disable-l10n.patch new file mode 100644 index 000000000..0c24ab408 --- /dev/null +++ b/staging/kdepim/disable-l10n.patch @@ -0,0 +1,10 @@ +--- kdepim-4.6.1/CMakeLists.txt~ 2011-07-06 19:17:16.801814825 +0000 ++++ kdepim-4.6.1/CMakeLists.txt 2011-07-06 19:17:34.141961840 +0000 +@@ -425,7 +425,3 @@ + endif(NOT QGPGME_FOUND) + # All done, let's display what we found... + macro_display_feature_log() +-find_package(Msgfmt REQUIRED) +-find_package(Gettext REQUIRED) +-add_subdirectory(po) +-add_subdirectory(doc-translations) diff --git a/staging/kdepim/kdepim-kleopatra.install b/staging/kdepim/kdepim-kleopatra.install new file mode 100644 index 000000000..81ce5c4b0 --- /dev/null +++ b/staging/kdepim/kdepim-kleopatra.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdepim/kdepim-kmail.install b/staging/kdepim/kdepim-kmail.install new file mode 100644 index 000000000..81ce5c4b0 --- /dev/null +++ b/staging/kdepim/kdepim-kmail.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdepim/kdepim-korganizer.install b/staging/kdepim/kdepim-korganizer.install new file mode 100644 index 000000000..81ce5c4b0 --- /dev/null +++ b/staging/kdepim/kdepim-korganizer.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdepim/kdepim.install b/staging/kdepim/kdepim.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdepim/kdepim.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdepimlibs/PKGBUILD b/staging/kdepimlibs/PKGBUILD new file mode 100644 index 000000000..67d38d3b2 --- /dev/null +++ b/staging/kdepimlibs/PKGBUILD @@ -0,0 +1,32 @@ +# $Id: PKGBUILD 130250 2011-07-04 19:26:55Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgname=kdepimlibs +pkgver=4.6.5 +pkgrel=1 +pkgdesc="KDE PIM Libraries" +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL') +depends=('kdelibs' 'gpgme' 'akonadi' 'libical' ) +makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'cyrus-sasl' 'openldap') +install='kdepimlibs.install' +source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2") +sha1sums=('6bf82a0934d5a16223f193e848bf3696a40e4820') + +build() { + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgname}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package() { + cd $srcdir/build + make DESTDIR=$pkgdir install +} diff --git a/staging/kdepimlibs/kdepimlibs.install b/staging/kdepimlibs/kdepimlibs.install new file mode 100644 index 000000000..99262607c --- /dev/null +++ b/staging/kdepimlibs/kdepimlibs.install @@ -0,0 +1,11 @@ +post_install() { + update-mime-database usr/share/mime &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +}
\ No newline at end of file diff --git a/staging/kdeplasma-addons/PKGBUILD b/staging/kdeplasma-addons/PKGBUILD new file mode 100644 index 000000000..749887ce4 --- /dev/null +++ b/staging/kdeplasma-addons/PKGBUILD @@ -0,0 +1,603 @@ +# $Id: PKGBUILD 130264 2011-07-04 19:28:03Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdeplasma-addons +pkgname=('kdeplasma-addons-applets-bball' + 'kdeplasma-addons-applets-binary-clock' + 'kdeplasma-addons-applets-blackboard' + 'kdeplasma-addons-applets-bookmarks' + 'kdeplasma-addons-applets-bubblemon' + 'kdeplasma-addons-applets-calculator' + 'kdeplasma-addons-applets-charselect' + 'kdeplasma-addons-applets-comic' + 'kdeplasma-addons-applets-community' + 'kdeplasma-addons-applets-dict' + 'kdeplasma-addons-applets-eyes' + 'kdeplasma-addons-applets-fifteenpuzzle' + 'kdeplasma-addons-applets-filewatcher' + 'kdeplasma-addons-applets-frame' + 'kdeplasma-addons-applets-fuzzy-clock' + 'kdeplasma-addons-applets-incomingmsg' + 'kdeplasma-addons-applets-kdeobservatory' + 'kdeplasma-addons-applets-kimpanel' + 'kdeplasma-addons-applets-knowledgebase' + 'kdeplasma-addons-applets-kolourpicker' + 'kdeplasma-addons-applets-konqprofiles' + 'kdeplasma-addons-applets-konsoleprofiles' + 'kdeplasma-addons-applets-lancelot' + 'kdeplasma-addons-applets-leavenote' + 'kdeplasma-addons-applets-life' + 'kdeplasma-addons-applets-luna' + 'kdeplasma-addons-applets-magnifique' + 'kdeplasma-addons-applets-mediaplayer' + 'kdeplasma-addons-applets-microblog' + 'kdeplasma-addons-applets-news' + 'kdeplasma-addons-applets-notes' + 'kdeplasma-addons-applets-nowplaying' + 'kdeplasma-addons-applets-paste' + 'kdeplasma-addons-applets-pastebin' + 'kdeplasma-addons-applets-plasmaboard' + 'kdeplasma-addons-applets-previewer' + 'kdeplasma-addons-applets-qalculate' + 'kdeplasma-addons-applets-rememberthemilk' + 'kdeplasma-addons-applets-rssnow' + 'kdeplasma-addons-applets-showdashboard' + 'kdeplasma-addons-applets-showdesktop' + 'kdeplasma-addons-applets-social-news' + 'kdeplasma-addons-applets-spellcheck' + 'kdeplasma-addons-applets-systemloadviewer' + 'kdeplasma-addons-applets-timer' + 'kdeplasma-addons-applets-unitconverter' + 'kdeplasma-addons-applets-weather' + 'kdeplasma-addons-applets-weatherstation' + 'kdeplasma-addons-applets-webslice' + 'kdeplasma-addons-containments' + 'kdeplasma-addons-libs' + 'kdeplasma-addons-runners-audioplayercontrol' + 'kdeplasma-addons-runners-browserhistory' + 'kdeplasma-addons-runners-characters' + 'kdeplasma-addons-runners-contacts' + 'kdeplasma-addons-runners-converter' + 'kdeplasma-addons-runners-datetime' + 'kdeplasma-addons-runners-events' + 'kdeplasma-addons-runners-katesessions' + 'kdeplasma-addons-runners-konquerorsessions' + 'kdeplasma-addons-runners-konsolesessions' + 'kdeplasma-addons-runners-kopete' + 'kdeplasma-addons-runners-mediawiki' + 'kdeplasma-addons-runners-spellchecker' + 'kdeplasma-addons-wallpapers-mandelbrot' + 'kdeplasma-addons-wallpapers-marble' + 'kdeplasma-addons-wallpapers-pattern' + 'kdeplasma-addons-wallpapers-virus' + 'kdeplasma-addons-wallpapers-weather') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL') +groups=('kde' 'kdeplasma-addons') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'kdebase-workspace' 'kdegraphics-libs' + 'kdeedu-marble' 'eigen' 'scim' 'qwt' 'boost') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('3bce5e41160ec318dbea9128c3e9104a4428deb8') + +build() { + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdeplasma-addons-applets-bball() { + pkgdesc='A bouncy ball for plasma' + depends=('kdebase-workspace') + install='kdeplasma-addons-applets.install' + cd $srcdir/build/applets/bball + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-binary-clock() { + pkgdesc='Time displayed in binary format' + depends=('kdebase-workspace') + cd $srcdir/build/applets/binary-clock + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-blackboard() { + pkgdesc='Black Board' + depends=('kdebase-workspace') + cd $srcdir/build/applets/blackboard + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-bookmarks() { + pkgdesc='Quick Access to the Bookmarks' + depends=('kdebase-workspace') + cd $srcdir/build/applets/bookmarks + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-bubblemon() { + pkgdesc='A pretty bubble that monitors your system.' + depends=('kdebase-workspace') + cd $srcdir/build/applets/bubblemon + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-calculator() { + pkgdesc='Calculate simple sums' + depends=('kdebase-workspace') + cd $srcdir/build/applets/calculator + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-charselect() { + pkgdesc='View, select, and copy characters from a font collection' + depends=('kdebase-workspace') + cd $srcdir/build/applets/charselect + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-comic() { + pkgdesc='View comic strips from the Internet' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/applets/comic + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-community() { + pkgdesc='Communicate using the Social Desktop' + depends=('kdebase-workspace') + cd $srcdir/build/applets/community + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-dict() { + pkgdesc='Look up the meaning of words and their translation into different languages' + depends=('kdebase-workspace') + cd $srcdir/build/applets/dict + make DESTDIR=$pkgdir install + # FIXME + # /usr/share/icons/oxygen/scalable/apps/accessories-dictionary.svgz + rm -rf $pkgdir/usr/share/icons +} + +package_kdeplasma-addons-applets-eyes() { + pkgdesc='XEyes clone' + depends=('kdebase-workspace') + install='kdeplasma-addons-applets.install' + cd $srcdir/build/applets/eyes + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-fifteenpuzzle() { + pkgdesc='Put the pieces in order' + depends=('kdebase-workspace') + install='kdeplasma-addons-applets.install' + cd $srcdir/build/applets/fifteenPuzzle + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-filewatcher() { + pkgdesc='Watch for changes in specified files' + depends=('kdebase-workspace') + cd $srcdir/build/applets/fileWatcher + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-frame() { + pkgdesc='Display your favorite pictures' + depends=('kdebase-workspace' 'kdegraphics-libs') + cd $srcdir/build/applets/frame + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-fuzzy-clock() { + pkgdesc='Time displayed in a less precise format' + depends=('kdebase-workspace') + cd $srcdir/build/applets/fuzzy-clock + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-incomingmsg() { + pkgdesc='Notification of new messages' + depends=('kdebase-workspace') + cd $srcdir/build/applets/incomingmsg + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-kdeobservatory() { + pkgdesc='Visualize the KDE ecosystem' + depends=('kdebase-workspace' 'qwt') + install='kdeplasma-addons-applets.install' + cd $srcdir/build/applets/kdeobservatory + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-kimpanel() { + pkgdesc='A generic input method panel for Oriental languages' + depends=('kdebase-workspace') + optdepends=('scim: SCIM backend' + 'fcitx: FCITX backend') + cd $srcdir/build/applets/kimpanel + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-knowledgebase() { + pkgdesc='Opendesktop Knowledgebase' + depends=('kdebase-workspace') + cd $srcdir/build/applets/knowledgebase + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-kolourpicker() { + pkgdesc='Pick a color from the desktop' + depends=('kdebase-workspace') + cd $srcdir/build/applets/kolourpicker + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-konqprofiles() { + pkgdesc='List and launch Konqueror profiles' + depends=('kdebase-workspace') + cd $srcdir/build/applets/konqprofiles + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-konsoleprofiles() { + pkgdesc='List and launch Konsole profiles' + depends=('kdebase-workspace') + cd $srcdir/build/applets/konsoleprofiles + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-lancelot() { + pkgdesc='Launcher to start applications' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + replaces=('lancelot') + provides=('lancelot') + conflicts=('lancelot') + install='kdeplasma-addons-applets-lancelot.install' + cd $srcdir/build/applets/lancelot + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-leavenote() { + pkgdesc='Leave notes for users while they are away' + depends=('kdebase-workspace') + cd $srcdir/build/applets/leavenote + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-life() { + pkgdesc='Life' + depends=('kdebase-workspace') + install='kdeplasma-addons-applets.install' + cd $srcdir/build/applets/life + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-luna() { + pkgdesc='Display moon phases for your location' + depends=('kdebase-workspace') + install='kdeplasma-addons-applets.install' + cd $srcdir/build/applets/luna + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-magnifique() { + pkgdesc='A magnification glass for the Plasma desktop' + depends=('kdebase-workspace') + cd $srcdir/build/applets/magnifique + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-mediaplayer() { + pkgdesc='Widget that can play video and sound' + depends=('kdebase-workspace') + cd $srcdir/build/applets/mediaplayer + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-microblog() { + pkgdesc='Update and view your microblog status.' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/applets/microblog + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-news() { + pkgdesc='Show news from various sources' + depends=('kdebase-workspace') + cd $srcdir/build/applets/news + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-notes() { + pkgdesc='Desktop sticky notes' + depends=('kdebase-workspace') + cd $srcdir/build/applets/notes + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-nowplaying() { + pkgdesc='Displays currently playing audio' + depends=('kdebase-workspace') + cd $srcdir/build/applets/nowplaying + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-paste() { + pkgdesc='Paste text snippets' + depends=('kdebase-workspace') + cd $srcdir/build/applets/paste + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-pastebin() { + pkgdesc='Paste text/images to a remote server' + depends=('kdebase-workspace') + cd $srcdir/build/applets/pastebin + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-plasmaboard() { + pkgdesc='A virtual, on-screen keyboard' + depends=('kdebase-workspace') + cd $srcdir/build/applets/plasmaboard + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-previewer() { + pkgdesc='Preview This File' + depends=('kdebase-workspace') + install='kdeplasma-addons-applets.install' + cd $srcdir/build/applets/previewer + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-qalculate() { + pkgdesc='A powerful mathematical equation solver' + depends=('kdebase-workspace') + install='kdeplasma-addons-applets.install' + cd $srcdir/build/applets/qalculate + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-rememberthemilk() { + pkgdesc='Remember The Milk Todo list applet' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/applets/rememberthemilk + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-rssnow() { + pkgdesc='Show news from various sources' + depends=('kdebase-workspace') + cd $srcdir/build/applets/rssnow + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-showdashboard() { + pkgdesc='Show the Plasma widget dashboard above other windows' + depends=('kdebase-workspace') + cd $srcdir/build/applets/showdashboard + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-showdesktop() { + pkgdesc='Show the Plasma desktop' + depends=('kdebase-workspace') + cd $srcdir/build/applets/showdesktop + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-social-news() { + pkgdesc='Stay informed with the Social Desktop' + replaces=('kdeplasma-addons-applets-opendesktop' 'kdeplasma-addons-applets-opendesktop-activities') + conflicts=('kdeplasma-addons-applets-opendesktop' 'kdeplasma-addons-applets-opendesktop-activities') + depends=('kdebase-workspace') + cd $srcdir/build/applets/social-news + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-spellcheck() { + pkgdesc='Fast spell checking' + depends=('kdebase-workspace') + cd $srcdir/build/applets/spellcheck + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-systemloadviewer() { + pkgdesc='Tiny CPU/RAM/Swap monitor' + depends=('kdebase-workspace') + cd $srcdir/build/applets/systemloadviewer + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-timer() { + pkgdesc='Countdown over a specified time period' + depends=('kdebase-workspace') + cd $srcdir/build/applets/timer + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-unitconverter() { + pkgdesc='Plasmoid for converting units' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/applets/unitconverter + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-weather() { + pkgdesc='Displays Weather information' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/applets/weather + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-weatherstation() { + pkgdesc='Weather reports with an LCD display style' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/applets/weatherstation + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-applets-webslice() { + pkgdesc='Show a part of a webpage' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/applets/webslice + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-containments() { + pkgdesc='Activities types for Plasma shells' + depends=('kdebase-workspace') + cd $srcdir/build/containments + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-libs() { + pkgdesc='Plasma Addon Library' + depends=('kdebase-workspace') + groups=() + replaces=('kdeplasma-addons-dataengines') + provides=('kdeplasma-addons-dataengines') + conflicts=('kdeplasma-addons-dataengines') + cd $srcdir/build/libs + make DESTDIR=$pkgdir install + cd $srcdir/build/dataengines + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-audioplayercontrol() { + pkgdesc='Allows to control MPRIS audio players (it is able to search through Amarok´s collection, too)' + depends=('kdebase-workspace') + cd $srcdir/build/runners/audioplayercontrol + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-browserhistory() { + pkgdesc='Searches in Konqueror´s history' + depends=('kdebase-workspace') + cd $srcdir/build/runners/browserhistory + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-characters() { + pkgdesc='special Characters' + depends=('kdebase-workspace') + cd $srcdir/build/runners/characters + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-contacts() { + pkgdesc='Finds entries in your address book' + depends=('kdebase-workspace') + cd $srcdir/build/runners/contacts + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-converter() { + pkgdesc='Convert values to different units' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/runners/converter + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-datetime() { + pkgdesc='The current date and time, locally or in any timezone' + depends=('kdebase-workspace') + cd $srcdir/build/runners/datetime + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-events() { + pkgdesc='Calendar Events runner' + depends=('kdebase-workspace') + cd $srcdir/build/runners/events + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-katesessions() { + pkgdesc='Matches Kate Sessions' + depends=('kdebase-workspace') + cd $srcdir/build/runners/katesessions + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-konquerorsessions() { + pkgdesc='Matches Konqueror Sessions' + depends=('kdebase-workspace') + cd $srcdir/build/runners/konquerorsessions + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-konsolesessions() { + pkgdesc='Matches Konsole Sessions' + depends=('kdebase-workspace') + cd $srcdir/build/runners/konsolesessions + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-kopete() { + pkgdesc='Kopete Contact runner' + depends=('kdebase-workspace') + cd $srcdir/build/runners/kopete + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-mediawiki() { + pkgdesc='Search on Wikitravel' + depends=('kdebase-workspace') + cd $srcdir/build/runners/mediawiki + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-runners-spellchecker() { + pkgdesc='Check the spelling of a word' + depends=('kdebase-workspace') + cd $srcdir/build/runners/spellchecker + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-wallpapers-mandelbrot() { + pkgdesc='Mandelbrot' + depends=('kdebase-workspace') + cd $srcdir/build/wallpapers/mandelbrot + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-wallpapers-marble() { + pkgdesc='Globe' + depends=('kdebase-workspace' 'kdeedu-marble') + cd $srcdir/build/wallpapers/marble + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-wallpapers-pattern() { + pkgdesc='Pattern' + depends=('kdebase-workspace') + cd $srcdir/build/wallpapers/pattern + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-wallpapers-virus() { + pkgdesc='Virus' + depends=('kdebase-workspace') + cd $srcdir/build/wallpapers/virus + make DESTDIR=$pkgdir install +} + +package_kdeplasma-addons-wallpapers-weather() { + pkgdesc='Weather' + depends=('kdebase-workspace' 'kdeplasma-addons-libs') + cd $srcdir/build/wallpapers/weather + make DESTDIR=$pkgdir install +} diff --git a/staging/kdeplasma-addons/kdeplasma-addons-applets-lancelot.install b/staging/kdeplasma-addons/kdeplasma-addons-applets-lancelot.install new file mode 100644 index 000000000..ce5c32e1b --- /dev/null +++ b/staging/kdeplasma-addons/kdeplasma-addons-applets-lancelot.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +}
\ No newline at end of file diff --git a/staging/kdeplasma-addons/kdeplasma-addons-applets.install b/staging/kdeplasma-addons/kdeplasma-addons-applets.install new file mode 100644 index 000000000..c4ef46ba8 --- /dev/null +++ b/staging/kdeplasma-addons/kdeplasma-addons-applets.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +}
\ No newline at end of file diff --git a/staging/kdesdk/PKGBUILD b/staging/kdesdk/PKGBUILD new file mode 100644 index 000000000..7c51f7b13 --- /dev/null +++ b/staging/kdesdk/PKGBUILD @@ -0,0 +1,243 @@ +# $Id: PKGBUILD 130265 2011-07-04 19:28:07Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdesdk +pkgname=('kdesdk-cervisia' + 'kdesdk-dolphin-plugins' + 'kdesdk-kapptemplate' + 'kdesdk-kate' + 'kdesdk-kcachegrind' + 'kdesdk-kdeaccounts-plugin' + 'kdesdk-kdepalettes' + 'kdesdk-kioslave' + 'kdesdk-kmtrace' + 'kdesdk-kompare' + 'kdesdk-kpartloader' + 'kdesdk-kprofilemethod' + 'kdesdk-kstartperf' + 'kdesdk-kuiviewer' + 'kdesdk-lokalize' + 'kdesdk-okteta' + 'kdesdk-poxml' + 'kdesdk-scripts' + 'kdesdk-strigi-analyzer' + 'kdesdk-umbrello') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdesdk') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'kdepim-runtime' 'subversion' + 'antlr2' 'kdebase-konqueror') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2" + 'fix-python2-path.patch') +sha1sums=('8cffa0472fbe1096ebfea9bde49aaff76a145b34' + 'd05ca0231869c484fd3861955d960a60aff7dcfb') + +build() { + cd ${srcdir}/${pkgbase}-${pkgver} + + # Fix python2 path + patch -Np1 -i ${srcdir}/fix-python2-path.patch + sed -i -e "s|#![ ]*/usr/bin/python$|#!/usr/bin/python2|" \ + -e "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \ + $(find . -name '*.py') + + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdesdk-cervisia() { + pkgdesc='CVS Frontend' + depends=('kdebase-runtime') + url="http://kde.org/applications/development/cervisia/" + install='kdesdk.install' + cd $srcdir/build/cervisia + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/cervisia + make DESTDIR=$pkgdir install +} + +package_kdesdk-dolphin-plugins() { + pkgdesc='Extra Dolphin plugins' + depends=('kdebase-dolphin' 'subversion' 'git' 'kdesdk-kompare') + install='kdesdk.install' + cd $srcdir/build/dolphin-plugins/git + make DESTDIR=$pkgdir install + cd $srcdir/build/dolphin-plugins/svn + make DESTDIR=$pkgdir install +} + +package_kdesdk-kapptemplate() { + pkgdesc='KDE Template Generator' + depends=('kdebase-runtime') + url="http://kde.org/applications/development/kapptemplate/" + install='kdesdk.install' + cd $srcdir/build/kapptemplate + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kapptemplate + make DESTDIR=$pkgdir install +} + +package_kdesdk-kate() { + pkgdesc='Advanced Text Editor' + depends=('kdebase-runtime' 'kdebase-lib') + url="http://kde.org/applications/utilities/kate/" + install='kdesdk-kate.install' + cd $srcdir/build/kate + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kate + make DESTDIR=$pkgdir install +} + +package_kdesdk-kcachegrind() { + pkgdesc='Visualization of Performance Profiling Data' + depends=('kdebase-runtime' 'python2') + optdepends=('php: PHP support') + url="http://kde.org/applications/development/kcachegrind/" + install='kdesdk.install' + cd $srcdir/build/kcachegrind + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kcachegrind + make DESTDIR=$pkgdir install +} + +package_kdesdk-kdeaccounts-plugin() { + pkgdesc='KDE Repository Accounts' + depends=('kdepim-runtime') + cd $srcdir/build/kdeaccounts-plugin + make DESTDIR=$pkgdir install +} + +package_kdesdk-kdepalettes() { + pkgdesc='Palettes for the Gimp that match the KDE standard color palette' + optdepends=('gimp') + install -D -m644 $srcdir/${pkgbase}-${pkgver}/kdepalettes/KDE_Gimp \ + $pkgdir/usr/share/gimp/2.0/palettes/KDE.gpl +} + +package_kdesdk-kioslave() { + pkgdesc='KDED Subversion Module' + depends=('kdebase-runtime' 'subversion') + cd $srcdir/build/kioslave + make DESTDIR=$pkgdir install +} + +package_kdesdk-kmtrace() { + pkgdesc='A KDE tool to assist with malloc debugging using glibc´s "mtrace" functionality' + depends=('kdebase-runtime') + cd $srcdir/build/kmtrace + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kmtrace + make DESTDIR=$pkgdir install +} + +package_kdesdk-kompare() { + pkgdesc='Diff/Patch Frontend' + depends=('kdebase-runtime') + url="http://kde.org/applications/development/kompare/" + install='kdesdk.install' + cd $srcdir/build/kompare + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kompare + make DESTDIR=$pkgdir install +} + +package_kdesdk-kpartloader() { + pkgdesc='A test application for KParts' + depends=('kdebase-runtime') + install='kdesdk.install' + cd $srcdir/build/kpartloader + make DESTDIR=$pkgdir install +} + +package_kdesdk-kprofilemethod() { + pkgdesc='Macros helping to profile' + cd $srcdir/build/kprofilemethod + make DESTDIR=$pkgdir install +} + +package_kdesdk-kstartperf() { + pkgdesc='Startup time measurement tool for KDE applications' + depends=('kdebase-runtime') + cd $srcdir/build/kstartperf + make DESTDIR=$pkgdir install +} + +package_kdesdk-kuiviewer() { + pkgdesc='Qt Designer UI File Viewer' + depends=('kdebase-runtime') + url="http://kde.org/applications/development/kuiviewer/" + install='kdesdk.install' + cd $srcdir/build/kuiviewer + make DESTDIR=$pkgdir install +} + +package_kdesdk-lokalize() { + pkgdesc='Computer-Aided Translation System' + depends=('kdebase-runtime' 'kdebindings-python') + url="http://kde.org/applications/development/lokalize/" + optdepends=('translate-toolkit: enable extra python script') + install='kdesdk.install' + cd $srcdir/build/lokalize + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/lokalize + make DESTDIR=$pkgdir install +} + +package_kdesdk-okteta() { + pkgdesc='Hex Editor' + depends=('kdebase-runtime') + replaces=('kdeutils-okteta') + conflicts=('kdeutils-okteta') + url="http://kde.org/applications/utilities/okteta" + install='kdesdk-okteta.install' + cd $srcdir/build/okteta + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/okteta + make DESTDIR=$pkgdir install +} + +package_kdesdk-poxml() { + pkgdesc='Translates DocBook XML files using gettext po files' + depends=('qt' 'antlr2') + cd $srcdir/build/poxml + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/poxml + make DESTDIR=$pkgdir install +} + +package_kdesdk-scripts() { + pkgdesc='KDE SDK scripts' + depends=('python2') + cd $srcdir/build/scripts + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/scripts + make DESTDIR=$pkgdir install +} + +package_kdesdk-strigi-analyzer() { + pkgdesc='Strigi-Analyzer for KDE SDK' + depends=('kdelibs') + cd $srcdir/build/strigi-analyzer + make DESTDIR=$pkgdir install +} + +package_kdesdk-umbrello() { + pkgdesc='UML Modeller' + depends=('kdebase-runtime') + url="http://kde.org/applications/development/umbrello/" + install='kdesdk.install' + cd $srcdir/build/umbrello + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/umbrello + make DESTDIR=$pkgdir install +} diff --git a/staging/kdesdk/fix-python2-path.patch b/staging/kdesdk/fix-python2-path.patch new file mode 100644 index 000000000..c2c0745d1 --- /dev/null +++ b/staging/kdesdk/fix-python2-path.patch @@ -0,0 +1,64 @@ +--- kdesdk-4.5.80/kcachegrind/converters/hotshot2calltree~ 2010-11-24 11:53:38.586666671 +0100 ++++ kdesdk-4.5.80/kcachegrind/converters/hotshot2calltree 2010-11-24 11:53:38.623333337 +0100 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python2 + # _*_ coding: latin1 _*_ + + # +--- kdesdk-4.5.80/lokalize/scripts/msgmerge.py~ 2010-11-24 11:22:42.120000002 +0100 ++++ kdesdk-4.5.80/lokalize/scripts/msgmerge.py 2010-11-24 11:22:42.146666670 +0100 +@@ -114,7 +114,7 @@ + print >>sys.stderr, "Execution failed:", e + + cmd='%s/odf/xliffmerge.py -i %s -t %s -o %s' % (ourPath,xliffpathname,xlifftemplatepathname,xliffpathname) +- if os.name!='nt': cmd='python '+cmd ++ if os.name!='nt': cmd='python2 '+cmd + else: cmd=cmd.replace('/','\\') + os.system(cmd) + +--- kdesdk-4.5.80/lokalize/scripts/xliff2odf.py~ 2010-11-24 11:24:10.853333336 +0100 ++++ kdesdk-4.5.80/lokalize/scripts/xliff2odf.py 2010-11-24 11:24:10.883333336 +0100 +@@ -42,7 +42,7 @@ + xliff2odf.convertxliff(xliffinput, translatedodfpathname, odf) + + ourpath=([p for p in sys.path if os.path.exists(p+'/xliff2odf.py')]+[''])[0] +- os.system('python "'+ourpath+'/xliff2odf-standalone.py" "%s" "%s" &'%(translatedodfpathname, Editor.currentEntryId())) ++ os.system('python2 "'+ourpath+'/xliff2odf-standalone.py" "%s" "%s" &'%(translatedodfpathname, Editor.currentEntryId())) + + try: convert() + except: print 'error occured' +--- kdesdk-4.5.80/scripts/rename_source_files~ 2010-11-24 11:45:41.040000004 +0100 ++++ kdesdk-4.5.80/scripts/rename_source_files 2010-11-24 11:45:41.093333336 +0100 +@@ -1,4 +1,4 @@ +-#! /usr/bin/env python ++#! /usr/bin/env python2 + # + # Copyright David Faure <faure@kde.org>, License LGPL v2 + # +--- kdesdk-4.5.80/scripts/svn2log.sh~ 2010-11-24 11:46:24.863333337 +0100 ++++ kdesdk-4.5.80/scripts/svn2log.sh 2010-11-24 11:46:24.896666669 +0100 +@@ -17,6 +17,6 @@ + svn cat svn://anonsvn.kde.org/home/kde/trunk/kde-common/accounts > /tmp/accounts.$PPID + + echo "Creating changelog..."; +-svn log -v --xml $1 | python $CURRENT/svn2log.py --users=/tmp/accounts.$PPID --users-charset=UTF8 ++svn log -v --xml $1 | python2 $CURRENT/svn2log.py --users=/tmp/accounts.$PPID --users-charset=UTF8 + + rm /tmp/accounts.$PPID +--- kdesdk-4.5.80/scripts/kde_generate_export_header~ 2010-11-24 11:48:49.696666669 +0100 ++++ kdesdk-4.5.80/scripts/kde_generate_export_header 2010-11-24 11:48:49.753333338 +0100 +@@ -1,4 +1,4 @@ +-#! /usr/bin/env python ++#! /usr/bin/env python2 + + import os, sys, string + +--- kdesdk-4.5.80/scripts/reviewboarddiff~ 2010-11-24 11:49:37.686666670 +0100 ++++ kdesdk-4.5.80/scripts/reviewboarddiff 2010-11-24 11:49:37.740000003 +0100 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python2 + # encoding: utf-8 + # + # Generates reviewboard compatible diffs from git-svn repositories. diff --git a/staging/kdesdk/kdesdk-kate.install b/staging/kdesdk/kdesdk-kate.install new file mode 100644 index 000000000..a60d358ce --- /dev/null +++ b/staging/kdesdk/kdesdk-kate.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdesdk/kdesdk-okteta.install b/staging/kdesdk/kdesdk-okteta.install new file mode 100644 index 000000000..3f06b8deb --- /dev/null +++ b/staging/kdesdk/kdesdk-okteta.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-mime-database usr/share/mime &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdesdk/kdesdk.install b/staging/kdesdk/kdesdk.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdesdk/kdesdk.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdetoys/PKGBUILD b/staging/kdetoys/PKGBUILD new file mode 100644 index 000000000..fb1e8a81e --- /dev/null +++ b/staging/kdetoys/PKGBUILD @@ -0,0 +1,56 @@ +# $Id: PKGBUILD 130266 2011-07-04 19:28:12Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdetoys +pkgname=('kdetoys-amor' + 'kdetoys-kteatime' + 'kdetoys-ktux') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdetoys') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'kdebase-workspace') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('0ce43a76f5b7005d60430692ae87421661281f1f') + +build() { + cd $srcdir + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdetoys-amor() { + pkgdesc='On-Screen Creature' + depends=('kdebase-runtime') + install='kdetoys.install' + cd $srcdir/build/amor + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/amor + make DESTDIR=$pkgdir install +} + +package_kdetoys-kteatime() { + pkgdesc='Tea Cooker' + depends=('kdebase-runtime') + install='kdetoys.install' + cd $srcdir/build/kteatime + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kteatime + make DESTDIR=$pkgdir install +} + +package_kdetoys-ktux() { + pkgdesc='KTux' + depends=('kdebase-workspace' ) + install='kdetoys.install' + cd $srcdir/build/ktux + make DESTDIR=$pkgdir install +} diff --git a/staging/kdetoys/kdetoys.install b/staging/kdetoys/kdetoys.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdetoys/kdetoys.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdeutils/PKGBUILD b/staging/kdeutils/PKGBUILD new file mode 100644 index 000000000..6a6cae983 --- /dev/null +++ b/staging/kdeutils/PKGBUILD @@ -0,0 +1,180 @@ +# $Id: PKGBUILD 130267 2011-07-04 19:28:16Z andrea $ +# Maintainer: Andrea Scarpino <andrea@archlinux.org> +# Contributor: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdeutils +pkgname=('kdeutils-ark' + 'kdeutils-filelight' + 'kdeutils-kcalc' + 'kdeutils-kcharselect' + 'kdeutils-kdf' + 'kdeutils-kfloppy' + 'kdeutils-kgpg' + 'kdeutils-kremotecontrol' + 'kdeutils-ktimer' + 'kdeutils-kwallet' + 'kdeutils-printer-applet' + 'kdeutils-superkaramba' + 'kdeutils-sweeper') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdeutils') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'kdebase-lib' 'kdebase-workspace' + 'kdebindings-python' 'system-config-printer-common' 'libarchive' 'qimageblitz' + 'qjson') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('1c2ae023d9a6bcf72d3cebd0d7df2e6a175ffdcb') + +build() { + cd ${srcdir} + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdeutils-ark() { + pkgdesc='Archiving Tool' + depends=('kdebase-runtime' 'kdebase-lib' 'libarchive') + optdepends=('p7zip' 'zip' 'unzip' 'unrar') + url="http://kde.org/applications/utilities/ark/" + cd $srcdir/build/ark + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/ark + make DESTDIR=$pkgdir install +} + +package_kdeutils-filelight() { + pkgdesc='View disk usage information' + depends=('kdebase-runtime' 'qimageblitz') + replaces=('filelight') + conflicts=('filelight') + install='kdeutils.install' + url="http://methylblue.com/filelight/" + cd $srcdir/build/filelight + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/filelight + make DESTDIR=$pkgdir install +} + +package_kdeutils-kcalc() { + pkgdesc='Scientific Calculator' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/kcalc/" + cd $srcdir/build/kcalc + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kcalc + make DESTDIR=$pkgdir install +} + +package_kdeutils-kcharselect() { + pkgdesc='Character Selector' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/kcharselect/" + cd $srcdir/build/kcharselect + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kcharselect + make DESTDIR=$pkgdir install +} + +package_kdeutils-kdf() { + pkgdesc='View Disk Usage' + depends=('kdebase-runtime') + url="http://kde.org/applications/system/kdiskfree/" + install='kdeutils.install' + cd $srcdir/build/kdf + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kdf + make DESTDIR=$pkgdir install +} + +package_kdeutils-kfloppy() { + pkgdesc='Floppy Formatter' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/kfloppy/" + install='kdeutils.install' + cd $srcdir/build/kfloppy + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kfloppy + make DESTDIR=$pkgdir install +} + +package_kdeutils-kgpg() { + pkgdesc='A GnuPG frontend' + depends=('kdepim-runtime' 'kde-agent') + url="http://kde.org/applications/utilities/kgpg" + install='kdeutils.install' + cd $srcdir/build/kgpg + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kgpg + make DESTDIR=$pkgdir install +} + +package_kdeutils-kremotecontrol() { + pkgdesc='Configure your remote controls for use with applications' + replaces=('kdeutils-kdelirc') + conflicts=('kdeutils-kdelirc') + depends=('kdebase-workspace') + url="http://kde.org/applications/utilities/kremotecontrol" + install='kdeutils.install' + cd $srcdir/build/kremotecontrol + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kcontrol/kremotecontrol + make DESTDIR=$pkgdir install +} + +package_kdeutils-ktimer() { + pkgdesc='Countdown Launcher' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/ktimer" + install='kdeutils.install' + cd $srcdir/build/ktimer + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/ktimer + make DESTDIR=$pkgdir install +} + +package_kdeutils-kwallet() { + pkgdesc='Wallet Management Tool' + depends=('kdebase-runtime') + url="http://kde.org/applications/system/kwalletmanager/" + install='kdeutils.install' + cd $srcdir/build/kwallet + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kwallet + make DESTDIR=$pkgdir install +} + +package_kdeutils-printer-applet() { + pkgdesc='System tray icon for managing print jobs' + depends=('kdebase-runtime' 'kdebindings-python' 'system-config-printer-common') + url="http://kde.org/applications/system/printerapplet/" + cd $srcdir/build/printer-applet + make DESTDIR=$pkgdir install + + # Use the python2 executable + find "${pkgdir}" -name '*.py' | xargs sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' +} + +package_kdeutils-superkaramba() { + pkgdesc='An engine for cool desktop eyecandy' + depends=('kdebase-runtime' 'kdebindings-python' 'qimageblitz') + url="http://kde.org/applications/utilities/superkaramba" + install='kdeutils.install' + cd $srcdir/build/superkaramba + make DESTDIR=$pkgdir install +} + +package_kdeutils-sweeper() { + pkgdesc='System Cleaner' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/sweeper/" + cd $srcdir/build/sweeper + make DESTDIR=$pkgdir install +} diff --git a/staging/kdeutils/kdeutils.install b/staging/kdeutils/kdeutils.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdeutils/kdeutils.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/kdewebdev/PKGBUILD b/staging/kdewebdev/PKGBUILD new file mode 100644 index 000000000..495378d50 --- /dev/null +++ b/staging/kdewebdev/PKGBUILD @@ -0,0 +1,67 @@ +# $Id: PKGBUILD 130268 2011-07-04 19:28:19Z andrea $ +# Maintainer: Pierre Schmitz <pierre@archlinux.de> + +pkgbase=kdewebdev +pkgname=('kdewebdev-kfilereplace' + 'kdewebdev-kimagemapeditor' + 'kdewebdev-klinkstatus' + 'kdewebdev-kommander') +pkgver=4.6.5 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://www.kde.org' +license=('GPL' 'LGPL' 'FDL') +groups=('kde' 'kdewebdev') +makedepends=('pkgconfig' 'cmake' 'automoc4' 'ruby' 'tidyhtml' 'kdepim-runtime' + 'boost') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2") +sha1sums=('b7ec635c438f865337f5ef1e7bbaca23643ed871') + +build() { + cd $srcdir + mkdir build + cd build + cmake ../${pkgbase}-${pkgver} \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=ON \ + -DCMAKE_INSTALL_PREFIX=/usr + make +} + +package_kdewebdev-kfilereplace() { + pkgdesc='Search & Replace Tool' + depends=('kdebase-runtime') + url="http://kde.org/applications/utilities/kfilereplace/" + install='kdewebdev.install' + cd $srcdir/build/kfilereplace + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kfilereplace + make DESTDIR=$pkgdir install +} + +package_kdewebdev-kimagemapeditor() { + pkgdesc='HTML Image Map Editor' + depends=('kdebase-runtime') + install='kdewebdev.install' + cd $srcdir/build/kimagemapeditor + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/kimagemapeditor + make DESTDIR=$pkgdir install +} + +package_kdewebdev-klinkstatus() { + pkgdesc='Link Checker' + depends=('kdepim-runtime' 'tidyhtml') + install='kdewebdev.install' + cd $srcdir/build/klinkstatus + make DESTDIR=$pkgdir install + cd $srcdir/build/doc/klinkstatus + make DESTDIR=$pkgdir install +} + +package_kdewebdev-kommander() { + pkgdesc='Executor for Kommander dialogs' + depends=('kdebase-runtime') + cd $srcdir/build/kommander + make DESTDIR=$pkgdir install +} diff --git a/staging/kdewebdev/kdewebdev.install b/staging/kdewebdev/kdewebdev.install new file mode 100644 index 000000000..e70c054ec --- /dev/null +++ b/staging/kdewebdev/kdewebdev.install @@ -0,0 +1,11 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/staging/libetpan/PKGBUILD b/staging/libetpan/PKGBUILD deleted file mode 100644 index 107264bc4..000000000 --- a/staging/libetpan/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 127576 2011-06-16 17:03:09Z andyrtr $ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> - -pkgname=libetpan -pkgver=1.0 -pkgrel=3 -pkgdesc="A portable middleware for email access" -arch=('i686' 'x86_64') -url="http://www.etpan.org/" -license=("custom:etpan") -depends=('db>=5.2.28' 'libsasl>=2.1.23' 'curl>=7.21.' 'expat>=2.0.1-1') -options=('!libtool') -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('5addc766141a0b1d29ee1ca4ba1b6808') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --disable-static - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - install -Dm644 COPYRIGHT ${pkgdir}/usr/share/licenses/$pkgname/license.txt -} diff --git a/staging/libsasl/PKGBUILD b/staging/libsasl/PKGBUILD deleted file mode 100644 index 0a92c6a7a..000000000 --- a/staging/libsasl/PKGBUILD +++ /dev/null @@ -1,54 +0,0 @@ -# $Id: PKGBUILD 127649 2011-06-17 13:03:28Z stephane $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libsasl -pkgver=2.1.23 -pkgrel=6 -pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" -arch=('i686' 'x86_64') -url="http://cyrusimap.web.cmu.edu/downloads.html#sasl" -license=('custom') -depends=('db>=4.8') -optdepends=('cyrus-sasl: saslauthd' - 'cyrus-sasl-plugins: authentication plugins other than sasldb') -source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-${pkgver}.tar.gz - cyrus-sasl-2.1.19-checkpw.c.patch - cyrus-sasl-db.patch) -options=('!makeflags') -md5sums=('2eb0e48106f0e9cd8001e654f267ecbc' - 'e27ddff076342e7a3041c4759817d04b' - '0658201497aad359c0d66b0ab8032859') - -build() { - cd "${srcdir}/cyrus-sasl-${pkgver}" - patch -Np0 -i ${srcdir}/cyrus-sasl-2.1.19-checkpw.c.patch - patch -Np1 -i ${srcdir}/cyrus-sasl-db.patch - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --disable-anon \ - --disable-cram \ - --disable-digest \ - --disable-gssapi \ - --enable-login \ - --disable-otp \ - --enable-plain \ - --mandir=/usr/share/man - for dir in include lib sasldb plugins utils; do - pushd ${dir} - make - popd - done -} - -package() { - cd "${srcdir}/cyrus-sasl-${pkgver}" - for dir in include lib sasldb plugins utils; do - pushd ${dir} || return 1 - make DESTDIR="${pkgdir}" install - popd - done - - # install license - install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" -} diff --git a/staging/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch b/staging/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch deleted file mode 100644 index f7bf44b79..000000000 --- a/staging/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch +++ /dev/null @@ -1,170 +0,0 @@ -diff -ur ../cyrus-sasl-2.1.19.orig/lib/Makefile.in ./lib/Makefile.in ---- ../cyrus-sasl-2.1.19.orig/lib/Makefile.in 2004-07-02 21:40:15.000000000 +0200 -+++ ./lib/Makefile.in 2004-09-07 13:21:22.746680576 +0200 -@@ -120,7 +120,7 @@ - JAVA_TRUE = @JAVA_TRUE@ - LDFLAGS = @LDFLAGS@ - LIBOBJS = @LIBOBJS@ --LIBS = @LIBS@ -+LIBS = -lcrypt @LIBS@ - LIBTOOL = @LIBTOOL@ - LIB_CRYPT = @LIB_CRYPT@ - LIB_DES = @LIB_DES@ -diff -ur ../cyrus-sasl-2.1.19.orig/lib/checkpw.c ./lib/checkpw.c ---- ../cyrus-sasl-2.1.19.orig/lib/checkpw.c 2004-03-17 14:58:13.000000000 +0100 -+++ ./lib/checkpw.c 2004-09-07 13:21:12.645916147 +0200 -@@ -94,6 +94,23 @@ - # endif - #endif - -+/****************************** -+ * crypt(3) patch start * -+ ******************************/ -+char *crypt(const char *key, const char *salt); -+ -+/* cleartext password formats */ -+#define PASSWORD_FORMAT_CLEARTEXT 1 -+#define PASSWORD_FORMAT_CRYPT 2 -+#define PASSWORD_FORMAT_CRYPTTRAD 3 -+#define PASSWORD_SALT_BUF_LEN 22 -+ -+/* weeds out crypt(3) password's salt */ -+int _sasl_get_salt (char *dest, char *src, int format); -+ -+/****************************** -+ * crypt(3) patch stop * -+ ******************************/ - - /* we store the following secret to check plaintext passwords: - * -@@ -143,7 +160,51 @@ - "*cmusaslsecretPLAIN", - NULL }; - struct propval auxprop_values[3]; -- -+ -+ /****************************** -+ * crypt(3) patch start * -+ * for password format check * -+ ******************************/ -+ sasl_getopt_t *getopt; -+ void *context; -+ const char *p = NULL; -+ /** -+ * MD5: 12 char salt -+ * BLOWFISH: 16 char salt -+ */ -+ char salt[PASSWORD_SALT_BUF_LEN]; -+ int password_format; -+ -+ /* get password format from auxprop configuration */ -+ if (_sasl_getcallback(conn, SASL_CB_GETOPT, &getopt, &context) == SASL_OK) { -+ getopt(context, NULL, "password_format", &p, NULL); -+ } -+ -+ /* set password format */ -+ if (p) { -+ /* -+ memset(pass_format_str, '\0', PASSWORD_FORMAT_STR_LEN); -+ strncpy(pass_format_str, p, (PASSWORD_FORMAT_STR_LEN - 1)); -+ */ -+ /* modern, modular crypt(3) */ -+ if (strncmp(p, "crypt", 11) == 0) -+ password_format = PASSWORD_FORMAT_CRYPT; -+ /* traditional crypt(3) */ -+ else if (strncmp(p, "crypt_trad", 11) == 0) -+ password_format = PASSWORD_FORMAT_CRYPTTRAD; -+ /* cleartext password */ -+ else -+ password_format = PASSWORD_FORMAT_CLEARTEXT; -+ } else { -+ /* cleartext password */ -+ password_format = PASSWORD_FORMAT_CLEARTEXT; -+ } -+ -+ /****************************** -+ * crypt(3) patch stop * -+ * for password format check * -+ ******************************/ -+ - if (!conn || !userstr) - return SASL_BADPARAM; - -@@ -180,14 +241,31 @@ - goto done; - } - -- /* At the point this has been called, the username has been canonified -- * and we've done the auxprop lookup. This should be easy. */ -- if(auxprop_values[0].name -- && auxprop_values[0].values -- && auxprop_values[0].values[0] -- && !strcmp(auxprop_values[0].values[0], passwd)) { -- /* We have a plaintext version and it matched! */ -- return SASL_OK; -+ -+ /****************************** -+ * crypt(3) patch start * -+ ******************************/ -+ -+ /* get salt */ -+ _sasl_get_salt(salt, (char *) auxprop_values[0].values[0], password_format); -+ -+ /* crypt(3)-ed password? */ -+ if (password_format != PASSWORD_FORMAT_CLEARTEXT) { -+ /* compare password */ -+ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(crypt(passwd, salt), auxprop_values[0].values[0]) == 0) -+ return SASL_OK; -+ else -+ ret = SASL_BADAUTH; -+ } -+ else if (password_format == PASSWORD_FORMAT_CLEARTEXT) { -+ /* compare passwords */ -+ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(auxprop_values[0].values[0], passwd) == 0) -+ return SASL_OK; -+ else -+ ret = SASL_BADAUTH; -+ /****************************** -+ * crypt(3) patch stop * -+ ******************************/ - } else if(auxprop_values[1].name - && auxprop_values[1].values - && auxprop_values[1].values[0]) { -@@ -975,3 +1053,37 @@ - #endif - { NULL, NULL } - }; -+ -+/* weeds out crypt(3) password's salt */ -+int _sasl_get_salt (char *dest, char *src, int format) { -+ int num; /* how many characters is salt long? */ -+ switch (format) { -+ case PASSWORD_FORMAT_CRYPT: -+ /* md5 crypt */ -+ if (src[1] == '1') -+ num = 12; -+ /* blowfish crypt */ -+ else if (src[1] == '2') -+ num = (src[1] == '2' && src[2] == 'a') ? 17 : 16; -+ /* traditional crypt */ -+ else -+ num = 2; -+ break; -+ -+ case PASSWORD_FORMAT_CRYPTTRAD: -+ num = 2; -+ break; -+ -+ default: -+ return 1; -+ } -+ -+ /* destroy destination */ -+ memset(dest, '\0', (num + 1)); -+ -+ /* copy salt to destination */ -+ strncpy(dest, src, num); -+ -+ return 1; -+} -+ diff --git a/staging/libsasl/cyrus-sasl-db.patch b/staging/libsasl/cyrus-sasl-db.patch deleted file mode 100644 index 08758ab85..000000000 --- a/staging/libsasl/cyrus-sasl-db.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -urN aaa/cyrus-sasl-2.1.22/cmulocal/berkdb.m4 cyrus-sasl-2.1.22/cmulocal/berkdb.m4 ---- aaa/cyrus-sasl-2.1.22/cmulocal/berkdb.m4 2005-04-26 21:14:07.000000000 +0200 -+++ cyrus-sasl-2.1.22/cmulocal/berkdb.m4 2006-10-02 20:36:17.137852392 +0200 -@@ -213,7 +213,7 @@ - fi - - saved_LIBS=$LIBS -- for dbname in db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db -+ for dbname in db-5.1 db-5.0 db-4.8 db-4.7 db-4.6 db-4.5 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db - do - LIBS="$saved_LIBS -l$dbname" - AC_TRY_LINK([#include <db.h>], ---- cyrus-sasl-2.1.23/sasldb/db_berkeley.c.orig 2009-04-28 17:09:18.000000000 +0200 -+++ cyrus-sasl-2.1.23/sasldb/db_berkeley.c 2010-05-18 21:02:20.418940098 +0200 -@@ -100,7 +100,7 @@ - ret = db_create(mbdb, NULL, 0); - if (ret == 0 && *mbdb != NULL) - { --#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 -+#if (DB_VERSION_MAJOR > 4) || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1) - ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, flags, 0660); - #else - ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, flags, 0660); ---- cyrus-sasl-2.1.23/utils/dbconverter-2.c.orig 2003-02-13 20:56:17.000000000 +0100 -+++ cyrus-sasl-2.1.23/utils/dbconverter-2.c 2010-05-18 21:11:09.982932556 +0200 -@@ -214,7 +214,7 @@ - ret = db_create(mbdb, NULL, 0); - if (ret == 0 && *mbdb != NULL) - { --#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 -+#if (DB_VERSION_MAJOR > 4) || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1) - ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, DB_CREATE, 0664); - #else - ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, DB_CREATE, 0664); diff --git a/staging/moc/PKGBUILD b/staging/moc/PKGBUILD deleted file mode 100644 index d782e1b0f..000000000 --- a/staging/moc/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# $Id: PKGBUILD 127443 2011-06-15 03:16:57Z eric $ -# Maintainer: Eric Bélanger <eric@archlinux.org> - -pkgname=moc -pkgver=20110528 -pkgrel=3 -pkgdesc="An ncurses console audio player with support for the mp3, ogg, and wave formats" -arch=('i686' 'x86_64') -url="http://moc.daper.net/" -license=('GPL') -depends=('libmad' 'libid3tag' 'jack' 'curl' 'libsamplerate' 'libtool' 'file') -makedepends=('speex' 'ffmpeg' 'taglib' 'libmpcdec' 'wavpack' 'libmodplug') -optdepends=('speex: for using the speex plugin' - 'ffmpeg: for using the ffmpeg plugin' - 'taglib: for using the musepack plugin' - 'libmpcdec: for using the musepack plugin' - 'wavpack: for using the wavpack plugin' - 'libmodplug: for using the modplug plugin') -options=('!libtool') -source=(ftp://ftp.archlinux.org/other/moc/${pkgname}-${pkgver}.tar.xz \ - gcc-undefined-symbols.diff) -md5sums=('003fd01af2165264eb666040e4f586cd' - 'efacb8559e9145e15b0c25f8fa2a9d79') -sha1sums=('f79049136ce6616bfd6af2f5e08246a5921441cf' - 'a811a4ac7e049914aab528d3f06a6be6634c2720') - -build() { - cd "${srcdir}/${pkgname}" - patch -p0 -i ../gcc-undefined-symbols.diff - -# Disabling aac to use the external ffmpeg to play them (FS#13164) - ./autogen.sh - ./configure --prefix=/usr --without-rcc --without-aac \ - --with-oss --with-alsa --with-jack --with-mp3 \ - --with-musepack --with-vorbis --with-flac --with-wavpack \ - --with-sndfile --with-modplug --with-ffmpeg --with-speex \ - --with-samplerate --with-curl --disable-debug - make -} - -package() { - cd "${srcdir}/${pkgname}" - make DESTDIR="${pkgdir}" install -} diff --git a/staging/moc/gcc-undefined-symbols.diff b/staging/moc/gcc-undefined-symbols.diff deleted file mode 100644 index 09e9b8bda..000000000 --- a/staging/moc/gcc-undefined-symbols.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- decoder.c~ 2011-05-08 09:28:28.077137883 +0200 -+++ decoder.c 2011-05-10 21:40:48.887941968 +0200 -@@ -259,6 +259,9 @@ - for (i = 0; i < plugins_num; i++) - if (plugins[i].decoder->destroy) - plugins[i].decoder->destroy (); -+ for (i = 0; i < plugins_num; i++) -+ if (plugins[i].handle) -+ lt_dlclose(plugins[i].handle); - - if (lt_dlexit()) - logit ("lt_exit() failed: %s", lt_dlerror()); diff --git a/staging/mod_perl/PKGBUILD b/staging/mod_perl/PKGBUILD deleted file mode 100644 index 9f3595deb..000000000 --- a/staging/mod_perl/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 129799 2011-06-28 23:07:22Z angvp $ -# Maintainer: Firmicus <francois.archlinux.org> -# Contributor: Tom K <tomk@runbox.com> - -pkgname=mod_perl -pkgver=2.0.5 -pkgrel=7 -pkgdesc="Apache module that embeds the Perl interpreter within the server" -url="http://search.cpan.org/dist/${pkgname}/" -depends=('perl' 'apache' 'db' 'apr-util' 'perl-linux-pid') -license=('APACHE') -arch=('i686' 'x86_64') -options=(!emptydirs) -source=(http://search.cpan.org/CPAN/authors/id/P/PH/PHRED/${pkgname}-${pkgver}.tar.gz) -md5sums=('03d01d135a122bd8cebd0cd5b185d674') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - # install module in vendor directories. - perl Makefile.PL INSTALLDIRS=vendor MP_APXS=/usr/sbin/apxs - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make install DESTDIR=${pkgdir} -} diff --git a/staging/openldap/PKGBUILD b/staging/openldap/PKGBUILD deleted file mode 100644 index 44029b398..000000000 --- a/staging/openldap/PKGBUILD +++ /dev/null @@ -1,107 +0,0 @@ -# $Id: PKGBUILD 127879 2011-06-19 07:32:04Z andrea $ -# Maintainer: -# Contributor: Judd Vinet <jvinet@zeroflux.org> - -pkgname=openldap -pkgver=2.4.24 -pkgrel=2 -pkgdesc="LDAP Server" -arch=('i686' 'x86_64') -license=('custom') -url="http://www.openldap.org/" -backup=('etc/openldap/slapd.conf' 'etc/default/slapd' 'etc/conf.d/slapd') -depends=("libldap>=${pkgver}" 'tcp_wrappers' 'libfetch' 'util-linux-ng') -provides=('openldap-clients') -replaces=('openldap-clients') -source=("ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/${pkgname}-${pkgver}.tgz" - 'slapd' - 'slapd.default') -md5sums=('116fe1e23a7b67686d5e62274367e6c0' - '832354417c495f29affd2c772808959d' - '6be69f6b7e522cb64cce8703da81ed32') -options=('emptydirs') - -build() { - cd "${srcdir}"/${pkgname}-${pkgver} - - export LIBS=-ldb - ./configure --prefix=/usr \ - --mandir=/usr/share/man \ - --libexecdir=/usr/sbin \ - --sysconfdir=/etc \ - --localstatedir=/var/lib/openldap \ - --enable-bdb \ - --enable-crypt \ - --enable-dynamic \ - --with-threads \ - --enable-wrappers \ - --enable-spasswd \ - --with-cyrus-sasl - - find . -name 'Makefile' -exec \ - sed -e 's|$(LDAP_LIBDIR)/liblber/liblber.la|/usr/lib/liblber-2.4.so.2|g' \ - -e 's|$(LDAP_LIBDIR)/libldap/libldap.la|/usr/lib/libldap-2.4.so.2|g' \ - -e 's|$(LDAP_LIBDIR)/libldap_r/libldap_r.la|/usr/lib/libldap_r-2.4.so.2|g' \ - -i {} \; - - cd include - make - - cd ../libraries - for dir in liblutil librewrite liblunicode; do - pushd ${dir} - make depend - make - popd - done - - cd ../servers - make depend - make - - cd ../clients - make depend - make - - cd ../doc/man - for dir in man{1,5,8}; do - pushd ${dir} - make - popd - done -} - -package() { - cd "${srcdir}"/${pkgname}-${pkgver} - - cd servers - make DESTDIR="${pkgdir}" install - - cd ../clients - make DESTDIR="${pkgdir}" install - - cd ../doc/man - for dir in man{1,5,8}; do - pushd ${dir} - make DESTDIR="${pkgdir}" install - popd - done - rm "${pkgdir}"/usr/share/man/man5/ldap.conf.5 - - cd ../.. - - install -dm700 "${pkgdir}"/etc/openldap/slapd.d - install -Dm755 "${srcdir}"/slapd "${pkgdir}"/etc/rc.d/slapd - install -Dm644 "${srcdir}"/slapd.default "${pkgdir}"/etc/conf.d/slapd - install -dm700 "${pkgdir}"/var/lib/openldap - - # get rid of duplicate default conf files - rm "${pkgdir}"/etc/openldap/*.default - - # hack to fix screwed up dirs - sed -e 's|^pidfile[[:space:]].*$|pidfile /var/run/slapd.pid|g' \ - -e 's|^argsfile[[:space:]].*$|argsfile /var/run/slapd.args|g' \ - -i "${pkgdir}"/etc/openldap/slapd.conf - - install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/$pkgname/LICENSE -} diff --git a/staging/openldap/slapd b/staging/openldap/slapd deleted file mode 100755 index 392075027..000000000 --- a/staging/openldap/slapd +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -[ -f "/etc/conf.d/slapd" ] && . /etc/conf.d/slapd - -PID=`pidof -o %PPID /usr/sbin/slapd` -case "$1" in - start) - stat_busy "Starting OpenLDAP" - if [ -z "$PID" ]; then - if [ -z "$SLAPD_SERVICES" ]; then - /usr/sbin/slapd $SLAPD_OPTIONS - else - /usr/sbin/slapd -h "$SLAPD_SERVICES" $SLAPD_OPTIONS - fi - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - fi - add_daemon slapd - else - stat_fail - fi - ;; - stop) - stat_busy "Stopping OpenLDAP" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm -f /var/run/slapd.pid - rm -f /var/run/slapd.args - rm_daemon slapd - stat_done - fi - ;; - restart) - $0 stop - sleep 3 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/staging/openldap/slapd.default b/staging/openldap/slapd.default deleted file mode 100644 index 72ae2a6a7..000000000 --- a/staging/openldap/slapd.default +++ /dev/null @@ -1,6 +0,0 @@ -# slapd normally serves ldap only on all TCP-ports 389. slapd can also -# service requests on TCP-port 636 (ldaps) and requests via unix -# sockets. -# Example usage: -#SLAPD_SERVICES="ldap://127.0.0.1:389/ ldaps:/// ldapi:///" -SLAPD_OPTIONS="" diff --git a/staging/pam/PKGBUILD b/staging/pam/PKGBUILD deleted file mode 100644 index 5a4f10780..000000000 --- a/staging/pam/PKGBUILD +++ /dev/null @@ -1,56 +0,0 @@ -# $Id: PKGBUILD 127852 2011-06-18 20:12:05Z stephane $ -# Maintainer: Tobias Powalowski <tpowa@archlinux.org> -# Contributor: judd <jvinet@zeroflux.org> - -pkgname=pam -pkgver=1.1.3 -pkgrel=2 -pkgdesc="PAM (Pluggable Authentication Modules) library" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://www.kernel.org/pub/linux/libs/pam/" -depends=('glibc' 'db' 'cracklib') -makedepends=('flex' 'w3m' 'docbook-xml>=4.4' 'docbook-xsl') -backup=(etc/security/{access.conf,group.conf,limits.conf,namespace.conf,namespace.init,pam_env.conf,time.conf} etc/pam.d/other etc/default/passwd etc/environment) -source=(http://www.kernel.org/pub/linux/libs/pam/library/Linux-PAM-$pkgver.tar.bz2 - ftp://ftp.suse.com/pub/people/kukuk/pam/pam_unix2/pam_unix2-2.6.tar.bz2 - other) -options=('!libtool' '!emptydirs') -md5sums=('6db7fcb5db6253350e3a4648ceac40e7' - 'e2788389a6c59224110a45fcff30e02b' - '6e6c8719e5989d976a14610f340bd33a') - -build() { - cd $srcdir/Linux-PAM-$pkgver - ./configure --sysconfdir=/etc DESTDIR=$pkgdir --libdir=/lib - make -} - -package() { - cd $srcdir/Linux-PAM-$pkgver - make INSTALL=/bin/install DESTDIR=$pkgdir install - install -D -m644 ../other $pkgdir/etc/pam.d/other - # build pam_unix2 module - # source ftp://ftp.suse.com/pub/people/kukuk/pam/pam_unix2 - cd $srcdir/pam_unix2-2.6 - ./configure - make - make DESTDIR=$pkgdir install - # add the realtime permissions for audio users - sed -i 's|# End of file||' $pkgdir/etc/security/limits.conf - cat >>$pkgdir/etc/security/limits.conf <<_EOT -* - rtprio 0 -* - nice 0 -@audio - rtprio 65 -@audio - nice -10 -@audio - memlock 40000 -_EOT - # fix some missing symlinks from old pam for compatibility - cd $pkgdir/lib/security - ln -s pam_unix.so pam_unix_acct.so - ln -s pam_unix.so pam_unix_auth.so - ln -s pam_unix.so pam_unix_passwd.so - ln -s pam_unix.so pam_unix_session.so - # set unix_chkpwd uid - chmod +s $pkgdir/sbin/unix_chkpwd -} diff --git a/staging/pam/pam.install b/staging/pam/pam.install deleted file mode 100644 index 9d4588084..000000000 --- a/staging/pam/pam.install +++ /dev/null @@ -1,12 +0,0 @@ -# arg 1: the new package version -post_install() { - # need to run this immediately -- pacman only runs it at the end of - # all package installs - /sbin/ldconfig -r . -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} diff --git a/staging/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch b/staging/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch deleted file mode 100644 index 1404460df..000000000 --- a/staging/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch +++ /dev/null @@ -1,83 +0,0 @@ -From bb249b0b26c2e79a6f55355ef94889070f07fd21 Mon Sep 17 00:00:00 2001 -From: Niko Tyni <ntyni@debian.org> -Date: Thu, 28 Apr 2011 09:18:54 +0300 -Subject: [PATCH] Append CFLAGS and LDFLAGS to their Config.pm counterparts in - EU::CBuilder - -Since ExtUtils::CBuilder 0.27_04 (bleadperl commit 06e8058f27e4), -CFLAGS and LDFLAGS from the environment have overridden the Config.pm -ccflags and ldflags settings. This can cause binary incompatibilities -between the core Perl and extensions built with EU::CBuilder. - -Append to the Config.pm values rather than overriding them. ---- - .../lib/ExtUtils/CBuilder/Base.pm | 6 +++- - dist/ExtUtils-CBuilder/t/04-base.t | 25 +++++++++++++++++++- - 2 files changed, 28 insertions(+), 3 deletions(-) - -diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm -index b572312..2255c51 100644 ---- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm -+++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm -@@ -40,11 +40,13 @@ sub new { - $self->{config}{$k} = $v unless exists $self->{config}{$k}; - } - $self->{config}{cc} = $ENV{CC} if defined $ENV{CC}; -- $self->{config}{ccflags} = $ENV{CFLAGS} if defined $ENV{CFLAGS}; -+ $self->{config}{ccflags} = join(" ", $self->{config}{ccflags}, $ENV{CFLAGS}) -+ if defined $ENV{CFLAGS}; - $self->{config}{cxx} = $ENV{CXX} if defined $ENV{CXX}; - $self->{config}{cxxflags} = $ENV{CXXFLAGS} if defined $ENV{CXXFLAGS}; - $self->{config}{ld} = $ENV{LD} if defined $ENV{LD}; -- $self->{config}{ldflags} = $ENV{LDFLAGS} if defined $ENV{LDFLAGS}; -+ $self->{config}{ldflags} = join(" ", $self->{config}{ldflags}, $ENV{LDFLAGS}) -+ if defined $ENV{LDFLAGS}; - - unless ( exists $self->{config}{cxx} ) { - my ($ccpath, $ccbase, $ccsfx ) = fileparse($self->{config}{cc}, qr/\.[^.]*/); -diff --git a/dist/ExtUtils-CBuilder/t/04-base.t b/dist/ExtUtils-CBuilder/t/04-base.t -index c3bf6b5..1bb15aa 100644 ---- a/dist/ExtUtils-CBuilder/t/04-base.t -+++ b/dist/ExtUtils-CBuilder/t/04-base.t -@@ -1,7 +1,7 @@ - #! perl -w - - use strict; --use Test::More tests => 50; -+use Test::More tests => 64; - use Config; - use Cwd; - use File::Path qw( mkpath ); -@@ -326,6 +326,29 @@ is_deeply( $mksymlists_args, - "_prepare_mksymlists_args(): got expected arguments for Mksymlists", - ); - -+my %testvars = ( -+ CFLAGS => 'ccflags', -+ LDFLAGS => 'ldflags', -+); -+ -+while (my ($VAR, $var) = each %testvars) { -+ local $ENV{$VAR}; -+ $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); -+ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); -+ isa_ok( $base, 'ExtUtils::CBuilder::Base' ); -+ like($base->{config}{$var}, qr/\Q$Config{$var}/, -+ "honours $var from Config.pm"); -+ -+ $ENV{$VAR} = "-foo -bar"; -+ $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); -+ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); -+ isa_ok( $base, 'ExtUtils::CBuilder::Base' ); -+ like($base->{config}{$var}, qr/\Q$ENV{$VAR}/, -+ "honours $VAR from the environment"); -+ like($base->{config}{$var}, qr/\Q$Config{$var}/, -+ "doesn't override $var from Config.pm with $VAR from the environment"); -+} -+ - ##### - - for ($source_file, $object_file, $lib_file) { --- -1.7.4.4 - diff --git a/staging/perl/ChangeLog b/staging/perl/ChangeLog deleted file mode 100644 index 9add39e20..000000000 --- a/staging/perl/ChangeLog +++ /dev/null @@ -1,66 +0,0 @@ -2011-06-22 Angel Velasquez <angvp@archlinux.org> - * Added a patch for ExtUtils doesnt overwrite CFLAGS and LDFLAGS - * Fixed #FS22197, FS#22441, FS#24767 - * Rebuilt perl 5.14.1-2 against db 5.2.28 - -2011-06-16 Angel Velasquez <angvp@archlinux.org> - * Fixed #FS24660 - * Rebuilt against db 5.2.28 - -2011-05-16 Angel Velasquez <angvp@archlinux.org> - * perl 5.14.0 - * Removed patch for h2ph warning from 5.12.3 - * Removed provides array, you can use corelist -v 5.14.0 to know the - modules included with the perl core, through Module::CoreList (thx j3nnn1 - for the tip) - -2010-11-07 kevin <kevin@archlinux.org> - - * perl 5.12.2-1 - - Using /usr/bin/*_perl for script directories - -2010-11-06 kevin <kevin@archlinux.org> - - - Removed otherlibdirs directive from Configure - - Removed /usr/*/perl5/site_perl/5.10.1 from INC - - Finally removed legacy dirs /usr/lib/perl5/current and - /usr/lib/perl5/site_perl/current from @INC - -2010-05-23 kevin <kevin@archlinux.org> - - * perl 5.12.1-2 - - Francois updated the provides array. - -2010-05-23 kevin <kevin@archlinux.org> - - * perl 5.12.1-1 - -2010-05-16 kevin <kevin@archlinux.org> - - * perl 5.12.0-2 - -2010-05-12 kevin <kevin@archlinux.org> - - - FS#19411. Removed the for loop in perlbin.sh which didn't work on zsh. - This makes the loop variables unnecessary so the script no longer - pollutes the user's environment. - - FS#19427. Added /usr/*/perl5/site_perl/5.10.1 to otherlibdirs to support - user built modules. - -2010-05-09 kevin <kevin@archlinux.org> - - * perl 5.12.0-1 - - Modified perlbin.sh to only add existing dirs to PATH. Fixes FS#17402, - path points to non-existant directories - -2010-05-07 kevin <kevin@archlinux.org> - - - Added this changelog. - - Added -Dinc_version_list=none to fix FS#19136, double entry in @INC. - This removes the duplicates and versioned directory entries. - - Change scriptdirs to /usr/lib/perl5/{core,vendor,site}_perl/bin to fix - Fix FS#13808, binaries don't follow FHS. - - Stopped using versioned directories in sitelib and sitearch. - - -# vim: set ft=changelog ts=4 sw=4 et: diff --git a/staging/perl/PKGBUILD b/staging/perl/PKGBUILD deleted file mode 100644 index d25f2aae4..000000000 --- a/staging/perl/PKGBUILD +++ /dev/null @@ -1,103 +0,0 @@ -# $Id: PKGBUILD 129898 2011-06-29 17:25:10Z foutrelis $ -# Maintainer: Angel Velasquez <angvp@archlinux.org> -# Contributor: kevin <kevin.archlinux.org> -# Contributor: judd <jvinet.zeroflux.org> -# Contributor: francois <francois.archlinux.org> -pkgname=perl -pkgver=5.14.1 -pkgrel=3 -pkgdesc="A highly capable, feature-rich programming language" -arch=(i686 x86_64) -license=('GPL' 'PerlArtistic') -url="http://www.perl.org" -groups=('base') -depends=('gdbm' 'db' 'coreutils' 'glibc' 'sh') -changelog=ChangeLog -source=(http://www.cpan.org/src/5.0/perl-${pkgver}.tar.bz2 -perlbin.sh -perlbin.csh -0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch) -install=perl.install -options=('!makeflags' '!purge') -md5sums=('97cd306a2c22929cc141a09568f43bb0' - '5ed2542fdb9a60682f215bd33701e61a' - '1f0cbbee783e8a6d32f01be5118e0d5e' - 'c25d86206d649046538c3daab7874564') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - if [ "${CARCH}" = "x86_64" ]; then - # for x86_64 - arch_opts="-Dcccdlflags='-fPIC'" - else - # for i686 - arch_opts="" - fi - ./Configure -des -Dusethreads -Duseshrplib -Doptimize="${CFLAGS}" \ - -Dprefix=/usr -Dinstallprefix=${pkgdir}/usr -Dvendorprefix=/usr \ - -Dprivlib=/usr/share/perl5/core_perl \ - -Darchlib=/usr/lib/perl5/core_perl \ - -Dsitelib=/usr/share/perl5/site_perl \ - -Dsitearch=/usr/lib/perl5/site_perl \ - -Dvendorlib=/usr/share/perl5/vendor_perl \ - -Dvendorarch=/usr/lib/perl5/vendor_perl \ - -Dscriptdir=/usr/bin/core_perl \ - -Dsitescript=/usr/bin/site_perl \ - -Dvendorscript=/usr/bin/vendor_perl \ - -Dinc_version_list=none \ - -Dman1ext=1perl -Dman3ext=3perl ${arch_opts} \ - -Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}" - patch -Np1 -i $srcdir/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch - make -} -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make install - - ### Perl Settings ### - # Change man page extensions for site and vendor module builds. - # Use archlinux email address instead of my own. - sed -e '/^man1ext=/ s/1perl/1p/' -e '/^man3ext=/ s/3perl/3pm/' \ - -e "/^cf_email=/ s/'.*'/'kevin@archlinux.org'/" \ - -e "/^perladmin=/ s/'.*'/'kevin@archlinux.org'/" \ - -i ${pkgdir}/usr/lib/perl5/core_perl/Config_heavy.pl - - ### CPAN Settings ### - # Set CPAN default config to use the site directories. - sed -e '/(makepl_arg =>/ s/""/"INSTALLDIRS=site"/' \ - -e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \ - -i ${pkgdir}/usr/share/perl5/core_perl/CPAN/FirstTime.pm - - ### CPANPLUS Settings ### - # Set CPANPLUS default config to use the site directories. - sed -e "/{'makemakerflags'}/ s/'';/'INSTALLDIRS=site';/" \ - -e "/{'buildflags'}/ s/'';/'installdirs=site';/" \ - -i ${pkgdir}/usr/share/perl5/core_perl/CPANPLUS/Config.pm - - # Profile script to set paths to perl scripts. - install -D -m755 ${srcdir}/perlbin.sh \ - ${pkgdir}/etc/profile.d/perlbin.sh - # Profile script to set paths to perl scripts on csh. (FS#22441) - install -D -m755 ${srcdir}/perlbin.csh \ - ${pkgdir}/etc/profile.d/perlbin.csh - - (cd ${pkgdir}/usr/bin; mv perl${pkgver} perl) - (cd ${pkgdir}/usr/bin/core_perl; ln -sf c2ph pstruct; ln -sf s2p psed) - grep -Rl "${pkgdir}" ${pkgdir}/usr | \ - xargs sed -i "s^${pkgdir}^^g" - - # Remove all pod files *except* those under /usr/share/perl5/core_perl/pod/ - # (FS#16488) - rm -f $pkgdir/usr/share/perl5/core_perl/*.pod - for d in $pkgdir/usr/share/perl5/core_perl/*; do - if [ -d $d -a $(basename $d) != "pod" ]; then - find $d -name *.pod -delete - fi - done - find $pkgdir/usr/lib -name *.pod -delete - find $pkgdir -name .packlist -delete - # Add /usr/lib/perl5/core_perl/CORE/ to standard library path (FS#24660) - install -dv ${pkgdir}/etc/ld.so.conf.d - echo "/usr/lib/perl5/core_perl/CORE" > ${pkgdir}/etc/ld.so.conf.d/perl.conf -} diff --git a/staging/perl/fix-h2ph-and-tests.patch b/staging/perl/fix-h2ph-and-tests.patch deleted file mode 100644 index a2d176ec6..000000000 --- a/staging/perl/fix-h2ph-and-tests.patch +++ /dev/null @@ -1,104 +0,0 @@ -From 8d66b3f930dc6d88b524d103e304308ae73a46e7 Mon Sep 17 00:00:00 2001 -From: Robin Barker <rmbarker@cpan.org> -Date: Thu, 22 Apr 2010 11:51:20 +0100 -Subject: [PATCH 1/1] Fix h2ph and test - ---- - lib/h2ph.t | 12 ++++++++++-- - utils/h2ph.PL | 28 +++++++++++++++++++++++----- - 2 files changed, 33 insertions(+), 7 deletions(-) - -diff --git a/lib/h2ph.t b/lib/h2ph.t -index 27dd7b9..8d62d46 100644 ---- a/lib/h2ph.t -+++ b/lib/h2ph.t -@@ -18,7 +18,7 @@ if (!(-e $extracted_program)) { - exit 0; - } - --plan(4); -+plan(5); - - # quickly compare two text files - sub txt_compare { -@@ -41,8 +41,16 @@ $result = runperl( progfile => 'lib/h2ph.pht', - stderr => 1 ); - like( $result, qr/syntax OK$/, "output compiles"); - -+$result = runperl( progfile => '_h2ph_pre.ph', -+ switches => ['-c'], -+ stderr => 1 ); -+like( $result, qr/syntax OK$/, "preamble compiles"); -+ - $result = runperl( switches => ["-w"], -- prog => '$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);'); -+ stderr => 1, -+ prog => <<'PROG' ); -+$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht); -+PROG - is( $result, '', "output free of warnings" ); - - # cleanup -diff --git a/utils/h2ph.PL b/utils/h2ph.PL -index 8f56db4..1255807 100644 ---- a/utils/h2ph.PL -+++ b/utils/h2ph.PL -@@ -401,7 +401,10 @@ if ($opt_e && (scalar(keys %bad_file) > 0)) { - exit $Exit; - - sub expr { -- $new = '"(assembly code)"' and return if /\b__asm__\b/; # freak out. -+ if (/\b__asm__\b/) { # freak out -+ $new = '"(assembly code)"'; -+ return -+ } - my $joined_args; - if(keys(%curargs)) { - $joined_args = join('|', keys(%curargs)); -@@ -770,7 +773,7 @@ sub inc_dirs - sub build_preamble_if_necessary - { - # Increment $VERSION every time this function is modified: -- my $VERSION = 2; -+ my $VERSION = 3; - my $preamble = "$Dest_dir/_h2ph_pre.ph"; - - # Can we skip building the preamble file? -@@ -798,7 +801,16 @@ sub build_preamble_if_necessary - # parenthesized value: d=(v) - $define{$_} = $1; - } -- if ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { -+ if (/^(\w+)\((\w)\)$/) { -+ my($macro, $arg) = ($1, $2); -+ my $def = $define{$_}; -+ $def =~ s/$arg/\$\{$arg\}/g; -+ print PREAMBLE <<DEFINE; -+unless (defined &$macro) { sub $macro(\$) { my (\$$arg) = \@_; \"$def\" } } -+ -+DEFINE -+ } elsif -+ ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { - # float: - print PREAMBLE - "unless (defined &$_) { sub $_() { $1 } }\n\n"; -@@ -807,8 +819,14 @@ sub build_preamble_if_necessary - print PREAMBLE - "unless (defined &$_) { sub $_() { $1 } }\n\n"; - } elsif ($define{$_} =~ /^\w+$/) { -- print PREAMBLE -- "unless (defined &$_) { sub $_() { &$define{$_} } }\n\n"; -+ my $def = $define{$_}; -+ if ($isatype{$def}) { -+ print PREAMBLE -+ "unless (defined &$_) { sub $_() { \"$def\" } }\n\n"; -+ } else { -+ print PREAMBLE -+ "unless (defined &$_) { sub $_() { &$def } }\n\n"; -+ } - } else { - print PREAMBLE - "unless (defined &$_) { sub $_() { \"", --- -1.6.5.2.74.g610f9.dirty - diff --git a/staging/perl/perl.install b/staging/perl/perl.install deleted file mode 100644 index 3f7d58f23..000000000 --- a/staging/perl/perl.install +++ /dev/null @@ -1,18 +0,0 @@ -# arg 1: the new package version -post_install() { - for ver in 5.8.{0,1,2,3,4,5,6,7,8}; do - [ -h usr/lib/perl5/$ver ] && rm usr/lib/perl5/$ver - [ -h usr/lib/perl5/site_perl/$ver ] && rm usr/lib/perl5/site_perl/$ver - [ -h usr/bin/perl$ver ] && rm usr/bin/perl$ver - done - return 0 -} - -post_upgrade() { - echo '- The directories /usr/lib/perl5/current, /usr/lib/perl5/site_perl/current,' - echo ' /usr/lib/perl5/site_perl/5.10.1, and /usr/share/perl5/site_perl/5.10.1' - echo ' have been removed from @INC.' - - echo '- The script/binary directories are now /usr/bin/*_perl instead of' - echo ' /usr/lib/perl5/*_perl/bin which will be eventually removed.' -} diff --git a/staging/perl/perlbin.csh b/staging/perl/perlbin.csh deleted file mode 100644 index 535f0b18d..000000000 --- a/staging/perl/perlbin.csh +++ /dev/null @@ -1,15 +0,0 @@ -# Set path to perl scriptdirs if they exist -# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts -# Added /usr/bin/*_perl dirs for scripts -# Remove /usr/lib/perl5/*_perl/bin in next release - -[ -d /usr/bin/site_perl ] && setenv PATH ${PATH}:/usr/bin/site_perl -[ -d /usr/lib/perl5/site_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/site_perl/bin - -[ -d /usr/bin/vendor_perl ] && setenv PATH ${PATH}:/usr/bin/vendor_perl -[ -d /usr/lib/perl5/vendor_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/vendor_perl/bin - -[ -d /usr/bin/core_perl ] && setenv PATH ${PATH}:/usr/bin/core_perl - -# If you have modules in non-standard directories you can add them here. -#export PERLLIB=dir1:dir2 diff --git a/staging/perl/perlbin.sh b/staging/perl/perlbin.sh deleted file mode 100755 index 20f830436..000000000 --- a/staging/perl/perlbin.sh +++ /dev/null @@ -1,18 +0,0 @@ -# Set path to perl scriptdirs if they exist -# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts -# Added /usr/bin/*_perl dirs for scripts -# Remove /usr/lib/perl5/*_perl/bin in next release - -[ -d /usr/bin/site_perl ] && PATH=$PATH:/usr/bin/site_perl -[ -d /usr/lib/perl5/site_perl/bin ] && PATH=$PATH:/usr/lib/perl5/site_perl/bin - -[ -d /usr/bin/vendor_perl ] && PATH=$PATH:/usr/bin/vendor_perl -[ -d /usr/lib/perl5/vendor_perl/bin ] && PATH=$PATH:/usr/lib/perl5/vendor_perl/bin - -[ -d /usr/bin/core_perl ] && PATH=$PATH:/usr/bin/core_perl - -export PATH - -# If you have modules in non-standard directories you can add them here. -#export PERLLIB=dir1:dir2 - diff --git a/staging/php/PKGBUILD b/staging/php/PKGBUILD deleted file mode 100644 index 4e7f515cd..000000000 --- a/staging/php/PKGBUILD +++ /dev/null @@ -1,379 +0,0 @@ -# $Id: PKGBUILD 127446 2011-06-15 08:33:01Z pierre $ -# Maintainer: Pierre Schmitz <pierre@archlinux.de> - -pkgbase=php -pkgname=('php' - 'php-cgi' - 'php-apache' - 'php-fpm' - 'php-embed' - 'php-pear' - 'php-curl' - 'php-enchant' - 'php-gd' - 'php-gmp' - 'php-intl' - 'php-ldap' - 'php-mcrypt' - 'php-mssql' - 'php-odbc' - 'php-pgsql' - 'php-pspell' - 'php-snmp' - 'php-sqlite' - 'php-tidy' - 'php-xsl') -pkgver=5.3.6 -pkgrel=5 -_suhosinver=${pkgver}-0.9.10 -arch=('i686' 'x86_64') -license=('PHP') -url='http://www.php.net' -makedepends=('apache' 'imap' 'postgresql-libs' 'mysql' 'libldap' 'postfix' - 'sqlite3' 'unixodbc' 'net-snmp' 'libzip' 'enchant' 'file' 'freetds' - 'libmcrypt' 'tidyhtml' 'aspell' 'libtool' 'libpng' 'libjpeg' 'icu' - 'curl' 'libxslt' 'openssl' 'bzip2' 'db' 'gmp' 'freetype2') -source=("http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.bz2" - "suhosin-patch-${_suhosinver}.patch.gz" - 'php.ini.patch' 'apache.conf' 'rc.d.php-fpm' 'php-fpm.conf.in.patch' - 'logrotate.d.php-fpm') -md5sums=('2286f5a82a6e8397955a0025c1c2ad98' - 'fff1a38877142f3ae6036dbe5a85d0a6' - '39eaa70d276fc3d45d6bcf6cd5ae1106' - 'dec2cbaad64e3abf4f0ec70e1de4e8e9' - 'b01be5f816988fcee7e78225836e5e27' - 'd50ff349da08110a7cc8c691ce2d0423' - '07c4e412909ac65a44ec90e7a2c4bade') - -build() { - # ldap-sasl does not compile with --as-needed - export LDFLAGS="${LDFLAGS//-Wl,--as-needed}" - export LDFLAGS="${LDFLAGS//,--as-needed}" - - phpconfig="--srcdir=../${pkgbase}-${pkgver} \ - --prefix=/usr \ - --sysconfdir=/etc/php \ - --localstatedir=/var \ - --with-layout=GNU \ - --with-config-file-path=/etc/php \ - --with-config-file-scan-dir=/etc/php/conf.d \ - --enable-inline-optimization \ - --disable-debug \ - --disable-rpath \ - --disable-static \ - --enable-shared \ - --mandir=/usr/share/man \ - --without-pear \ - " - - phpextensions="--enable-bcmath=shared \ - --enable-calendar=shared \ - --enable-dba=shared \ - --enable-exif=shared \ - --enable-ftp=shared \ - --enable-gd-native-ttf \ - --enable-intl=shared \ - --enable-json=shared \ - --enable-mbregex \ - --enable-mbstring \ - --enable-pdo \ - --enable-phar=shared \ - --enable-posix=shared \ - --enable-session \ - --enable-shmop=shared \ - --enable-soap=shared \ - --enable-sockets=shared \ - --enable-sqlite-utf8 \ - --enable-sysvmsg=shared \ - --enable-sysvsem=shared \ - --enable-sysvshm=shared \ - --enable-xml \ - --enable-zip=shared \ - --with-bz2=shared \ - --with-curl=shared \ - --with-db4=/usr \ - --with-enchant=shared,/usr \ - --with-freetype-dir=shared,/usr \ - --with-gd=shared \ - --with-gdbm=shared \ - --with-gettext=shared \ - --with-gmp=shared \ - --with-iconv=shared \ - --with-icu-dir=/usr \ - --with-imap-ssl=shared \ - --with-imap=shared \ - --with-jpeg-dir=shared,/usr \ - --with-ldap=shared \ - --with-ldap-sasl \ - --with-mcrypt=shared \ - --with-mhash \ - --with-mssql=shared \ - --with-mysql-sock=/var/run/mysqld/mysqld.sock \ - --with-mysql=shared,mysqlnd \ - --with-mysqli=shared,mysqlnd \ - --with-openssl=shared \ - --with-pcre-regex=/usr \ - --with-pdo-mysql=shared,mysqlnd \ - --with-pdo-odbc=shared,unixODBC,/usr \ - --with-pdo-pgsql=shared \ - --with-pdo-sqlite=shared,/usr \ - --with-pgsql=shared \ - --with-png-dir=shared,/usr \ - --with-pspell=shared \ - --with-regex=php \ - --with-snmp=shared \ - --with-sqlite3=shared,/usr \ - --with-sqlite=shared \ - --with-tidy=shared \ - --with-unixODBC=shared,/usr \ - --with-xmlrpc=shared \ - --with-xsl=shared \ - --with-zlib \ - --without-db2 \ - --without-db3 \ - " - - EXTENSION_DIR=/usr/lib/php/modules - export EXTENSION_DIR - PEAR_INSTALLDIR=/usr/share/pear - export PEAR_INSTALLDIR - - cd ${srcdir}/${pkgbase}-${pkgver} - - # apply suhosin patch - patch -p1 -i ${srcdir}/suhosin-patch-${_suhosinver}.patch - - # adjust paths - patch -p0 -i ${srcdir}/php.ini.patch - patch -p0 -i ${srcdir}/php-fpm.conf.in.patch - - # php - mkdir ${srcdir}/build-php - cd ${srcdir}/build-php - ln -s ../${pkgbase}-${pkgver}/configure - ./configure ${phpconfig} \ - --disable-cgi \ - --with-readline \ - --enable-pcntl \ - ${phpextensions} - make - - # cgi and fcgi - # reuse the previous run; this will save us a lot of time - cp -a ${srcdir}/build-php ${srcdir}/build-cgi - cd ${srcdir}/build-cgi - ./configure ${phpconfig} \ - --disable-cli \ - --enable-cgi \ - ${phpextensions} - make - - # apache - cp -a ${srcdir}/build-php ${srcdir}/build-apache - cd ${srcdir}/build-apache - ./configure ${phpconfig} \ - --disable-cli \ - --with-apxs2 \ - ${phpextensions} - make - - # fpm - cp -a ${srcdir}/build-php ${srcdir}/build-fpm - cd ${srcdir}/build-fpm - ./configure ${phpconfig} \ - --disable-cli \ - --enable-fpm \ - --with-fpm-user=http \ - --with-fpm-group=http \ - ${phpextensions} - make - - # embed - cp -a ${srcdir}/build-php ${srcdir}/build-embed - cd ${srcdir}/build-embed - ./configure ${phpconfig} \ - --disable-cli \ - --enable-embed=shared \ - ${phpextensions} - make - - # pear - cp -a ${srcdir}/build-php ${srcdir}/build-pear - cd ${srcdir}/build-pear - ./configure ${phpconfig} \ - --disable-cgi \ - --with-readline \ - --enable-pcntl \ - --with-pear \ - ${phpextensions} - make -} - -# check() { -# cd ${srcdir}/build-php -# make test -# } - -package_php() { - pkgdesc='An HTML-embedded scripting language' - depends=('pcre' 'libxml2' 'bzip2' 'openssl') - replaces=('php-fileinfo') - provides=('php-fileinfo') - conflicts=('php-fileinfo') - backup=('etc/php/php.ini') - - cd ${srcdir}/build-php - make -j1 INSTALL_ROOT=${pkgdir} install - install -d -m755 ${pkgdir}/usr/share/pear - # install php.ini - install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/php/php.ini - install -d -m755 ${pkgdir}/etc/php/conf.d/ - - # remove static modules - rm -f ${pkgdir}/usr/lib/php/modules/*.a - # remove modules provided by sub packages - rm -f ${pkgdir}/usr/lib/php/modules/{curl,enchant,gd,gmp,intl,ldap,mcrypt,mssql,odbc,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so -} - -package_php-cgi() { - pkgdesc='CGI and FCGI SAPI for PHP' - depends=('php' 'pcre' 'libxml2') - - install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/php-cgi -} - -package_php-apache() { - pkgdesc='Apache SAPI for PHP' - depends=('php' 'apache' 'pcre' 'libxml2') - backup=('etc/httpd/conf/extra/php5_module.conf') - - install -D -m755 ${srcdir}/build-apache/libs/libphp5.so ${pkgdir}/usr/lib/httpd/modules/libphp5.so - install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/php5_module.conf -} - -package_php-fpm() { - pkgdesc='FastCGI Process Manager for PHP' - depends=('php') - backup=('etc/php/php-fpm.conf') - - install -D -m755 ${srcdir}/build-fpm/sapi/fpm/php-fpm ${pkgdir}/usr/sbin/php-fpm - install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.8 ${pkgdir}/usr/share/man/man8/php-fpm.8 - install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.conf ${pkgdir}/etc/php/php-fpm.conf - install -D -m755 ${srcdir}/rc.d.php-fpm ${pkgdir}/etc/rc.d/php-fpm - install -D -m644 ${srcdir}/logrotate.d.php-fpm ${pkgdir}/etc/logrotate.d/php-fpm - install -d -m755 ${pkgdir}/etc/php/fpm.d -} - -package_php-embed() { - pkgdesc='Embed SAPI for PHP' - depends=('php' 'pcre' 'libxml2') - - install -D -m755 ${srcdir}/build-embed/libs/libphp5.so ${pkgdir}/usr/lib/libphp5.so - install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/sapi/embed/php_embed.h ${pkgdir}/usr/include/php/sapi/embed/php_embed.h -} - -package_php-pear() { - pkgdesc='PHP Extension and Application Repository' - depends=('php' 'bash') - backup=('etc/php/pear.conf') - - cd ${srcdir}/build-pear - make -j1 install-pear INSTALL_ROOT=${pkgdir} - local i - while read i; do - [ ! -e "$i" ] || rm -rf "$i" - done < <(find ${pkgdir} -name '.*') -} - -package_php-curl() { - depends=('php' 'curl') - pkgdesc='curl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/curl.so ${pkgdir}/usr/lib/php/modules/curl.so -} - -package_php-enchant() { - depends=('php' 'enchant') - pkgdesc='enchant module for PHP' - install -D -m755 ${srcdir}/build-php/modules/enchant.so ${pkgdir}/usr/lib/php/modules/enchant.so -} - -package_php-gd() { - depends=('php' 'libpng' 'libjpeg' 'freetype2') - pkgdesc='gd module for PHP' - install -D -m755 ${srcdir}/build-php/modules/gd.so ${pkgdir}/usr/lib/php/modules/gd.so -} - -package_php-gmp() { - depends=('php' 'gmp') - pkgdesc='gmp module for PHP' - install -D -m755 ${srcdir}/build-php/modules/gmp.so ${pkgdir}/usr/lib/php/modules/gmp.so -} - -package_php-intl() { - depends=('php' 'icu') - pkgdesc='intl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/intl.so ${pkgdir}/usr/lib/php/modules/intl.so -} - -package_php-ldap() { - depends=('php' 'libldap') - pkgdesc='ldap module for PHP' - install -D -m755 ${srcdir}/build-php/modules/ldap.so ${pkgdir}/usr/lib/php/modules/ldap.so -} - -package_php-mcrypt() { - depends=('php' 'libmcrypt' 'libtool') - pkgdesc='mcrypt module for PHP' - install -D -m755 ${srcdir}/build-php/modules/mcrypt.so ${pkgdir}/usr/lib/php/modules/mcrypt.so -} - -package_php-mssql() { - depends=('php' 'freetds') - pkgdesc='mssql module for PHP' - install -D -m755 ${srcdir}/build-php/modules/mssql.so ${pkgdir}/usr/lib/php/modules/mssql.so -} - -package_php-odbc() { - depends=('php' 'unixodbc') - pkgdesc='ODBC modules for PHP' - install -D -m755 ${srcdir}/build-php/modules/odbc.so ${pkgdir}/usr/lib/php/modules/odbc.so - install -D -m755 ${srcdir}/build-php/modules/pdo_odbc.so ${pkgdir}/usr/lib/php/modules/pdo_odbc.so -} - -package_php-pgsql() { - depends=('php' 'postgresql-libs') - pkgdesc='PostgreSQL modules for PHP' - install -D -m755 ${srcdir}/build-php/modules/pgsql.so ${pkgdir}/usr/lib/php/modules/pgsql.so - install -D -m755 ${srcdir}/build-php/modules/pdo_pgsql.so ${pkgdir}/usr/lib/php/modules/pdo_pgsql.so -} - -package_php-pspell() { - depends=('php' 'aspell') - pkgdesc='pspell module for PHP' - install -D -m755 ${srcdir}/build-php/modules/pspell.so ${pkgdir}/usr/lib/php/modules/pspell.so -} - -package_php-snmp() { - depends=('php' 'net-snmp') - pkgdesc='snmp module for PHP' - install -D -m755 ${srcdir}/build-php/modules/snmp.so ${pkgdir}/usr/lib/php/modules/snmp.so -} - -package_php-sqlite() { - depends=('php' 'sqlite3') - pkgdesc='sqlite3 module for PHP' - install -D -m755 ${srcdir}/build-php/modules/sqlite3.so ${pkgdir}/usr/lib/php/modules/sqlite3.so - install -D -m755 ${srcdir}/build-php/modules/pdo_sqlite.so ${pkgdir}/usr/lib/php/modules/pdo_sqlite.so -} - -package_php-tidy() { - depends=('php' 'tidyhtml') - pkgdesc='tidy module for PHP' - install -D -m755 ${srcdir}/build-php/modules/tidy.so ${pkgdir}/usr/lib/php/modules/tidy.so -} - -package_php-xsl() { - depends=('php' 'libxslt') - pkgdesc='xsl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/xsl.so ${pkgdir}/usr/lib/php/modules/xsl.so -} diff --git a/staging/php/apache.conf b/staging/php/apache.conf deleted file mode 100644 index c3ca0aad5..000000000 --- a/staging/php/apache.conf +++ /dev/null @@ -1,13 +0,0 @@ -# Required modules: dir_module, php5_module - -<IfModule dir_module> - <IfModule php5_module> - DirectoryIndex index.php index.html - <FilesMatch "\.php$"> - SetHandler application/x-httpd-php - </FilesMatch> - <FilesMatch "\.phps$"> - SetHandler application/x-httpd-php-source - </FilesMatch> - </IfModule> -</IfModule> diff --git a/staging/php/logrotate.d.php-fpm b/staging/php/logrotate.d.php-fpm deleted file mode 100644 index 7a1ba2597..000000000 --- a/staging/php/logrotate.d.php-fpm +++ /dev/null @@ -1,6 +0,0 @@ -/var/log/php-fpm.log { - missingok - postrotate - /etc/rc.d/php-fpm logrotate >/dev/null || true - endscript -} diff --git a/staging/php/php-fpm.conf.in.patch b/staging/php/php-fpm.conf.in.patch deleted file mode 100644 index 93c62430a..000000000 --- a/staging/php/php-fpm.conf.in.patch +++ /dev/null @@ -1,80 +0,0 @@ ---- sapi/fpm/php-fpm.conf.in 2010-12-11 08:31:47.695294987 +0100 -+++ sapi/fpm/php-fpm.conf.in 2010-12-11 08:31:55.907812237 +0100 -@@ -12,7 +12,7 @@ - ; Relative path can also be used. They will be prefixed by: - ; - the global prefix if it's been set (-p arguement) - ; - @prefix@ otherwise --;include=etc/fpm.d/*.conf -+;include=/etc/php/fpm.d/*.conf - - ;;;;;;;;;;;;;;;;;; - ; Global Options ; -@@ -22,7 +22,7 @@ - ; Pid file - ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ - ; Default Value: none --;pid = run/php-fpm.pid -+pid = run/php-fpm/php-fpm.pid - - ; Error log file - ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ -@@ -93,7 +93,8 @@ - ; specific port; - ; '/path/to/unix/socket' - to listen on a unix socket. - ; Note: This value is mandatory. --listen = 127.0.0.1:9000 -+;listen = 127.0.0.1:9000 -+listen = /var/run/php-fpm/php-fpm.sock - - ; Set listen(2) backlog. A value of '-1' means unlimited. - ; Default Value: 128 (-1 on FreeBSD and OpenBSD) -@@ -112,9 +113,9 @@ - ; BSD-derived systems allow connections regardless of permissions. - ; Default Values: user and group are set as the running user - ; mode is set to 0666 --;listen.owner = @php_fpm_user@ --;listen.group = @php_fpm_group@ --;listen.mode = 0666 -+listen.owner = @php_fpm_user@ -+listen.group = @php_fpm_group@ -+listen.mode = 0660 - - ; Unix user/group of processes - ; Note: The user is mandatory. If the group is not set, the default user's group -@@ -154,23 +155,23 @@ - ; The number of child processes created on startup. - ; Note: Used only when pm is set to 'dynamic' - ; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 --;pm.start_servers = 20 -+pm.start_servers = 20 - - ; The desired minimum number of idle server processes. - ; Note: Used only when pm is set to 'dynamic' - ; Note: Mandatory when pm is set to 'dynamic' --;pm.min_spare_servers = 5 -+pm.min_spare_servers = 5 - - ; The desired maximum number of idle server processes. - ; Note: Used only when pm is set to 'dynamic' - ; Note: Mandatory when pm is set to 'dynamic' --;pm.max_spare_servers = 35 -+pm.max_spare_servers = 35 - - ; The number of requests each child process should execute before respawning. - ; This can be useful to work around memory leaks in 3rd party libraries. For - ; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. - ; Default Value: 0 --;pm.max_requests = 500 -+pm.max_requests = 500 - - ; The URI to view the FPM status page. If this value is not set, no URI will be - ; recognized as a status page. By default, the status page shows the following -@@ -264,7 +265,7 @@ - ; Chdir to this directory at the start. - ; Note: relative path can be used. - ; Default Value: current directory or / when chroot --;chdir = /var/www -+;chdir = /srv/http - - ; Redirect worker stdout and stderr into main error log. If not set, stdout and - ; stderr will be redirected to /dev/null according to FastCGI specs. diff --git a/staging/php/php.ini.patch b/staging/php/php.ini.patch deleted file mode 100644 index 356e190b4..000000000 --- a/staging/php/php.ini.patch +++ /dev/null @@ -1,126 +0,0 @@ ---- php.ini-production 2011-02-09 01:25:44.000000000 +0100 -+++ php.ini-production 2011-03-19 11:11:44.496987763 +0100 -@@ -376,7 +376,7 @@ - ; or per-virtualhost web server configuration file. This directive is - ; *NOT* affected by whether Safe Mode is turned On or Off. - ; http://php.net/open-basedir --;open_basedir = -+open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/ - - ; This directive allows you to disable certain functions for security reasons. - ; It receives a comma-delimited list of function names. This directive is -@@ -781,7 +781,7 @@ - ;;;;;;;;;;;;;;;;;;;;;;;;; - - ; UNIX: "/path1:/path2" --;include_path = ".:/php/includes" -+include_path = ".:/usr/share/pear" - ; - ; Windows: "\path1;\path2" - ;include_path = ".;c:\php\includes" -@@ -804,7 +804,7 @@ - - ; Directory in which the loadable extensions (modules) reside. - ; http://php.net/extension-dir --; extension_dir = "./" -+extension_dir = "/usr/lib/php/modules/" - ; On windows: - ; extension_dir = "ext" - -@@ -938,53 +938,49 @@ - ; If you only provide the name of the extension, PHP will look for it in its - ; default extension directory. - ; --; Windows Extensions --; Note that ODBC support is built in, so no dll is needed for it. --; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5) --; extension folders as well as the separate PECL DLL download (PHP 5). --; Be sure to appropriately set the extension_dir directive. --; --;extension=php_bz2.dll --;extension=php_curl.dll --;extension=php_fileinfo.dll --;extension=php_gd2.dll --;extension=php_gettext.dll --;extension=php_gmp.dll --;extension=php_intl.dll --;extension=php_imap.dll --;extension=php_interbase.dll --;extension=php_ldap.dll --;extension=php_mbstring.dll --;extension=php_exif.dll ; Must be after mbstring as it depends on it --;extension=php_mysql.dll --;extension=php_mysqli.dll --;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client --;extension=php_oci8_11g.dll ; Use with Oracle 11g Instant Client --;extension=php_openssl.dll --;extension=php_pdo_firebird.dll --;extension=php_pdo_mssql.dll --;extension=php_pdo_mysql.dll --;extension=php_pdo_oci.dll --;extension=php_pdo_odbc.dll --;extension=php_pdo_pgsql.dll --;extension=php_pdo_sqlite.dll --;extension=php_pgsql.dll --;extension=php_pspell.dll --;extension=php_shmop.dll -- --; The MIBS data available in the PHP distribution must be installed. --; See http://www.php.net/manual/en/snmp.installation.php --;extension=php_snmp.dll -- --;extension=php_soap.dll --;extension=php_sockets.dll --;extension=php_sqlite.dll --;extension=php_sqlite3.dll --;extension=php_sybase_ct.dll --;extension=php_tidy.dll --;extension=php_xmlrpc.dll --;extension=php_xsl.dll --;extension=php_zip.dll -+;extension=bcmath.so -+;extension=bz2.so -+;extension=calendar.so -+;extension=curl.so -+;extension=dba.so -+;extension=enchant.so -+;extension=exif.so -+;extension=ftp.so -+;extension=gd.so -+extension=gettext.so -+;extension=gmp.so -+;extension=iconv.so -+;extension=imap.so -+;extension=intl.so -+;extension=json.so -+;extension=ldap.so -+;extension=mcrypt.so -+;extension=mssql.so -+;extension=mysqli.so -+;extension=mysql.so -+;extension=odbc.so -+;extension=openssl.so -+;extension=pdo_mysql.so -+;extension=pdo_odbc.so -+;extension=pdo_pgsql.so -+;extension=pdo_sqlite.so -+;extension=pgsql.so -+;extension=phar.so -+;extension=posix.so -+;extension=pspell.so -+;extension=shmop.so -+;extension=snmp.so -+;extension=soap.so -+;extension=sockets.so -+;extension=sqlite3.so -+;extension=sqlite.so -+;extension=sysvmsg.so -+;extension=sysvsem.so -+;extension=sysvshm.so -+;extension=tidy.so -+;extension=xmlrpc.so -+;extension=xsl.so -+;extension=zip.so - - ;;;;;;;;;;;;;;;;;;; - ; Module Settings ; diff --git a/staging/php/rc.d.php-fpm b/staging/php/rc.d.php-fpm deleted file mode 100644 index 54bcf4d5b..000000000 --- a/staging/php/rc.d.php-fpm +++ /dev/null @@ -1,158 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - - -wait_for_pid () { - try=0 - while test $try -lt 35 ; do - case "$1" in - 'created') - if [ -f "$2" ] ; then - try='' - break - fi - ;; - 'removed') - if [ ! -f "$2" ] ; then - try='' - break - fi - ;; - esac - - stat_append '.' - try=`expr $try + 1` - sleep 1 - done -} - -test_config() { - stat_busy 'Checking configuration' - if [ $(id -u) -ne 0 ]; then - stat_append '(This script must be run as root)' - stat_die - fi - - if [ ! -r /etc/php/php-fpm.conf ]; then - stat_append '(/etc/php/php-fpm.conf not found)' - stat_die - fi - - local test=$(/usr/sbin/php-fpm -t 2>&1) - if [ $? -gt 0 ]; then - stat_append '(error in /etc/php/php-fpm.conf)' - stat_die - elif echo $test | grep -qi 'error'; then - stat_append '(error in /etc/php/php.ini)' - stat_die - fi - - [ -d /var/run/php-fpm ] || install -d -m755 /var/run/php-fpm - - stat_done -} - -case "$1" in - start) - test_config - stat_busy 'Starting php-fpm' - - /usr/sbin/php-fpm - - if [ "$?" != 0 ] ; then - stat_fail - exit 1 - fi - - wait_for_pid created /var/run/php-fpm/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - add_daemon php-fpm - stat_done - fi - ;; - - stop) - test_config - stat_busy 'Gracefully shutting down php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -QUIT `cat /var/run/php-fpm/php-fpm.pid` - - wait_for_pid removed /var/run/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - rm_daemon php-fpm - stat_done - fi - ;; - - force-quit) - stat_busy 'Terminating php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -TERM `cat /var/run/php-fpm/php-fpm.pid` - - wait_for_pid removed /var/run/php-fpm/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - rm_daemon php-fpm - stat_done - fi - ;; - - restart) - $0 stop - $0 start - ;; - - reload) - test_config - stat_busy 'Reload service php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -USR2 `cat /var/run/php-fpm/php-fpm.pid` - stat_done - ;; - - logrotate) - stat_busy 'Reopen php-fpm log' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -USR1 `cat /var/run/php-fpm/php-fpm.pid` - stat_done - ;; - - *) - echo "usage: $0 {start|stop|force-quit|restart|reload|logrotate}" - exit 1 - ;; - -esac diff --git a/staging/php/suhosin-patch-5.3.6-0.9.10.patch.gz b/staging/php/suhosin-patch-5.3.6-0.9.10.patch.gz Binary files differdeleted file mode 100644 index 7167ce2d0..000000000 --- a/staging/php/suhosin-patch-5.3.6-0.9.10.patch.gz +++ /dev/null diff --git a/staging/postfix/PKGBUILD b/staging/postfix/PKGBUILD deleted file mode 100644 index 7ae08c572..000000000 --- a/staging/postfix/PKGBUILD +++ /dev/null @@ -1,64 +0,0 @@ -# $Id: PKGBUILD 127765 2011-06-18 08:12:47Z bisson $ -# Contributor: Jeff Brodnax <tullyarcher@bellsouth.net> -# Maintainer: Gaetan Bisson <bisson@archlinux.org> -# Maintainer: Paul Mattal <paul@archlinux.org> - -pkgname=postfix -pkgver=2.8.3 -pkgrel=4 -pkgdesc='Secure, fast, easy to administer drop in replacement for Sendmail (MTA)' -url='http://www.postfix.org/' -arch=('i686' 'x86_64') -license=('custom') -depends=('pcre' 'libsasl' 'libmysqlclient' 'postgresql-libs' 'sqlite3' 'libldap' 'db') -backup=('etc/postfix/'{access,aliases,canonical,generic,header_checks,main.cf,master.cf,relocated,transport,virtual}) -source=("ftp://ftp.porcupine.org/mirrors/postfix-release/official/${pkgname}-${pkgver}.tar.gz" \ - 'aliases.patch' \ - 'rc.d') -sha1sums=('2604066f158f5327449960afd6334b996dc01799' - '5fc3de6c7df1e5851a0a379e825148868808318b' - '40c6be2eb55e6437a402f43775cdb3d22ea87a66') - -provides=('smtp-server' 'smtp-forwarder') -replaces=('postfix-mysql' 'postfix-pgsql') -conflicts=('postfix-mysql' 'postfix-pgsql' 'smtp-server' 'smtp-forwarder') - -install=install - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - make makefiles DEBUG='' CCARGS=' \ - -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl \ - -DHAS_LDAP \ - -DUSE_TLS \ - -DHAS_MYSQL -I/usr/include/mysql \ - -DHAS_PGSQL -I/usr/include/postgresql \ - -DHAS_SQLITE \ - ' AUXLIBS=' \ - -lsasl2 \ - -lldap -llber \ - -lssl -lcrypto \ - -lmysqlclient -lz -lm \ - -lpq \ - -lsqlite3 -lpthread \ - ' OPT="${CFLAGS} ${LDFLAGS}" - - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - - sh postfix-install -non-interactive \ - install_root="${pkgdir}" \ - daemon_directory="/usr/lib/${pkgname}" \ - sample_directory="/etc/${pkgname}/sample" \ - manpage_directory="/usr/share/man" - - install -D -m755 ../rc.d "${pkgdir}/etc/rc.d/${pkgname}" - install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - - cd "${pkgdir}" - patch -p0 < "${srcdir}"/aliases.patch -} diff --git a/staging/postfix/aliases.patch b/staging/postfix/aliases.patch deleted file mode 100644 index 6767870b7..000000000 --- a/staging/postfix/aliases.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- etc/postfix/main.cf.orig 2010-12-13 20:18:22.000000000 +0100 -+++ etc/postfix/main.cf 2010-12-13 20:18:24.000000000 +0100 -@@ -382,6 +382,7 @@ - #alias_maps = hash:/etc/aliases - #alias_maps = hash:/etc/aliases, nis:mail.aliases - #alias_maps = netinfo:/aliases -+alias_maps = hash:/etc/postfix/aliases - - # The alias_database parameter specifies the alias database(s) that - # are built with "newaliases" or "sendmail -bi". This is a separate -@@ -392,6 +393,7 @@ - #alias_database = dbm:/etc/mail/aliases - #alias_database = hash:/etc/aliases - #alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases -+alias_database = $alias_maps - - # ADDRESS EXTENSIONS (e.g., user+foo) - # diff --git a/staging/postfix/install b/staging/postfix/install deleted file mode 100644 index f5d81a565..000000000 --- a/staging/postfix/install +++ /dev/null @@ -1,35 +0,0 @@ -post_install() { - getent group postdrop &>/dev/null || groupadd -g 75 postdrop >/dev/null - getent group postfix &>/dev/null || groupadd -g 73 postfix >/dev/null - getent passwd postfix &>/dev/null || useradd -u 73 -d /var/spool/postfix -g postfix -s /bin/false postfix >/dev/null - - cd var/spool/postfix - chown postfix active bounce corrupt defer deferred flush hold incoming private public maildrop trace saved - chgrp postdrop public maildrop - cd ../../../usr/sbin - chgrp postdrop postqueue postdrop - chmod g+s postqueue postdrop - cd ../.. - chown postfix var/lib/postfix - - newaliases -} - -post_upgrade() { - post_install - - if [ `vercmp $2 2.8` = -1 ]; then cat <<EOF - -==> You must now execute "/etc/rc.d/postfix reload" (or restart). -==> This is needed because the queue manager to delivery agent -==> protocol has changed. - -EOF - fi -} - -pre_remove() { - getent passwd postfix &>/dev/null && userdel postfix >/dev/null - getent group postfix &>/dev/null && groupdel postfix >/dev/null - getent group postdrop &>/dev/null && groupdel postdrop >/dev/null -} diff --git a/staging/postfix/rc.d b/staging/postfix/rc.d deleted file mode 100755 index fa314bb84..000000000 --- a/staging/postfix/rc.d +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -name=postfix - -case "$1" in -start) - stat_busy "Starting $name daemon" - /usr/sbin/postfix start &>/dev/null \ - && { add_daemon $name; stat_done; } \ - || { stat_fail; exit 1; } - ;; -stop) - stat_busy "Stopping $name daemon" - /usr/sbin/postfix stop &>/dev/null \ - && { rm_daemon $name; stat_done; } \ - || { stat_fail; exit 1; } - ;; -reload) - stat_busy "Reloading $name daemon" - /usr/sbin/postfix reload &>/dev/null \ - && { stat_done; } \ - || { stat_fail; exit 1; } - ;; -restart) - $0 stop - sleep 1 - $0 start - ;; -*) - echo "usage: $0 {start|stop|restart|reload}" - ;; -esac -exit 0 diff --git a/staging/python2/PKGBUILD b/staging/python2/PKGBUILD deleted file mode 100644 index e0c363027..000000000 --- a/staging/python2/PKGBUILD +++ /dev/null @@ -1,83 +0,0 @@ -# $Id: PKGBUILD 129895 2011-06-29 15:22:59Z stephane $ -# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> -# Contributer: Allan McRae <allan@archlinux.org> -# Contributer: Jason Chu <jason@archlinux.org> - -pkgname=python2 -pkgver=2.7.2 -pkgrel=2 -_pybasever=2.7 -pkgdesc="A high-level scripting language" -arch=('i686' 'x86_64') -license=('PSF') -url="http://www.python.org/" -depends=('bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite3' 'libffi') -makedepends=('tk') -optdepends=('tk: for IDLE') -conflicts=('python<3') -options=('!makeflags') -source=(http://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz) -sha1sums=('56700044141402dc35e7a0a24aa7ffda1a8c1a53') - -build() { - cd "${srcdir}/Python-${pkgver}" - - # Temporary workaround for FS#22322 - # See http://bugs.python.org/issue10835 for upstream report - sed -i "/progname =/s/python/python${_pybasever}/" Python/pythonrun.c - - # Enable built-in SQLite3 module to load extensions (fix FS#22122) - sed -i "/SQLITE_OMIT_LOAD_EXTENSION/d" setup.py - - # FS#23997 - sed -i -e "s|^#.* /usr/local/bin/python|#!/usr/bin/python2|" Lib/cgi.py - - # Ensure that we are using the system copy of various libraries (expat, zlib and libffi), - # rather than copies shipped in the tarball - rm -r Modules/expat - rm -r Modules/zlib - rm -r Modules/_ctypes/{darwin,libffi}* - - export OPT="${CFLAGS}" - ./configure --prefix=/usr --enable-shared --with-threads --enable-ipv6 \ - --enable-unicode=ucs4 --with-system-expat --with-system-ffi - - make -} - -package() { - cd "${srcdir}/Python-${pkgver}" - make DESTDIR="${pkgdir}" altinstall maninstall - - ln -sf python${_pybasever} "${pkgdir}/usr/bin/python2" - ln -sf python${_pybasever}-config "${pkgdir}/usr/bin/python2-config" - ln -sf python${_pybasever}.1 "${pkgdir}/usr/share/man/man1/python2.1" - - ln -sf ../../libpython${_pybasever}.so \ - "${pkgdir}/usr/lib/python${_pybasever}/config/libpython${_pybasever}.so" - - mv "${pkgdir}/usr/bin/smtpd.py" "${pkgdir}/usr/lib/python${_pybasever}/" - - # some useful "stuff" - install -dm755 "${pkgdir}"/usr/lib/python${_pybasever}/Tools/{i18n,scripts} - install -m755 Tools/i18n/{msgfmt,pygettext}.py \ - "${pkgdir}/usr/lib/python${_pybasever}/Tools/i18n/" - install -m755 Tools/scripts/{README,*py} \ - "${pkgdir}/usr/lib/python${_pybasever}/Tools/scripts/" - - # fix conflicts with python - mv "${pkgdir}"/usr/bin/idle{,2} - mv "${pkgdir}"/usr/bin/pydoc{,2} - mv "${pkgdir}"/usr/bin/2to3{,-2.7} - - # clean up #!s - find "${pkgdir}/usr/lib/python${_pybasever}/" -name '*.py' | \ - xargs sed -i "s|#[ ]*![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" - - # clean-up reference to build directory - sed -i "s#${srcdir}/Python-${pkgver}:##" \ - "${pkgdir}/usr/lib/python${_pybasever}/config/Makefile" - - # license - install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} diff --git a/staging/rasqal/PKGBUILD b/staging/rasqal/PKGBUILD deleted file mode 100644 index 39d56e1cc..000000000 --- a/staging/rasqal/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 129908 2011-06-29 19:29:04Z andrea $ -# Maintainer: AndyRTR <andyrtr@archlinux.org> -# Contributor: Lawrence Lee <valheru@facticius.net> - -pkgname=rasqal -pkgver=0.9.26 -pkgrel=1 -pkgdesc="A free C library that handles Resource Description Framework (RDF) query syntaxes, query construction and query execution returning result bindings" -url="http://librdf.org/rasqal" -license=('GPL' 'LGPL') -arch=('i686' 'x86_64') -depends=('raptor>=2.0.3' 'mpfr') -options=('!libtool') -source=(http://download.librdf.org/source/${pkgname}-${pkgver}.tar.gz) -md5sums=('1e9fe5423498f10f636319633855e691') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr \ - --disable-static \ - --enable-release - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install -} diff --git a/staging/redland/PKGBUILD b/staging/redland/PKGBUILD deleted file mode 100644 index 949804063..000000000 --- a/staging/redland/PKGBUILD +++ /dev/null @@ -1,78 +0,0 @@ -# $Id: PKGBUILD 129914 2011-06-29 19:31:01Z andrea $ -# Maintainer: AndyRTR <andyrtr@archlinux.org> -# Contributor: Francois Charette <francois.archlinux.org> - -pkgbase=redland -epoch=1 -pkgname=('redland' 'redland-storage-mysql' 'redland-storage-postgresql' 'redland-storage-virtuoso' 'redland-storage-sqlite') -pkgver=1.0.13 -pkgrel=4 -url="http://librdf.org/" -license=("GPL") -arch=('i686' 'x86_64') -makedepends=('rasqal>=0.9.26' 'raptor>=2.0.3' 'db>=5.2' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3') -options=('!libtool') -source=(http://download.librdf.org/source/$pkgname-$pkgver.tar.gz - rpath.diff) -md5sums=('96c15f36f842ad7e1c9d225e4ca97b68' - 'acc85e784f01a656bd56777f95880787') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr \ - --enable-release \ - --disable-static \ - --with-raptor=system \ - --with-rasqal=system \ - --with-sqlite=3 - - # nuke rpath - patch -Np0 -i ${srcdir}/rpath.diff - - make -} - -package_redland() { - pkgdesc="Library that provides a high-level interface to RDF data" - depends=('rasqal>=0.9.26' 'raptor>=2.0.3' 'libtool') - - cd ${srcdir}/${pkgbase}-${pkgver} - make DESTDIR=${pkgdir} install - rm -rf ${pkgdir}/usr/lib/redland -} - -package_redland-storage-mysql() { - pkgdesc="MySQL storage support for Redland" - depends=('redland' 'libmysqlclient') - - cd ${srcdir}/${pkgbase}-${pkgver} - install -dm755 ${pkgdir}/usr/lib/redland - install -m755 src/.libs/librdf_storage_mysql.so ${pkgdir}/usr/lib/redland/librdf_storage_mysql.so -} - -package_redland-storage-postgresql() { - pkgdesc="PostgreSQL storage support for Redland" - depends=('redland' 'postgresql-libs') - - cd ${srcdir}/${pkgbase}-${pkgver} - install -dm755 ${pkgdir}/usr/lib/redland - install -m755 src/.libs/librdf_storage_postgresql.so ${pkgdir}/usr/lib/redland/ -} - -package_redland-storage-virtuoso() { - pkgdesc="Virtuoso storage support for Redland" - depends=('redland' 'unixodbc' 'db') - - cd ${srcdir}/${pkgbase}-${pkgver} - install -dm755 ${pkgdir}/usr/lib/redland - install -m755 src/.libs/librdf_storage_virtuoso.so ${pkgdir}/usr/lib/redland/ -} - -package_redland-storage-sqlite() { - pkgdesc="SQLite storage support for Redland" - depends=('redland' 'sqlite3' 'db') - - cd ${srcdir}/${pkgbase}-${pkgver} - install -dm755 ${pkgdir}/usr/lib/redland - install -m755 src/.libs/librdf_storage_sqlite.so ${pkgdir}/usr/lib/redland/ -} diff --git a/staging/redland/rpath.diff b/staging/redland/rpath.diff deleted file mode 100644 index 831bc80ed..000000000 --- a/staging/redland/rpath.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- libtool 2011-02-20 10:46:47.000000000 +0100 -+++ libtool.new 2011-02-20 10:52:58.285764909 +0100 -@@ -324,7 +324,7 @@ - - # Flag to hardcode $libdir into a binary during linking. - # This must work even if $libdir does not exist --hardcode_libdir_flag_spec="\${wl}-rpath \${wl}\$libdir" -+hardcode_libdir_flag_spec=" " - - # If ld is used when linking, flag to hardcode $libdir into a binary - # during linking. This must work even if $libdir does not exist. diff --git a/staging/ruby/PKGBUILD b/staging/ruby/PKGBUILD deleted file mode 100644 index a829449da..000000000 --- a/staging/ruby/PKGBUILD +++ /dev/null @@ -1,49 +0,0 @@ -# $Id: PKGBUILD 127449 2011-06-15 09:33:37Z eric $ -# Maintainer: -# Contributor: Allan McRae <allan@archlinux.org> -# Contributor: John Proctor <jproctor@prium.net> -# Contributor: Jeramy Rutley <jrutley@gmail.com> - -pkgbase=ruby -pkgname=('ruby' 'ruby-docs') -pkgver=1.9.2_p180 -pkgrel=3 -pkgdesc="An object-oriented language for quick and easy programming" -arch=('i686' 'x86_64') -url="http://www.ruby-lang.org/en/" -license=('custom') -makedepends=('openssl' 'tk' 'libffi' 'doxygen' 'graphviz') -options=('!emptydirs' '!makeflags') -source=("ftp://ftp.ruby-lang.org/pub/${pkgbase}/1.9/${pkgbase}-${pkgver//_/-}.tar.bz2") -md5sums=('68510eeb7511c403b91fe5476f250538') -sha1sums=('10824b44c8060c7b9b5afc0b3519a1e9f02f7fe5') - -build() { - cd "${srcdir}/${pkgbase}-${pkgver//_/-}" - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --enable-shared \ - --enable-pthread \ - --disable-rpath - make -} - -package_ruby() { - depends=('openssl' 'libffi') - provides=('rubygems' 'rake') - conflicts=('rake') - optdepends=('tk: for Ruby/TK') - - cd "${srcdir}/${pkgbase}-${pkgver//_/-}" - make DESTDIR="${pkgdir}" install-nodoc - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} - -package_ruby-docs() { - pkgdesc="Documentation files for ruby" - depends=('ruby') - - cd "${srcdir}/${pkgbase}-${pkgver//_/-}" - make DESTDIR="${pkgdir}" install-doc install-capi - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} diff --git a/staging/soprano/PKGBUILD b/staging/soprano/PKGBUILD deleted file mode 100644 index 4cca571cf..000000000 --- a/staging/soprano/PKGBUILD +++ /dev/null @@ -1,35 +0,0 @@ -# $Id: PKGBUILD 129919 2011-06-29 19:31:46Z andrea $ -# Maintainer: Andrea Scarpino <andrea@archlinux.org> -# Contributor: Tobias Powalowski <tpowa@archlinux.org> - -pkgname=soprano -pkgver=2.6.0git20110629 -pkgrel=1 -pkgdesc='A library which provides a highly usable object-oriented C++/Qt4 framework for RDF data' -arch=('i686' 'x86_64') -url='http://soprano.sourceforge.net/' -license=('GPL' 'LGPL') -depends=('qt' 'redland-storage-virtuoso' 'libiodbc' 'virtuoso') -makedepends=('cmake' 'openjdk6' 'doxygen') -#source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2") -source=("${pkgname}-${pkgver}.tar.bz2"::"http://quickgit.kde.org/?p=soprano.git&a=snapshot&h=3a7a527fd07c0d58146eb9e6770ecbcfb6717bc6&fmt=tbz2") -md5sums=('21ef1f075062ea13d3e55d89d8f92fd2') - -build() { - cd "${srcdir}" - mkdir build - cd build - . /etc/profile.d/openjdk6.sh - # we need the rpath - cmake ../${pkgname} \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=OFF \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DSOPRANO_DISABLE_CLUCENE_INDEX=ON - make -} - -package() { - cd "${srcdir}"/build - make DESTDIR="${pkgdir}" install -} diff --git a/staging/subversion/PKGBUILD b/staging/subversion/PKGBUILD deleted file mode 100644 index 8f8e8adbe..000000000 --- a/staging/subversion/PKGBUILD +++ /dev/null @@ -1,100 +0,0 @@ -# $Id: PKGBUILD 130071 2011-07-01 21:53:41Z stephane $ -# Maintainer: Paul Mattal <paul@archlinux.org> -# Contributor: Jason Chu <jason@archlinux.org> - -pkgname=subversion -pkgver=1.6.17 -pkgrel=6 -pkgdesc="A Modern Concurrent Version Control System" -arch=('i686' 'x86_64') -license=('apache' 'bsd') -depends=('neon' 'apr-util' 'sqlite3') -optdepends=('libgnome-keyring' 'kdeutils-kwallet' 'bash-completion: for svn bash completion') -makedepends=('krb5' 'apache' 'python2' 'perl' 'swig' 'ruby' 'java-runtime' - 'autoconf' 'db' 'e2fsprogs' 'libgnome-keyring' 'kdelibs') -backup=('etc/xinetd.d/svn' 'etc/conf.d/svnserve') -url="http://subversion.apache.org/" -provides=('svn') -options=('!makeflags' '!libtool') -source=(http://subversion.tigris.org/downloads/$pkgname-$pkgver.tar.bz2 - svnserve svn svnserve.conf svnmerge.py - subversion.rpath.fix.patch - subversion.suppress.deprecation.warnings.patch - subversion-perl-bindings.patch) -md5sums=('81e5dc5beee4b3fc025ac70c0b6caa14' - 'a2b029e8385007ffb99b437b30521c90' - 'a0db6dd43af33952739b6ec089852630' - 'c459e299192552f61578f3438abf0664' - 'a6371baeda7e224504629ecdda2749b4' - '6b4340ba9d8845cd8497e013ae01be3f' - '1166f3b7413d7e7450299b3525680bbe' - '0591aa39837931161b4d61ff35c7b147') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - export PYTHON=/usr/bin/python2 - - # apply patches - patch -Np0 -i ../subversion.rpath.fix.patch - patch -Np1 -i ../subversion.suppress.deprecation.warnings.patch - patch -Np1 -i ../subversion-perl-bindings.patch - - # configure - autoreconf - ./configure --prefix=/usr --with-apr=/usr --with-apr-util=/usr \ - --with-zlib=/usr --with-neon=/usr --with-apxs \ - --with-sqlite=/usr --with-berkeley-db=:/usr/include/:/usr/lib:db-5.2 \ - --enable-javahl --with-gnome-keyring --with-kwallet - - # build - (make external-all && make LT_LDFLAGS="-L$Fdestdir/usr/lib" local-all ) -} - -#check() { -# cd "${srcdir}/${pkgname}-${pkgver}" -# export LANG=C LC_ALL=C -# make check check-swig-pl check-swig-py CLEANUP=yes -#} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - - # install - export LD_LIBRARY_PATH=${pkgdir}/usr/lib:$LD_LIBRARY_PATH - make DESTDIR=${pkgdir} install - - make DESTDIR=${pkgdir} swig-py - make install-swig-py DESTDIR=${pkgdir} - - install -d ${pkgdir}/usr/lib/python2.7 - mv ${pkgdir}/usr/lib/svn-python/ ${pkgdir}/usr/lib/python2.7/site-packages - - install -d ${pkgdir}/usr/share/subversion - install -d -m 755 tools/hook-scripts ${pkgdir}/usr/share/subversion/ - rm -f ${pkgdir}/usr/share/subversion/hook-scripts/*.in - - make DESTDIR=${pkgdir} swig-pl - make install-swig-pl DESTDIR=${pkgdir} INSTALLDIRS=vendor - rm -f ${pkgdir}/usr/lib/perl5/vendor_perl/auto/SVN/_Core/.packlist - rm -rf ${pkgdir}/usr/lib/perl5/core_perl - - make DESTDIR=${pkgdir} swig-rb - make install-swig-rb DESTDIR=${pkgdir} - - make DESTDIR=${pkgdir} javahl - make DESTDIR=${pkgdir} install-javahl - - install -d ${pkgdir}/etc/{rc.d,xinetd.d,conf.d} - - install -m 755 ${srcdir}/svnserve ${pkgdir}/etc/rc.d - install -m 644 ${srcdir}/svn ${pkgdir}/etc/xinetd.d - install -m 644 ${srcdir}/svnserve.conf ${pkgdir}/etc/conf.d/svnserve - install -m 755 ${srcdir}/svnmerge.py ${pkgdir}/usr/bin/svnmerge - install -D -m 644 ${srcdir}/subversion-$pkgver/COPYING \ - ${pkgdir}/usr/share/licenses/$pkgname/LICENSE - - # bash completion - install -Dm 644 ${srcdir}/${pkgname}-${pkgver}/tools/client-side/bash_completion \ - ${pkgdir}/etc/bash_completion.d/subversion -} diff --git a/staging/subversion/subversion.rpath.fix.patch b/staging/subversion/subversion.rpath.fix.patch deleted file mode 100644 index ba6ee9e4e..000000000 --- a/staging/subversion/subversion.rpath.fix.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- Makefile.in.orig 2009-02-16 14:10:48.000000000 -0200 -+++ Makefile.in 2009-06-04 00:56:29.000000000 -0300 -@@ -678,6 +678,7 @@ - - $(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL - cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL -+ cd $(SWIG_PL_DIR)/native; sed -i 's|LD_RUN_PATH|DIE_RPATH_DIE|g' Makefile{,.{client,delta,fs,ra,repos,wc}} - - swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \ - $(SWIG_PL_DIR)/native/Makefile diff --git a/staging/subversion/subversion.suppress.deprecation.warnings.patch b/staging/subversion/subversion.suppress.deprecation.warnings.patch deleted file mode 100644 index 94ce89b18..000000000 --- a/staging/subversion/subversion.suppress.deprecation.warnings.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -urN subversion-1.6.9/subversion/bindings/swig/python/svn/core.py subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py ---- subversion-1.6.9/subversion/bindings/swig/python/svn/core.py 2009-02-13 11:22:26.000000000 -0500 -+++ subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py 2010-02-08 07:46:29.000000000 -0500 -@@ -19,6 +19,7 @@ - from libsvn.core import * - import libsvn.core as _libsvncore - import atexit as _atexit -+import warnings - - class SubversionException(Exception): - def __init__(self, message=None, apr_err=None, child=None, -@@ -44,7 +45,9 @@ - Exception.__init__(self, *args) - - self.apr_err = apr_err -- self.message = message -+ with warnings.catch_warnings(): -+ warnings.simplefilter("ignore", DeprecationWarning) -+ self.message = message - self.child = child - self.file = file - self.line = line diff --git a/staging/subversion/svn b/staging/subversion/svn deleted file mode 100644 index 8988aaf63..000000000 --- a/staging/subversion/svn +++ /dev/null @@ -1,11 +0,0 @@ -service svn -{ - flags = REUSE - socket_type = stream - wait = no - user = root - server = /usr/bin/svnserve - server_args = -i - log_on_failure += USERID - disable = yes -} diff --git a/staging/subversion/svnmerge.py b/staging/subversion/svnmerge.py deleted file mode 100644 index d8931648f..000000000 --- a/staging/subversion/svnmerge.py +++ /dev/null @@ -1,2370 +0,0 @@ -#!/usr/bin/env python2 -# -*- coding: utf-8 -*- -# Copyright (c) 2005, Giovanni Bajo -# Copyright (c) 2004-2005, Awarix, Inc. -# All rights reserved. -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -# -# Author: Archie Cobbs <archie at awarix dot com> -# Rewritten in Python by: Giovanni Bajo <rasky at develer dot com> -# -# Acknowledgments: -# John Belmonte <john at neggie dot net> - metadata and usability -# improvements -# Blair Zajac <blair at orcaware dot com> - random improvements -# Raman Gupta <rocketraman at fastmail dot fm> - bidirectional and transitive -# merging support -# Dustin J. Mitchell <dustin at zmanda dot com> - support for multiple -# location identifier formats -# -# $HeadURL$ -# $LastChangedDate$ -# $LastChangedBy$ -# $LastChangedRevision$ -# -# Requisites: -# svnmerge.py has been tested with all SVN major versions since 1.1 (both -# client and server). It is unknown if it works with previous versions. -# -# Differences from svnmerge.sh: -# - More portable: tested as working in FreeBSD and OS/2. -# - Add double-verbose mode, which shows every svn command executed (-v -v). -# - "svnmerge avail" now only shows commits in source, not also commits in -# other parts of the repository. -# - Add "svnmerge block" to flag some revisions as blocked, so that -# they will not show up anymore in the available list. Added also -# the complementary "svnmerge unblock". -# - "svnmerge avail" has grown two new options: -# -B to display a list of the blocked revisions -# -A to display both the blocked and the available revisions. -# - Improved generated commit message to make it machine parsable even when -# merging commits which are themselves merges. -# - Add --force option to skip working copy check -# - Add --record-only option to "svnmerge merge" to avoid performing -# an actual merge, yet record that a merge happened. -# - Can use a variety of location-identifier formats -# -# TODO: -# - Add "svnmerge avail -R": show logs in reverse order -# -# Information for Hackers: -# -# Identifiers for branches: -# A branch is identified in three ways within this source: -# - as a working copy (variable name usually includes 'dir') -# - as a fully qualified URL -# - as a path identifier (an opaque string indicating a particular path -# in a particular repository; variable name includes 'pathid') -# A "target" is generally user-specified, and may be a working copy or -# a URL. - -import sys, os, getopt, re, types, tempfile, time, locale -from bisect import bisect -from xml.dom import pulldom - -NAME = "svnmerge" -if not hasattr(sys, "version_info") or sys.version_info < (2, 0): - error("requires Python 2.0 or newer") - -# Set up the separator used to separate individual log messages from -# each revision merged into the target location. Also, create a -# regular expression that will find this same separator in already -# committed log messages, so that the separator used for this run of -# svnmerge.py will have one more LOG_SEPARATOR appended to the longest -# separator found in all the commits. -LOG_SEPARATOR = 8 * '.' -LOG_SEPARATOR_RE = re.compile('^((%s)+)' % re.escape(LOG_SEPARATOR), - re.MULTILINE) - -# Each line of the embedded log messages will be prefixed by LOG_LINE_PREFIX. -LOG_LINE_PREFIX = 2 * ' ' - -# Set python to the default locale as per environment settings, same as svn -# TODO we should really parse config and if log-encoding is specified, set -# the locale to match that encoding -locale.setlocale(locale.LC_ALL, '') - -# We want the svn output (such as svn info) to be non-localized -# Using LC_MESSAGES should not affect localized output of svn log, for example -if os.environ.has_key("LC_ALL"): - del os.environ["LC_ALL"] -os.environ["LC_MESSAGES"] = "C" - -############################################################################### -# Support for older Python versions -############################################################################### - -# True/False constants are Python 2.2+ -try: - True, False -except NameError: - True, False = 1, 0 - -def lstrip(s, ch): - """Replacement for str.lstrip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - i = 0 - try: - while s[i] == ch: - i = i+1 - return s[i:] - except IndexError: - return "" - -def rstrip(s, ch): - """Replacement for str.rstrip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - try: - if s[-1] != ch: - return s - i = -2 - while s[i] == ch: - i = i-1 - return s[:i+1] - except IndexError: - return "" - -def strip(s, ch): - """Replacement for str.strip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - return lstrip(rstrip(s, ch), ch) - -def rsplit(s, sep, maxsplits=0): - """Like str.rsplit, which is Python 2.4+ only.""" - L = s.split(sep) - if not 0 < maxsplits <= len(L): - return L - return [sep.join(L[0:-maxsplits])] + L[-maxsplits:] - -############################################################################### - -def kwextract(s): - """Extract info from a svn keyword string.""" - try: - return strip(s, "$").strip().split(": ")[1] - except IndexError: - return "<unknown>" - -__revision__ = kwextract('$Rev$') -__date__ = kwextract('$Date$') - -# Additional options, not (yet?) mapped to command line flags -default_opts = { - "svn": "svn", - "prop": NAME + "-integrated", - "block-prop": NAME + "-blocked", - "commit-verbose": True, - "verbose": 0, -} -logs = {} - -def console_width(): - """Get the width of the console screen (if any).""" - try: - return int(os.environ["COLUMNS"]) - except (KeyError, ValueError): - pass - - try: - # Call the Windows API (requires ctypes library) - from ctypes import windll, create_string_buffer - h = windll.kernel32.GetStdHandle(-11) - csbi = create_string_buffer(22) - res = windll.kernel32.GetConsoleScreenBufferInfo(h, csbi) - if res: - import struct - (bufx, bufy, - curx, cury, wattr, - left, top, right, bottom, - maxx, maxy) = struct.unpack("hhhhHhhhhhh", csbi.raw) - return right - left + 1 - except ImportError: - pass - - # Parse the output of stty -a - if os.isatty(1): - out = os.popen("stty -a").read() - m = re.search(r"columns (\d+);", out) - if m: - return int(m.group(1)) - - # sensible default - return 80 - -def error(s): - """Subroutine to output an error and bail.""" - print >> sys.stderr, "%s: %s" % (NAME, s) - sys.exit(1) - -def report(s): - """Subroutine to output progress message, unless in quiet mode.""" - if opts["verbose"]: - print "%s: %s" % (NAME, s) - -def prefix_lines(prefix, lines): - """Given a string representing one or more lines of text, insert the - specified prefix at the beginning of each line, and return the result. - The input must be terminated by a newline.""" - assert lines[-1] == "\n" - return prefix + lines[:-1].replace("\n", "\n"+prefix) + "\n" - -def recode_stdout_to_file(s): - if locale.getdefaultlocale()[1] is None or not hasattr(sys.stdout, "encoding") \ - or sys.stdout.encoding is None: - return s - u = s.decode(sys.stdout.encoding) - return u.encode(locale.getdefaultlocale()[1]) - -class LaunchError(Exception): - """Signal a failure in execution of an external command. Parameters are the - exit code of the process, the original command line, and the output of the - command.""" - -try: - """Launch a sub-process. Return its output (both stdout and stderr), - optionally split by lines (if split_lines is True). Raise a LaunchError - exception if the exit code of the process is non-zero (failure). - - This function has two implementations, one based on subprocess (preferred), - and one based on popen (for compatibility). - """ - import subprocess - import shlex - - def launch(cmd, split_lines=True): - # Requiring python 2.4 or higher, on some platforms we get - # much faster performance from the subprocess module (where python - # doesn't try to close an exhorbitant number of file descriptors) - stdout = "" - stderr = "" - try: - if os.name == 'nt': - p = subprocess.Popen(cmd, stdout=subprocess.PIPE, \ - close_fds=False, stderr=subprocess.PIPE) - else: - # Use shlex to break up the parameters intelligently, - # respecting quotes. shlex can't handle unicode. - args = shlex.split(cmd.encode('ascii')) - p = subprocess.Popen(args, stdout=subprocess.PIPE, \ - close_fds=False, stderr=subprocess.PIPE) - stdoutAndErr = p.communicate() - stdout = stdoutAndErr[0] - stderr = stdoutAndErr[1] - except OSError, inst: - # Using 1 as failure code; should get actual number somehow? For - # examples see svnmerge_test.py's TestCase_launch.test_failure and - # TestCase_launch.test_failurecode. - raise LaunchError(1, cmd, stdout + " " + stderr + ": " + str(inst)) - - if p.returncode == 0: - if split_lines: - # Setting keepends=True for compatibility with previous logic - # (where file.readlines() preserves newlines) - return stdout.splitlines(True) - else: - return stdout - else: - raise LaunchError(p.returncode, cmd, stdout + stderr) -except ImportError: - # support versions of python before 2.4 (slower on some systems) - def launch(cmd, split_lines=True): - if os.name not in ['nt', 'os2']: - import popen2 - p = popen2.Popen4(cmd) - p.tochild.close() - if split_lines: - out = p.fromchild.readlines() - else: - out = p.fromchild.read() - ret = p.wait() - if ret == 0: - ret = None - else: - ret >>= 8 - else: - i,k = os.popen4(cmd) - i.close() - if split_lines: - out = k.readlines() - else: - out = k.read() - ret = k.close() - - if ret is None: - return out - raise LaunchError(ret, cmd, out) - -def launchsvn(s, show=False, pretend=False, **kwargs): - """Launch SVN and grab its output.""" - username = password = configdir = "" - if opts.get("username", None): - username = "--username=" + opts["username"] - if opts.get("password", None): - password = "--password=" + opts["password"] - if opts.get("config-dir", None): - configdir = "--config-dir=" + opts["config-dir"] - cmd = ' '.join(filter(None, [opts["svn"], "--non-interactive", - username, password, configdir, s])) - if show or opts["verbose"] >= 2: - print cmd - if pretend: - return None - return launch(cmd, **kwargs) - -def svn_command(s): - """Do (or pretend to do) an SVN command.""" - out = launchsvn(s, show=opts["show-changes"] or opts["dry-run"], - pretend=opts["dry-run"], - split_lines=False) - if not opts["dry-run"]: - print out - -def check_dir_clean(dir): - """Check the current status of dir for local mods.""" - if opts["force"]: - report('skipping status check because of --force') - return - report('checking status of "%s"' % dir) - - # Checking with -q does not show unversioned files or external - # directories. Though it displays a debug message for external - # directories, after a blank line. So, practically, the first line - # matters: if it's non-empty there is a modification. - out = launchsvn("status -q %s" % dir) - if out and out[0].strip(): - error('"%s" has local modifications; it must be clean' % dir) - -class PathIdentifier: - """Abstraction for a path identifier, so that we can start talking - about it before we know the form that it takes in the properties (its - external_form). Objects are referenced in the class variable 'locobjs', - keyed by all known forms.""" - - # a map of UUID (or None) to repository root URL. - repo_hints = {} - - # a map from any known string form to the corresponding PathIdentifier - locobjs = {} - - def __init__(self, repo_relative_path, uuid=None, url=None, external_form=None): - self.repo_relative_path = repo_relative_path - self.uuid = uuid - self.url = url - self.external_form = external_form - - def __repr__(self): - return "<PathIdentifier " + ', '.join('%s=%r' % i for i in self.__dict__.items()) + '>' - - def __str__(self): - """Return a printable string representation""" - if self.external_form: - return self.external_form - if self.url: - return self.format('url') - if self.uuid: - return self.format('uuid') - return self.format('path') - - def from_pathid(pathid_str): - """convert pathid_str to a PathIdentifier""" - if not PathIdentifier.locobjs.has_key(pathid_str): - if is_url(pathid_str): - # we can determine every form; PathIdentifier.hint knows how to do that - PathIdentifier.hint(pathid_str) - elif pathid_str[:7] == 'uuid://': - mo = re.match('uuid://([^/]*)(.*)', pathid_str) - if not mo: - error("Invalid path identifier '%s'" % pathid_str) - uuid, repo_relative_path = mo.groups() - pathid = PathIdentifier(repo_relative_path, uuid=uuid) - # we can cache this by uuid:// pathid and by repo-relative path - PathIdentifier.locobjs[pathid_str] = PathIdentifier.locobjs[repo_relative_path] = pathid - elif pathid_str and pathid_str[0] == '/': - # strip any trailing slashes - pathid_str = pathid_str.rstrip('/') - pathid = PathIdentifier(repo_relative_path=pathid_str) - # we can only cache this by repo-relative path - PathIdentifier.locobjs[pathid_str] = pathid - else: - error("Invalid path identifier '%s'" % pathid_str) - return PathIdentifier.locobjs[pathid_str] - from_pathid = staticmethod(from_pathid) - - def from_target(target): - """Convert a target (either a working copy path or an URL) into a - path identifier.""" - # prime the cache first if we don't know about this target yet - if not PathIdentifier.locobjs.has_key(target): - PathIdentifier.hint(target) - - try: - return PathIdentifier.locobjs[target] - except KeyError: - error("Could not recognize path identifier '%s'" % target) - from_target = staticmethod(from_target) - - def hint(target): - """Cache some information about target, as it may be referenced by - repo-relative path in subversion properties; the cache can help to - expand such a relative path to a full path identifier.""" - if PathIdentifier.locobjs.has_key(target): return - if not is_url(target) and not is_wc(target): return - - url = target_to_url(target) - - root = get_repo_root(url) - assert root[-1] != "/" - assert url[:len(root)] == root, "url=%r, root=%r" % (url, root) - repo_relative_path = url[len(root):] - - try: - uuid = get_svninfo(target)['Repository UUID'] - uuid_pathid = 'uuid://%s%s' % (uuid, repo_relative_path) - except KeyError: - uuid = None - uuid_pathid = None - - locobj = PathIdentifier.locobjs.get(url) or \ - (uuid_pathid and PathIdentifier.locobjs.get(uuid_pathid)) - if not locobj: - locobj = PathIdentifier(repo_relative_path, uuid=uuid, url=url) - - PathIdentifier.repo_hints[uuid] = root # (uuid may be None) - - PathIdentifier.locobjs[target] = locobj - PathIdentifier.locobjs[url] = locobj - if uuid_pathid: - PathIdentifier.locobjs[uuid_pathid] = locobj - if not PathIdentifier.locobjs.has_key(repo_relative_path): - PathIdentifier.locobjs[repo_relative_path] = locobj - hint = staticmethod(hint) - - def format(self, fmt): - if fmt == 'path': - return self.repo_relative_path - elif fmt == 'uuid': - return "uuid://%s%s" % (self.uuid, self.repo_relative_path) - elif fmt == 'url': - return self.url - else: - error("Unkonwn path type '%s'" % fmt) - - def match_substring(self, str): - """Test whether str is a substring of any representation of this - PathIdentifier.""" - if self.repo_relative_path.find(str) >= 0: - return True - - if self.uuid: - if ("uuid://%s%s" % (self.uuid, self.repo_relative_path)).find(str) >= 0: - return True - - if self.url: - if (self.url + self.repo_relative_path).find(str) >= 0: - return True - - return False - - def get_url(self): - """Convert a pathid into a URL. If this is not possible, error out.""" - if self.url: - return self.url - # if we have a uuid and happen to know the URL for it, use that - elif self.uuid and PathIdentifier.repo_hints.has_key(self.uuid): - self.url = PathIdentifier.repo_hints[self.uuid] + self.repo_relative_path - PathIdentifier.locobjs[self.url] = self - return self.url - # if we've only seen one rep, use that (a guess, but an educated one) - elif not self.uuid and len(PathIdentifier.repo_hints) == 1: - uuid, root = PathIdentifier.repo_hints.items()[0] - if uuid: - self.uuid = uuid - PathIdentifier.locobjs['uuid://%s%s' % (uuid, self.repo_relative_path)] = self - self.url = root + self.repo_relative_path - PathIdentifier.locobjs[self.url] = self - report("Guessing that '%s' refers to '%s'" % (self, self.url)) - return self.url - else: - error("Cannot determine URL for '%s'; " % self + - "Explicit source argument (-S/--source) required.\n") - -class RevisionLog: - """ - A log of the revisions which affected a given URL between two - revisions. - """ - - def __init__(self, url, begin, end, find_propchanges=False): - """ - Create a new RevisionLog object, which stores, in self.revs, a list - of the revisions which affected the specified URL between begin and - end. If find_propchanges is True, self.propchange_revs will contain a - list of the revisions which changed properties directly on the - specified URL. URL must be the URL for a directory in the repository. - """ - self.url = url - - # Setup the log options (--quiet, so we don't show log messages) - log_opts = '--xml --quiet -r%s:%s "%s"' % (begin, end, url) - if find_propchanges: - # The --verbose flag lets us grab merge tracking information - # by looking at propchanges - log_opts = "--verbose " + log_opts - - # Read the log to look for revision numbers and merge-tracking info - self.revs = [] - self.propchange_revs = [] - repos_pathid = PathIdentifier.from_target(url) - for chg in SvnLogParser(launchsvn("log %s" % log_opts, - split_lines=False)): - self.revs.append(chg.revision()) - for p in chg.paths(): - if p.action() == 'M' and p.pathid() == repos_pathid.repo_relative_path: - self.propchange_revs.append(chg.revision()) - - # Save the range of the log - self.begin = int(begin) - if end == "HEAD": - # If end is not provided, we do not know which is the latest - # revision in the repository. So we set 'end' to the latest - # known revision. - self.end = self.revs[-1] - else: - self.end = int(end) - - self._merges = None - self._blocks = None - - def merge_metadata(self): - """ - Return a VersionedProperty object, with a cached view of the merge - metadata in the range of this log. - """ - - # Load merge metadata if necessary - if not self._merges: - self._merges = VersionedProperty(self.url, opts["prop"]) - self._merges.load(self) - - return self._merges - - def block_metadata(self): - if not self._blocks: - self._blocks = VersionedProperty(self.url, opts["block-prop"]) - self._blocks.load(self) - - return self._blocks - - -class VersionedProperty: - """ - A read-only, cached view of a versioned property. - - self.revs contains a list of the revisions in which the property changes. - self.values stores the new values at each corresponding revision. If the - value of the property is unknown, it is set to None. - - Initially, we set self.revs to [0] and self.values to [None]. This - indicates that, as of revision zero, we know nothing about the value of - the property. - - Later, if you run self.load(log), we cache the value of this property over - the entire range of the log by noting each revision in which the property - was changed. At the end of the range of the log, we invalidate our cache - by adding the value "None" to our cache for any revisions which fall out - of the range of our log. - - Once self.revs and self.values are filled, we can find the value of the - property at any arbitrary revision using a binary search on self.revs. - Once we find the last revision during which the property was changed, - we can lookup the associated value in self.values. (If the associated - value is None, the associated value was not cached and we have to do - a full propget.) - - An example: We know that the 'svnmerge' property was added in r10, and - changed in r21. We gathered log info up until r40. - - revs = [0, 10, 21, 40] - values = [None, "val1", "val2", None] - - What these values say: - - From r0 to r9, we know nothing about the property. - - In r10, the property was set to "val1". This property stayed the same - until r21, when it was changed to "val2". - - We don't know what happened after r40. - """ - - def __init__(self, url, name): - """View the history of a versioned property at URL with name""" - self.url = url - self.name = name - - # We know nothing about the value of the property. Setup revs - # and values to indicate as such. - self.revs = [0] - self.values = [None] - - # We don't have any revisions cached - self._initial_value = None - self._changed_revs = [] - self._changed_values = [] - - def load(self, log): - """ - Load the history of property changes from the specified - RevisionLog object. - """ - - # Get the property value before the range of the log - if log.begin > 1: - self.revs.append(log.begin-1) - try: - self._initial_value = self.raw_get(log.begin-1) - except LaunchError: - # The specified URL might not exist before the - # range of the log. If so, we can safely assume - # that the property was empty at that time. - self._initial_value = { } - self.values.append(self._initial_value) - else: - self._initial_value = { } - self.values[0] = self._initial_value - - # Cache the property values in the log range - old_value = self._initial_value - for rev in log.propchange_revs: - new_value = self.raw_get(rev) - if new_value != old_value: - self._changed_revs.append(rev) - self._changed_values.append(new_value) - self.revs.append(rev) - self.values.append(new_value) - old_value = new_value - - # Indicate that we know nothing about the value of the property - # after the range of the log. - if log.revs: - self.revs.append(log.end+1) - self.values.append(None) - - def raw_get(self, rev=None): - """ - Get the property at revision REV. If rev is not specified, get - the property at revision HEAD. - """ - return get_revlist_prop(self.url, self.name, rev) - - def get(self, rev=None): - """ - Get the property at revision REV. If rev is not specified, get - the property at revision HEAD. - """ - - if rev is not None: - - # Find the index using a binary search - i = bisect(self.revs, rev) - 1 - - # Return the value of the property, if it was cached - if self.values[i] is not None: - return self.values[i] - - # Get the current value of the property - return self.raw_get(rev) - - def changed_revs(self, key=None): - """ - Get a list of the revisions in which the specified dictionary - key was changed in this property. If key is not specified, - return a list of revisions in which any key was changed. - """ - if key is None: - return self._changed_revs - else: - changed_revs = [] - old_val = self._initial_value - for rev, val in zip(self._changed_revs, self._changed_values): - if val.get(key) != old_val.get(key): - changed_revs.append(rev) - old_val = val - return changed_revs - - def initialized_revs(self): - """ - Get a list of the revisions in which keys were added or - removed in this property. - """ - initialized_revs = [] - old_len = len(self._initial_value) - for rev, val in zip(self._changed_revs, self._changed_values): - if len(val) != old_len: - initialized_revs.append(rev) - old_len = len(val) - return initialized_revs - -class RevisionSet: - """ - A set of revisions, held in dictionary form for easy manipulation. If we - were to rewrite this script for Python 2.3+, we would subclass this from - set (or UserSet). As this class does not include branch - information, it's assumed that one instance will be used per - branch. - """ - def __init__(self, parm): - """Constructs a RevisionSet from a string in property form, or from - a dictionary whose keys are the revisions. Raises ValueError if the - input string is invalid.""" - - self._revs = {} - - revision_range_split_re = re.compile('[-:]') - - if isinstance(parm, types.DictType): - self._revs = parm.copy() - elif isinstance(parm, types.ListType): - for R in parm: - self._revs[int(R)] = 1 - else: - parm = parm.strip() - if parm: - for R in parm.split(","): - rev_or_revs = re.split(revision_range_split_re, R) - if len(rev_or_revs) == 1: - self._revs[int(rev_or_revs[0])] = 1 - elif len(rev_or_revs) == 2: - for rev in range(int(rev_or_revs[0]), - int(rev_or_revs[1])+1): - self._revs[rev] = 1 - else: - raise ValueError, 'Ill formatted revision range: ' + R - - def sorted(self): - revnums = self._revs.keys() - revnums.sort() - return revnums - - def normalized(self): - """Returns a normalized version of the revision set, which is an - ordered list of couples (start,end), with the minimum number of - intervals.""" - revnums = self.sorted() - revnums.reverse() - ret = [] - while revnums: - s = e = revnums.pop() - while revnums and revnums[-1] in (e, e+1): - e = revnums.pop() - ret.append((s, e)) - return ret - - def __str__(self): - """Convert the revision set to a string, using its normalized form.""" - L = [] - for s,e in self.normalized(): - if s == e: - L.append(str(s)) - else: - L.append(str(s) + "-" + str(e)) - return ",".join(L) - - def __contains__(self, rev): - return self._revs.has_key(rev) - - def __sub__(self, rs): - """Compute subtraction as in sets.""" - revs = {} - for r in self._revs.keys(): - if r not in rs: - revs[r] = 1 - return RevisionSet(revs) - - def __and__(self, rs): - """Compute intersections as in sets.""" - revs = {} - for r in self._revs.keys(): - if r in rs: - revs[r] = 1 - return RevisionSet(revs) - - def __nonzero__(self): - return len(self._revs) != 0 - - def __len__(self): - """Return the number of revisions in the set.""" - return len(self._revs) - - def __iter__(self): - return iter(self.sorted()) - - def __or__(self, rs): - """Compute set union.""" - revs = self._revs.copy() - revs.update(rs._revs) - return RevisionSet(revs) - -def merge_props_to_revision_set(merge_props, pathid): - """A converter which returns a RevisionSet instance containing the - revisions from PATH as known to BRANCH_PROPS. BRANCH_PROPS is a - dictionary of pathid -> revision set branch integration information - (as returned by get_merge_props()).""" - if not merge_props.has_key(pathid): - error('no integration info available for path "%s"' % pathid) - return RevisionSet(merge_props[pathid]) - -def dict_from_revlist_prop(propvalue): - """Given a property value as a string containing per-source revision - lists, return a dictionary whose key is a source path identifier - and whose value is the revisions for that source.""" - prop = {} - - # Multiple sources are separated by any whitespace. - for L in propvalue.split(): - # We use rsplit to play safe and allow colons in pathids. - pathid_str, revs = rsplit(L.strip(), ":", 1) - - pathid = PathIdentifier.from_pathid(pathid_str) - - # cache the "external" form we saw - pathid.external_form = pathid_str - - prop[pathid] = revs - return prop - -def get_revlist_prop(url_or_dir, propname, rev=None): - """Given a repository URL or working copy path and a property - name, extract the values of the property which store per-source - revision lists and return a dictionary whose key is a source path - identifier, and whose value is the revisions for that source.""" - - # Note that propget does not return an error if the property does - # not exist, it simply does not output anything. So we do not need - # to check for LaunchError here. - args = '--strict "%s" "%s"' % (propname, url_or_dir) - if rev: - args = '-r %s %s' % (rev, args) - out = launchsvn('propget %s' % args, split_lines=False) - - return dict_from_revlist_prop(out) - -def get_merge_props(dir): - """Extract the merged revisions.""" - return get_revlist_prop(dir, opts["prop"]) - -def get_block_props(dir): - """Extract the blocked revisions.""" - return get_revlist_prop(dir, opts["block-prop"]) - -def get_blocked_revs(dir, source_pathid): - p = get_block_props(dir) - if p.has_key(source_pathid): - return RevisionSet(p[source_pathid]) - return RevisionSet("") - -def format_merge_props(props, sep=" "): - """Formats the hash PROPS as a string suitable for use as a - Subversion property value.""" - assert sep in ["\t", "\n", " "] # must be a whitespace - props = props.items() - props.sort() - L = [] - for h, r in props: - L.append("%s:%s" % (h, r)) - return sep.join(L) - -def _run_propset(dir, prop, value): - """Set the property 'prop' of directory 'dir' to value 'value'. We go - through a temporary file to not run into command line length limits.""" - try: - fd, fname = tempfile.mkstemp() - f = os.fdopen(fd, "wb") - except AttributeError: - # Fallback for Python <= 2.3 which does not have mkstemp (mktemp - # suffers from race conditions. Not that we care...) - fname = tempfile.mktemp() - f = open(fname, "wb") - - try: - f.write(value) - f.close() - report("property data written to temp file: %s" % value) - svn_command('propset "%s" -F "%s" "%s"' % (prop, fname, dir)) - finally: - os.remove(fname) - -def set_props(dir, name, props): - props = format_merge_props(props) - if props: - _run_propset(dir, name, props) - else: - # Check if NAME exists on DIR before trying to delete it. - # As of 1.6 propdel no longer supports deleting a - # non-existent property. - out = launchsvn('propget "%s" "%s"' % (name, dir)) - if out: - svn_command('propdel "%s" "%s"' % (name, dir)) - -def set_merge_props(dir, props): - set_props(dir, opts["prop"], props) - -def set_block_props(dir, props): - set_props(dir, opts["block-prop"], props) - -def set_blocked_revs(dir, source_pathid, revs): - props = get_block_props(dir) - if revs: - props[source_pathid] = str(revs) - elif props.has_key(source_pathid): - del props[source_pathid] - set_block_props(dir, props) - -def is_url(url): - """Check if url looks like a valid url.""" - return re.search(r"^[a-zA-Z][-+\.\w]*://[^\s]+$", url) is not None and url[:4] != 'uuid' - -def check_url(url): - """Similar to is_url, but actually invoke get_svninfo to find out""" - return get_svninfo(url) != {} - -def is_pathid(pathid): - return isinstance(pathid, PathIdentifier) - -def is_wc(dir): - """Check if a directory is a working copy.""" - return os.path.isdir(os.path.join(dir, ".svn")) or \ - os.path.isdir(os.path.join(dir, "_svn")) - -_cache_svninfo = {} -def get_svninfo(target): - """Extract the subversion information for a target (through 'svn info'). - This function uses an internal cache to let clients query information - many times.""" - if _cache_svninfo.has_key(target): - return _cache_svninfo[target] - info = {} - for L in launchsvn('info "%s"' % target): - L = L.strip() - if not L: - continue - key, value = L.split(": ", 1) - info[key] = value.strip() - _cache_svninfo[target] = info - return info - -def target_to_url(target): - """Convert working copy path or repos URL to a repos URL.""" - if is_wc(target): - info = get_svninfo(target) - return info["URL"] - return target - -_cache_reporoot = {} -def get_repo_root(target): - """Compute the root repos URL given a working-copy path, or a URL.""" - # Try using "svn info WCDIR". This works only on SVN clients >= 1.3 - if not is_url(target): - try: - info = get_svninfo(target) - root = info["Repository Root"] - _cache_reporoot[root] = None - return root - except KeyError: - pass - url = target_to_url(target) - assert url[-1] != '/' - else: - url = target - - # Go through the cache of the repository roots. This avoids extra - # server round-trips if we are asking the root of different URLs - # in the same repository (the cache in get_svninfo() cannot detect - # that of course and would issue a remote command). - assert is_url(url) - for r in _cache_reporoot: - if url.startswith(r): - return r - - # Try using "svn info URL". This works only on SVN clients >= 1.2 - try: - info = get_svninfo(url) - # info may be {}, in which case we'll see KeyError here - root = info["Repository Root"] - _cache_reporoot[root] = None - return root - except (KeyError, LaunchError): - pass - - # Constrained to older svn clients, we are stuck with this ugly - # trial-and-error implementation. It could be made faster with a - # binary search. - while url: - temp = os.path.dirname(url) - try: - launchsvn('proplist "%s"' % temp) - except LaunchError: - _cache_reporoot[url] = None - return rstrip(url, "/") - url = temp - - error("svn repos root of %s not found" % target) - -class SvnLogParser: - """ - Parse the "svn log", going through the XML output and using pulldom (which - would even allow streaming the command output). - """ - def __init__(self, xml): - self._events = pulldom.parseString(xml) - def __getitem__(self, idx): - for event, node in self._events: - if event == pulldom.START_ELEMENT and node.tagName == "logentry": - self._events.expandNode(node) - return self.SvnLogRevision(node) - raise IndexError, "Could not find 'logentry' tag in xml" - - class SvnLogRevision: - def __init__(self, xmlnode): - self.n = xmlnode - def revision(self): - return int(self.n.getAttribute("revision")) - def author(self): - return self.n.getElementsByTagName("author")[0].firstChild.data - def paths(self): - return [self.SvnLogPath(n) - for n in self.n.getElementsByTagName("path")] - - class SvnLogPath: - def __init__(self, xmlnode): - self.n = xmlnode - def action(self): - return self.n.getAttribute("action") - def pathid(self): - return self.n.firstChild.data - def copyfrom_rev(self): - try: return self.n.getAttribute("copyfrom-rev") - except KeyError: return None - def copyfrom_pathid(self): - try: return self.n.getAttribute("copyfrom-path") - except KeyError: return None - -def get_copyfrom(target): - """Get copyfrom info for a given target (it represents the - repository-relative path from where it was branched). NOTE: - repos root has no copyfrom info. In this case None is returned. - - Returns the: - - source file or directory from which the copy was made - - revision from which that source was copied - - revision in which the copy was committed - """ - repos_path = PathIdentifier.from_target(target).repo_relative_path - for chg in SvnLogParser(launchsvn('log -v --xml --stop-on-copy "%s"' - % target, split_lines=False)): - for p in chg.paths(): - if p.action() == 'A' and p.pathid() == repos_path: - # These values will be None if the corresponding elements are - # not found in the log. - return p.copyfrom_pathid(), p.copyfrom_rev(), chg.revision() - return None,None,None - -def get_latest_rev(url): - """Get the latest revision of the repository of which URL is part.""" - try: - info = get_svninfo(url) - if not info.has_key("Revision"): - error("Not a valid URL: %s" % url) - return info["Revision"] - except LaunchError: - # Alternative method for latest revision checking (for svn < 1.2) - report('checking latest revision of "%s"' % url) - L = launchsvn('proplist --revprop -r HEAD "%s"' % opts["source-url"])[0] - rev = re.search("revision (\d+)", L).group(1) - report('latest revision of "%s" is %s' % (url, rev)) - return rev - -def get_created_rev(url): - """Lookup the revision at which the path identified by the - provided URL was first created.""" - oldest_rev = -1 - report('determining oldest revision for URL "%s"' % url) - ### TODO: Refactor this to use a modified RevisionLog class. - lines = None - cmd = "log -r1:HEAD --stop-on-copy -q " + url - try: - lines = launchsvn(cmd + " --limit=1") - except LaunchError: - # Assume that --limit isn't supported by the installed 'svn'. - lines = launchsvn(cmd) - if lines and len(lines) > 1: - i = lines[1].find(" ") - if i != -1: - oldest_rev = int(lines[1][1:i]) - if oldest_rev == -1: - error('unable to determine oldest revision for URL "%s"' % url) - return oldest_rev - -def get_commit_log(url, revnum): - """Return the log message for a specific integer revision - number.""" - out = launchsvn("log --incremental -r%d %s" % (revnum, url)) - return recode_stdout_to_file("".join(out[1:])) - -def construct_merged_log_message(url, revnums): - """Return a commit log message containing all the commit messages - in the specified revisions at the given URL. The separator used - in this log message is determined by searching for the longest - svnmerge separator existing in the commit log messages and - extending it by one more separator. This results in a new commit - log message that is clearer in describing merges that contain - other merges. Trailing newlines are removed from the embedded - log messages.""" - messages = [''] - longest_sep = '' - for r in revnums.sorted(): - message = get_commit_log(url, r) - if message: - message = re.sub(r'(\r\n|\r|\n)', "\n", message) - message = rstrip(message, "\n") + "\n" - messages.append(prefix_lines(LOG_LINE_PREFIX, message)) - for match in LOG_SEPARATOR_RE.findall(message): - sep = match[1] - if len(sep) > len(longest_sep): - longest_sep = sep - - longest_sep += LOG_SEPARATOR + "\n" - messages.append('') - return longest_sep.join(messages) - -def get_default_source(branch_target, branch_props): - """Return the default source for branch_target (given its branch_props). - Error out if there is ambiguity.""" - if not branch_props: - error("no integration info available") - - props = branch_props.copy() - pathid = PathIdentifier.from_target(branch_target) - - # To make bidirectional merges easier, find the target's - # repository local path so it can be removed from the list of - # possible integration sources. - if props.has_key(pathid): - del props[pathid] - - if len(props) > 1: - err_msg = "multiple sources found. " - err_msg += "Explicit source argument (-S/--source) required.\n" - err_msg += "The merge sources available are:" - for prop in props: - err_msg += "\n " + str(prop) - error(err_msg) - - return props.keys()[0] - -def should_find_reflected(branch_dir): - should_find_reflected = opts["bidirectional"] - - # If the source has integration info for the target, set find_reflected - # even if --bidirectional wasn't specified - if not should_find_reflected: - source_props = get_merge_props(opts["source-url"]) - should_find_reflected = source_props.has_key(PathIdentifier.from_target(branch_dir)) - - return should_find_reflected - -def analyze_revs(target_pathid, url, begin=1, end=None, - find_reflected=False): - """For the source of the merges in the source URL being merged into - target_pathid, analyze the revisions in the interval begin-end (which - defaults to 1-HEAD), to find out which revisions are changes in - the url, which are changes elsewhere (so-called 'phantom' - revisions), optionally which are reflected changes (to avoid - conflicts that can occur when doing bidirectional merging between - branches), and which revisions initialize merge tracking against other - branches. Return a tuple of four RevisionSet's: - (real_revs, phantom_revs, reflected_revs, initialized_revs). - - NOTE: To maximize speed, if "end" is not provided, the function is - not able to find phantom revisions following the last real - revision in the URL. - """ - - begin = str(begin) - if end is None: - end = "HEAD" - else: - end = str(end) - if long(begin) > long(end): - return RevisionSet(""), RevisionSet(""), \ - RevisionSet(""), RevisionSet("") - - logs[url] = RevisionLog(url, begin, end, find_reflected) - revs = RevisionSet(logs[url].revs) - - if end == "HEAD": - # If end is not provided, we do not know which is the latest revision - # in the repository. So return the phantom revision set only up to - # the latest known revision. - end = str(list(revs)[-1]) - - phantom_revs = RevisionSet("%s-%s" % (begin, end)) - revs - - if find_reflected: - reflected_revs = logs[url].merge_metadata().changed_revs(target_pathid) - reflected_revs += logs[url].block_metadata().changed_revs(target_pathid) - else: - reflected_revs = [] - - initialized_revs = RevisionSet(logs[url].merge_metadata().initialized_revs()) - reflected_revs = RevisionSet(reflected_revs) - - return revs, phantom_revs, reflected_revs, initialized_revs - -def analyze_source_revs(branch_target, source_url, **kwargs): - """For the given branch and source, extract the real and phantom - source revisions.""" - branch_url = target_to_url(branch_target) - branch_pathid = PathIdentifier.from_target(branch_target) - - # Extract the latest repository revision from the URL of the branch - # directory (which is already cached at this point). - end_rev = get_latest_rev(source_url) - - # Calculate the base of analysis. If there is a "1-XX" interval in the - # merged_revs, we do not need to check those. - base = 1 - r = opts["merged-revs"].normalized() - if r and r[0][0] == 1: - base = r[0][1] + 1 - - # See if the user filtered the revision set. If so, we are not - # interested in something outside that range. - if opts["revision"]: - revs = RevisionSet(opts["revision"]).sorted() - if base < revs[0]: - base = revs[0] - if end_rev > revs[-1]: - end_rev = revs[-1] - - return analyze_revs(branch_pathid, source_url, base, end_rev, **kwargs) - -def minimal_merge_intervals(revs, phantom_revs): - """Produce the smallest number of intervals suitable for merging. revs - is the RevisionSet which we want to merge, and phantom_revs are phantom - revisions which can be used to concatenate intervals, thus minimizing the - number of operations.""" - revnums = revs.normalized() - ret = [] - - cur = revnums.pop() - while revnums: - next = revnums.pop() - assert next[1] < cur[0] # otherwise it is not ordered - assert cur[0] - next[1] > 1 # otherwise it is not normalized - for i in range(next[1]+1, cur[0]): - if i not in phantom_revs: - ret.append(cur) - cur = next - break - else: - cur = (next[0], cur[1]) - - ret.append(cur) - ret.reverse() - return ret - -def display_revisions(revs, display_style, revisions_msg, source_url): - """Show REVS as dictated by DISPLAY_STYLE, either numerically, in - log format, or as diffs. When displaying revisions numerically, - prefix output with REVISIONS_MSG when in verbose mode. Otherwise, - request logs or diffs using SOURCE_URL.""" - if display_style == "revisions": - if revs: - report(revisions_msg) - print revs - elif display_style == "logs": - for start,end in revs.normalized(): - svn_command('log --incremental -v -r %d:%d %s' % \ - (start, end, source_url)) - elif display_style in ("diffs", "summarize"): - if display_style == 'summarize': - summarize = '--summarize ' - else: - summarize = '' - - for start, end in revs.normalized(): - print - if start == end: - print "%s: changes in revision %d follow" % (NAME, start) - else: - print "%s: changes in revisions %d-%d follow" % (NAME, - start, end) - print - - # Note: the starting revision number to 'svn diff' is - # NOT inclusive so we have to subtract one from ${START}. - svn_command("diff -r %d:%d %s %s" % (start - 1, end, summarize, - source_url)) - else: - assert False, "unhandled display style: %s" % display_style - -def action_init(target_dir, target_props): - """Initialize for merges.""" - # Check that directory is ready for being modified - check_dir_clean(target_dir) - - target_pathid = PathIdentifier.from_target(target_dir) - source_pathid = opts['source-pathid'] - if source_pathid == target_pathid: - error("cannot init integration source path '%s'\nIts path identifier does not " - "differ from the path identifier of the current directory, '%s'." - % (source_pathid, target_pathid)) - - source_url = opts['source-url'] - - # If the user hasn't specified the revisions to use, see if the - # "source" is a copy from the current tree and if so, we can use - # the version data obtained from it. - revision_range = opts["revision"] - if not revision_range: - # If source was originally copied from target, and we are merging - # changes from source to target (the copy target is the merge source, - # and the copy source is the merge target), then we want to mark as - # integrated up to the rev in which the copy was committed which - # created the merge source: - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(source_url) - - cf_pathid = None - if cf_source: - cf_url = get_repo_root(source_url) + cf_source - if is_url(cf_url) and check_url(cf_url): - cf_pathid = PathIdentifier.from_target(cf_url) - - if target_pathid == cf_pathid: - report('the source "%s" was copied from "%s" in rev %s and committed in rev %s' % - (source_url, target_dir, cf_rev, copy_committed_in_rev)) - revision_range = "1-" + str(copy_committed_in_rev) - - if not revision_range: - # If the reverse is true: copy source is the merge source, and - # the copy target is the merge target, then we want to mark as - # integrated up to the specific rev of the merge target from - # which the merge source was copied. (Longer discussion at: - # http://subversion.tigris.org/issues/show_bug.cgi?id=2810 ) - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(target_dir) - - cf_pathid = None - if cf_source: - cf_url = get_repo_root(target_dir) + cf_source - if is_url(cf_url) and check_url(cf_url): - cf_pathid = PathIdentifier.from_target(cf_url) - - source_pathid = PathIdentifier.from_target(source_url) - if source_pathid == cf_pathid: - report('the target "%s" was copied the source "%s" in rev %s and committed in rev %s' % - (target_dir, source_url, cf_rev, copy_committed_in_rev)) - revision_range = "1-" + cf_rev - - # When neither the merge source nor target is a copy of the other, and - # the user did not specify a revision range, then choose a default which is - # the current revision; saying, in effect, "everything has been merged, so - # mark as integrated up to the latest rev on source url). - if not revision_range: - revision_range = "1-" + get_latest_rev(source_url) - - revs = RevisionSet(revision_range) - - report('marking "%s" as already containing revisions "%s" of "%s"' % - (target_dir, revs, source_url)) - - revs = str(revs) - # If the local svnmerge-integrated property already has an entry - # for the source-pathid, simply error out. - if not opts["force"] and target_props.has_key(source_pathid): - error('Repository-relative path %s has already been initialized at %s\n' - 'Use --force to re-initialize' % (source_pathid, target_dir)) - # set the pathid's external_form based on the user's options - source_pathid.external_form = source_pathid.format(opts['location-type']) - - revs = str(revs) - target_props[source_pathid] = revs - - # Set property - set_merge_props(target_dir, target_props) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Initialized merge tracking via "%s" with revisions "%s" from ' \ - % (NAME, revs) - print >>f, '%s' % source_url - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_avail(branch_dir, branch_props): - """Show commits available for merges.""" - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"], - find_reflected= - should_find_reflected(branch_dir)) - report('skipping phantom revisions: %s' % phantom_revs) - if reflected_revs: - report('skipping reflected revisions: %s' % reflected_revs) - report('skipping initialized revisions: %s' % initialized_revs) - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - avail_revs = source_revs - opts["merged-revs"] - blocked_revs - \ - reflected_revs - initialized_revs - - # Compose the set of revisions to show - revs = RevisionSet("") - report_msg = "revisions available to be merged are:" - if "avail" in opts["avail-showwhat"]: - revs |= avail_revs - if "blocked" in opts["avail-showwhat"]: - revs |= blocked_revs - report_msg = "revisions blocked are:" - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs = revs & RevisionSet(opts["revision"]) - - display_revisions(revs, opts["avail-display"], - report_msg, - opts["source-url"]) - -def action_integrated(branch_dir, branch_props): - """Show change sets already merged. This set of revisions is - calculated from taking svnmerge-integrated property from the - branch, and subtracting any revision older than the branch - creation revision.""" - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - revs = merge_props_to_revision_set(branch_props, opts["source-pathid"]) - - # Lookup the oldest revision on the branch path. - oldest_src_rev = get_created_rev(opts["source-url"]) - - # Subtract any revisions which pre-date the branch. - report("subtracting revisions which pre-date the source URL (%d)" % - oldest_src_rev) - revs = revs - RevisionSet(range(1, oldest_src_rev)) - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs = revs & RevisionSet(opts["revision"]) - - display_revisions(revs, opts["integrated-display"], - "revisions already integrated are:", opts["source-url"]) - -def action_merge(branch_dir, branch_props): - """Record merge meta data, and do the actual merge (if not - requested otherwise via --record-only).""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"], - find_reflected= - should_find_reflected(branch_dir)) - - if opts["revision"]: - revs = RevisionSet(opts["revision"]) - else: - revs = source_revs - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - merged_revs = opts["merged-revs"] - - # Show what we're doing - if opts["verbose"]: # just to avoid useless calculations - if merged_revs & revs: - report('"%s" already contains revisions %s' % (branch_dir, - merged_revs & revs)) - if phantom_revs: - report('memorizing phantom revision(s): %s' % phantom_revs) - if reflected_revs: - report('memorizing reflected revision(s): %s' % reflected_revs) - if blocked_revs & revs: - report('skipping blocked revisions(s): %s' % (blocked_revs & revs)) - if initialized_revs: - report('skipping initialized revision(s): %s' % initialized_revs) - - # Compute final merge set. - revs = revs - merged_revs - blocked_revs - reflected_revs - \ - phantom_revs - initialized_revs - if not revs: - report('no revisions to merge, exiting') - return - - # When manually marking revisions as merged, we only update the - # integration meta data, and don't perform an actual merge. - record_only = opts["record-only"] - - if record_only: - report('recording merge of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - else: - report('merging in revision(s) %s from "%s"' % - (revs, opts["source-url"])) - - # Do the merge(s). Note: the starting revision number to 'svn merge' - # is NOT inclusive so we have to subtract one from start. - # We try to keep the number of merge operations as low as possible, - # because it is faster and reduces the number of conflicts. - old_block_props = get_block_props(branch_dir) - merge_metadata = logs[opts["source-url"]].merge_metadata() - block_metadata = logs[opts["source-url"]].block_metadata() - for start,end in minimal_merge_intervals(revs, phantom_revs): - if not record_only: - # Preset merge/blocked properties to the source value at - # the start rev to avoid spurious property conflicts - set_merge_props(branch_dir, merge_metadata.get(start - 1)) - set_block_props(branch_dir, block_metadata.get(start - 1)) - # Do the merge - svn_command("merge --force -r %d:%d %s %s" % \ - (start - 1, end, opts["source-url"], branch_dir)) - # TODO: to support graph merging, add logic to merge the property - # meta-data manually - - # Update the set of merged revisions. - merged_revs = merged_revs | revs | reflected_revs | phantom_revs | initialized_revs - branch_props[opts["source-pathid"]] = str(merged_revs) - set_merge_props(branch_dir, branch_props) - # Reset the blocked revs - set_block_props(branch_dir, old_block_props) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - if record_only: - print >>f, 'Recorded merge of revisions %s via %s from ' % \ - (revs, NAME) - else: - print >>f, 'Merged revisions %s via %s from ' % \ - (revs, NAME) - print >>f, '%s' % opts["source-url"] - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], revs), - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_block(branch_dir, branch_props): - """Block revisions.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"]) - revs_to_block = source_revs - opts["merged-revs"] - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs_to_block = RevisionSet(opts["revision"]) & revs_to_block - - if not revs_to_block: - error('no available revisions to block') - - # Change blocked information - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - blocked_revs = blocked_revs | revs_to_block - set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Blocked revisions %s via %s' % (revs_to_block, NAME) - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], - revs_to_block), - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_unblock(branch_dir, branch_props): - """Unblock revisions.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - revs_to_unblock = blocked_revs - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs_to_unblock = revs_to_unblock & RevisionSet(opts["revision"]) - - if not revs_to_unblock: - error('no available revisions to unblock') - - # Change blocked information - blocked_revs = blocked_revs - revs_to_unblock - set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Unblocked revisions %s via %s' % (revs_to_unblock, NAME) - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], - revs_to_unblock), - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_rollback(branch_dir, branch_props): - """Rollback previously integrated revisions.""" - - # Make sure the revision arguments are present - if not opts["revision"]: - error("The '-r' option is mandatory for rollback") - - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - # Get the list of all revisions already merged into this source-pathid. - merged_revs = merge_props_to_revision_set(branch_props, - opts["source-pathid"]) - - # At which revision was the src created? - oldest_src_rev = get_created_rev(opts["source-url"]) - src_pre_exist_range = RevisionSet("1-%d" % oldest_src_rev) - - # Limit to revisions specified by -r (if any) - revs = merged_revs & RevisionSet(opts["revision"]) - - # make sure there's some revision to rollback - if not revs: - report("Nothing to rollback in revision range r%s" % opts["revision"]) - return - - # If even one specified revision lies outside the lifetime of the - # merge source, error out. - if revs & src_pre_exist_range: - err_str = "Specified revision range falls out of the rollback range.\n" - err_str += "%s was created at r%d" % (opts["source-pathid"], - oldest_src_rev) - error(err_str) - - record_only = opts["record-only"] - - if record_only: - report('recording rollback of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - else: - report('rollback of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - - # Do the reverse merge(s). Note: the starting revision number - # to 'svn merge' is NOT inclusive so we have to subtract one from start. - # We try to keep the number of merge operations as low as possible, - # because it is faster and reduces the number of conflicts. - rollback_intervals = minimal_merge_intervals(revs, []) - # rollback in the reverse order of merge - rollback_intervals.reverse() - for start, end in rollback_intervals: - if not record_only: - # Do the merge - svn_command("merge --force -r %d:%d %s %s" % \ - (end, start - 1, opts["source-url"], branch_dir)) - - # Write out commit message if desired - # calculate the phantom revs first - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - if record_only: - print >>f, 'Recorded rollback of revisions %s via %s from ' % \ - (revs , NAME) - else: - print >>f, 'Rolled back revisions %s via %s from ' % \ - (revs , NAME) - print >>f, '%s' % opts["source-url"] - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - - # Update the set of merged revisions. - merged_revs = merged_revs - revs - branch_props[opts["source-pathid"]] = str(merged_revs) - set_merge_props(branch_dir, branch_props) - -def action_uninit(branch_dir, branch_props): - """Uninit SOURCE URL.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - # If the source-pathid does not have an entry in the svnmerge-integrated - # property, simply error out. - if not branch_props.has_key(opts["source-pathid"]): - error('Repository-relative path "%s" does not contain merge ' - 'tracking information for "%s"' \ - % (opts["source-pathid"], branch_dir)) - - del branch_props[opts["source-pathid"]] - - # Set merge property with the selected source deleted - set_merge_props(branch_dir, branch_props) - - # Set blocked revisions for the selected source to None - set_blocked_revs(branch_dir, opts["source-pathid"], None) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Removed merge tracking for "%s" for ' % NAME - print >>f, '%s' % opts["source-url"] - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -############################################################################### -# Command line parsing -- options and commands management -############################################################################### - -class OptBase: - def __init__(self, *args, **kwargs): - self.help = kwargs["help"] - del kwargs["help"] - self.lflags = [] - self.sflags = [] - for a in args: - if a.startswith("--"): self.lflags.append(a) - elif a.startswith("-"): self.sflags.append(a) - else: - raise TypeError, "invalid flag name: %s" % a - if kwargs.has_key("dest"): - self.dest = kwargs["dest"] - del kwargs["dest"] - else: - if not self.lflags: - raise TypeError, "cannot deduce dest name without long options" - self.dest = self.lflags[0][2:] - if kwargs: - raise TypeError, "invalid keyword arguments: %r" % kwargs.keys() - def repr_flags(self): - f = self.sflags + self.lflags - r = f[0] - for fl in f[1:]: - r += " [%s]" % fl - return r - -class Option(OptBase): - def __init__(self, *args, **kwargs): - self.default = kwargs.setdefault("default", 0) - del kwargs["default"] - self.value = kwargs.setdefault("value", None) - del kwargs["value"] - OptBase.__init__(self, *args, **kwargs) - def apply(self, state, value): - assert value == "" - if self.value is not None: - state[self.dest] = self.value - else: - state[self.dest] += 1 - -class OptionArg(OptBase): - def __init__(self, *args, **kwargs): - self.default = kwargs["default"] - del kwargs["default"] - self.metavar = kwargs.setdefault("metavar", None) - del kwargs["metavar"] - OptBase.__init__(self, *args, **kwargs) - - if self.metavar is None: - if self.dest is not None: - self.metavar = self.dest.upper() - else: - self.metavar = "arg" - if self.default: - self.help += " (default: %s)" % self.default - def apply(self, state, value): - assert value is not None - state[self.dest] = value - def repr_flags(self): - r = OptBase.repr_flags(self) - return r + " " + self.metavar - -class CommandOpts: - class Cmd: - def __init__(self, *args): - self.name, self.func, self.usage, self.help, self.opts = args - def short_help(self): - return self.help.split(".")[0] - def __str__(self): - return self.name - def __call__(self, *args, **kwargs): - return self.func(*args, **kwargs) - - def __init__(self, global_opts, common_opts, command_table, version=None): - self.progname = NAME - self.version = version.replace("%prog", self.progname) - self.cwidth = console_width() - 2 - self.ctable = command_table.copy() - self.gopts = global_opts[:] - self.copts = common_opts[:] - self._add_builtins() - for k in self.ctable.keys(): - cmd = self.Cmd(k, *self.ctable[k]) - opts = [] - for o in cmd.opts: - if isinstance(o, types.StringType) or \ - isinstance(o, types.UnicodeType): - o = self._find_common(o) - opts.append(o) - cmd.opts = opts - self.ctable[k] = cmd - - def _add_builtins(self): - self.gopts.append( - Option("-h", "--help", help="show help for this command and exit")) - if self.version is not None: - self.gopts.append( - Option("-V", "--version", help="show version info and exit")) - self.ctable["help"] = (self._cmd_help, - "help [COMMAND]", - "Display help for a specific command. If COMMAND is omitted, " - "display brief command description.", - []) - - def _cmd_help(self, cmd=None, *args): - if args: - self.error("wrong number of arguments", "help") - if cmd is not None: - cmd = self._command(cmd) - self.print_command_help(cmd) - else: - self.print_command_list() - - def _paragraph(self, text, width=78): - chunks = re.split("\s+", text.strip()) - chunks.reverse() - lines = [] - while chunks: - L = chunks.pop() - while chunks and len(L) + len(chunks[-1]) + 1 <= width: - L += " " + chunks.pop() - lines.append(L) - return lines - - def _paragraphs(self, text, *args, **kwargs): - pars = text.split("\n\n") - lines = self._paragraph(pars[0], *args, **kwargs) - for p in pars[1:]: - lines.append("") - lines.extend(self._paragraph(p, *args, **kwargs)) - return lines - - def _print_wrapped(self, text, indent=0): - text = self._paragraphs(text, self.cwidth - indent) - print text.pop(0) - for t in text: - print " " * indent + t - - def _find_common(self, fl): - for o in self.copts: - if fl in o.lflags+o.sflags: - return o - assert False, fl - - def _compute_flags(self, opts, check_conflicts=True): - back = {} - sfl = "" - lfl = [] - for o in opts: - sapp = lapp = "" - if isinstance(o, OptionArg): - sapp, lapp = ":", "=" - for s in o.sflags: - if check_conflicts and back.has_key(s): - raise RuntimeError, "option conflict: %s" % s - back[s] = o - sfl += s[1:] + sapp - for l in o.lflags: - if check_conflicts and back.has_key(l): - raise RuntimeError, "option conflict: %s" % l - back[l] = o - lfl.append(l[2:] + lapp) - return sfl, lfl, back - - def _extract_command(self, args): - """ - Try to extract the command name from the argument list. This is - non-trivial because we want to allow command-specific options even - before the command itself. - """ - opts = self.gopts[:] - for cmd in self.ctable.values(): - opts.extend(cmd.opts) - sfl, lfl, _ = self._compute_flags(opts, check_conflicts=False) - - lopts,largs = getopt.getopt(args, sfl, lfl) - if not largs: - return None - return self._command(largs[0]) - - def _fancy_getopt(self, args, opts, state=None): - if state is None: - state= {} - for o in opts: - if not state.has_key(o.dest): - state[o.dest] = o.default - - sfl, lfl, back = self._compute_flags(opts) - try: - lopts,args = getopt.gnu_getopt(args, sfl, lfl) - except AttributeError: - # Before Python 2.3, there was no gnu_getopt support. - # So we can't parse intermixed positional arguments - # and options. - lopts,args = getopt.getopt(args, sfl, lfl) - - for o,v in lopts: - back[o].apply(state, v) - return state, args - - def _command(self, cmd): - if not self.ctable.has_key(cmd): - self.error("unknown command: '%s'" % cmd) - return self.ctable[cmd] - - def parse(self, args): - if not args: - self.print_small_help() - sys.exit(0) - - cmd = None - try: - cmd = self._extract_command(args) - opts = self.gopts[:] - if cmd: - opts.extend(cmd.opts) - args.remove(cmd.name) - state, args = self._fancy_getopt(args, opts) - except getopt.GetoptError, e: - self.error(e, cmd) - - # Handle builtins - if self.version is not None and state["version"]: - self.print_version() - sys.exit(0) - if state["help"]: # special case for --help - if cmd: - self.print_command_help(cmd) - sys.exit(0) - cmd = self.ctable["help"] - else: - if cmd is None: - self.error("command argument required") - if str(cmd) == "help": - cmd(*args) - sys.exit(0) - return cmd, args, state - - def error(self, s, cmd=None): - print >>sys.stderr, "%s: %s" % (self.progname, s) - if cmd is not None: - self.print_command_help(cmd) - else: - self.print_small_help() - sys.exit(1) - def print_small_help(self): - print "Type '%s help' for usage" % self.progname - def print_usage_line(self): - print "usage: %s <subcommand> [options...] [args...]\n" % self.progname - def print_command_list(self): - print "Available commands (use '%s help COMMAND' for more details):\n" \ - % self.progname - cmds = self.ctable.keys() - cmds.sort() - indent = max(map(len, cmds)) - for c in cmds: - h = self.ctable[c].short_help() - print " %-*s " % (indent, c), - self._print_wrapped(h, indent+6) - def print_command_help(self, cmd): - cmd = self.ctable[str(cmd)] - print 'usage: %s %s\n' % (self.progname, cmd.usage) - self._print_wrapped(cmd.help) - def print_opts(opts, self=self): - if not opts: return - flags = [o.repr_flags() for o in opts] - indent = max(map(len, flags)) - for f,o in zip(flags, opts): - print " %-*s :" % (indent, f), - self._print_wrapped(o.help, indent+5) - print '\nCommand options:' - print_opts(cmd.opts) - print '\nGlobal options:' - print_opts(self.gopts) - - def print_version(self): - print self.version - -############################################################################### -# Options and Commands description -############################################################################### - -global_opts = [ - Option("-F", "--force", - help="force operation even if the working copy is not clean, or " - "there are pending updates"), - Option("-n", "--dry-run", - help="don't actually change anything, just pretend; " - "implies --show-changes"), - Option("-s", "--show-changes", - help="show subversion commands that make changes"), - Option("-v", "--verbose", - help="verbose mode: output more information about progress"), - OptionArg("-u", "--username", - default=None, - help="invoke subversion commands with the supplied username"), - OptionArg("-p", "--password", - default=None, - help="invoke subversion commands with the supplied password"), - OptionArg("-c", "--config-dir", metavar="DIR", - default=None, - help="cause subversion commands to consult runtime config directory DIR"), -] - -common_opts = [ - Option("-b", "--bidirectional", - value=True, - default=False, - help="remove reflected and initialized revisions from merge candidates. " - "Not required but may be specified to speed things up slightly"), - OptionArg("-f", "--commit-file", metavar="FILE", - default="svnmerge-commit-message.txt", - help="set the name of the file where the suggested log message " - "is written to"), - Option("-M", "--record-only", - value=True, - default=False, - help="do not perform an actual merge of the changes, yet record " - "that a merge happened"), - OptionArg("-r", "--revision", - metavar="REVLIST", - default="", - help="specify a revision list, consisting of revision numbers " - 'and ranges separated by commas, e.g., "534,537-539,540"'), - OptionArg("-S", "--source", "--head", - default=None, - help="specify a merge source for this branch. It can be either " - "a working directory path, a full URL, or an unambiguous " - "substring of one of the locations for which merge tracking was " - "already initialized. Needed only to disambiguate in case of " - "multiple merge sources"), -] - -command_table = { - "init": (action_init, - "init [OPTION...] [SOURCE]", - """Initialize merge tracking from SOURCE on the current working - directory. - - If SOURCE is specified, all the revisions in SOURCE are marked as already - merged; if this is not correct, you can use --revision to specify the - exact list of already-merged revisions. - - If SOURCE is omitted, then it is computed from the "svn cp" history of the - current working directory (searching back for the branch point); in this - case, %s assumes that no revision has been integrated yet since - the branch point (unless you teach it with --revision).""" % NAME, - [ - "-f", "-r", # import common opts - OptionArg("-L", "--location-type", - dest="location-type", - default="path", - help="Use this type of location identifier in the new " + - "Subversion properties; 'uuid', 'url', or 'path' " + - "(default)"), - ]), - - "avail": (action_avail, - "avail [OPTION...] [PATH]", - """Show unmerged revisions available for PATH as a revision list. - If --revision is given, the revisions shown will be limited to those - also specified in the option. - - When svnmerge is used to bidirectionally merge changes between a - branch and its source, it is necessary to not merge the same changes - forth and back: e.g., if you committed a merge of a certain - revision of the branch into the source, you do not want that commit - to appear as available to merged into the branch (as the code - originated in the branch itself!). svnmerge will automatically - exclude these so-called "reflected" revisions.""", - [ - Option("-A", "--all", - dest="avail-showwhat", - value=["blocked", "avail"], - default=["avail"], - help="show both available and blocked revisions (aka ignore " - "blocked revisions)"), - "-b", - Option("-B", "--blocked", - dest="avail-showwhat", - value=["blocked"], - help="show the blocked revision list (see '%s block')" % NAME), - Option("-d", "--diff", - dest="avail-display", - value="diffs", - default="revisions", - help="show corresponding diff instead of revision list"), - Option("--summarize", - dest="avail-display", - value="summarize", - help="show summarized diff instead of revision list"), - Option("-l", "--log", - dest="avail-display", - value="logs", - help="show corresponding log history instead of revision list"), - "-r", - "-S", - ]), - - "integrated": (action_integrated, - "integrated [OPTION...] [PATH]", - """Show merged revisions available for PATH as a revision list. - If --revision is given, the revisions shown will be limited to - those also specified in the option.""", - [ - Option("-d", "--diff", - dest="integrated-display", - value="diffs", - default="revisions", - help="show corresponding diff instead of revision list"), - Option("-l", "--log", - dest="integrated-display", - value="logs", - help="show corresponding log history instead of revision list"), - "-r", - "-S", - ]), - - "rollback": (action_rollback, - "rollback [OPTION...] [PATH]", - """Rollback previously merged in revisions from PATH. The - --revision option is mandatory, and specifies which revisions - will be rolled back. Only the previously integrated merges - will be rolled back. - - When manually rolling back changes, --record-only can be used to - instruct %s that a manual rollback of a certain revision - already happened, so that it can record it and offer that - revision for merge henceforth.""" % (NAME), - [ - "-f", "-r", "-S", "-M", # import common opts - ]), - - "merge": (action_merge, - "merge [OPTION...] [PATH]", - """Merge in revisions into PATH from its source. If --revision is omitted, - all the available revisions will be merged. In any case, already merged-in - revisions will NOT be merged again. - - When svnmerge is used to bidirectionally merge changes between a - branch and its source, it is necessary to not merge the same changes - forth and back: e.g., if you committed a merge of a certain - revision of the branch into the source, you do not want that commit - to appear as available to merged into the branch (as the code - originated in the branch itself!). svnmerge will automatically - exclude these so-called "reflected" revisions. - - When manually merging changes across branches, --record-only can - be used to instruct %s that a manual merge of a certain revision - already happened, so that it can record it and not offer that - revision for merge anymore. Conversely, when there are revisions - which should not be merged, use '%s block'.""" % (NAME, NAME), - [ - "-b", "-f", "-r", "-S", "-M", # import common opts - ]), - - "block": (action_block, - "block [OPTION...] [PATH]", - """Block revisions within PATH so that they disappear from the available - list. This is useful to hide revisions which will not be integrated. - If --revision is omitted, it defaults to all the available revisions. - - Do not use this option to hide revisions that were manually merged - into the branch. Instead, use '%s merge --record-only', which - records that a merge happened (as opposed to a merge which should - not happen).""" % NAME, - [ - "-f", "-r", "-S", # import common opts - ]), - - "unblock": (action_unblock, - "unblock [OPTION...] [PATH]", - """Revert the effect of '%s block'. If --revision is omitted, all the - blocked revisions are unblocked""" % NAME, - [ - "-f", "-r", "-S", # import common opts - ]), - - "uninit": (action_uninit, - "uninit [OPTION...] [PATH]", - """Remove merge tracking information from PATH. It cleans any kind of merge - tracking information (including the list of blocked revisions). If there - are multiple sources, use --source to indicate which source you want to - forget about.""", - [ - "-f", "-S", # import common opts - ]), -} - - -def main(args): - global opts - - # Initialize default options - opts = default_opts.copy() - logs.clear() - - optsparser = CommandOpts(global_opts, common_opts, command_table, - version="%%prog r%s\n modified: %s\n\n" - "Copyright (C) 2004,2005 Awarix Inc.\n" - "Copyright (C) 2005, Giovanni Bajo" - % (__revision__, __date__)) - - cmd, args, state = optsparser.parse(args) - opts.update(state) - - source = opts.get("source", None) - branch_dir = "." - - if str(cmd) == "init": - if len(args) == 1: - source = args[0] - elif len(args) > 1: - optsparser.error("wrong number of parameters", cmd) - elif str(cmd) in command_table.keys(): - if len(args) == 1: - branch_dir = args[0] - elif len(args) > 1: - optsparser.error("wrong number of parameters", cmd) - else: - assert False, "command not handled: %s" % cmd - - # Validate branch_dir - if not is_wc(branch_dir): - if str(cmd) == "avail": - info = None - # it should be noted here that svn info does not error exit - # if an invalid target is specified to it (as is - # intuitive). so the try, except code is not absolutely - # necessary. but, I retain it to indicate the intuitive - # handling. - try: - info = get_svninfo(branch_dir) - except LaunchError: - pass - # test that we definitely targeted a subversion directory, - # mirroring the purpose of the earlier is_wc() call - if info is None or not info.has_key("Node Kind") or info["Node Kind"] != "directory": - error('"%s" is neither a valid URL, nor a working directory' % branch_dir) - else: - error('"%s" is not a subversion working directory' % branch_dir) - - # give out some hints as to potential pathids - PathIdentifier.hint(branch_dir) - if source: PathIdentifier.hint(source) - - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - - # Calculate source_url and source_path - report("calculate source path for the branch") - if not source: - if str(cmd) == "init": - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(branch_dir) - if not cf_source: - error('no copyfrom info available. ' - 'Explicit source argument (-S/--source) required.') - opts["source-url"] = get_repo_root(branch_dir) + cf_source - opts["source-pathid"] = PathIdentifier.from_target(opts["source-url"]) - - if not opts["revision"]: - opts["revision"] = "1-" + cf_rev - else: - opts["source-pathid"] = get_default_source(branch_dir, branch_props) - opts["source-url"] = opts["source-pathid"].get_url() - - assert is_pathid(opts["source-pathid"]) - assert is_url(opts["source-url"]) - else: - # The source was given as a command line argument and is stored in - # SOURCE. Ensure that the specified source does not end in a /, - # otherwise it's easy to have the same source path listed more - # than once in the integrated version properties, with and without - # trailing /'s. - source = rstrip(source, "/") - if not is_wc(source) and not is_url(source): - # Check if it is a substring of a pathid recorded - # within the branch properties. - found = [] - for pathid in branch_props.keys(): - if pathid.match_substring(source): - found.append(pathid) - if len(found) == 1: - # (assumes pathid is a repository-relative-path) - source_pathid = found[0] - source = source_pathid.get_url() - else: - error('"%s" is neither a valid URL, nor an unambiguous ' - 'substring of a repository path, nor a working directory' - % source) - else: - source_pathid = PathIdentifier.from_target(source) - - source_pathid = PathIdentifier.from_target(source) - if str(cmd) == "init" and \ - source_pathid == PathIdentifier.from_target("."): - error("cannot init integration source path '%s'\n" - "Its repository-relative path must differ from the " - "repository-relative path of the current directory." - % source_pathid) - opts["source-pathid"] = source_pathid - opts["source-url"] = target_to_url(source) - - # Sanity check source_url - assert is_url(opts["source-url"]) - # SVN does not support non-normalized URL (and we should not - # have created them) - assert opts["source-url"].find("/..") < 0 - - report('source is "%s"' % opts["source-url"]) - - # Get previously merged revisions (except when command is init) - if str(cmd) != "init": - opts["merged-revs"] = merge_props_to_revision_set(branch_props, - opts["source-pathid"]) - - # Perform the action - cmd(branch_dir, branch_props) - - -if __name__ == "__main__": - try: - main(sys.argv[1:]) - except LaunchError, (ret, cmd, out): - err_msg = "command execution failed (exit code: %d)\n" % ret - err_msg += cmd + "\n" - err_msg += "".join(out) - error(err_msg) - except KeyboardInterrupt: - # Avoid traceback on CTRL+C - print "aborted by user" - sys.exit(1) diff --git a/staging/subversion/svnserve b/staging/subversion/svnserve deleted file mode 100755 index 670fee742..000000000 --- a/staging/subversion/svnserve +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/svnserve - -PID=`pidof -o %PPID /usr/bin/svnserve` -case "$1" in - start) - stat_busy "Starting svnserve" - if [ -z "$PID" ]; then - if [ -n "$SVNSERVE_USER" ]; then - su -s '/bin/sh' $SVNSERVE_USER -c "/usr/bin/svnserve -d $SVNSERVE_ARGS" & - else - /usr/bin/svnserve -d $SVNSERVE_ARGS & - fi - fi - if [ ! -z "$PID" -o $? -gt 0 ]; then - stat_fail - else - add_daemon svnserve - stat_done - fi - ;; - stop) - stat_busy "Stopping svnserve" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon svnserve - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac diff --git a/staging/subversion/svnserve.conf b/staging/subversion/svnserve.conf deleted file mode 100644 index 37fb7ea10..000000000 --- a/staging/subversion/svnserve.conf +++ /dev/null @@ -1,7 +0,0 @@ -# -# Parameters to be passed to svnserve -# -#SVNSERVE_ARGS="-r /path/to/some/repos" -SVNSERVE_ARGS="" - -#SVNSERVE_USER="svn" diff --git a/testing/apr-util/PKGBUILD b/testing/apr-util/PKGBUILD deleted file mode 100644 index 5cdab4d99..000000000 --- a/testing/apr-util/PKGBUILD +++ /dev/null @@ -1,28 +0,0 @@ -# $Id: PKGBUILD 129453 2011-06-28 01:17:42Z stephane $ -# Maintainer: Jan de Groot <jgc@archlinux.org> -# Maintainer: Pierre Schmitz <pierre@archlinux.de> - -pkgname=apr-util -pkgver=1.3.12 -pkgrel=2 -pkgdesc="The Apache Portable Runtime" -arch=('i686' 'x86_64') -url="http://apr.apache.org/" -depends=('apr' 'gdbm' 'expat' 'db' 'libldap' 'unixodbc') -options=('!libtool') -license=('APACHE') -source=("http://www.apache.org/dist/apr/apr-util-${pkgver}.tar.bz2") -md5sums=('0f671b037ca62751a8a7005578085560') - -build() { - cd "${srcdir}/apr-util-${pkgver}" - ./configure --prefix=/usr --with-apr=/usr \ - --without-pgsql --without-mysql --without-sqlite2 --without-sqlite3 \ - --with-berkeley-db=/usr --with-gdbm=/usr --with-ldap - make -} - -package() { - cd "${srcdir}/apr-util-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/testing/bind/127.0.0.zone b/testing/bind/127.0.0.zone new file mode 100644 index 000000000..509c311f6 --- /dev/null +++ b/testing/bind/127.0.0.zone @@ -0,0 +1,11 @@ +$ORIGIN 0.0.127.in-addr.arpa. + +@ 1D IN SOA localhost. root.localhost. ( + 42 ; serial (yyyymmdd##) + 3H ; refresh + 15M ; retry + 1W ; expiry + 1D ) ; minimum ttl + + 1D IN NS localhost. +1 1D IN PTR localhost. diff --git a/testing/bind/PKGBUILD b/testing/bind/PKGBUILD new file mode 100644 index 000000000..9d34dc6dc --- /dev/null +++ b/testing/bind/PKGBUILD @@ -0,0 +1,86 @@ +# $Id: PKGBUILD 130507 2011-07-07 02:35:18Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: judd <jvinet@zeroflux.org> +# Contributor: Mario Vazquez <mario_vazq@hotmail.com> + +pkgname=bind + +# Use a period and not a hyphen before the patch level for proper versioning. +pkgver=9.8.0.P4 +_pkgver=9.8.0-P4 +pkgrel=1 + +pkgdesc='Berkeley Internet Name Daemon (BIND) is the reference implementation of the Domain Name System (DNS) protocols' +arch=('i686' 'x86_64') +url='http://www.isc.org/software/bind/' +license=('custom:ISC') +provides=('dns-server') +backup=('etc/logrotate.d/named' + 'etc/conf.d/named' + 'etc/named.conf') +depends=('openssl' 'krb5' 'libxml2') +options=('!makeflags' '!libtool') +source=("http://ftp.isc.org/isc/bind9/${_pkgver}/${pkgname}-${_pkgver}.tar.gz" + 'root.hint::ftp://ftp.rs.internic.net/domain/db.cache' + 'so_bsdcompat.patch' + 'notools.patch' + 'named' + 'named.conf' + 'named.conf.d' + 'named.logrotate' + 'localhost.zone' + '127.0.0.zone') +sha1sums=('969864200c1516a8bea54266de60f316d79182b4' + 'cbdecd1ea8e7b612b33b63d66bc57273795d1f54' + 'b433ba99f23e3db305f8ce293fe4ce6d1b8d4cfb' + '17444f9d759a4bde7688bdaa304dac57a138e4c1' + '46232e9db243c6c05e170a1781d7a7f413be5d03' + '5ca7a5f2a132548a090a045a2df3acea6b35d9eb' + '7848edbfb9a848843f57c11c02b0289eefd42d00' + '9ffb5c3f72390a517aeae557e32349d5d278cb63' + '76a0d4cd1b913db177a5a375bebc47e5956866ec' + '53be0f1437ebe595240d8dbdd819939582b97fb9') + +install=install + +build() { + cd "${srcdir}/${pkgname}-${_pkgver}" + + patch -p1 -i ../so_bsdcompat.patch + patch -p1 -i ../notools.patch + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --disable-static \ + --disable-linux-caps \ + --with-openssl \ + --with-gssapi \ + --with-libxml2 \ + --with-libtool \ + --with-dlz-dlopen \ + + make +} + +package() { + cd "${srcdir}/${pkgname}-${_pkgver}" + + make DESTDIR="${pkgdir}" install + + rmdir "${pkgdir}/var/run" + install -d "${pkgdir}"/usr/share/doc/bind + install doc/arm/*.html "${pkgdir}"/usr/share/doc/bind/ + install -D -m644 COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" + + install -D -m755 ../named "${pkgdir}"/etc/rc.d/named + install -D -m644 ../named.conf.d "${pkgdir}"/etc/conf.d/named + install -D -m600 ../named.logrotate "${pkgdir}"/etc/logrotate.d/named + install -D -m640 -o 0 -g 40 ../named.conf "${pkgdir}"/etc/named.conf + + install -d -m750 -o 0 -g 40 "${pkgdir}"/var/named + install -m640 -o 0 -g 40 ../root.hint "${pkgdir}"/var/named/ + install -m640 -o 0 -g 40 ../127.0.0.zone "${pkgdir}"/var/named/ + install -m640 -o 0 -g 40 ../localhost.zone "${pkgdir}"/var/named/ +} diff --git a/testing/bind/install b/testing/bind/install new file mode 100644 index 000000000..e3a1397cb --- /dev/null +++ b/testing/bind/install @@ -0,0 +1,21 @@ +post_install() { + getent group named >/dev/null || groupadd -g 40 named + getent passwd named >/dev/null || useradd -u 40 -c "BIND DNS Server" -g named -d /var/named -s /bin/false named + passwd -l named &>/dev/null + + touch var/log/named.log + chown named:named var/log/named.log + + # create an rndc.key if it doesn't already exist + if [ ! -s etc/rndc.key ]; then + usr/sbin/rndc-confgen -r /dev/urandom -b 256 | head -n 5 >>etc/rndc.key + chown root:named etc/rndc.key + chmod 640 etc/rndc.key + fi +} + +pre_remove() { + getent passwd named &>/dev/null && userdel named >/dev/null + getent group named &>/dev/null && groupdel named >/dev/null + return 0 +} diff --git a/testing/bind/localhost.zone b/testing/bind/localhost.zone new file mode 100644 index 000000000..e3ff9641c --- /dev/null +++ b/testing/bind/localhost.zone @@ -0,0 +1,10 @@ +$ORIGIN localhost. +@ 1D IN SOA @ root ( + 42 ; serial (yyyymmdd##) + 3H ; refresh + 15M ; retry + 1W ; expiry + 1D ) ; minimum ttl + + 1D IN NS @ + 1D IN A 127.0.0.1 diff --git a/testing/bind/named b/testing/bind/named new file mode 100755 index 000000000..7907f9983 --- /dev/null +++ b/testing/bind/named @@ -0,0 +1,52 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/named + +[[ -d /var/run/named ]] || mkdir -p /var/run/named +chown named:named /var/run/named + +PIDFILE=/var/run/named/named.pid +PID=$(cat $PIDFILE 2>/dev/null) +readlink -q /proc/$PID/exe | grep -q '^/usr/sbin/named' || { PID=; rm $PIDFILE 2>/dev/null; } + +case "$1" in + start) + stat_busy "Starting BIND" + [ -z "$PID" ] && /usr/sbin/named ${NAMED_ARGS} + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon named + stat_done + fi + ;; + stop) + stat_busy "Stopping BIND" + [ ! -z "$PID" ] && kill $PID &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon named + stat_done + fi + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + reload) + stat_busy "Reloading BIND" + [ ! -z "$PID" ] && rndc reload &>/dev/null || kill -HUP $PID &>/dev/null + if [ $? -gt 0 ]; then + stat_fail + else + stat_done + fi + ;; + *) + echo "usage: $0 {start|stop|reload|restart}" +esac +exit 0 diff --git a/testing/bind/named.conf b/testing/bind/named.conf new file mode 100644 index 000000000..38fb12cbe --- /dev/null +++ b/testing/bind/named.conf @@ -0,0 +1,64 @@ +// +// /etc/named.conf +// + +options { + directory "/var/named"; + pid-file "/var/run/named/named.pid"; + auth-nxdomain yes; + datasize default; +// Uncomment these to enable IPv6 connections support +// IPv4 will still work: +// listen-on-v6 { any; }; +// Add this for no IPv4: +// listen-on { none; }; + + // Default security settings. + allow-recursion { 127.0.0.1; }; + allow-transfer { none; }; + allow-update { none; }; + version none; + hostname none; + server-id none; +}; + +zone "localhost" IN { + type master; + file "localhost.zone"; + allow-transfer { any; }; +}; + +zone "0.0.127.in-addr.arpa" IN { + type master; + file "127.0.0.zone"; + allow-transfer { any; }; +}; + +zone "." IN { + type hint; + file "root.hint"; +}; + +//zone "example.org" IN { +// type slave; +// file "example.zone"; +// masters { +// 192.168.1.100; +// }; +// allow-query { any; }; +// allow-transfer { any; }; +//}; + +logging { + channel xfer-log { + file "/var/log/named.log"; + print-category yes; + print-severity yes; + print-time yes; + severity info; + }; + category xfer-in { xfer-log; }; + category xfer-out { xfer-log; }; + category notify { xfer-log; }; +}; + diff --git a/testing/bind/named.conf.d b/testing/bind/named.conf.d new file mode 100644 index 000000000..aecbd2307 --- /dev/null +++ b/testing/bind/named.conf.d @@ -0,0 +1,4 @@ +# +# Parameters to be passed to BIND +# +NAMED_ARGS="-u named" diff --git a/testing/bind/named.logrotate b/testing/bind/named.logrotate new file mode 100644 index 000000000..ef1a2d032 --- /dev/null +++ b/testing/bind/named.logrotate @@ -0,0 +1,6 @@ +/var/log/named.log { + missingok + postrotate + /bin/kill -HUP `cat /var/run/named/named.pid 2>/dev/null` 2>/dev/null || true + endscript +} diff --git a/testing/bind/notools.patch b/testing/bind/notools.patch new file mode 100644 index 000000000..0ad083a01 --- /dev/null +++ b/testing/bind/notools.patch @@ -0,0 +1,12 @@ +diff -aur old/bin/Makefile.in new/bin/Makefile.in +--- old/bin/Makefile.in 2011-05-27 10:12:59.392416094 +0200 ++++ new/bin/Makefile.in 2011-05-27 10:13:12.372521984 +0200 +@@ -19,7 +19,7 @@ + VPATH = @srcdir@ + top_srcdir = @top_srcdir@ + +-SUBDIRS = named rndc dig dnssec tests tools nsupdate \ ++SUBDIRS = named rndc dnssec tests tools \ + check confgen @PKCS11_TOOLS@ + TARGETS = + diff --git a/testing/bind/so_bsdcompat.patch b/testing/bind/so_bsdcompat.patch new file mode 100644 index 000000000..4d7031fcc --- /dev/null +++ b/testing/bind/so_bsdcompat.patch @@ -0,0 +1,12 @@ +diff -aur old/lib/isc/unix/socket.c new/lib/isc/unix/socket.c +--- old/lib/isc/unix/socket.c 2011-02-18 05:01:16.000000000 +0100 ++++ new/lib/isc/unix/socket.c 2011-05-27 10:12:01.685269374 +0200 +@@ -712,6 +712,8 @@ + } + #endif + ++#undef SO_BSDCOMPAT ++ + static void + socket_log(isc__socket_t *sock, isc_sockaddr_t *address, + isc_logcategory_t *category, isc_logmodule_t *module, int level, diff --git a/testing/bogofilter/PKGBUILD b/testing/bogofilter/PKGBUILD deleted file mode 100644 index 860895cf9..000000000 --- a/testing/bogofilter/PKGBUILD +++ /dev/null @@ -1,34 +0,0 @@ -# $Id: PKGBUILD 127873 2011-06-19 06:22:51Z eric $ -# Maintainer: tobias <tobias@archlinux.org> -# Contributor: Low Kian Seong <fastmail_low@speedymail.org> - -pkgname=bogofilter -pkgver=1.2.2 -pkgrel=3 -pkgdesc="A fast Bayesian spam filtering tool" -arch=('i686' 'x86_64') -license=('GPL3') -url="http://bogofilter.sourceforge.net" -depends=('db' 'perl' 'gsl') -backup=('etc/bogofilter/bogofilter.cf') -source=(http://sourceforge.net/projects/${pkgname}/files/${pkgname}-current/${pkgname}-${pkgver}/${pkgname}-${pkgver}.tar.bz2) -md5sums=('4bcabdf8c5e7efefcb508eda7e80eebc') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr \ - --sysconfdir=/etc/bogofilter \ - --localstatedir=/var \ - --enable-transactions - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - - mv "${pkgdir}/etc/bogofilter/bogofilter.cf.example" "${pkgdir}/etc/bogofilter/bogofilter.cf" - - install -dm755 "${pkgdir}/usr/share/${pkgname}/contrib" - install -m644 contrib/* "${pkgdir}/usr/share/${pkgname}/contrib/" -} diff --git a/testing/cinepaint/LICENSE b/testing/cinepaint/LICENSE new file mode 100644 index 000000000..746207229 --- /dev/null +++ b/testing/cinepaint/LICENSE @@ -0,0 +1,25 @@ +Copyright (c) 2005, Kai-Uwe Behrmann +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution.ntributors may be used to endorse or promote + products derived from this software without specific prior written + permission. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/testing/cinepaint/PKGBUILD b/testing/cinepaint/PKGBUILD new file mode 100644 index 000000000..93b61ee16 --- /dev/null +++ b/testing/cinepaint/PKGBUILD @@ -0,0 +1,64 @@ +# $Id: PKGBUILD 130311 2011-07-04 22:01:41Z eric $ +# Maintainer: tobias [tobias.archlinux.org] +# Contributor: tobias [tobias.justdreams.de] + +pkgname=cinepaint +_srcver=0.22-1 +pkgver=${_srcver/-/.} +pkgrel=8 +pkgdesc="Sophisticated graphics manipulation programm supporting >8bit pictures" +arch=('i686' 'x86_64') +license=('LGPL' 'GPL' 'MIT') +url="http://www.cinepaint.org" +depends=('gtk2>=2.18.6' 'openexr>=1.6.1' 'lcms>=1.18' 'libxpm>=3.5.7' 'fltk' + 'desktop-file-utils' 'ftgl>=2.1.3rc5') +makedepends=('python2' 'gutenprint') +optdepends=('python2: for python plug-ins' 'gutenprint: for print plug-ins') +options=('!libtool') +install=cinepaint.install +source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${_srcver}.tar.gz + LICENSE + cinepaint-0.22.1-gcc43.patch + cinepaint-0.22.1-multiple_parameters_named.patch + cinepaint-0.22.1-ambiguousawake.patch + cinepaint-0.22-gcc44.patch) +md5sums=('f360587240db6b6d2f0bfd94c420c492' + '169085743f667c250ea2e4022efecf5f' + 'f05e17a16d0018e5301aff0e1fa597b0' + '0876510a5ce3d581ebdde7e18199c09f' + '4586aa153a0d3cac36120afc1f95a880' + '368e820c27f525e3569d43388f1c119a') + +build() { + cd "${srcdir}/${pkgname}-${_srcver}" + # FIXES + patch -Np1 -i "${srcdir}/cinepaint-0.22.1-gcc43.patch" + patch -Np1 -i "${srcdir}/cinepaint-0.22-gcc44.patch" + patch -Np1 -i "${srcdir}/cinepaint-0.22.1-multiple_parameters_named.patch" + patch -Np0 -i "${srcdir}/cinepaint-0.22.1-ambiguousawake.patch" + find plug-ins/pygimp -type f -exec sed -i 's#env python#env python2#' {} + + find plug-ins/print -type f -exec sed -i "s:gutenprintui/gutenprintui:gutenprintui2/gutenprintui:" {} \; + sed -i 's|Fl/Fl_File_Chooser.H|FL/Fl_File_Chooser.H|' lib/fl_i18n/fl_i18n.cxx + sed -i 's|Fl/Fl_Widget.H|FL/Fl_Widget.H|' plug-ins/icc_examin/icc_examin/icc_helfer.h + sed -i 's|Fl/Fl.H|FL/Fl.H|' plug-ins/icc_examin/icc_examin/icc_helfer_fltk.cpp + sed -i 's|Fl/Fl_File_Chooser.H|FL/Fl_File_Chooser.H|' plug-ins/icc_examin/icc_examin/fl_i18n/fl_i18n.cxx + + # Fix insecure rpath + sed '/-rpath/d' -i plug-ins/icc_examin/icc_examin/configure + + # build + ./configure --prefix=/usr --mandir=/usr/share/man \ + --enable-gtk2 --enable-pygimp \ + --with-python=/usr/bin/python2 + # FIXES + sed -i 's/^\(X_LIBS.*\)$/\1 -lpthread/' plug-ins/openexr/Makefile + make +} + +package() { + cd "${srcdir}/${pkgname}-${_srcver}" + make DESTDIR="${pkgdir}" install + sed -i -e "s|-I$srcdir/cinepaint-0.22-1||" -e "s|-I$srcdir/cinepaint-0.22-1/lib||" -e "/libcinepaint.la/d" \ + -e "s|$srcdir/cinepaint-0.22-1/lib/.libs/\$dlname||" "${pkgdir}/usr/bin/cinepainttool" + install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/testing/cinepaint/cinepaint-0.22-gcc44.patch b/testing/cinepaint/cinepaint-0.22-gcc44.patch new file mode 100644 index 000000000..340057834 --- /dev/null +++ b/testing/cinepaint/cinepaint-0.22-gcc44.patch @@ -0,0 +1,22 @@ +diff -Nru cinepaint-0.22-1.orig/plug-ins/collect/collect.cpp cinepaint-0.22-1/plug-ins/collect/collect.cpp +--- cinepaint-0.22-1.orig/plug-ins/collect/collect.cpp 2007-03-30 11:11:33.000000000 +0200 ++++ cinepaint-0.22-1/plug-ins/collect/collect.cpp 2009-05-21 14:54:45.000000000 +0200 +@@ -301,7 +301,7 @@ + return -1; + + // renaming the layer to the original filename +- gimp_layer_set_name (layers[0], strrchr(fc->value(1),'/')+1); ++ gimp_layer_set_name (layers[0], strrchr((char *)fc->value(1),'/')+1); + GPrecisionType image_base_prec = gimp_drawable_precision (layers[0]); + int base_gray = gimp_drawable_gray (layers[0]); + +@@ -341,7 +341,7 @@ + #endif + gimp_image_add_layer (image_ID, layers[0], 0); DBG + // set layer name to filename +- gimp_layer_set_name(layers[0], strrchr(fc->value(i),'/')+1); ++ gimp_layer_set_name(layers[0], strrchr((char *)fc->value(i),'/')+1); + + // searching max dimensions + if (gimp_image_width(load_image_ID) > max_w) + diff --git a/testing/cinepaint/cinepaint-0.22.1-ambiguousawake.patch b/testing/cinepaint/cinepaint-0.22.1-ambiguousawake.patch new file mode 100644 index 000000000..f1d09fa27 --- /dev/null +++ b/testing/cinepaint/cinepaint-0.22.1-ambiguousawake.patch @@ -0,0 +1,11 @@ +--- plug-ins/icc_examin/icc_examin/icc_helfer_fltk.cpp.orig 2008-09-03 02:07:08.000000000 +0200 ++++ plug-ins/icc_examin/icc_examin/icc_helfer_fltk.cpp 2008-09-03 02:08:02.000000000 +0200 +@@ -226,7 +226,7 @@ + + int awake(void) + { +- Fl::awake(0); ++ Fl::awake((void *)0); + return 0; + } + int leerWait(void) { return 0; } diff --git a/testing/cinepaint/cinepaint-0.22.1-gcc43.patch b/testing/cinepaint/cinepaint-0.22.1-gcc43.patch new file mode 100644 index 000000000..64ba76099 --- /dev/null +++ b/testing/cinepaint/cinepaint-0.22.1-gcc43.patch @@ -0,0 +1,73 @@ +Index: cinepaint-0.22-1/plug-ins/bracketing_to_hdr/br_core/ResponseSolver.hpp +=================================================================== +--- cinepaint-0.22-1.orig/plug-ins/bracketing_to_hdr/br_core/ResponseSolver.hpp ++++ cinepaint-0.22-1/plug-ins/bracketing_to_hdr/br_core/ResponseSolver.hpp +@@ -34,6 +34,7 @@ + + + #include <fstream> ++#include <cstring> + #include "TNT/tnt_misc.hpp" // proof_least_square_fit() + #include "TNT/tnt_stopwatch.hpp" + #include "TNT/jama_qr.hpp" // JAMA::QR +Index: cinepaint-0.22-1/plug-ins/bracketing_to_hdr/br_core/br_Image.cpp +=================================================================== +--- cinepaint-0.22-1.orig/plug-ins/bracketing_to_hdr/br_core/br_Image.cpp ++++ cinepaint-0.22-1/plug-ins/bracketing_to_hdr/br_core/br_Image.cpp +@@ -26,6 +26,7 @@ + */ + #include <iostream> + #include <cmath> // pow() ++#include <cstring> + + #include "br_types.hpp" // ImageID + #include "br_enums.hpp" // DataType, ReportWhat +Index: cinepaint-0.22-1/plug-ins/icc_examin/icc_examin/icc_oyranos_extern.cpp +=================================================================== +--- cinepaint-0.22-1.orig/plug-ins/icc_examin/icc_examin/icc_oyranos_extern.cpp ++++ cinepaint-0.22-1/plug-ins/icc_examin/icc_examin/icc_oyranos_extern.cpp +@@ -29,6 +29,7 @@ + + #include "icc_utils.h" + #include "icc_fenster.h" ++#include <cstdlib> + + using namespace icc_examin_ns; + +Index: cinepaint-0.22-1/plug-ins/icc_examin/icc_examin/icc_speicher.h +=================================================================== +--- cinepaint-0.22-1.orig/plug-ins/icc_examin/icc_examin/icc_speicher.h ++++ cinepaint-0.22-1/plug-ins/icc_examin/icc_examin/icc_speicher.h +@@ -33,6 +33,8 @@ + + #include "icc_utils.h" + #include <string> ++#include <cstdlib> ++#include <cstring> + + #define DBG_SPEICHER_START if(icc_debug >= 3) DBG_PROG_START + #define DBG_SPEICHER_ENDE if(icc_debug >= 3) DBG_PROG_ENDE +Index: cinepaint-0.22-1/plug-ins/icc_examin/icc_examin/threads.cpp +=================================================================== +--- cinepaint-0.22-1.orig/plug-ins/icc_examin/icc_examin/threads.cpp ++++ cinepaint-0.22-1/plug-ins/icc_examin/icc_examin/threads.cpp +@@ -42,6 +42,7 @@ + #include <iostream> + # if HAVE_PTHREAD_H + // Use POSIX threading... ++#include <climits> + + int fl_create_thread(Fl_Thread& t, void *(*f) (void *), void* p) + { +Index: cinepaint-0.22-1/plug-ins/pdf/pdf.cpp +=================================================================== +--- cinepaint-0.22-1.orig/plug-ins/pdf/pdf.cpp ++++ cinepaint-0.22-1/plug-ins/pdf/pdf.cpp +@@ -39,6 +39,7 @@ + + #include "pdf.h" + #include "pdf_dialog.h" ++#include <cstring> + + extern "C" { + #include <gtk/gtk.h> diff --git a/testing/cinepaint/cinepaint-0.22.1-multiple_parameters_named.patch b/testing/cinepaint/cinepaint-0.22.1-multiple_parameters_named.patch new file mode 100644 index 000000000..e030593c2 --- /dev/null +++ b/testing/cinepaint/cinepaint-0.22.1-multiple_parameters_named.patch @@ -0,0 +1,42 @@ +--- ./plug-ins/icc_examin/icc_examin/icc_oyranos.h.orig 2008-06-27 19:28:52.000000000 +0200 ++++ ./plug-ins/icc_examin/icc_examin/icc_oyranos.h 2008-06-27 19:31:34.000000000 +0200 +@@ -142,9 +142,6 @@ + + // colour transformations + ColourTransformKey erzeugeTrafo ( +- const char* eingangs_profil__geraet, +- int byte, +- int kanaele, + const char* ausgangs_profil__geraet, + int byte, + int kanaele, +@@ -152,9 +149,6 @@ + const char* cmm, // 4 bytes 'lcms' 'APPL' + int cmm_optionen); // BPC, precission + ColourTransformKey erzeugeTrafo ( +- const char* eingangs_profil__geraet, +- int byte, +- int kanaele, + const char* ausgangs_profil__geraet, + int byte, + int kanaele, +@@ -163,9 +157,6 @@ + int cmm_optionen, + std::list<const char*> &profile ); + ColourTransformKey erzeugeTrafo ( +- const char* eingangs_profil__geraet, +- int byte, +- int kanaele, + const char* ausgangs_profil__geraet, + int byte, + int kanaele, +@@ -181,9 +172,6 @@ + std::string cmm; + private: + ColourTransformKey erzeugeSchluessel_ ( +- const char* eingangs_profil__geraet, +- int byte, +- int kanaele, + const char* ausgangs_profil__geraet, + int byte, + int kanaele, diff --git a/testing/cinepaint/cinepaint.install b/testing/cinepaint/cinepaint.install new file mode 100644 index 000000000..5e5cfef4d --- /dev/null +++ b/testing/cinepaint/cinepaint.install @@ -0,0 +1,11 @@ +post_install() { + update-desktop-database -q +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + update-desktop-database -q +} diff --git a/testing/claws-mail/PKGBUILD b/testing/claws-mail/PKGBUILD deleted file mode 100644 index b48969b16..000000000 --- a/testing/claws-mail/PKGBUILD +++ /dev/null @@ -1,60 +0,0 @@ -# $Id: PKGBUILD 127579 2011-06-16 17:10:43Z andyrtr $ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> - -pkgname=claws-mail -pkgver=3.7.9 -pkgrel=4 -pkgdesc="A GTK+ based e-mail client." -arch=('i686' 'x86_64') -license=('GPL3') -url="http://www.claws-mail.org" -depends=('gtk2' 'gnutls' 'startup-notification' 'pilot-link' 'enchant' - 'gpgme' 'libetpan' 'libsm' 'db' 'dbus-glib' 'hicolor-icon-theme' 'desktop-file-utils') -makedepends=('compface' 'spamassassin' 'bogofilter' 'valgrind') -optdepends=('python2: needed for some tools' - 'perl: needed for some tools' - 'spamassassin: adds support for spamfiltering' - 'bogofilter: adds support for spamfiltering' - 'html2ps: AUR pkg - adds support for printing html mails together with html plugins') -replaces=('sylpheed-claws') -provides=('claws') -options=(!libtool) -install=claws-mail.install -source=(http://downloads.sourceforge.net/sourceforge/sylpheed-claws/${pkgname}-${pkgver}.tar.bz2 - claws-notify-crash.patch) -md5sums=('2f9d2dcabf84e312cfeb56efa799b5b3' - '9a2903449f679344b5f5f51c91825b45') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - patch -Np0 -i $srcdir/claws-notify-crash.patch - sed -i 's@^#!.*python.*@#!/usr/bin/python2@' tools/*.py - - ./configure --prefix=/usr --disable-static \ - --enable-enchant \ - --enable-gnutls \ - --enable-ldap \ - --disable-dillo-viewer-plugin \ - --enable-crash-dialog \ - --enable-pgpmime-plugin \ - --enable-spamassassin-plugin \ - --enable-bogofilter-plugin \ - --enable-jpilot - - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - - # build and install extra tools - cd tools - make - # all executables and .conf files ; only top directory - find -maxdepth 1 -type f -and -perm /111 -or -name '*.conf' | while read i ; do - install -D -m755 ${i} \ - ${pkgdir}/usr/lib/claws-mail/tools/${i} - done -} diff --git a/testing/claws-mail/claws-notify-crash.patch b/testing/claws-mail/claws-notify-crash.patch deleted file mode 100644 index e1d4eb686..000000000 --- a/testing/claws-mail/claws-notify-crash.patch +++ /dev/null @@ -1,18 +0,0 @@ -Index: src/main.c -=================================================================== -RCS file: //claws/src/main.c,v -retrieving revision 1.115.2.237 -retrieving revision 1.115.2.238 -diff -u -r1.115.2.237 -r1.115.2.238 ---- src/main.c 10 Apr 2011 17:19:04 -0000 1.115.2.237 -+++ src/main.c 30 Apr 2011 19:27:15 -0000 1.115.2.238 -@@ -331,7 +331,7 @@ - gtk_widget_show(hack); - } - -- xdisplay = gdk_display_get_default(); -+ xdisplay = GDK_DISPLAY_XDISPLAY(gdk_display_get_default()); - sn_display = sn_display_new(xdisplay, - sn_error_trap_push, - sn_error_trap_pop); - diff --git a/testing/cronie/PKGBUILD b/testing/cronie/PKGBUILD deleted file mode 100644 index 795884823..000000000 --- a/testing/cronie/PKGBUILD +++ /dev/null @@ -1,64 +0,0 @@ -# Contributor: Kaiting Chen <kaiting.chen@kiwilight.com> -# Maintainer: Gaetan Bisson <bisson@archlinux.org> - -pkgname='cronie' -pkgver=1.4.8 -pkgrel=1 -pkgdesc='Daemon that runs specified programs at scheduled times and related tools' -url='https://fedorahosted.org/cronie/' -license=('custom:BSD') -arch=('i686' 'x86_64') -depends=('pam' 'bash' 'run-parts') -optdepends=('smtp-server: sending cron job output via email') - -source=("https://fedorahosted.org/releases/c/r/${pkgname}/${pkgname}-${pkgver}.tar.gz" - 'cron.deny' - 'pam.d' - 'rc.d') -sha1sums=('1d2ce3a6ca2a6f96ff31921e4060be3199dc10f3' - '0f279b8fb820340267d578dc85511c980715f91e' - '5eff7fb31f6bc0a924243ff046704726cf20c221' - 'c08c040ed5cb12bc4fd15639a5242d31ec247ef5') - -backup=('etc/anacrontab' - 'etc/conf.d/crond' - 'etc/pam.d/crond' - 'etc/cron.deny') - -conflicts=('cron') -provides=('cron') -groups=('base') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - ./configure \ - --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --enable-anacron \ - --with-inotify \ - --with-pam \ - - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - - make DESTDIR="${pkgdir}" install - - install -d "${pkgdir}"/etc/cron.{d,hourly,daily,weekly,monthly} - install -d "${pkgdir}"/var/spool/{ana,}cron - chmod u+s "${pkgdir}"/usr/bin/crontab - - install -Dm755 ../rc.d "${pkgdir}"/etc/rc.d/crond - install -Dm644 ../pam.d "${pkgdir}"/etc/pam.d/crond - install -Dm644 ../cron.deny "${pkgdir}"/etc/cron.deny - install -Dm644 crond.sysconfig "${pkgdir}"/etc/conf.d/crond - install -Dm644 contrib/0hourly "${pkgdir}"/etc/cron.d/0hourly - install -Dm755 contrib/0anacron "${pkgdir}"/etc/cron.hourly/0anacron - install -Dm644 contrib/anacrontab "${pkgdir}"/etc/anacrontab - - install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/cronie/COPYING -} diff --git a/testing/cronie/cron.deny b/testing/cronie/cron.deny deleted file mode 100644 index 06e685cc8..000000000 --- a/testing/cronie/cron.deny +++ /dev/null @@ -1 +0,0 @@ -# without this file, only users listed in /etc/cron.allow can use crontab diff --git a/testing/cronie/pam.d b/testing/cronie/pam.d deleted file mode 100644 index 9a254ebc0..000000000 --- a/testing/cronie/pam.d +++ /dev/null @@ -1,10 +0,0 @@ -auth required pam_unix.so -auth required pam_env.so - -account required pam_access.so -account required pam_unix.so -account required pam_time.so - -session required pam_loginuid.so -session required pam_limits.so -session required pam_unix.so diff --git a/testing/cronie/rc.d b/testing/cronie/rc.d deleted file mode 100755 index d0659685c..000000000 --- a/testing/cronie/rc.d +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -name=crond -. /etc/conf.d/crond -PID=$(pidof -o %PPID /usr/sbin/crond) - -case "$1" in -start) - stat_busy "Starting $name daemon" - [[ -z "$PID" ]] && /usr/sbin/crond $CRONDARGS &>/dev/null \ - && { add_daemon $name; stat_done; } \ - || { stat_fail; exit 1; } - ;; -stop) - stat_busy "Stopping $name daemon" - [[ -n "$PID" ]] && kill $PID &>/dev/null \ - && { rm_daemon $name; stat_done; } \ - || { stat_fail; exit 1; } - ;; -reload) - stat_busy "Reloading $name daemon" - [[ -n "$PID" ]] && kill -HUP $PID &>/dev/null \ - && { stat_done; } \ - || { stat_fail; exit 1; } - ;; -restart) - $0 stop - sleep 1 - $0 start - ;; -*) - echo "usage: $0 {start|stop|restart|reload}" - ;; -esac -exit 0 diff --git a/testing/db/PKGBUILD b/testing/db/PKGBUILD deleted file mode 100644 index 40d1b020b..000000000 --- a/testing/db/PKGBUILD +++ /dev/null @@ -1,32 +0,0 @@ -# $Id: PKGBUILD 127440 2011-06-15 00:33:22Z stephane $ -# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> -# Contributor: Allan McRae <allan@archlinux.org> -# Contributor: Andreas Radke <andyrtr@archlinux.org> - -pkgname=db -pkgver=5.2.28 -pkgrel=1 -pkgdesc="The Berkeley DB embedded database system" -arch=('i686' 'x86_64') -url="http://www.oracle.com/technology/software/products/berkeley-db/index.html" -license=('custom') -depends=('gcc-libs' 'sh') -options=('!libtool') -install=db.install -source=(http://download.oracle.com/berkeley-db/db-${pkgver}.tar.gz) -sha1sums=('e6572e3356cf8bc998da4e889db3b12638833435') - -build() { - cd "${srcdir}/$pkgname-${pkgver}/build_unix" - ../dist/configure --prefix=/usr --enable-compat185 \ - --enable-shared --enable-static --enable-cxx --enable-dbm - make LIBSO_LIBS=-lpthread -} - -package() { - cd "${srcdir}/$pkgname-${pkgver}/build_unix" - make DESTDIR="${pkgdir}" install - rm -rf "${pkgdir}"/usr/docs - install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/LICENSE \ - "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/testing/db/db.install b/testing/db/db.install deleted file mode 100644 index 03b64042d..000000000 --- a/testing/db/db.install +++ /dev/null @@ -1,5 +0,0 @@ -post_upgrade() { - if [ "$(vercmp $2 5.1)" -lt 0 ]; then - echo " >> Major version update. Consider running db_upgrade on Berkeley DB databases." - fi -} diff --git a/testing/dnsutils/PKGBUILD b/testing/dnsutils/PKGBUILD new file mode 100644 index 000000000..724bb5c4d --- /dev/null +++ b/testing/dnsutils/PKGBUILD @@ -0,0 +1,48 @@ +# $Id: PKGBUILD 130510 2011-07-07 02:37:46Z bisson $ +# Maintainer: Gaetan Bisson <bisson@archlinux.org> +# Contributor: kevin <kevin@archlinux.org> +# Contributor: mario <mario_vazq@hotmail.com> + +pkgname=dnsutils + +# Use a period and not a hyphen before the patch level for proper versioning. +pkgver=9.8.0.P4 +_pkgver=9.8.0-P4 +pkgrel=1 + +pkgdesc='Various DNS utilities - dig host nslookup nsupdate' +arch=('i686' 'x86_64') +url='https://www.isc.org/software/bind' +license=('custom:ISC') +depends=('openssl' 'idnkit') +replaces=('bind-tools' 'host') +options=('!makeflags') +source=("http://ftp.isc.org/isc/bind9/${_pkgver}/bind-${_pkgver}.tar.gz" + 'tools-only.patch') +sha1sums=('969864200c1516a8bea54266de60f316d79182b4' + 'ac88c89e25c26d73095a3dd85e1ca1070d184ded') + +build() { + cd "${srcdir}/bind-${_pkgver}" + + patch -p1 -i ../tools-only.patch + export STD_CDEFINES='-DDIG_SIGCHASE' + + ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var \ + --with-openssl=yes \ + --with-idn=yes \ + --disable-linux-caps \ + + make +} + +package() { + cd "${srcdir}/bind-${_pkgver}/bin" + + make DESTDIR="${pkgdir}" install + + install -Dm644 ../COPYRIGHT "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/testing/dnsutils/tools-only.patch b/testing/dnsutils/tools-only.patch new file mode 100644 index 000000000..b46b71f60 --- /dev/null +++ b/testing/dnsutils/tools-only.patch @@ -0,0 +1,25 @@ +diff -Naur bind-9.7.1-P2.orig/bin/Makefile.in bind-9.7.1-P2/bin/Makefile.in +--- bind-9.7.1-P2.orig/bin/Makefile.in 2009-10-05 08:07:08.000000000 -0400 ++++ bind-9.7.1-P2/bin/Makefile.in 2010-07-22 15:55:00.000000000 -0400 +@@ -19,8 +19,7 @@ + VPATH = @srcdir@ + top_srcdir = @top_srcdir@ + +-SUBDIRS = named rndc dig dnssec tests tools nsupdate \ +- check confgen @PKCS11_TOOLS@ ++SUBDIRS = dig nsupdate + TARGETS = + + @BIND9_MAKE_RULES@ +diff -Naur bind-9.7.1-P2.orig/lib/Makefile.in bind-9.7.1-P2/lib/Makefile.in +--- bind-9.7.1-P2.orig/lib/Makefile.in 2007-06-19 19:47:13.000000000 -0400 ++++ bind-9.7.1-P2/lib/Makefile.in 2010-07-22 15:56:29.000000000 -0400 +@@ -23,7 +23,7 @@ + # Attempt to disable parallel processing. + .NOTPARALLEL: + .NO_PARALLEL: +-SUBDIRS = isc isccc dns isccfg bind9 lwres tests ++SUBDIRS = isc dns isccfg bind9 lwres + TARGETS = + + @BIND9_MAKE_RULES@ diff --git a/testing/evolution-data-server/PKGBUILD b/testing/evolution-data-server/PKGBUILD deleted file mode 100644 index d7303a1eb..000000000 --- a/testing/evolution-data-server/PKGBUILD +++ /dev/null @@ -1,29 +0,0 @@ -# $Id: PKGBUILD 129456 2011-06-28 01:27:57Z stephane $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=evolution-data-server -pkgver=3.0.2.1 -pkgrel=2 -pkgdesc="Central location for addressbook and calendar storage in the GNOME Desktop" -arch=('i686' 'x86_64') -depends=('libsoup' 'nss' 'libgnome-keyring' 'krb5' 'libgweather' 'libical' 'db' 'libgdata') -makedepends=('intltool' 'gperf' 'gobject-introspection') -options=('!libtool') -url="http://www.gnome.org" -license=('GPL') -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('1b14c57a835745ee2c0141a76a07d44688dfb2d758bf3b818fe1860b59451f9b') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc \ - --localstatedir=/var --with-openldap=yes \ - --libexecdir=/usr/lib/evolution-data-server \ - --with-krb5=/usr --with-libdb=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install -} diff --git a/testing/evolution-exchange/PKGBUILD b/testing/evolution-exchange/PKGBUILD deleted file mode 100644 index a04bdc13b..000000000 --- a/testing/evolution-exchange/PKGBUILD +++ /dev/null @@ -1,33 +0,0 @@ -# $Id: PKGBUILD 129506 2011-06-28 14:23:10Z stephane $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=evolution-exchange -pkgver=3.0.2 -pkgrel=2 -pkgdesc="Ximian Connector Exchange plugin for Evolution" -arch=('i686' 'x86_64') -license=('GPL') -url="http://www.ximian.com" -depends=('evolution-data-server' 'gtkhtml4' 'gnome-desktop' 'libunique3') -makedepends=('intltool' 'evolution') -options=('!libtool' '!emptydirs') -install=evolution-exchange.install -source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2) -sha256sums=('84f5c638aee1f6ed49de0d0f331d3b29907f7b211bd6c70f37698dedcd3e5f5a') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \ - --libexecdir=/usr/lib/evolution --disable-static \ - --with-libdb=/usr --with-krb5=/usr - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install - - install -m755 -d "${pkgdir}/usr/share/gconf/schemas" - gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain evolution-exchange-3.0 ${pkgdir}/etc/gconf/schemas/*.schemas - rm -f ${pkgdir}/etc/gconf/schemas/*.schemas -} diff --git a/testing/evolution-exchange/evolution-exchange.install b/testing/evolution-exchange/evolution-exchange.install deleted file mode 100644 index 1179887f9..000000000 --- a/testing/evolution-exchange/evolution-exchange.install +++ /dev/null @@ -1,17 +0,0 @@ -pkgname=evolution-exchange - -post_install() { - usr/sbin/gconfpkg --install ${pkgname} -} - -pre_upgrade() { - pre_remove $1 -} - -post_upgrade() { - post_install $1 -} - -pre_remove() { - usr/sbin/gconfpkg --uninstall ${pkgname} -} diff --git a/testing/fltk/PKGBUILD b/testing/fltk/PKGBUILD new file mode 100644 index 000000000..2ce310cdd --- /dev/null +++ b/testing/fltk/PKGBUILD @@ -0,0 +1,46 @@ +# $Id: PKGBUILD 130308 2011-07-04 21:56:54Z eric $ + +pkgbase=fltk +pkgname=('fltk' 'fltk-docs') +pkgver=1.3.0 +pkgrel=1 +arch=('i686' 'x86_64') +license=('custom:LGPL') +url="http://www.fltk.org/" +depends=('sh' 'libjpeg' 'libpng' 'libxft' 'libxinerama' 'alsa-lib' 'hicolor-icon-theme' 'desktop-file-utils' 'xdg-utils') +makedepends=('mesa' 'doxygen') +source=(http://ftp.easysw.com/pub/$pkgbase/$pkgver/$pkgbase-$pkgver-source.tar.gz) +md5sums=('44d5d7ba06afdd36ea17da6b4b703ca3') + +build() { + cd "$srcdir/$pkgbase-$pkgver" + ./configure --prefix=/usr --enable-threads --enable-xft --enable-shared + make + cd documentation + make html +} + +package_fltk() { + pkgdesc="Graphical user interface toolkit for X" + options=('!docs') + install=fltk.install + + cd "$srcdir/$pkgbase-$pkgver" + make DESTDIR="$pkgdir" install install-desktop + chmod 644 "$pkgdir"/usr/lib/*.a + install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} + +package_fltk-docs() { + pkgdesc="Graphical user interface toolkit for X (documentation)" + depends=('') + + cd "$srcdir/$pkgbase-$pkgver/documentation" + install -d "$pkgdir"/usr/share/doc/fltk/ + for _file in html/* ; do + install -m644 $_file "$pkgdir"/usr/share/doc/fltk/ + done + cd ../test + make DESTDIR="$pkgdir" install + install -D -m644 ../COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/testing/fltk/fltk.install b/testing/fltk/fltk.install new file mode 100644 index 000000000..f89ec8213 --- /dev/null +++ b/testing/fltk/fltk.install @@ -0,0 +1,12 @@ +post_install() { + xdg-icon-resource forceupdate --theme hicolor &> /dev/null + update-desktop-database -q +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/testing/gimp-devel/PKGBUILD b/testing/gimp-devel/PKGBUILD new file mode 100644 index 000000000..a7667f16d --- /dev/null +++ b/testing/gimp-devel/PKGBUILD @@ -0,0 +1,58 @@ +# $Id: PKGBUILD 130357 2011-07-05 18:03:52Z eric $ +# Maintainer: Eric Bélanger <eric@archlinux.org> + +pkgname=gimp-devel +pkgver=2.7.2 +pkgrel=2 +pkgdesc="GNU Image Manipulation Program (Development Version)" +arch=('i686' 'x86_64') +url="http://www.gimp.org/" +license=('GPL3' 'LGPL3') +depends=('pygtk' 'lcms' 'libxpm' 'libwmf' 'librsvg' 'libmng' 'dbus-glib' \ + 'jasper' 'libexif' 'gegl' 'desktop-file-utils' 'hicolor-icon-theme') +makedepends=('intltool' 'libwebkit' 'poppler-glib' 'alsa-lib' 'iso-codes' 'curl') +optdepends=('gutenprint: for sophisticated printing only as gimp has built-in cups print support' + 'libwebkit: for the help browser or web-page plug-ins' + 'poppler-glib: for pdf support' + 'alsa-lib: for MIDI event controller module' + 'curl: for URI support') +options=('!libtool' '!makeflags') +conflicts=('gimp') +provides=("gimp=${pkgver}") +install=gimp-devel.install +source=(ftp://ftp.gimp.org/pub/gimp/v${pkgver%.*}/gimp-${pkgver}.tar.bz2 linux.gpl + uri-backend-libcurl.patch) +md5sums=('6996138ab70b0bfebfe9f563284e5f78' + 'bb27bc214261d36484093e857f015f38' + 'b3f8faa246e5794b0d63583059f54698') +sha1sums=('4690420961d110f99448c32fe61aae7d4869a863' + '110ce9798173b19a662d086ed7b882b4729f06cf' + '8a87adc11ee13d5fce79ea4226f04e682a2af97d') + +build() { + cd "${srcdir}/gimp-${pkgver}" + patch -p1 < ../uri-backend-libcurl.patch + PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \ + --enable-mp --enable-gimp-console --enable-gimp-remote \ + --enable-python --with-gif-compression=lzw --with-libcurl \ + --without-aa --without-hal --without-gvfs + make +} + +package() { + cd "${srcdir}/gimp-${pkgver}" + make DESTDIR="${pkgdir}" install + sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' "${pkgdir}"/usr/lib/gimp/2.0/plug-ins/*.py + install -D -m644 "${srcdir}/linux.gpl" "${pkgdir}/usr/share/gimp/2.0/palettes/Linux.gpl" + + ln -sf gimp-console-${pkgver%.*}.1.gz "${pkgdir}/usr/share/man/man1/gimp-console.1.gz" + ln -sf gimp-remote-${pkgver%.*}.1.gz "${pkgdir}/usr/share/man/man1/gimp-remote.1.gz" + ln -sf gimprc-${pkgver%.*}.5.gz "${pkgdir}/usr/share/man/man5/gimprc.5.gz" + ln -sf gimptool-2.0.1.gz "${pkgdir}/usr/share/man/man1/gimptool.1.gz" + ln -s gimp-${pkgver%.*}.1.gz "${pkgdir}/usr/share/man/man1/gimp.1.gz" + + ln -s gimp-${pkgver%.*} "${pkgdir}/usr/bin/gimp" + ln -s gimp-console-${pkgver%.*} "${pkgdir}/usr/bin/gimp-console" + ln -s gimp-remote-${pkgver%.*} "${pkgdir}/usr/bin/gimp-remote" + ln -s gimptool-2.0 "${pkgdir}/usr/bin/gimptool" +} diff --git a/staging/claws-mail/claws-mail.install b/testing/gimp-devel/gimp-devel.install index 648480c3b..c317fbaca 100644 --- a/staging/claws-mail/claws-mail.install +++ b/testing/gimp-devel/gimp-devel.install @@ -1,6 +1,6 @@ post_install() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor } post_upgrade() { @@ -10,4 +10,3 @@ post_upgrade() { post_remove() { post_install } - diff --git a/testing/gimp-devel/linux.gpl b/testing/gimp-devel/linux.gpl new file mode 100644 index 000000000..0a73d8979 --- /dev/null +++ b/testing/gimp-devel/linux.gpl @@ -0,0 +1,19 @@ +GIMP Palette +Name: linux +# + 0 0 0 + 0 0 170 + 0 170 0 + 0 170 170 +170 0 0 +170 0 170 +170 85 0 +170 170 170 + 85 85 85 + 85 85 255 + 85 255 85 + 85 255 255 +255 85 85 +255 85 255 +255 255 85 +255 255 255 diff --git a/testing/gimp-devel/uri-backend-libcurl.patch b/testing/gimp-devel/uri-backend-libcurl.patch new file mode 100644 index 000000000..d3217a292 --- /dev/null +++ b/testing/gimp-devel/uri-backend-libcurl.patch @@ -0,0 +1,44 @@ +diff -aur gimp-2.6.11/plug-ins/file-uri/uri-backend-libcurl.c gimp-2.6.11.patched/plug-ins/file-uri/uri-backend-libcurl.c +--- gimp-2.6.11/plug-ins/file-uri/uri-backend-libcurl.c 2010-07-03 00:51:59.000000000 +0200 ++++ gimp-2.6.11.patched/plug-ins/file-uri/uri-backend-libcurl.c 2011-06-23 19:15:30.000000000 +0200 +@@ -24,7 +23,6 @@ + #include <errno.h> + + #include <curl/curl.h> +-#include <curl/types.h> + #include <curl/easy.h> + + #include <glib/gstdio.h> +@@ -63,7 +61,7 @@ + + vinfo = curl_version_info (CURLVERSION_NOW); + +- protocols = g_string_new ("http:,ftp:"); ++ protocols = g_string_new ("http:,ftp:,gopher:"); + + if (vinfo->features & CURL_VERSION_SSL) + { +@@ -153,7 +151,7 @@ + FILE *out_file; + CURL *curl_handle; + CURLcode result; +- gint response_code; ++ glong response_code; + + gimp_progress_init (_("Connecting to server")); + +@@ -195,12 +193,12 @@ + + curl_easy_getinfo (curl_handle, CURLINFO_RESPONSE_CODE, &response_code); + +- if (response_code != 200) ++ if (response_code != 200 && response_code != 226 && response_code != 0) + { + fclose (out_file); + g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED, + _("Opening '%s' for reading resulted in HTTP " +- "response code: %d"), ++ "response code: %ld"), + uri, response_code); + curl_easy_cleanup (curl_handle); + return FALSE; diff --git a/testing/gimp/PKGBUILD b/testing/gimp/PKGBUILD new file mode 100644 index 000000000..a04de0a07 --- /dev/null +++ b/testing/gimp/PKGBUILD @@ -0,0 +1,51 @@ +# $Id: PKGBUILD 130354 2011-07-05 17:55:54Z eric $ +# Maintainer: tobias <tobias@archlinux.org> + +pkgname=gimp +pkgver=2.6.11 +pkgrel=6 +pkgdesc="GNU Image Manipulation Program" +arch=('i686' 'x86_64') +url="http://www.gimp.org/" +license=('GPL' 'LGPL') +depends=('pygtk' 'lcms' 'libxpm' 'libwmf' 'libxmu' 'librsvg' 'libmng' 'dbus-glib' \ + 'libexif' 'gegl' 'desktop-file-utils' 'hicolor-icon-theme') +makedepends=('intltool' 'libwebkit' 'poppler-glib' 'alsa-lib' 'iso-codes' 'curl') +optdepends=('gutenprint: for sophisticated printing only as gimp has built-in cups print support' + 'libwebkit: for the help browser' + 'poppler-glib: for pdf support' + 'alsa-lib: for MIDI event controller module' + 'curl: for URI support') +options=('!libtool' '!makeflags') +conflicts=('gimp-devel') +install=gimp.install +source=(ftp://ftp.gimp.org/pub/gimp/v${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2 linux.gpl + uri-backend-libcurl.patch) +md5sums=('bb2939fe13e54fc7255cef5d097bb5dd' + 'bb27bc214261d36484093e857f015f38' + 'e894f4b2ffa92c71448fdd350e9b78c6') +sha1sums=('2f9d596e727bdbf304fa78257c1731d9faf3934c' + '110ce9798173b19a662d086ed7b882b4729f06cf' + 'a65b0ee6cd1b4345065b7b98c07f2fed15f844f4') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -p1 < ../uri-backend-libcurl.patch + PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \ + --enable-mp --enable-gimp-console --enable-gimp-remote \ + --enable-python --with-gif-compression=lzw --with-libcurl \ + --without-aa --without-hal --without-gvfs --without-gnomevfs + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + sed -i 's|#!/usr/bin/env python|#!/usr/bin/env python2|' "${pkgdir}"/usr/lib/gimp/2.0/plug-ins/*.py + install -D -m644 "${srcdir}/linux.gpl" "${pkgdir}/usr/share/gimp/2.0/palettes/Linux.gpl" + + rm "${pkgdir}/usr/share/man/man1/gimp-console.1" + ln -s gimp-console-${pkgver%.*}.1.gz "${pkgdir}/usr/share/man/man1/gimp-console.1.gz" + ln -s gimptool-2.0 "${pkgdir}/usr/bin/gimptool" + ln -sf gimptool-2.0.1.gz "${pkgdir}/usr/share/man/man1/gimptool.1.gz" +} diff --git a/testing/claws-mail/claws-mail.install b/testing/gimp/gimp.install index 648480c3b..c317fbaca 100644 --- a/testing/claws-mail/claws-mail.install +++ b/testing/gimp/gimp.install @@ -1,6 +1,6 @@ post_install() { - gtk-update-icon-cache -q -t -f usr/share/icons/hicolor update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor } post_upgrade() { @@ -10,4 +10,3 @@ post_upgrade() { post_remove() { post_install } - diff --git a/testing/gimp/linux.gpl b/testing/gimp/linux.gpl new file mode 100644 index 000000000..0a73d8979 --- /dev/null +++ b/testing/gimp/linux.gpl @@ -0,0 +1,19 @@ +GIMP Palette +Name: linux +# + 0 0 0 + 0 0 170 + 0 170 0 + 0 170 170 +170 0 0 +170 0 170 +170 85 0 +170 170 170 + 85 85 85 + 85 85 255 + 85 255 85 + 85 255 255 +255 85 85 +255 85 255 +255 255 85 +255 255 255 diff --git a/testing/gimp/uri-backend-libcurl.patch b/testing/gimp/uri-backend-libcurl.patch new file mode 100644 index 000000000..85da2fc7f --- /dev/null +++ b/testing/gimp/uri-backend-libcurl.patch @@ -0,0 +1,77 @@ +diff -aur gimp-2.6.11/plug-ins/file-uri/uri-backend-libcurl.c gimp-2.6.11.patched/plug-ins/file-uri/uri-backend-libcurl.c +--- gimp-2.6.11/plug-ins/file-uri/uri-backend-libcurl.c 2010-07-03 00:51:59.000000000 +0200 ++++ gimp-2.6.11.patched/plug-ins/file-uri/uri-backend-libcurl.c 2011-06-23 19:15:30.000000000 +0200 +@@ -4,9 +4,9 @@ + * libcurl backend for the URI plug-in + * Copyright (C) 2006 Mukund Sivaraman <muks@mukund.org> + * +- * This program is free software; you can redistribute it and/or modify ++ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by +- * the Free Software Foundation; either version 2 of the License, or ++ * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, +@@ -15,8 +15,7 @@ + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License +- * along with this program; if not, write to the Free Software +- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++ * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + + #include "config.h" +@@ -24,7 +23,6 @@ + #include <errno.h> + + #include <curl/curl.h> +-#include <curl/types.h> + #include <curl/easy.h> + + #include <glib/gstdio.h> +@@ -63,7 +61,7 @@ + + vinfo = curl_version_info (CURLVERSION_NOW); + +- protocols = g_string_new ("http:,ftp:"); ++ protocols = g_string_new ("http:,ftp:,gopher:"); + + if (vinfo->features & CURL_VERSION_SSL) + { +@@ -153,7 +151,7 @@ + FILE *out_file; + CURL *curl_handle; + CURLcode result; +- gint response_code; ++ glong response_code; + + gimp_progress_init (_("Connecting to server")); + +@@ -195,12 +193,12 @@ + + curl_easy_getinfo (curl_handle, CURLINFO_RESPONSE_CODE, &response_code); + +- if (response_code != 200) ++ if (response_code != 200 && response_code != 226 && response_code != 0) + { + fclose (out_file); + g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED, + _("Opening '%s' for reading resulted in HTTP " +- "response code: %d"), ++ "response code: %ld"), + uri, response_code); + curl_easy_cleanup (curl_handle); + return FALSE; +@@ -224,3 +222,10 @@ + + return FALSE; + } ++ ++gchar * ++uri_backend_map_image (const gchar *uri, ++ GimpRunMode run_mode) ++{ ++ return NULL; ++} diff --git a/testing/gjs/PKGBUILD b/testing/gjs/PKGBUILD new file mode 100644 index 000000000..3ce7f9db8 --- /dev/null +++ b/testing/gjs/PKGBUILD @@ -0,0 +1,29 @@ +# $Id: PKGBUILD 130216 2011-07-04 12:55:31Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> +pkgname=gjs +pkgver=0.7.14 +pkgrel=2 +pkgdesc="Javascript Bindings for GNOME" +arch=('i686' 'x86_64') +url="http://live.gnome.org/Gjs" +license=('GPL') +depends=('cairo' 'dbus-glib' 'gobject-introspection' 'js') +options=('!libtool') +source=(http://download.gnome.org/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2 + gjs-0.7.14-js185-backport.patch) +sha256sums=('3af6f449a505c419d4a0e5938737da8d1b9b09b33710cc1ac1edee2eaa86e348' + 'b1fd3b8aa5978c5b60bfe39ce4298e67b9baa190d9cbf1a0ebe47af356197335') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + sed -i 's|python|python2|' scripts/make-tests + patch -Np1 -i "${srcdir}/gjs-0.7.14-js185-backport.patch" + autoreconf -fi + ./configure --prefix=/usr --disable-static + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install +} diff --git a/testing/gjs/gjs-0.7.14-js185-backport.patch b/testing/gjs/gjs-0.7.14-js185-backport.patch new file mode 100644 index 000000000..b8b2082a3 --- /dev/null +++ b/testing/gjs/gjs-0.7.14-js185-backport.patch @@ -0,0 +1,436 @@ +From cef9c0835bfd8be105ff8905083d6b51d9010b8f Mon Sep 17 00:00:00 2001 +From: Marc-Antoine Perennou <Marc-Antoine@Perennou.com> +Date: Fri, 1 Apr 2011 21:04:57 +0200 +Subject: [PATCH 1/4] Conditionally adapt to JS_DestroyScript removal + +Upstream changed the behaviour of several things about JSScripts in +http://hg.mozilla.org/mozilla-central/rev/c919a7271ac1 + +We now have to use a JSObject instead of a JSScript in certain circumstances, +and we no longer have to call JS_DestroyScript which no longer exists + +https://bugzilla.gnome.org/show_bug.cgi?id=646471 + +Conflicts: + + configure.ac +--- + configure.ac | 1 + + modules/console.c | 6 ++++++ + 2 files changed, 7 insertions(+), 0 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 715f2c3..f81704b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -160,6 +160,7 @@ AC_CHECK_LIB([mozjs], [JS_GetFunctionName], AC_DEFINE([HAVE_JS_GETFUNCTIONNAME], + AC_CHECK_LIB([mozjs], [JS_GetStringChars], AC_DEFINE([HAVE_JS_GETSTRINGCHARS], [1], [Define if we still have JS_GetStringChars]),, [$JS_LIBS]) + AC_CHECK_LIB([mozjs], [JS_StrictPropertyStub], AC_DEFINE([HAVE_JS_STRICTPROPERTYSTUB], [1], [Define if we have JS_StrictPropertyStub]),, [$JS_LIBS]) + AC_CHECK_LIB([mozjs], [JS_GetGlobalForScopeChain], AC_DEFINE([HAVE_JS_GETGLOBALFORSCOPECHAIN], [1], [Define if we have JS_GetGlobalForScopeChain]),, [$JS_LIBS]) ++AC_CHECK_LIB([mozjs], [JS_DestroyScript], AC_DEFINE([HAVE_JS_DESTROYSCRIPT], [1], [Define if we still have JS_DestroyScript]),, [$JS_LIBS]) + + AC_MSG_CHECKING([for mozilla-js >= 2 ]) + if `$PKG_CONFIG --exists $JS_PACKAGE '>=' 2`; then +diff --git a/modules/console.c b/modules/console.c +index 49f891b..e6945be 100644 +--- a/modules/console.c ++++ b/modules/console.c +@@ -161,7 +161,11 @@ gjs_console_interact(JSContext *context, + { + JSObject *object = JS_THIS_OBJECT(context, vp); + gboolean eof = FALSE; ++#ifdef HAVE_JS_DESTROYSCRIPT + JSScript *script = NULL; ++#else ++ JSObject *script = NULL; ++#endif + jsval result; + JSString *str; + GString *buffer = NULL; +@@ -219,8 +223,10 @@ gjs_console_interact(JSContext *context, + } + + next: ++#ifdef HAVE_JS_DESTROYSCRIPT + if (script) + JS_DestroyScript(context, script); ++#endif + g_string_free(buffer, TRUE); + } while (!eof); + +-- +1.7.5.4 + + +From 3c8396821c78e362c8b3a89a27dcf4d32e25ee05 Mon Sep 17 00:00:00 2001 +From: Marc-Antoine Perennou <Marc-Antoine@Perennou.com> +Date: Fri, 29 Apr 2011 01:01:03 +0200 +Subject: [PATCH 2/4] conditonally adapt to JS_BufferIsCompilableUnit changes + +Upstream added an argument to JS_BufferIsCompilableUnit in commit +http://hg.mozilla.org/mozilla-central/rev/a773890b676f +We now have to tell if the bytes are utf8 or not. + +https://bugzilla.gnome.org/show_bug.cgi?id=646471 +--- + configure.ac | 1 + + modules/console.c | 4 ++++ + 2 files changed, 5 insertions(+), 0 deletions(-) + +diff --git a/configure.ac b/configure.ac +index f81704b..270bc46 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -161,6 +161,7 @@ AC_CHECK_LIB([mozjs], [JS_GetStringChars], AC_DEFINE([HAVE_JS_GETSTRINGCHARS], [ + AC_CHECK_LIB([mozjs], [JS_StrictPropertyStub], AC_DEFINE([HAVE_JS_STRICTPROPERTYSTUB], [1], [Define if we have JS_StrictPropertyStub]),, [$JS_LIBS]) + AC_CHECK_LIB([mozjs], [JS_GetGlobalForScopeChain], AC_DEFINE([HAVE_JS_GETGLOBALFORSCOPECHAIN], [1], [Define if we have JS_GetGlobalForScopeChain]),, [$JS_LIBS]) + AC_CHECK_LIB([mozjs], [JS_DestroyScript], AC_DEFINE([HAVE_JS_DESTROYSCRIPT], [1], [Define if we still have JS_DestroyScript]),, [$JS_LIBS]) ++AC_CHECK_LIB([mozjs], [JS_DecodeUTF8], AC_DEFINE([HAVE_JS_DECODEUTF8], [1], [Define if we have JS_DecodeUTF8]),, [$JS_LIBS]) + + AC_MSG_CHECKING([for mozilla-js >= 2 ]) + if `$PKG_CONFIG --exists $JS_PACKAGE '>=' 2`; then +diff --git a/modules/console.c b/modules/console.c +index e6945be..8e20db3 100644 +--- a/modules/console.c ++++ b/modules/console.c +@@ -196,7 +196,11 @@ gjs_console_interact(JSContext *context, + g_string_append(buffer, temp_buf); + g_free(temp_buf); + lineno++; ++#ifdef HAVE_JS_DECODEUTF8 ++ } while (!JS_BufferIsCompilableUnit(context, JS_TRUE, object, buffer->str, buffer->len)); ++#else + } while (!JS_BufferIsCompilableUnit(context, object, buffer->str, buffer->len)); ++#endif + + script = JS_CompileScript(context, object, buffer->str, buffer->len, "typein", + startline); +-- +1.7.5.4 + + +From 00dd38de7ac8e82ac35c40909707fa91665c3102 Mon Sep 17 00:00:00 2001 +From: Colin Walters <walters@verbum.org> +Date: Thu, 5 May 2011 12:49:09 -0400 +Subject: [PATCH 3/4] JS_CLASS_TRACE is a preprocessor macro, can't use + AC_CHECK_LIB + +Conflicts: + + configure.ac +--- + configure.ac | 24 ++++++++++++++++++++++++ + 1 files changed, 24 insertions(+), 0 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 270bc46..d259471 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -230,6 +230,30 @@ if test "$have_jslocale_to_unicode_const" = yes; then + AC_DEFINE([JS_LOCALETOUNICODE_NEEDS_CONST_CHAR], [1], [Define if JSLocaleToUnicode takes a const char* for its src]) + fi + ++save_CFLAGS="$CFLAGS" ++CFLAGS="$CFLAGS $JS_CFLAGS" ++AC_MSG_CHECKING([for JS_CLASS_TRACE macro]) ++AC_COMPILE_IFELSE( ++ [AC_LANG_PROGRAM( ++ [[ ++ #include <jsapi.h> ++ #ifndef JS_CLASS_TRACE ++ #error "No JS_CLASS_TRACE" ++ #endif ++ ]], ++ [[(void) 0;]] ++ )], ++ [have_js_class_trace=yes], ++ [have_js_class_trace=no]) ++ ++if test "x$have_js_class_trace" = xyes; then ++ AC_MSG_RESULT([yes]) ++ AC_DEFINE([HAVE_JS_CLASS_TRACE], [1], [Define if we still have JS_CLASS_TRACE]) ++else ++ AC_MSG_RESULT([no]) ++fi ++CFLAGS="$save_CFLAGS" ++ + common_packages="gobject-2.0 >= gobject_required_version $JS_PACKAGE" + gjs_packages="gmodule-2.0 gthread-2.0 $common_packages" + gjs_gi_packages="gobject-introspection-1.0 >= 0.10.1 $common_packages" +-- +1.7.5.4 + + +From 5553cdd691ffddae3e3ffa5cc75e6575a237d0b7 Mon Sep 17 00:00:00 2001 +From: Colin Walters <walters@verbum.org> +Date: Wed, 4 May 2011 14:14:18 -0400 +Subject: [PATCH 4/4] Support compilation with standalone mozjs185 release + +Adjust the detection logic so that we look for mozjs-185.pc first. If +we have this, we can skip all kinds of insanity. + +See https://bugzilla.mozilla.org/show_bug.cgi?id=628723 +for the discussion about creating this release. + +https://bugzilla.gnome.org/show_bug.cgi?id=646369 + +Conflicts: + + configure.ac +--- + configure.ac | 218 ++++++++++++++++++++++++++++++++-------------------------- + 1 files changed, 121 insertions(+), 97 deletions(-) + +diff --git a/configure.ac b/configure.ac +index d259471..cb54ffc 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -91,124 +91,148 @@ m4_define(gobject_required_version, 2.18.0) + AC_CHECK_HEADERS([malloc.h]) + AC_CHECK_FUNCS(mallinfo) + +-# Look for Spidermonkey. If js-config exists, use that; +-# otherwise we try some pkgconfig files from various distributions. ++# First, try separate mozjs185 release ++AC_MSG_CHECKING([for standalone mozjs]) ++PKG_CHECK_EXISTS([mozjs185], JS_PACKAGE=mozjs185,) ++if test x$JS_PACKAGE != x; then ++ FIREFOX_JS_LIBDIR=`$PKG_CONFIG --variable=libdir $JS_PACKAGE` ++ MOZJS_IS_STANDALONE=yes ++ MOZJS_LIB=mozjs185 ++ AC_MSG_RESULT([yes]) ++ PKG_CHECK_MODULES(JS, $JS_PACKAGE) ++else ++ AC_MSG_RESULT([no]) ++ MOZJS_LIB=mozjs ++fi ++ ++# If we didn't find mozjs185 (the standalone spidermonkey); look for ++# one from Firefox/XULRunner. If js-config exists, use that; otherwise ++# we try some pkgconfig files from various distributions. + + AC_ARG_VAR([JS_CONFIG], [The js-config program to use]) +-if test "$ac_cv_env_JS_CONFIG_set" != "set"; then ++if test x$JS_PACKAGE = x && test "$ac_cv_env_JS_CONFIG_set" != "set"; then + AC_PATH_PROG([JS_CONFIG], [js-config], []) + fi + +-if test -n "$JS_CONFIG"; then +- JS_CFLAGS="$($JS_CONFIG --cflags)" +- JS_LIBS="$($JS_CONFIG --libs)" +- FIREFOX_JS_LIBDIR="$($JS_CONFIG --libdir)" +- JS_PACKAGE= +- +- # js-config gives almost usable CFLAGS, we must define one of XP_BEOS, +- # XP_OS2, XP_WIN or XP_UNIX +- JS_CFLAGS="$JS_CFLAGS -DXP_UNIX" +-else +- ## spidermonkey .pc file name varies across distributions and Gecko version +- ## +- ## mozilla-js: Gecko 1.9, all distributions +- ## xulrunner-js: Gecko 1.8 (and earlier?) Debian/Ubuntu +- ## firefox-js: ??? +- ## +- ## Checking for mozilla-js first will hopefully get us the newest version +- ## of spidermonkey. +- PKG_CHECK_EXISTS([mozilla-js], [JS_PACKAGE=mozilla-js], +- [PKG_CHECK_EXISTS([xulrunner-js], [JS_PACKAGE=xulrunner-js], [JS_PACKAGE=firefox-js])]) +- +- PKG_CHECK_MODULES(JS, $JS_PACKAGE) +- +- ## some flavors of Firefox .pc only set sdkdir, not libdir +- FIREFOX_JS_SDKDIR=`$PKG_CONFIG --variable=sdkdir $JS_PACKAGE` +- FIREFOX_JS_LIBDIR=`$PKG_CONFIG --variable=libdir $JS_PACKAGE` ++if test x$JS_PACKAGE = x; then ++ if test -n "$JS_CONFIG"; then ++ JS_CFLAGS="$($JS_CONFIG --cflags)" ++ JS_LIBS="$($JS_CONFIG --libs)" ++ FIREFOX_JS_LIBDIR="$($JS_CONFIG --libdir)" ++ JS_PACKAGE= ++ ++ # js-config gives almost usable CFLAGS, we must define one of XP_BEOS, ++ # XP_OS2, XP_WIN or XP_UNIX ++ JS_CFLAGS="$JS_CFLAGS -DXP_UNIX" ++ else ++ ## spidermonkey .pc file name varies across distributions and Gecko version ++ ## ++ ## mozilla-js: Gecko 1.9, all distributions ++ ## xulrunner-js: Gecko 1.8 (and earlier?) Debian/Ubuntu ++ ## firefox-js: ??? ++ ## ++ ## Checking for mozilla-js first will hopefully get us the newest version ++ ## of spidermonkey. ++ if test x$JS_PACKAGE = x; then ++ PKG_CHECK_EXISTS([mozilla-js], [JS_PACKAGE=mozilla-js],) ++ ++ fi ++ if test x$JS_PACKAGE = x; then ++ PKG_CHECK_EXISTS([xulrunner-js], [JS_PACKAGE=xulrunner-js]) ++ fi ++ if test x$JS_PACKAGE = x; then ++ PKG_CHECK_EXISTS([firefox-js], [JS_PACKAGE=firefox-js]) ++ fi ++ if test x$JS_PACKAGE = x; then ++ AC_MSG_ERROR([Unable to find spidermonkey package]) ++ fi ++ ++ PKG_CHECK_MODULES(JS, $JS_PACKAGE) ++ ++ ## some flavors of Firefox .pc only set sdkdir, not libdir ++ FIREFOX_JS_SDKDIR=`$PKG_CONFIG --variable=sdkdir $JS_PACKAGE` ++ FIREFOX_JS_LIBDIR=`$PKG_CONFIG --variable=libdir $JS_PACKAGE` ++ ++ ## Ubuntu does not set libdir in mozilla-js.pc ++ if test x"$FIREFOX_JS_LIBDIR" = x ; then ++ ## Ubuntu returns xulrunner-devel as the sdkdir, but for the ++ ## libdir we want the runtime location on the target system, ++ ## so can't use -devel. ++ ## The library is in the non-devel directory also. ++ ## Don't ask me why it's in two places. ++ FIREFOX_JS_LIBDIR=`echo "$FIREFOX_JS_SDKDIR" | sed -e 's/-devel//g'` ++ ++ if ! test -d "$FIREFOX_JS_LIBDIR" ; then ++ FIREFOX_JS_LIBDIR= ++ fi ++ fi ++ fi + +- ## Ubuntu does not set libdir in mozilla-js.pc + if test x"$FIREFOX_JS_LIBDIR" = x ; then +- ## Ubuntu returns xulrunner-devel as the sdkdir, but for the +- ## libdir we want the runtime location on the target system, +- ## so can't use -devel. +- ## The library is in the non-devel directory also. +- ## Don't ask me why it's in two places. +- FIREFOX_JS_LIBDIR=`echo "$FIREFOX_JS_SDKDIR" | sed -e 's/-devel//g'` +- +- if ! test -d "$FIREFOX_JS_LIBDIR" ; then +- FIREFOX_JS_LIBDIR= +- fi ++ AC_MSG_ERROR([Could not figure out where Firefox JavaScript library lives]) + fi +-fi + +-if test x"$FIREFOX_JS_LIBDIR" = x ; then +- AC_MSG_ERROR([Could not figure out where Firefox JavaScript library lives]) ++ ## workaround for Ubuntu Hardy bug where mozilla-js.pc gives CFLAGS ++ ## -I.../stable while jsapi.h is in .../unstable ++ AC_MSG_CHECKING([if SpiderMonkey needs extra compiler flags]) ++ save_CFLAGS="$CFLAGS" ++ CFLAGS="$CFLAGS $JS_CFLAGS" ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <jsapi.h>]])], ++ [js_extra_cflags_needed=no], ++ [js_extra_cflags_needed=yes]) ++ CFLAGS="$save_CFLAGS" ++ AC_MSG_RESULT([$js_extra_cflags_needed]) ++ ++ JS_EXTRA_CFLAGS= ++ if test "$js_extra_cflags_needed" = yes; then ++ try_cflags="-I`$PKG_CONFIG --variable=includedir $JS_PACKAGE`/unstable" ++ AC_MSG_CHECKING([if $try_cflags works]) ++ save_CFLAGS="$CFLAGS" ++ CFLAGS="$CFLAGS $JS_CFLAGS $try_cflags" ++ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <jsapi.h>]])], ++ [AC_MSG_RESULT([yes]) ++ JS_EXTRA_CFLAGS="$try_cflags"], ++ [AC_MSG_RESULT([no])]) ++ CFLAGS="$save_CFLAGS" ++ ++ if test x"$JS_EXTRA_CFLAGS" = x; then ++ AC_MSG_ERROR([Unable to determine extra compiler flags needed]) ++ fi ++ fi ++ AC_SUBST([JS_EXTRA_CFLAGS]) ++ ++ AC_MSG_CHECKING([for mozilla-js >= 1.9.2 ]) ++ if `$PKG_CONFIG --exists $JS_PACKAGE '>=' 1.9.2`; then ++ AC_MSG_RESULT([yes]) ++ else ++ AC_MSG_ERROR([$JS_PACKAGE >= 1.9.2 is required]) ++ fi + fi + + AC_SUBST(JS_PACKAGE) + AC_SUBST(FIREFOX_JS_LIBDIR) + +-AC_MSG_CHECKING([for mozilla-js >= 1.9.2 ]) +-if `$PKG_CONFIG --exists $JS_PACKAGE '>=' 1.9.2`; then +- AC_MSG_RESULT([yes]) +-else +- AC_MSG_ERROR([$JS_PACKAGE >= 1.9.2 is required]) +-fi +- +-AC_CHECK_LIB([mozjs], [JS_GetStringBytes], AC_DEFINE([HAVE_JS_GETSTRINGBYTES], [1], [Define if we still have JS_GetStringBytes]),, [$JS_LIBS]) +-AC_CHECK_LIB([mozjs], [JS_GetFunctionName], AC_DEFINE([HAVE_JS_GETFUNCTIONNAME], [1], [Define if we still have JS_GetFunctionName]),, [$JS_LIBS]) +-AC_CHECK_LIB([mozjs], [JS_GetStringChars], AC_DEFINE([HAVE_JS_GETSTRINGCHARS], [1], [Define if we still have JS_GetStringChars]),, [$JS_LIBS]) +-AC_CHECK_LIB([mozjs], [JS_StrictPropertyStub], AC_DEFINE([HAVE_JS_STRICTPROPERTYSTUB], [1], [Define if we have JS_StrictPropertyStub]),, [$JS_LIBS]) +-AC_CHECK_LIB([mozjs], [JS_GetGlobalForScopeChain], AC_DEFINE([HAVE_JS_GETGLOBALFORSCOPECHAIN], [1], [Define if we have JS_GetGlobalForScopeChain]),, [$JS_LIBS]) +-AC_CHECK_LIB([mozjs], [JS_DestroyScript], AC_DEFINE([HAVE_JS_DESTROYSCRIPT], [1], [Define if we still have JS_DestroyScript]),, [$JS_LIBS]) +-AC_CHECK_LIB([mozjs], [JS_DecodeUTF8], AC_DEFINE([HAVE_JS_DECODEUTF8], [1], [Define if we have JS_DecodeUTF8]),, [$JS_LIBS]) +- +-AC_MSG_CHECKING([for mozilla-js >= 2 ]) +-if `$PKG_CONFIG --exists $JS_PACKAGE '>=' 2`; then +- AC_MSG_RESULT([yes]) +- AC_DEFINE(HAVE_MOZJS_2, [1], [Define if mozilla-js is at least 2]) +- AC_CHECK_LIB([mozjs], [JS_FreezeObject], AC_DEFINE([HAVE_JS_FREEZEOBJECT], [1], [Define if we have JS_FreezeObject]), ++AC_CHECK_LIB([$MOZJS_LIB], [JS_GetStringBytes], AC_DEFINE([HAVE_JS_GETSTRINGBYTES], [1], [Define if we still have JS_GetStringBytes]),, [$JS_LIBS]) ++AC_CHECK_LIB([$MOZJS_LIB], [JS_GetFunctionName], AC_DEFINE([HAVE_JS_GETFUNCTIONNAME], [1], [Define if we still have JS_GetFunctionName]),, [$JS_LIBS]) ++AC_CHECK_LIB([$MOZJS_LIB], [JS_GetStringChars], AC_DEFINE([HAVE_JS_GETSTRINGCHARS], [1], [Define if we still have JS_GetStringChars]),, [$JS_LIBS]) ++AC_CHECK_LIB([$MOZJS_LIB], [JS_StrictPropertyStub], AC_DEFINE([HAVE_JS_STRICTPROPERTYSTUB], [1], [Define if we have JS_StrictPropertyStub]),, [$JS_LIBS]) ++AC_CHECK_LIB([$MOZJS_LIB], [JS_GetGlobalForScopeChain], AC_DEFINE([HAVE_JS_GETGLOBALFORSCOPECHAIN], [1], [Define if we have JS_GetGlobalForScopeChain]),, [$JS_LIBS]) ++AC_CHECK_LIB([$MOZJS_LIB], [JS_CLASS_TRACE], AC_DEFINE([HAVE_JS_CLASS_TRACE], [1], [Define if we still have JS_CLASS_TRACE]),, [$JS_LIBS]) ++AC_CHECK_LIB([$MOZJS_LIB], [JS_DestroyScript], AC_DEFINE([HAVE_JS_DESTROYSCRIPT], [1], [Define if we still have JS_DestroyScript]),, [$JS_LIBS]) ++AC_CHECK_LIB([$MOZJS_LIB], [JS_DecodeUTF8], AC_DEFINE([HAVE_JS_DECODEUTF8], [1], [Define if we have JS_DecodeUTF8]),, [$JS_LIBS]) ++AC_CHECK_LIB([$MOZJS_LIB], [JS_FreezeObject], AC_DEFINE([HAVE_JS_FREEZEOBJECT], [1], [Define if we have JS_FreezeObject]), + , [$JS_LIBS]) +- AC_CHECK_LIB([mozjs], [JS_IsScriptFrame], AC_DEFINE([HAVE_JS_ISSCRIPTFRAME], [1], [Define if we have JS_IsScriptFrame]), ++AC_CHECK_LIB([$MOZJS_LIB], [JS_IsScriptFrame], AC_DEFINE([HAVE_JS_ISSCRIPTFRAME], [1], [Define if we have JS_IsScriptFrame]), + , [$JS_LIBS]) +- AC_CHECK_LIB([mozjs], [JS_EndPC], AC_DEFINE([HAVE_JS_ENDPC], [1], [Define if we have JS_EndPC]), ++AC_CHECK_LIB([$MOZJS_LIB], [JS_EndPC], AC_DEFINE([HAVE_JS_ENDPC], [1], [Define if we have JS_EndPC]), + , [$JS_LIBS]) +- AC_CHECK_LIB([mozjs], [JS_NewCompartmentAndGlobalObject], ++AC_CHECK_LIB([$MOZJS_LIB], [JS_NewCompartmentAndGlobalObject], + AC_DEFINE([HAVE_JS_NEWCOMPARTMENTANDGLOBALOBJECT], [1], [Define if we have JS_NewCompartmentAndGlobalObject]), + , [$JS_LIBS]) + +-else +- AC_MSG_RESULT([no]) +-fi +- +-## workaround for Ubuntu Hardy bug where mozilla-js.pc gives CFLAGS +-## -I.../stable while jsapi.h is in .../unstable +-AC_MSG_CHECKING([if SpiderMonkey needs extra compiler flags]) +-save_CFLAGS="$CFLAGS" +-CFLAGS="$CFLAGS $JS_CFLAGS" +-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <jsapi.h>]])], +- [js_extra_cflags_needed=no], +- [js_extra_cflags_needed=yes]) +-CFLAGS="$save_CFLAGS" +-AC_MSG_RESULT([$js_extra_cflags_needed]) +- +-JS_EXTRA_CFLAGS= +-if test "$js_extra_cflags_needed" = yes; then +- try_cflags="-I`$PKG_CONFIG --variable=includedir $JS_PACKAGE`/unstable" +- AC_MSG_CHECKING([if $try_cflags works]) +- save_CFLAGS="$CFLAGS" +- CFLAGS="$CFLAGS $JS_CFLAGS $try_cflags" +- AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <jsapi.h>]])], +- [AC_MSG_RESULT([yes]) +- JS_EXTRA_CFLAGS="$try_cflags"], +- [AC_MSG_RESULT([no])]) +- CFLAGS="$save_CFLAGS" +- +- if test x"$JS_EXTRA_CFLAGS" = x; then +- AC_MSG_ERROR([Unable to determine extra compiler flags needed]) +- fi ++if test x$MOZJS_IS_STANDALONE = xyes || `$PKG_CONFIG --exists $JS_PACKAGE '>=' 2`; then ++ AC_DEFINE(HAVE_MOZJS_2, [1], [Define if mozilla-js is at least 2]) + fi +-AC_SUBST([JS_EXTRA_CFLAGS]) + + AC_MSG_CHECKING([whether JSLocaleToUnicode takes a const char*]) + save_CFLAGS="$CFLAGS" +-- +1.7.5.4 + diff --git a/testing/gnome-shell/PKGBUILD b/testing/gnome-shell/PKGBUILD new file mode 100644 index 000000000..b10afff70 --- /dev/null +++ b/testing/gnome-shell/PKGBUILD @@ -0,0 +1,50 @@ +# $Id: PKGBUILD 130217 2011-07-04 12:56:15Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> +# Contributor: Flamelab <panosfilip@gmail.com + +pkgname=gnome-shell +pkgver=3.0.2 +pkgrel=2 +pkgdesc="The next generation GNOME Shell" +arch=('i686' 'x86_64') +url="http://live.gnome.org/GnomeShell" +license=('GPL2') +depends=('mutter' 'gconf' 'dconf' 'gjs' 'gnome-menus' 'gnome-desktop' 'libcroco' 'libcanberra' 'libpulse' 'telepathy-glib' 'polkit-gnome' + 'gobject-introspection' 'evolution-data-server' 'gnome-bluetooth' 'gstreamer0.10' 'telepathy-logger') +makedepends=('intltool' 'gnome-doc-utils') +optdepends=('network-manager-applet: shell integration for networkmanager' + 'gnome-power-manager: shell integration for power management') +options=('!libtool' '!emptydirs') +install=gnome-shell.install +groups=(gnome) +source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2 + arch.patch + bluetoothstatus-always-update-devices.patch + shell-recorder-missing-XFree.patch) +sha256sums=('a44963877da895d9b9f1ea98617067c5e88a5c4b414c6ccf0fcbfacdeac7db95' + 'a35d5e5f9f781728070aecae3bfe329f49dadcd50ca2984e0fbdd2219825a0db' + 'f592752875085fceebdb27e65802e09c07edd7be57eec0da3edfcad5052be2ae' + '070edd5e720c063be41c158f39b7ef62a0d4a7f547ca0d23216104d5428ff971') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + patch -Np1 -i "${srcdir}/arch.patch" + patch -Np1 -i "${srcdir}/bluetoothstatus-always-update-devices.patch" + patch -Np1 -i "${srcdir}/shell-recorder-missing-XFree.patch" + + ./configure --prefix=/usr --sysconfdir=/etc \ + --libexecdir=/usr/lib/gnome-shell \ + --localstatedir=/var --disable-static \ + --disable-schemas-compile + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install + + install -m755 -d "${pkgdir}/usr/share/gconf/schemas" + gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-shell ${pkgdir}/etc/gconf/schemas/*.schemas + rm -f ${pkgdir}/etc/gconf/schemas/*.schemas +} diff --git a/testing/gnome-shell/arch.patch b/testing/gnome-shell/arch.patch new file mode 100644 index 000000000..67baefdcb --- /dev/null +++ b/testing/gnome-shell/arch.patch @@ -0,0 +1,12 @@ +diff -Nur gnome-shell.orig/data/org.gnome.shell.gschema.xml.in gnome-shell/data/org.gnome.shell.gschema.xml.in +--- gnome-shell.orig/data/org.gnome.shell.gschema.xml.in 2011-04-06 08:47:58.638600793 -0700 ++++ gnome-shell/data/org.gnome.shell.gschema.xml.in 2011-04-06 08:49:17.035274675 -0700 +@@ -30,7 +30,7 @@ + </_description> + </key> + <key name="favorite-apps" type="as"> +- <default>[ 'mozilla-firefox.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'openoffice.org-writer.desktop', 'nautilus.desktop' ]</default> ++ <default>[ 'firefox.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'writer.desktop', 'nautilus.desktop' ]</default> + <_summary>List of desktop file IDs for favorite applications</_summary> + <_description> + The applications corresponding to these identifiers diff --git a/testing/gnome-shell/bluetoothstatus-always-update-devices.patch b/testing/gnome-shell/bluetoothstatus-always-update-devices.patch new file mode 100644 index 000000000..0272169f5 --- /dev/null +++ b/testing/gnome-shell/bluetoothstatus-always-update-devices.patch @@ -0,0 +1,132 @@ +From 76fce94b66be7bdebbedcc3bce62898da51da15a Mon Sep 17 00:00:00 2001 +From: Giovanni Campagna <gcampagna@src.gnome.org> +Date: Wed, 13 Apr 2011 17:08:45 +0000 +Subject: BluetoothStatus: always update devices + +Previously, we skipped rebuilding device items in case the device +had already been seen, but this caused the connected switch not to +be updated. Now it has been refactored to update in case the device +changes, and to create only when the device is completely new. + +https://bugzilla.gnome.org/show_bug.cgi?id=647565 +--- +diff --git a/js/ui/status/bluetooth.js b/js/ui/status/bluetooth.js +index 070016a..cee2f90 100644 +--- a/js/ui/status/bluetooth.js ++++ b/js/ui/status/bluetooth.js +@@ -127,13 +127,6 @@ Indicator.prototype = { + } + }, + +- _deviceCompare: function(d1, d2) { +- return d1.device_path == d2.device_path && +- d1.bdaddr == d2.bdaddr && +- d1.can_connect == d2.can_connect && +- d1.capabilities == d2.capabilities; +- }, +- + _updateDevices: function() { + let devices = this._applet.get_devices(); + +@@ -142,12 +135,8 @@ Indicator.prototype = { + let item = this._deviceItems[i]; + let destroy = true; + for (let j = 0; j < devices.length; j++) { +- // we need to deep compare because BluetoothSimpleDevice is a boxed type +- // (but we take advantage of that, because _skip will disappear the next +- // time get_devices() is called) +- if (this._deviceCompare(item._device, devices[j])) { +- item.label.text = devices[j].alias; +- devices[j]._skip = true; ++ if (item._device.device_path == devices[j].device_path) { ++ this._updateDeviceItem(item, devices[j]); + destroy = false; + break; + } +@@ -162,7 +151,7 @@ Indicator.prototype = { + this._hasDevices = newlist.length > 0; + for (let i = 0; i < devices.length; i++) { + let d = devices[i]; +- if (d._skip) ++ if (d._item) + continue; + let item = this._createDeviceItem(d); + if (item) { +@@ -177,17 +166,55 @@ Indicator.prototype = { + this._deviceSep.actor.hide(); + }, + ++ _updateDeviceItem: function(item, device) { ++ if (!device.can_connect && device.capabilities == GnomeBluetoothApplet.Capabilities.NONE) { ++ item.destroy(); ++ return; ++ } ++ ++ let prevDevice = item._device; ++ let prevCapabilities = prevDevice.capabilities; ++ let prevCanConnect = prevDevice.can_connect; ++ ++ // adopt the new device object ++ item._device = device; ++ device._item = item; ++ ++ // update properties ++ item.label.text = device.alias; ++ ++ if (prevCapabilities != device.capabilities || ++ prevCanConnect != device.can_connect) { ++ // need to rebuild the submenu ++ item.menu.removeAll(); ++ this._buildDeviceSubMenu(item, device); ++ } ++ ++ // update connected property ++ if (device.can_connect) ++ item._connectedMenuitem.setToggleState(device.connected); ++ }, ++ + _createDeviceItem: function(device) { + if (!device.can_connect && device.capabilities == GnomeBluetoothApplet.Capabilities.NONE) + return null; + let item = new PopupMenu.PopupSubMenuMenuItem(device.alias); ++ ++ // adopt the device object, and add a back link + item._device = device; ++ device._item = item; + ++ this._buildDeviceSubMenu(item, device); ++ ++ return item; ++ }, ++ ++ _buildDeviceSubMenu: function(item, device) { + if (device.can_connect) { + item._connected = device.connected; +- let menuitem = new PopupMenu.PopupSwitchMenuItem(_("Connection"), device.connected); ++ item._connectedMenuitem = new PopupMenu.PopupSwitchMenuItem(_("Connection"), device.connected); + +- menuitem.connect('toggled', Lang.bind(this, function() { ++ item._connectedMenuitem.connect('toggled', Lang.bind(this, function() { + if (item._connected > ConnectionState.CONNECTED) { + // operation already in progress, revert + menuitem.setToggleState(menuitem.state); +@@ -217,7 +244,7 @@ Indicator.prototype = { + } + })); + +- item.menu.addMenuItem(menuitem); ++ item.menu.addMenuItem(item._connectedMenuitem); + } + + if (device.capabilities & GnomeBluetoothApplet.Capabilities.OBEX_PUSH) { +@@ -263,8 +290,6 @@ Indicator.prototype = { + default: + break; + } +- +- return item; + }, + + _updateFullMenu: function() { +-- +cgit v0.9 diff --git a/staging/evolution-exchange/evolution-exchange.install b/testing/gnome-shell/gnome-shell.install index 1179887f9..a07105c24 100644 --- a/staging/evolution-exchange/evolution-exchange.install +++ b/testing/gnome-shell/gnome-shell.install @@ -1,6 +1,7 @@ -pkgname=evolution-exchange +pkgname=gnome-shell post_install() { + glib-compile-schemas usr/share/glib-2.0/schemas usr/sbin/gconfpkg --install ${pkgname} } @@ -15,3 +16,7 @@ post_upgrade() { pre_remove() { usr/sbin/gconfpkg --uninstall ${pkgname} } + +post_remove() { + glib-compile-schemas usr/share/glib-2.0/schemas +} diff --git a/testing/gnome-shell/shell-recorder-missing-XFree.patch b/testing/gnome-shell/shell-recorder-missing-XFree.patch new file mode 100644 index 000000000..a7329166f --- /dev/null +++ b/testing/gnome-shell/shell-recorder-missing-XFree.patch @@ -0,0 +1,22 @@ +From 88df18345069c295e68d319606a11b7727b2bd4b Mon Sep 17 00:00:00 2001 +From: Maxim Ermilov <zaspire@rambler.ru> +Date: Tue, 24 May 2011 22:46:47 +0000 +Subject: shell-recorder: missing XFree + +https://bugzilla.gnome.org/show_bug.cgi?id=650934 +--- +diff --git a/src/shell-recorder.c b/src/shell-recorder.c +index 6555187..d297923 100644 +--- a/src/shell-recorder.c ++++ b/src/shell-recorder.c +@@ -412,6 +412,8 @@ recorder_fetch_cursor_image (ShellRecorder *recorder) + *(guint32 *)(data + i * stride + 4 * j) = cursor_image->pixels[i * cursor_image->width + j]; + + cairo_surface_mark_dirty (recorder->cursor_image); ++ ++ XFree (cursor_image); + } + + /* Overlay the cursor image on the frame. We draw the cursor image +-- +cgit v0.9 diff --git a/testing/iproute2/PKGBUILD b/testing/iproute2/PKGBUILD deleted file mode 100644 index 57089f2c0..000000000 --- a/testing/iproute2/PKGBUILD +++ /dev/null @@ -1,50 +0,0 @@ -# $Id: PKGBUILD 127646 2011-06-17 12:59:11Z stephane $ -# Maintainer: Ronald van Haren <ronald.archlinux.org> -# Contributor: Judd Vinet <jvinet@zeroflux.org> - -pkgname=iproute2 -pkgver=2.6.38 -pkgrel=4 -pkgdesc="IP Routing Utilities" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://www.linux-foundation.org/en/Net:Iproute2" -depends=('perl') -makedepends=('linux-atm') -optdepends=('linux-atm: ATM support') -provides=('iproute') -conflicts=('iproute') -replaces=('iproute') -options=('!makeflags') -backup=('etc/iproute2/ematch_map' 'etc/iproute2/rt_dsfield' 'etc/iproute2/rt_protos' \ - 'etc/iproute2/rt_realms' 'etc/iproute2/rt_scopes' 'etc/iproute2/rt_tables') -source=(http://devresources.linux-foundation.org/dev/iproute2/download/iproute2-${pkgver}.tar.bz2 - 'iproute2-fhs.patch') -sha1sums=('e9f6d457a06866a2a20a6cba6b3a039b2ec3e14a' - '2416b11252364d7a6c742eabb4a6924a75637a46') - -build() { - cd $srcdir/iproute2-${pkgver} - - # set correct fhs structure - patch -Np1 -i ${srcdir}/iproute2-fhs.patch - - ./configure - - make -} - -package() { - cd $srcdir/iproute2-${pkgver} - - make DESTDIR=$pkgdir install - - # allow loopback to be started before /usr is mounted, this may not be supported in the future - mkdir -p ${pkgdir}/sbin - mv ${pkgdir}/usr/sbin/ip ${pkgdir}/sbin/ip - ln -s /sbin/ip ${pkgdir}/usr/sbin/ip - - # libnetlink isn't installed, install it FS#19385 - install -Dm644 include/libnetlink.h ${pkgdir}/usr/include/libnetlink.h - install -Dm644 lib/libnetlink.a ${pkgdir}/usr/lib/libnetlink.a -} diff --git a/testing/iproute2/iproute2-fhs.patch b/testing/iproute2/iproute2-fhs.patch deleted file mode 100644 index 2608414db..000000000 --- a/testing/iproute2/iproute2-fhs.patch +++ /dev/null @@ -1,84 +0,0 @@ -diff -Naur iproute2.old/Makefile iproute2-2.6.29/Makefile ---- iproute2.old/Makefile 2009-11-11 22:05:21.251407668 +0100 -+++ iproute2-2.6.29/Makefile 2009-11-11 22:07:09.891833516 +0100 -@@ -1,11 +1,12 @@ - DESTDIR=/usr/ - ROOTDIR=$(DESTDIR) - LIBDIR=/usr/lib/ --SBINDIR=/sbin -+SBINDIR=/usr/sbin - CONFDIR=/etc/iproute2 --DOCDIR=/share/doc/iproute2 --MANDIR=/share/man -+DOCDIR=/usr/share/doc/iproute2 -+MANDIR=/usr/share/man - ARPDDIR=/var/lib/arpd -+SHAREDIR=/usr/share - - # Path to db_185.h include - DBM_INCLUDE:=$(ROOTDIR)/usr/include -diff -Naur iproute2.old/tc/tc_util.c iproute2-2.6.29/tc/tc_util.c ---- iproute2.old/tc/tc_util.c 2009-11-11 22:05:21.298076943 +0100 -+++ iproute2-2.6.29/tc/tc_util.c 2009-11-11 22:09:32.865152646 +0100 -@@ -24,8 +24,8 @@ - #include "utils.h" - #include "tc_util.h" - --#ifndef LIBDIR --#define LIBDIR "/usr/lib/" -+#ifndef SHAREDIR -+#define SHAREDIR "/usr/share" - #endif - - const char *get_tc_lib(void) -@@ -34,7 +34,7 @@ - - lib_dir = getenv("TC_LIB_DIR"); - if (!lib_dir) -- lib_dir = LIBDIR "/tc/"; -+ lib_dir = SHAREDIR "/tc/"; - - return lib_dir; - } -diff -Naur iproute2.old/netem/Makefile iproute2-2.6.35/netem/Makefile ---- iproute2.old/netem/Makefile 2010-08-06 11:30:48.640940183 +0200 -+++ iproute2-2.6.35/netem/Makefile 2010-08-06 11:32:34.210908892 +0200 -@@ -20,9 +20,9 @@ - $(HOSTCC) $(CCOPTS) -I../include -o $@ $@.c -lm - - install: all -- mkdir -p $(DESTDIR)$(LIBDIR)/tc -+ mkdir -p $(DESTDIR)$(SHAREDIR)/tc - for i in $(DISTDATA); \ -- do install -m 644 $$i $(DESTDIR)$(LIBDIR)/tc; \ -+ do install -m 644 $$i $(DESTDIR)$(SHAREDIR)/tc; \ - done - - clean: -diff -Naur iproute2.old/tc/Makefile iproute2-2.6.35/tc/Makefile ---- iproute2.old/tc/Makefile 2010-08-06 11:48:35.607472252 +0200 -+++ iproute2-2.6.35/tc/Makefile 2010-08-06 11:49:36.977473380 +0200 -@@ -99,18 +99,11 @@ - $(AR) rcs $@ $(TCLIB) - - install: all -- mkdir -p $(MODDESTDIR) -- install -m 0755 tc $(DESTDIR)$(SBINDIR) -- for i in $(TCSO); \ -- do install -m 755 $$i $(MODDESTDIR); \ -- done -- if [ ! -f $(MODDESTDIR)/m_ipt.so ]; then \ -- if [ -f $(MODDESTDIR)/m_xt.so ]; \ -- then ln -s m_xt.so $(MODDESTDIR)/m_ipt.so ; \ -- elif [ -f $(MODDESTDIR)/m_xt_old.so ]; \ -- then ln -s m_xt_old.so $(MODDESTDIR)/m_ipt.so ; \ -- fi; \ -- fi -+ mkdir -p $(DESTDIR)$(LIBDIR)/tc -+ install -m 0755 tc $(DESTDIR)$(SBINDIR) -+ for i in $(TCSO); \ -+ do install -m 755 $$i $(DESTDIR)$(LIBDIR)/tc; \ -+ done - - clean: - rm -f $(TCOBJ) $(TCLIB) libtc.a tc *.so emp_ematch.yacc.h; \ diff --git a/testing/js/PKGBUILD b/testing/js/PKGBUILD new file mode 100644 index 000000000..97b384792 --- /dev/null +++ b/testing/js/PKGBUILD @@ -0,0 +1,37 @@ +# $Id: PKGBUILD 130213 2011-07-04 12:50:49Z ibiru $ +# Maintainer: Ionut Biru <ibiru@archlinux.org> +pkgname=js +pkgver=1.8.5 +pkgrel=1 +pkgdesc="JavaScript interpreter and libraries" +arch=(i686 x86_64) +url="https://developer.mozilla.org/En/SpiderMonkey/1.8.5" +license=('GPL2') +depends=('nspr' 'gcc-libs') +makedepends=('python2' 'zip') +replaces=('spidermonkey') +conflicts=('spidermonkey') +source=(http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz + js185-destdir.patch) +md5sums=('a4574365938222adca0a6bd33329cb32' + '364834a8391888642c53d78c3a949d94') +build() { + cd "$srcdir/$pkgname-$pkgver/js/src" + patch -Np0 -i $srcdir/js185-destdir.patch + ./configure --prefix=/usr --with-system-nspr \ + --enable-threadsafe + + make +} + +package() { + cd "$srcdir/$pkgname-$pkgver/js/src" + make DESTDIR="$pkgdir" install + + install -m 0755 shell/js ${pkgdir}/usr/bin + + #cleanup + rm -f "${pkgdir}/usr/lib/libmozjs185-1.0.a" +} + +# vim:set ts=2 sw=2 et: diff --git a/testing/js/js185-destdir.patch b/testing/js/js185-destdir.patch new file mode 100644 index 000000000..87b7b53b3 --- /dev/null +++ b/testing/js/js185-destdir.patch @@ -0,0 +1,15 @@ +#https://bugzilla.mozilla.org/show_bug.cgi?id=628723 + +--- Makefile.in.old 2011-04-10 04:21:19.918608008 -0700 ++++ Makefile.in 2011-04-10 04:21:58.088607992 -0700 +@@ -888,8 +888,8 @@ + ifeq (,$(HOST_BIN_SUFFIX)) + mv -f $(SHLIB_ANY_VER) $(SHLIB_EXACT_VER) + @[ ! -h $(SHLIB_ABI_VER) ] || rm -f $(SHLIB_ABI_VER) +- ln -s $(SHLIB_EXACT_VER) $(SHLIB_ABI_VER) +- ln -s $(SHLIB_ABI_VER) $(SHLIB_ANY_VER) ++ ln -s $(notdir $(SHLIB_EXACT_VER)) $(SHLIB_ABI_VER) ++ ln -s $(notdir $(SHLIB_ABI_VER)) $(SHLIB_ANY_VER) + endif + endif + ifneq (,$(IMPORT_LIBRARY)) diff --git a/testing/krb5/PKGBUILD b/testing/krb5/PKGBUILD deleted file mode 100644 index 6dc3dcc01..000000000 --- a/testing/krb5/PKGBUILD +++ /dev/null @@ -1,61 +0,0 @@ -# $Id: PKGBUILD 129991 2011-06-30 18:09:30Z stephane $ -# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> - -pkgname=krb5 -pkgver=1.9.1 -pkgrel=2 -pkgdesc="The Kerberos network authentication system" -arch=('i686' 'x86_64') -url="http://web.mit.edu/kerberos/" -license=('custom') -depends=('e2fsprogs' 'libldap' 'keyutils') -makedepends=('perl') -provides=('heimdal') -replaces=('heimdal') -conflicts=('heimdal') -backup=('etc/krb5.conf' 'var/lib/krb5kdc/kdc.conf') -source=(http://web.mit.edu/kerberos/dist/${pkgname}/1.9/${pkgname}-${pkgver}-signed.tar - krb5-kadmind - krb5-kdc) -sha1sums=('e23a1795a237521493da9cf3443ac8b98a90c066' - '2aa229369079ed1bbb201a1ef72c47bf143f4dbe' - '77d2312ecd8bf12a6e72cc8fd871a8ac93b23393') -options=('!emptydirs') - -build() { - tar zxvf ${pkgname}-${pkgver}.tar.gz - cd "${srcdir}/${pkgname}-${pkgver}/src" - - export CFLAGS+=" -fPIC -fno-strict-aliasing -fstack-protector-all" - export CPPFLAGS+=" -I/usr/include/et" - ./configure --prefix=/usr \ - --mandir=/usr/share/man \ - --localstatedir=/var/lib \ - --enable-shared \ - --with-system-et \ - --with-system-ss \ - --disable-rpath \ - --without-tcl \ - --enable-dns-for-realm \ - --with-ldap - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}/src" - make DESTDIR="${pkgdir}" EXAMPLEDIR="/usr/share/doc/${pkgname}/examples" install - - # Sample KDC config file - install -dm 755 "${pkgdir}"/var/lib/krb5kdc - install -pm 644 config-files/kdc.conf "${pkgdir}"/var/lib/krb5kdc/kdc.conf - - # Default configuration file - install -dm 755 "${pkgdir}"/etc - install -pm 644 config-files/krb5.conf "${pkgdir}"/etc/krb5.conf - - install -dm 755 "${pkgdir}"/etc/rc.d - install -m 755 ../../krb5-kdc "${pkgdir}"/etc/rc.d - install -m 755 ../../krb5-kadmind "${pkgdir}"/etc/rc.d - - install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/NOTICE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE -} diff --git a/testing/libetpan/PKGBUILD b/testing/libetpan/PKGBUILD deleted file mode 100644 index 107264bc4..000000000 --- a/testing/libetpan/PKGBUILD +++ /dev/null @@ -1,26 +0,0 @@ -# $Id: PKGBUILD 127576 2011-06-16 17:03:09Z andyrtr $ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> - -pkgname=libetpan -pkgver=1.0 -pkgrel=3 -pkgdesc="A portable middleware for email access" -arch=('i686' 'x86_64') -url="http://www.etpan.org/" -license=("custom:etpan") -depends=('db>=5.2.28' 'libsasl>=2.1.23' 'curl>=7.21.' 'expat>=2.0.1-1') -options=('!libtool') -source=(http://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz) -md5sums=('5addc766141a0b1d29ee1ca4ba1b6808') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr --disable-static - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make DESTDIR=${pkgdir} install - install -Dm644 COPYRIGHT ${pkgdir}/usr/share/licenses/$pkgname/license.txt -} diff --git a/testing/libreoffice/0001-fix-configure-without-the-optional-translations-modu.patch b/testing/libreoffice/0001-fix-configure-without-the-optional-translations-modu.patch deleted file mode 100644 index 31ad95d36..000000000 --- a/testing/libreoffice/0001-fix-configure-without-the-optional-translations-modu.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 900baff9ff400a6eba034089ed69362c2c2d61e4 Mon Sep 17 00:00:00 2001 -From: Petr Mladek <pmladek@suse.cz> -Date: Wed, 22 Jun 2011 12:05:19 +0200 -Subject: [PATCH] fix configure without the optional translations module - ---- - set_soenv.in | 8 +++++--- - 1 files changed, 5 insertions(+), 3 deletions(-) - -diff --git a/set_soenv.in b/set_soenv.in -index f015bab..8e39314 100755 ---- a/set_soenv.in -+++ b/set_soenv.in -@@ -1068,9 +1068,11 @@ $XCLASSPATH = '$JAVA_HOME'.$ds.'jre'.$LIB.$ds."rt.jar".$wps.'.'; - $L10N_MODULE = PathFormat($SRC_ROOT."/translations"); - - # Check for poor help localizations, i.e. no help translation at all... --opendir(DIR,$L10N_MODULE . "/source"); --@languages = readdir(DIR); --closedir(DIR); -+@languages=(); -+if (opendir(DIR,$L10N_MODULE . "/source")) -+{ @languages = readdir(DIR); -+ closedir(DIR); -+} - $WITH_POOR_HELP_LOCALIZATIONS = ""; - - foreach $language (@languages) --- -1.7.3.4 - diff --git a/testing/libreoffice/PKGBUILD b/testing/libreoffice/PKGBUILD deleted file mode 100644 index 74b940110..000000000 --- a/testing/libreoffice/PKGBUILD +++ /dev/null @@ -1,711 +0,0 @@ -# $Id: PKGBUILD 130106 2011-07-02 19:39:19Z andyrtr $ -# Maintainer: AndyRTR <andyrtr@archlinux.org> - -pkgbase="libreoffice" -pkgname=('libreoffice' 'libreoffice-sdk' - #'libreoffice-extension-barcode' # - 'libreoffice-extension-diagram' - 'libreoffice-extension-google-docs' - 'libreoffice-extension-hunart' - #'libreoffice-extension-lightproof' # no source integration - #'libreoffice-extension-mysql-connector' # missing libmysqlcppconn-dev configure: error: mysql_driver.h not found. install MySQL C++ Connectivity - 'libreoffice-extension-nlpsolver' - 'libreoffice-extension-ct2n' - 'libreoffice-extension-numbertext' - 'libreoffice-extension-oooblogger' - 'libreoffice-extension-pdfimport' - 'libreoffice-extension-presenter-screen' - 'libreoffice-extension-presentation-minimizer' - 'libreoffice-extension-report-builder' - 'libreoffice-extension-scripting-beanshell' - 'libreoffice-extension-scripting-javascript' - 'libreoffice-extension-scripting-python' - 'libreoffice-extension-typo' - 'libreoffice-extension-validator' - 'libreoffice-extension-watch-window' - 'libreoffice-extension-wiki-publisher') -_LOver=3.4.1.3 -pkgver=3.4.1 -pkgrel=2 -arch=('i686' 'x86_64') -#_LO_tree="3.4" -_OFFICEUPD="340" -license=('LGPL3') -url="http://www.libreoffice.org/" -makedepends=( # makedepends - 'sane' 'perl-archive-zip' 'zip' 'unzip' 'xulrunner' 'unixodbc' 'hsqldb-java' #'boost' - we use internal one for now that has some gcc4.6 fixes. - 'apache-ant' 'gperf' 'poppler' 'kdelibs' 'gconf' 'cppunit' #'libmysqlclient' - 'beanshell' 'vigra' 'libldap' 'lucene' 'libmythes' 'junit' 'libwpg' 'imagemagick' - 'mesa' 'gstreamer0.10-base' 'java-runtime' - #'saxon' - currently broken - # the depends from libreoffice main pkg - "curl>=7.20.0" "hunspell>=1.2.8" "python2>=2.7" 'libwpd>=0.9.2' 'libwps' 'libxaw' "neon>=0.28.6" - 'pango' 'nspr' 'libjpeg' 'libxrandr' 'libgl' 'dbus-glib' "icu>=4.6" 'libxslt' - 'redland' 'libgraphite' 'hyphen' 'lpsolve' 'gcc-libs' 'sh' 'libtextcat' - 'hicolor-icon-theme' 'desktop-file-utils' 'shared-mime-info' 'gtk2' # keep gtk2 for install script - 'ttf-dejavu') # to satisfy regression tests - # translate-toolkit - todo move them to extra to allow --with-system-foo builds -# http://download.documentfoundation.org/mirrors/all.html -# http://wiki.documentfoundation.org/Mirrors -_mirror="http://download.documentfoundation.org/libreoffice/src" -#_mirror="http://dev-builds.libreoffice.org/pre-releases/src/" -_additional_source_url="http://hg.services.openoffice.org/binaries" -source=(${_mirror}/${pkgbase}-{artwork,base,bootstrap,calc,components,extensions,extras,filters,help,impress,libs-core,libs-extern,libs-extern-sys,libs-gui,postprocess,sdk,testing,ure,writer}-${_LOver}.tar.bz2 #,translations - ${_additional_source_url}/1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz - ${_additional_source_url}/35c94d2df8893241173de1d16b6034c0-swingExSrc.zip - ${_additional_source_url}/798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip - ${_additional_source_url}/fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz - ${_additional_source_url}/ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip - ${_additional_source_url}/2a177023f9ea8ec8bd00837605c5df1b-jakarta-tomcat-5.0.30-src.tar.gz - ${_additional_source_url}/a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip - ${_additional_source_url}/3c219630e4302863a9a83d0efde889db-commons-logging-1.1.1-src.tar.gz - ${_additional_source_url}/2ae988b339daec234019a7066f96733e-commons-lang-2.3-src.tar.gz - ${_additional_source_url}/2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz - ${_additional_source_url}/af3c3acf618de6108d65fcdc92b492e1-commons-codec-1.3-src.tar.gz - ${_additional_source_url}/eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip - ${_additional_source_url}/39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip - ${_additional_source_url}/3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip - ${_additional_source_url}/97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip - ${_additional_source_url}/f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip - ${_additional_source_url}/8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip - ${_additional_source_url}/d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip - ${_additional_source_url}/3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip - ${_additional_source_url}/ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip - ${_additional_source_url}/db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip - ${_additional_source_url}/ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip - ${_additional_source_url}/18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz - http://download.go-oo.org/src/7a0dcb3fe1e8c7229ab4fb868b7325e6-mdds_0.5.2.tar.bz2 - http://download.go-oo.org/extern/185d60944ea767075d27247c3162b3bc-unowinreg.dll - http://download.go-oo.org/extern/b4cae0700aa1c2aef7eb7f345365e6f1-translate-toolkit-1.8.1.tar.bz2 - http://download.go-oo.org/src/451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt - http://download.go-oo.org/src/90401bca927835b6fbae4a707ed187c8-nlpsolver-0.9.tar.bz2 - http://download.go-oo.org/src/f02578f5218f217a9f20e9c30e119c6a-boost_1_44_0.tar.bz2 - http://ooo.itc.hu/oxygenoffice/download/libreoffice/7e7efc5d4a03126bb9ae3ae9aa2c4e87-Barcode_1.3.1.0.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/41c9b65ad60af4b3255bbecdfef11736-Diagram_1.1.0.0.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/bbdd5639ada63e3130761daaecae1a10-Validator_1.1.0.0.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/23bd75552206dfcd8fd4e29137dcac84-WatchWindow_1.2.0.0.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/b8cbca7b3363e6ca2d02bc0ba2b63904-numbertext_0.9.4.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/b632bdd25649cc4067bcb410bae23d2b-hunart_0.3.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/9d60b6cfa3ef1926848710bbcd11115b-typo_0.4.2.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/dbaafd21de055e582d92d7d32fe9da13-gdocs_2.3.1.oxt - http://ooo.itc.hu/oxygenoffice/download/libreoffice/b7b2d0e04e142f26dd96119c80757d1f-oooblogger_0.1.oxt - buildfix_boost.diff - buildfix_ct2n.diff - vbahelper.visibility.patch - 0001-fix-configure-without-the-optional-translations-modu.patch) -noextract=(185d60944ea767075d27247c3162b3bc-unowinreg.dll - b4cae0700aa1c2aef7eb7f345365e6f1-translate-toolkit-1.8.1.tar.bz2 - 7a0dcb3fe1e8c7229ab4fb868b7325e6-mdds_0.5.2.tar.bz2 - ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip - 798b2ffdc8bcfe7bca2cf92b62caf685-rhino1_5R5.zip - 1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz - fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz - 35c94d2df8893241173de1d16b6034c0-swingExSrc.zip - 2a177023f9ea8ec8bd00837605c5df1b-jakarta-tomcat-5.0.30-src.tar.gz - a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip - 3c219630e4302863a9a83d0efde889db-commons-logging-1.1.1-src.tar.gz - 2ae988b339daec234019a7066f96733e-commons-lang-2.3-src.tar.gz - 2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz - af3c3acf618de6108d65fcdc92b492e1-commons-codec-1.3-src.tar.gz - eeb2c7ddf0d302fba4bfc6e97eac9624-libbase-1.1.6.zip - 39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip - 3404ab6b1792ae5f16bbd603bd1e1d03-libformula-1.1.7.zip - 97b2d4dba862397f446b217e2b623e71-libloader-1.1.6.zip - f94d9870737518e3b597f9265f4e9803-libserializer-1.1.6.zip - 8ce2fcd72becf06c41f7201d15373ed9-librepository-1.1.6.zip - d8bd5eed178db6e2b18eeed243f85aa8-flute-1.1.6.zip - 3bdf40c0d199af31923e900d082ca2dd-libfonts-1.1.6.zip - ace6ab49184e329db254e454a010f56d-libxml-1.1.7.zip - db60e4fde8dd6d6807523deb71ee34dc-liblayout-0.2.10.zip - ba2930200c9f019c2d93a8c88c651a0f-flow-engine-0.9.4.zip - 18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz - 7e7efc5d4a03126bb9ae3ae9aa2c4e87-Barcode_1.3.1.0.oxt - 41c9b65ad60af4b3255bbecdfef11736-Diagram_1.1.0.0.oxt - 451ccf439a36a568653b024534669971-ConvertTextToNumber-1.3.2.oxt - bbdd5639ada63e3130761daaecae1a10-Validator_1.1.0.0.oxt - 23bd75552206dfcd8fd4e29137dcac84-WatchWindow_1.2.0.0.oxt - b8cbca7b3363e6ca2d02bc0ba2b63904-numbertext_0.9.4.oxt - b632bdd25649cc4067bcb410bae23d2b-hunart_0.3.oxt - 9d60b6cfa3ef1926848710bbcd11115b-typo_0.4.2.oxt - dbaafd21de055e582d92d7d32fe9da13-gdocs_2.3.1.oxt - b7b2d0e04e142f26dd96119c80757d1f-oooblogger_0.1.oxt - 90401bca927835b6fbae4a707ed187c8-nlpsolver-0.9.tar.bz2 - f02578f5218f217a9f20e9c30e119c6a-boost_1_44_0.tar.bz2) -md5sums=('10b3212002688e7ce49a276c68352b50' - 'c6547ec8f971284ea1e58bb39375c500' - '26328364a0804dedab94818c15e76871' - 'd26c6ab53c9404e82e04ea366d4db261' - '132aa87f2f3e7fff62d7211a86b769f3' - '801c254c28402df0c5fb5e2615817a6d' - 'b94208fdae537f0b026ee26cede9a946' - '096e3071949d1eedf73faa13a2cf7b7e' - 'e27e715b08cc6a35988aaa6efab6cc7f' - 'e94d7adb79f38d3fd8119b712b04cc6e' - '1d2e7ca24b9fffafeaf236817fc8cbe9' - '69a9af6536607340a57b54b5562077f7' - '3b4e819497ba695f5c64a0107c2aac8d' - '5a7370a79e563f649f6bf506bc71928c' - 'c480ed571703e68d851fbbcd4aa520be' - '222cec135152c108068baa4e370a3f68' - '93524298efb472503b12ae47c95de399' - '5420c40473f8bf8e5b400dd8a1e54f02' - '1516196f023bb1ae55fd1773a8db9d16' - '1f24ab1d39f4a51faf22244c94a6203f' - '35c94d2df8893241173de1d16b6034c0' - '798b2ffdc8bcfe7bca2cf92b62caf685' - 'fdb27bfe2dbe2e7b57ae194d9bf36bab' - 'ada24d37d8d638b3d8a9985e80bc2978' - '2a177023f9ea8ec8bd00837605c5df1b' - 'a7983f859eafb2677d7ff386a023bc40' - '3c219630e4302863a9a83d0efde889db' - '2ae988b339daec234019a7066f96733e' - '2c9b0f83ed5890af02c0df1c1776f39b' - 'af3c3acf618de6108d65fcdc92b492e1' - 'eeb2c7ddf0d302fba4bfc6e97eac9624' - '39bb3fcea1514f1369fcfc87542390fd' - '3404ab6b1792ae5f16bbd603bd1e1d03' - '97b2d4dba862397f446b217e2b623e71' - 'f94d9870737518e3b597f9265f4e9803' - '8ce2fcd72becf06c41f7201d15373ed9' - 'd8bd5eed178db6e2b18eeed243f85aa8' - '3bdf40c0d199af31923e900d082ca2dd' - 'ace6ab49184e329db254e454a010f56d' - 'db60e4fde8dd6d6807523deb71ee34dc' - 'ba2930200c9f019c2d93a8c88c651a0f' - '18f577b374d60b3c760a3a3350407632' - '7a0dcb3fe1e8c7229ab4fb868b7325e6' - '185d60944ea767075d27247c3162b3bc' - 'b4cae0700aa1c2aef7eb7f345365e6f1' - '451ccf439a36a568653b024534669971' - '90401bca927835b6fbae4a707ed187c8' - 'f02578f5218f217a9f20e9c30e119c6a' - '7e7efc5d4a03126bb9ae3ae9aa2c4e87' - '41c9b65ad60af4b3255bbecdfef11736' - '451ccf439a36a568653b024534669971' - 'bbdd5639ada63e3130761daaecae1a10' - '23bd75552206dfcd8fd4e29137dcac84' - 'b8cbca7b3363e6ca2d02bc0ba2b63904' - 'b632bdd25649cc4067bcb410bae23d2b' - '9d60b6cfa3ef1926848710bbcd11115b' - 'dbaafd21de055e582d92d7d32fe9da13' - 'b7b2d0e04e142f26dd96119c80757d1f' - 'bc228237108cab7745897a9f466b6d39' - 'eee273f501ff45dc5f1365e78c6d57c0' - '43b145db28e6c0d73578ae6fd35e510d' - 'f8a8fdcc58f50560fbc266e28efdbbfe') - -build() { - - unset J2REDIR; unset J2SDKDIR; unset JAVA_HOME; unset CLASSPATH; unset EXTRAOPTS - [ -z "${JAVA_HOME}" ] && . /etc/profile.d/openjdk6.sh - [ -z "${MOZ_PLUGIN_PATH}" ] && . /etc/profile.d/mozilla-common.sh - [ -z "${ANT_HOME}" ] && . /etc/profile.d/apache-ant.sh - - # move all LibO sources into one build directory - mkdir ${srcdir}/build && cd ${srcdir}/build - for i in libreoffice-{artwork,base,bootstrap,calc,components,extensions,extras,filters,help,impress,libs-core,libs-extern,libs-extern-sys,libs-gui,postprocess,sdk,testing,ure,writer}-${_LOver}; do #,translations - mv ${srcdir}/$i/* . - done - - # move external sources into place - mkdir ${srcdir}/ext_sources && cd ${srcdir}/ext_sources - for source in "${noextract[@]}"; do - ln -s ${srcdir}/$source . - done - - cd ${srcdir}/build - - # buildfixes & bugfixes - patch -Np1 -i ${srcdir}/buildfix_boost.diff - patch -Np1 -i ${srcdir}/buildfix_ct2n.diff - patch -Np0 -i ${srcdir}/vbahelper.visibility.patch - patch -Np1 -i ${srcdir}/0001-fix-configure-without-the-optional-translations-modu.patch - - # unset C(XX)FLAGS - # http://www.openoffice.org/issues/show_bug.cgi?id=103205 -# unset CFLAGS -# unset CXXFLAGS - - #use the CFLAGS but remove the LibO overridden ones - for i in $CFLAGS; do - case "$i" in - -O?|-pipe|-Wall|-g|-fexceptions) continue;; - esac - ARCH_FLAGS="$ARCH_FLAGS $i" - done - - # python2 fix - export PYTHON=python2 - - # http://wiki.documentfoundation.org/Development/How_to_build/Configure_options - -# if [ "$CARCH" = "x86_64" ]; then -# EXTRAOPTS="--without-stlport" -# else -# EXTRAOPTS="--with-stlport" # --without-system-boost" -# # # avoid problems with ixion for now -# sed -i '/fields-table-formula.diff/d' patches/dev300/apply || return 1 -# fi - -# autoconf -v -f - - # non-SMP test build -# export MAKEFLAGS="-j1" - ./configure --with-build-version="${_LOver} ArchLinux build-${pkgrel}" --with-vendor="ArchLinux" \ - --with-unix-wrapper="libreoffice" \ - --with-max-jobs=${MAKEFLAGS/-j/} --with-num-cpus=${MAKEFLAGS/-j/} \ - --with-external-tar="${srcdir}/ext_sources" \ - --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc \ - --with-install-dirname="${pkgbase}" --libdir=/usr/lib --mandir=/usr/share/man \ - --with-lang="" \ - --disable-verbose \ - --enable-cairo\ - --enable-crashdump \ - --enable-dbus \ - --enable-evolution2\ - --disable-graphite\ - --enable-gio\ - --disable-gnome-vfs\ - --disable-kde\ - --enable-kde4\ - --enable-ldap \ - --enable-lockdown\ - --enable-opengl \ - --enable-odk\ - --enable-opengl\ - --enable-ext-barcode \ - --enable-ext-diagram \ - --enable-ext-google-docs \ - --enable-ext-hunart \ - --disable-ext-lightproof \ - --disable-ext-mysql-connector \ - --with-system-mysql \ - --enable-ext-nlpsolver \ - --enable-ext-ct2n \ - --enable-ext-numbertext \ - --enable-ext-oooblogger \ - --enable-ext-pdfimport \ - --enable-ext-presenter-console \ - --enable-ext-presenter-minimizer \ - --enable-ext-report-builder \ - --enable-ext-scripting-beanshell \ - --enable-ext-scripting-javascript \ - --enable-ext-scripting-python \ - --enable-ext-typo \ - --enable-ext-validator \ - --enable-ext-watch-window \ - --enable-ext-wiki-publisher \ - --without-fonts\ - --without-afms\ - --without-ppds\ - --without-system-libwps\ - --without-system-mdds\ - --without-myspell-dicts \ - --with-system-dicts \ - --with-external-dict-dir=/usr/share/hunspell \ - --with-external-hyph-dir=/usr/share/hyphen \ - --with-external-thes-dir=/usr/share/mythes \ - --with-system-cppunit\ - --with-system-libwpg \ - --with-system-libwps \ - --with-system-redland\ - --without-system-saxon\ - --with-system-libtextcat \ - --with-external-libtextcat-data \ - --with-openldap\ - --with-ant-home="/usr/share/java/apache-ant"\ - --without-system-boost\ - --with-system-cairo\ - --with-system-libs\ - --with-system-mozilla\ - --with-system-mythes\ - --with-system-xrender-headers\ - --with-system-headers\ - --with-alloc=system\ - --with-system-lucene\ - --with-lucene-core-jar=/usr/share/java/lucene-core.jar\ - --with-lucene-analyzers-jar=/usr/share/java/lucene-analyzers.jar\ - $EXTRAOPTS || return 1 - -#--with-system-graphite --enable-graohite ? -#--with-servlet-api-jar=JARFILE -# see http://qa.openoffice.org/issues/show_bug.cgi?id=110136 -# --with-system-saxon\ -# --with-saxon-jar=/usr/share/java/saxon/saxon9he.jar\ - - touch src.downloaded - #./download - unset MAKEFLAGS - ./bootstrap - make -} - -#check() { -# cd ${srcdir}/build -# make check -#} - -package_libreoffice() { - - pkgdesc="a productivity suite that is compatible with other major office suites" - install=${pkgbase}.install - depends=("curl>=7.20.0" "hunspell>=1.2.8" "python2>=2.7" 'libwpd>=0.9.2' 'libwps' 'libxaw' "neon>=0.28.6" - 'pango' 'nspr' 'libjpeg' 'libxrandr' 'libgl' 'dbus-glib' "icu>=4.6" 'libxslt' - 'redland' 'libgraphite' 'hyphen' 'lpsolve' 'gcc-libs' 'sh' 'libtextcat' - 'hicolor-icon-theme' 'desktop-file-utils' 'shared-mime-info' 'gtk2') # keep gtk2 for install script - #'java-runtime' - #'saxon' - optdepends=('java-runtime: adds java support' - 'libcups: adds printing support' - 'gconf: adds additional gnome support' - 'nss: adds support for signed files/macros' - 'pstoedit: translates PostScript and PDF graphics into other vector formats' - 'poppler: for shipped pdfimport extension' - 'kdelibs: for kde integration' - 'libmythes: for use in thesaurus' - 'hsqldb-java: default database format for OpenOffice.org' - 'beanshell: interactive java -- good for prototyping /macros' - 'vigra: C++ computer vision library, usable in Basebmp' - 'libmspack: library for Microsoft compression formats for use in FontOOo' - 'libwpg: library for importing and converting Corel WordPerfect(tm) Graphics images' - 'libldap: to get profiles via ldap' - 'lucene: full-text search engine library for Java needed in the help section' - 'sane: for scanner access' - 'unixodbc: adds ODBC database support' - 'mesa: for the OGLTrans extension' - 'gstreamer0.10-base: + some gstr-plugins to support multimedia content, e.g. in impress') - backup=(etc/libreoffice/sofficerc - etc/libreoffice/bootstraprc - etc/libreoffice/psprint.conf) - provides=('go-openoffice') - conflicts=('go-openoffice') - replaces=('go-openoffice' 'openoffice-base' ) - - cd ${srcdir}/build - make DESTDIR=${pkgdir} install - - # fix missing desktop integration - install -dm755 ${pkgdir}/usr/bin - pushd ${pkgdir}/usr/bin - ln -vs /usr/lib/libreoffice/program/soffice ./libreoffice - ln -vs /usr/lib/libreoffice/program/soffice ./soffice - ln -vs /usr/lib/libreoffice/program/sbase ./lobase - ln -vs /usr/lib/libreoffice/program/scalc ./localc - ln -vs /usr/lib/libreoffice/program/sdraw ./lodraw - ln -vs /usr/lib/libreoffice/program/simpress ./loimpress - ln -vs /usr/lib/libreoffice/program/smath ./lomath - ln -vs /usr/lib/libreoffice/program/swriter ./lowriter - ln -vs /usr/lib/libreoffice/program/unopkg ./unopkg - popd - - # move sysui desktop files into place we want to use - javafilter and qstarter, but not unneeded printeradmin - install -dm755 ${pkgdir}/usr/share/{applications,icons,mime/packages,pixmaps} - rm ${pkgdir}/usr/lib/libreoffice/share/xdg/printeradmin.desktop - for i in base calc draw impress javafilter math qstart startcenter writer; do - cp ${pkgdir}/usr/lib/libreoffice/share/xdg/$i.desktop ${pkgdir}/usr/share/applications/libreoffice-$i.desktop - done - # remove version in menu entry and make it visible - sed -i -e "s/3.4//g" ${pkgdir}/usr/share/applications/*.desktop - sed -i -e "s/Icon=libreoffice34-/Icon=/g" ${pkgdir}/usr/share/applications/*.desktop - sed -i -e "/NoDisplay=true/d" ${pkgdir}/usr/share/applications/libreoffice-qstart.desktop - echo "Icon=startcenter" >> ${pkgdir}/usr/share/applications/libreoffice-qstart.desktop - # remove unneeded .desktop files - rm -rf ${pkgdir}/usr/lib/libreoffice/share/xdg - - # add missing icon files - cp -R ${srcdir}/build/sysui/desktop/icons/{hi,lo}color ${pkgdir}/usr/share/icons/ - pushd ${pkgdir}/usr/share/pixmaps - for i in base calc draw impress main math printeradmin startcenter writer; do - ln -vs /usr/share/icons/hicolor/48x48/apps/$i.png . - done - popd - sed -i -e 's/Icon=libreoffice-/Icon=/' ${pkgdir}/usr/share/applications/*.desktop - - # add missing mimetype file - install -m644 ${srcdir}/build/sysui/unxlng*/misc/libreoffice/openoffice.org.xml ${pkgdir}/usr/share/mime/packages/libreoffice.xml - - # put configuration files into place - install -dm755 ${pkgdir}/etc/libreoffice - install -m644 ${pkgdir}/usr/lib/libreoffice/program/{bootstraprc,sofficerc} ${pkgdir}/etc/libreoffice/ - install -m644 ${pkgdir}/usr/lib/libreoffice/basis3.4/share/psprint/psprint.conf ${pkgdir}/etc/libreoffice/ - # install dummy links to make them found by LibO - cd ${pkgdir}/usr/lib/libreoffice/program/ - ln -vsf /etc/libreoffice/{bootstraprc,sofficerc} . - cd ${pkgdir}/usr/lib/libreoffice/basis3.4/share/psprint/ - ln -vsf /etc/libreoffice/psprint.conf . - - #fix http://bugs.archlinux.org/task/17656 - find ${pkgdir} -perm 444 -exec ls -lh {} \; - find ${pkgdir} -perm 444 -exec chmod 644 {} \; - find ${pkgdir} -perm 555 -exec ls -lh {} \; - find ${pkgdir} -perm 555 -exec chmod 755 {} \; - - # split out extensions - mv ${pkgdir}/usr/lib/libreoffice/share/extensions ${srcdir}/extensions-install - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - install -m644 ${srcdir}/extensions-install/package.txt ${pkgdir}/usr/lib/libreoffice/share/extensions/ - - # move SDK to separated package - mkdir -p ${srcdir}/sdk-install/usr/lib/libreoffice/basis3.4/sdk - mv ${pkgdir}/usr/lib/libreoffice/basis3.4/sdk ${srcdir}/sdk-install/usr/lib/libreoffice/basis3.4/ - - # cleanup gid_Module files - mkdir ${srcdir}/splitlist - mv -f ${pkgdir}/gid_Module* ${srcdir}/splitlist/ -} - -package_libreoffice-sdk() { - - pkgdesc="Software development kit for LibreOffice" - depends=('libreoffice' 'gcc-libs' 'sh' 'make' 'zip' 'gcc' 'java-environment') - - cd ${srcdir}/sdk-install - cp -r * ${pkgdir} - - cd ${pkgdir}/usr/lib/libreoffice/basis3.4/sdk - cp setsdkenv_unix setsdkenv_unix.sh && chmod 755 setsdkenv_unix{,.sh} - - # fix ArchLinux LIbreOffice installation paths - sed -i -e "s,@OO_SDK_NAME@,libreoffice-sdk," \ - -e "s,@OO_SDK_HOME@,/usr/lib/libreoffice/basis3.4/sdk," \ - -e "s,@OFFICE_HOME@,/usr/lib/libreoffice," \ - -e "s,@OFFICE_BASE_HOME@,/usr/lib/libreoffice/basis3.4," \ - -e "s,@OO_SDK_URE_HOME@,/usr/lib/libreoffice/ure," \ - -e "s,@OO_SDK_MAKE_HOME@,/usr/bin," \ - -e "s,@OO_SDK_ZIP_HOME@,/usr/bin," \ - -e "s,@OO_SDK_CPP_HOME@,/usr/bin," \ - -e "s,@OO_SDK_CC_55_OR_HIGHER@,," \ - -e "s,@OO_SDK_JAVA_HOME@,\$J2SDKDIR," \ - -e "s,@OO_SDK_OUTPUT_DIR@,\$HOME," \ - -e "s,@SDK_AUTO_DEPLOYMENT@,NO," setsdkenv_unix.{csh,sh}.in - #fix permissions - find examples -type f -exec chmod -x {} \; -} - -package_libreoffice-extension-barcode() { - - pkgdesc="This extension generates UPC-A, EAN-13, ISBN and JAN barcodes in Draw " - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/7e7efc5d4a03126bb9ae3ae9aa2c4e87-Barcode_1.3.1.0.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/Barcode - chmod o-w -R ${pkgdir}/usr/lib/libreoffice/share/extensions/Barcode -} - -package_libreoffice-extension-diagram() { - - pkgdesc="An OOo Draw and Impress extension that creates your favorite diagrams with a few clicks" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/41c9b65ad60af4b3255bbecdfef11736-Diagram_1.1.0.0.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/diagram -} - -package_libreoffice-extension-google-docs() { - - pkgdesc="Google Documents extension for LibreOffice" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/dbaafd21de055e582d92d7d32fe9da13-gdocs_2.3.1.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/google-docs -} - -package_libreoffice-extension-hunart() { - - pkgdesc="Hungarian cross-reference toolbar extension" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/b632bdd25649cc4067bcb410bae23d2b-hunart_0.3.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/hunart -} - -#package_libreoffice-extension-lightproof() { - -# pkgdesc="Lightproof extension for LibreOffice" - #arch=('any') -# depends=('libreoffice') -# groups=('libreoffice-extensions') - -# install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions -# unzip -q ${srcdir}/${pkgbase}-build-${_LOver}/build/libreoffice-${_LOver}/solver/${_OFFICEUPD}/unxlng*/bin/Lightproof.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/lightproof -#} - -#package_libreoffice-extension-mysql-connector() { - -# pkgdesc="MySQL Connector extension for LibreOffice" - #arch=('any') -# depends=('libreoffice') -# groups=('libreoffice-extensions') - -# install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions -# unzip -q ${srcdir}/${pkgbase}-build-${_LOver}/build/libreoffice-${_LOver}/solver/${_OFFICEUPD}/unxlng*/bin/Mysql-connector.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/mysql-connector -#} - -package_libreoffice-extension-nlpsolver() { - - pkgdesc="This extension integrates into Calc and offers new Solver engines to use for optimizing nonlinear programming models" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/NLPSolver.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/nlpsolver -} - -package_libreoffice-extension-ct2n() { - - pkgdesc="This extension enables you to convert text-cells in Calc with numbers and dates, to real numbers and dates." - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/ConvertTextToNumber.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/ct2n -} - -package_libreoffice-extension-numbertext() { - - pkgdesc="NUMBERTEXT/MONEYTEXT extensions" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/b8cbca7b3363e6ca2d02bc0ba2b63904-numbertext_0.9.4.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/numbertext -} - -package_libreoffice-extension-oooblogger() { - - pkgdesc="An extensions for blogging" - #arch=('any') - depends=('libreoffice' 'coreutils') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/b7b2d0e04e142f26dd96119c80757d1f-oooblogger_0.1.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/oooblogger -} - -package_libreoffice-extension-pdfimport() { - - pkgdesc="This extension allows you to import and modify PDF documents" - depends=('libreoffice' 'poppler') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/pdfimport/pdfimport.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/pdfimport -} - -package_libreoffice-extension-presenter-screen() { - - pkgdesc="This extension provides more control over your slide show presentation, such as the ability to see the upcoming slide, the slide notes, and a presentation timer whereas the audience see only the current slide" - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/presenter-screen.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/presenter-screen -} - -package_libreoffice-extension-presentation-minimizer() { - - pkgdesc="This extension reduce the file size of the current presentation" - depends=('libreoffice' 'gcc-libs') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/presentation-minimizer.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/presentation-minimizer -} - -package_libreoffice-extension-report-builder() { - - pkgdesc="This extension creates smart-looking database reports" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/report-builder.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/report-builder -} - -package_libreoffice-extension-scripting-beanshell() { - - pkgdesc="LibreOffice extension - Enables support for scripts in BeanShell" - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/script-provider-for-beanshell.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/script-provider-for-beanshell -} - -package_libreoffice-extension-scripting-javascript() { - - pkgdesc="LibreOffice extension - Enables support for scripts in JavaScript" - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/script-provider-for-javascript.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/script-provider-for-javascript -} - -package_libreoffice-extension-scripting-python() { - - pkgdesc="LibreOffice extension - Enables support for scripts in Python" - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/script-provider-for-python.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/script-provider-for-python -} - -package_libreoffice-extension-typo() { - - pkgdesc="Typography toolbar extension" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/9d60b6cfa3ef1926848710bbcd11115b-typo_0.4.2.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/typo - chmod o+r -R ${pkgdir}/usr/lib/libreoffice/share/extensions/typo -} - -package_libreoffice-extension-validator() { - - pkgdesc="Validator extension for LibreOffice" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/bbdd5639ada63e3130761daaecae1a10-Validator_1.1.0.0.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/validator -} - -package_libreoffice-extension-wiki-publisher() { - - pkgdesc="This extension enables you to create Wiki articles on MediaWiki servers without having to know the syntax of the MediaWiki markup language" - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/build/solver/${_OFFICEUPD}/unxlng*/bin/wiki-publisher.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/wiki-publisher -} - -package_libreoffice-extension-watch-window() { - - pkgdesc="A OOo Calc extension to add a Watch Window, which keeps the value of the monitored cell on the screen." - #arch=('any') - depends=('libreoffice') - groups=('libreoffice-extensions') - - install -dm755 ${pkgdir}/usr/lib/libreoffice/share/extensions - unzip -q ${srcdir}/23bd75552206dfcd8fd4e29137dcac84-WatchWindow_1.2.0.0.oxt -d ${pkgdir}/usr/lib/libreoffice/share/extensions/watch-window -} diff --git a/testing/libreoffice/buildfix_64bit_system_libjpeg.diff b/testing/libreoffice/buildfix_64bit_system_libjpeg.diff deleted file mode 100644 index 1f4eb110f..000000000 --- a/testing/libreoffice/buildfix_64bit_system_libjpeg.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- solenv/inc/libs.mk 2009-07-02 09:44:33.084467312 +0000 -+++ solenv/inc/libs.mk.new 2009-07-02 10:44:03.420819776 +0000 -@@ -211,7 +211,7 @@ - .IF "$(OS)" == "FREEBSD" - JPEG3RDLIB=/usr/local/lib/libjpeg.so - .ELIF "$(CPUNAME)" == "X86_64" || "$(CPUNAME)" == "S390X" || "$(CPUNAME)" == "POWERPC64" --JPEG3RDLIB=/usr/lib64/libjpeg.so -+JPEG3RDLIB=/usr/lib/libjpeg.so - .ELSE - JPEG3RDLIB=/usr/lib/libjpeg.so - .ENDIF diff --git a/testing/libreoffice/buildfix_boost.diff b/testing/libreoffice/buildfix_boost.diff deleted file mode 100644 index d8608d0d4..000000000 --- a/testing/libreoffice/buildfix_boost.diff +++ /dev/null @@ -1,40 +0,0 @@ -From bae4fdbd105142cd3f317445eddc826da529a732 Mon Sep 17 00:00:00 2001 -From: Caolán McNamara <caolanm@redhat.com> -Date: Tue, 05 Apr 2011 14:07:02 +0000 -Subject: silence some more of that annoying gcc#47679 - ---- -diff --git a/boost/boost.gcc47679.patch b/boost/boost.gcc47679.patch -index 1c804aa..9b33a5f 100644 ---- a/boost/boost.gcc47679.patch -+++ b/boost/boost.gcc47679.patch -@@ -36,3 +36,26 @@ - template <int MaxDigits> - inline bool allow_more_digits(std::size_t i) - { -+--- misc/boost_1_44_0/boost/optional/optional.hpp 2011-04-05 13:19:01.223587256 +0100 -++++ misc/build/boost_1_44_0/boost/optional/optional.hpp 2011-04-05 13:19:01.223587256 +0100 -+@@ -31,6 +31,8 @@ -+ -+ #include "boost/optional/optional_fwd.hpp" -+ -++#include <string.h> -++ -+ #if BOOST_WORKAROUND(BOOST_MSVC, == 1200) -+ // VC6.0 has the following bug: -+ // When a templated assignment operator exist, an implicit conversion -+@@ -114,6 +116,11 @@ -+ -+ public: -+ -++ aligned_storage() -++ { -++ memset(&dummy_, 0, sizeof(dummy_)); -++ } -++ -+ void const* address() const { return &dummy_.data[0]; } -+ void * address() { return &dummy_.data[0]; } -+ } ; --- -cgit v0.8.3-6-g21f6 - diff --git a/testing/libreoffice/buildfix_ct2n.diff b/testing/libreoffice/buildfix_ct2n.diff deleted file mode 100644 index 979587f79..000000000 --- a/testing/libreoffice/buildfix_ct2n.diff +++ /dev/null @@ -1,17 +0,0 @@ -From 90de903b28cb1884042be0eae3f8a55458c5bc29 Mon Sep 17 00:00:00 2001 -From: Caolán McNamara <caolanm@redhat.com> -Date: Tue, 12 Apr 2011 19:35:51 +0000 -Subject: duplicate NULLs - ---- -diff --git a/ct2n/prj/build.lst b/ct2n/prj/build.lst -index 91f44b7..714d926 100644 ---- a/ct2n/prj/build.lst -+++ b/ct2n/prj/build.lst -@@ -1,3 +1,3 @@ --ct2n ct2n : solenv NULL NULL -+ct2n ct2n : solenv NULL - ct2n ct2n usr1 - all ct2n_mkout NULL - ct2n ct2n nmake - all ct2n_ct2n NULL --- -cgit v0.8.3-6-g21f6 diff --git a/testing/libreoffice/libreoffice.install b/testing/libreoffice/libreoffice.install deleted file mode 100644 index 177f0d4e6..000000000 --- a/testing/libreoffice/libreoffice.install +++ /dev/null @@ -1,25 +0,0 @@ -post_install() { - -gtk-update-icon-cache -f -q /usr/share/icons/hicolor -update-desktop-database -q -update-mime-database usr/share/mime > /dev/null 2>&1 - -echo " * see https://wiki.archlinux.org/index.php/LibreOffice" -echo " * you may want to pacman -Ss libreoffice-extensions" -echo " to see what extensions are prepared to install" -echo " * it's recommended to install {hunspell,mythes,hyphen}-xx pkg for spell checking" -echo " * make sure you have installed some ttf font (ttf-dejavu recommended)" -} - -post_upgrade() { -# post_install $1 -gtk-update-icon-cache -f -q /usr/share/icons/hicolor -update-desktop-database -q -update-mime-database usr/share/mime > /dev/null 2>&1 -} - -post_remove() { -update-desktop-database -q -gtk-update-icon-cache -f -q /usr/share/icons/hicolor -update-mime-database usr/share/mime > /dev/null 2>&1 -} diff --git a/testing/libreoffice/vbahelper.visibility.patch b/testing/libreoffice/vbahelper.visibility.patch deleted file mode 100644 index 5739100d0..000000000 --- a/testing/libreoffice/vbahelper.visibility.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- vbahelper/inc/vbahelper/vbacollectionimpl.hxx 2011-01-28 20:27:51.507604173 +0000 -+++ vbahelper/inc/vbahelper/vbacollectionimpl.hxx 2011-01-28 20:28:26.230045727 +0000 -@@ -238,7 +238,7 @@ - - // including a HelperInterface implementation - template< typename Ifc1 > --class ScVbaCollectionBase : public InheritedHelperInterfaceImpl< Ifc1 > -+class VBAHELPER_DLLPUBLIC ScVbaCollectionBase : public InheritedHelperInterfaceImpl< Ifc1 > - { - typedef InheritedHelperInterfaceImpl< Ifc1 > BaseColBase; - protected: ---- sc/Library_vbaobj.mk -+++ sc/Library_vbaobj.mk -@@ -118,7 +118,6 @@ $(eval $(call gb_Library_add_exception_objects,vbaobj,\ - sc/source/ui/vba/vbaquerytable \ - sc/source/ui/vba/vbarange \ - sc/source/ui/vba/vbasheetobject \ -- sc/source/ui/vba/vbasheetobjects \ - sc/source/ui/vba/vbastyle \ - sc/source/ui/vba/vbastyles \ - sc/source/ui/vba/vbatextboxshape \ -@@ -133,6 +132,11 @@ $(eval $(call gb_Library_add_exception_objects,vbaobj,\ - sc/source/ui/vba/vbawsfunction \ - )) - -+$(eval $(call gb_Library_add_cxxobjects,vbaobj,\ -+ sc/source/ui/vba/vbasheetobjects \ -+ , $(gb_COMPILERNOOPTFLAGS) $(gb_LinkTarget_EXCEPTIONFLAGS) \ -+)) -+ - ifneq (,$(filter LINUX DRAGONFLY OPENBSD FREEBSD NETBSD, $(OS))) - $(eval $(call gb_Library_set_ldflags,vbaobj,\ - $$(LDFLAGS) \ diff --git a/testing/libsasl/PKGBUILD b/testing/libsasl/PKGBUILD deleted file mode 100644 index 0a92c6a7a..000000000 --- a/testing/libsasl/PKGBUILD +++ /dev/null @@ -1,54 +0,0 @@ -# $Id: PKGBUILD 127649 2011-06-17 13:03:28Z stephane $ -# Maintainer: Jan de Groot <jgc@archlinux.org> - -pkgname=libsasl -pkgver=2.1.23 -pkgrel=6 -pkgdesc="Cyrus Simple Authentication Service Layer (SASL) library" -arch=('i686' 'x86_64') -url="http://cyrusimap.web.cmu.edu/downloads.html#sasl" -license=('custom') -depends=('db>=4.8') -optdepends=('cyrus-sasl: saslauthd' - 'cyrus-sasl-plugins: authentication plugins other than sasldb') -source=(ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/cyrus-sasl-${pkgver}.tar.gz - cyrus-sasl-2.1.19-checkpw.c.patch - cyrus-sasl-db.patch) -options=('!makeflags') -md5sums=('2eb0e48106f0e9cd8001e654f267ecbc' - 'e27ddff076342e7a3041c4759817d04b' - '0658201497aad359c0d66b0ab8032859') - -build() { - cd "${srcdir}/cyrus-sasl-${pkgver}" - patch -Np0 -i ${srcdir}/cyrus-sasl-2.1.19-checkpw.c.patch - patch -Np1 -i ${srcdir}/cyrus-sasl-db.patch - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --localstatedir=/var \ - --disable-anon \ - --disable-cram \ - --disable-digest \ - --disable-gssapi \ - --enable-login \ - --disable-otp \ - --enable-plain \ - --mandir=/usr/share/man - for dir in include lib sasldb plugins utils; do - pushd ${dir} - make - popd - done -} - -package() { - cd "${srcdir}/cyrus-sasl-${pkgver}" - for dir in include lib sasldb plugins utils; do - pushd ${dir} || return 1 - make DESTDIR="${pkgdir}" install - popd - done - - # install license - install -D -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" -} diff --git a/testing/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch b/testing/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch deleted file mode 100644 index f7bf44b79..000000000 --- a/testing/libsasl/cyrus-sasl-2.1.19-checkpw.c.patch +++ /dev/null @@ -1,170 +0,0 @@ -diff -ur ../cyrus-sasl-2.1.19.orig/lib/Makefile.in ./lib/Makefile.in ---- ../cyrus-sasl-2.1.19.orig/lib/Makefile.in 2004-07-02 21:40:15.000000000 +0200 -+++ ./lib/Makefile.in 2004-09-07 13:21:22.746680576 +0200 -@@ -120,7 +120,7 @@ - JAVA_TRUE = @JAVA_TRUE@ - LDFLAGS = @LDFLAGS@ - LIBOBJS = @LIBOBJS@ --LIBS = @LIBS@ -+LIBS = -lcrypt @LIBS@ - LIBTOOL = @LIBTOOL@ - LIB_CRYPT = @LIB_CRYPT@ - LIB_DES = @LIB_DES@ -diff -ur ../cyrus-sasl-2.1.19.orig/lib/checkpw.c ./lib/checkpw.c ---- ../cyrus-sasl-2.1.19.orig/lib/checkpw.c 2004-03-17 14:58:13.000000000 +0100 -+++ ./lib/checkpw.c 2004-09-07 13:21:12.645916147 +0200 -@@ -94,6 +94,23 @@ - # endif - #endif - -+/****************************** -+ * crypt(3) patch start * -+ ******************************/ -+char *crypt(const char *key, const char *salt); -+ -+/* cleartext password formats */ -+#define PASSWORD_FORMAT_CLEARTEXT 1 -+#define PASSWORD_FORMAT_CRYPT 2 -+#define PASSWORD_FORMAT_CRYPTTRAD 3 -+#define PASSWORD_SALT_BUF_LEN 22 -+ -+/* weeds out crypt(3) password's salt */ -+int _sasl_get_salt (char *dest, char *src, int format); -+ -+/****************************** -+ * crypt(3) patch stop * -+ ******************************/ - - /* we store the following secret to check plaintext passwords: - * -@@ -143,7 +160,51 @@ - "*cmusaslsecretPLAIN", - NULL }; - struct propval auxprop_values[3]; -- -+ -+ /****************************** -+ * crypt(3) patch start * -+ * for password format check * -+ ******************************/ -+ sasl_getopt_t *getopt; -+ void *context; -+ const char *p = NULL; -+ /** -+ * MD5: 12 char salt -+ * BLOWFISH: 16 char salt -+ */ -+ char salt[PASSWORD_SALT_BUF_LEN]; -+ int password_format; -+ -+ /* get password format from auxprop configuration */ -+ if (_sasl_getcallback(conn, SASL_CB_GETOPT, &getopt, &context) == SASL_OK) { -+ getopt(context, NULL, "password_format", &p, NULL); -+ } -+ -+ /* set password format */ -+ if (p) { -+ /* -+ memset(pass_format_str, '\0', PASSWORD_FORMAT_STR_LEN); -+ strncpy(pass_format_str, p, (PASSWORD_FORMAT_STR_LEN - 1)); -+ */ -+ /* modern, modular crypt(3) */ -+ if (strncmp(p, "crypt", 11) == 0) -+ password_format = PASSWORD_FORMAT_CRYPT; -+ /* traditional crypt(3) */ -+ else if (strncmp(p, "crypt_trad", 11) == 0) -+ password_format = PASSWORD_FORMAT_CRYPTTRAD; -+ /* cleartext password */ -+ else -+ password_format = PASSWORD_FORMAT_CLEARTEXT; -+ } else { -+ /* cleartext password */ -+ password_format = PASSWORD_FORMAT_CLEARTEXT; -+ } -+ -+ /****************************** -+ * crypt(3) patch stop * -+ * for password format check * -+ ******************************/ -+ - if (!conn || !userstr) - return SASL_BADPARAM; - -@@ -180,14 +241,31 @@ - goto done; - } - -- /* At the point this has been called, the username has been canonified -- * and we've done the auxprop lookup. This should be easy. */ -- if(auxprop_values[0].name -- && auxprop_values[0].values -- && auxprop_values[0].values[0] -- && !strcmp(auxprop_values[0].values[0], passwd)) { -- /* We have a plaintext version and it matched! */ -- return SASL_OK; -+ -+ /****************************** -+ * crypt(3) patch start * -+ ******************************/ -+ -+ /* get salt */ -+ _sasl_get_salt(salt, (char *) auxprop_values[0].values[0], password_format); -+ -+ /* crypt(3)-ed password? */ -+ if (password_format != PASSWORD_FORMAT_CLEARTEXT) { -+ /* compare password */ -+ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(crypt(passwd, salt), auxprop_values[0].values[0]) == 0) -+ return SASL_OK; -+ else -+ ret = SASL_BADAUTH; -+ } -+ else if (password_format == PASSWORD_FORMAT_CLEARTEXT) { -+ /* compare passwords */ -+ if (auxprop_values[0].name && auxprop_values[0].values && auxprop_values[0].values[0] && strcmp(auxprop_values[0].values[0], passwd) == 0) -+ return SASL_OK; -+ else -+ ret = SASL_BADAUTH; -+ /****************************** -+ * crypt(3) patch stop * -+ ******************************/ - } else if(auxprop_values[1].name - && auxprop_values[1].values - && auxprop_values[1].values[0]) { -@@ -975,3 +1053,37 @@ - #endif - { NULL, NULL } - }; -+ -+/* weeds out crypt(3) password's salt */ -+int _sasl_get_salt (char *dest, char *src, int format) { -+ int num; /* how many characters is salt long? */ -+ switch (format) { -+ case PASSWORD_FORMAT_CRYPT: -+ /* md5 crypt */ -+ if (src[1] == '1') -+ num = 12; -+ /* blowfish crypt */ -+ else if (src[1] == '2') -+ num = (src[1] == '2' && src[2] == 'a') ? 17 : 16; -+ /* traditional crypt */ -+ else -+ num = 2; -+ break; -+ -+ case PASSWORD_FORMAT_CRYPTTRAD: -+ num = 2; -+ break; -+ -+ default: -+ return 1; -+ } -+ -+ /* destroy destination */ -+ memset(dest, '\0', (num + 1)); -+ -+ /* copy salt to destination */ -+ strncpy(dest, src, num); -+ -+ return 1; -+} -+ diff --git a/testing/libsasl/cyrus-sasl-db.patch b/testing/libsasl/cyrus-sasl-db.patch deleted file mode 100644 index 08758ab85..000000000 --- a/testing/libsasl/cyrus-sasl-db.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff -urN aaa/cyrus-sasl-2.1.22/cmulocal/berkdb.m4 cyrus-sasl-2.1.22/cmulocal/berkdb.m4 ---- aaa/cyrus-sasl-2.1.22/cmulocal/berkdb.m4 2005-04-26 21:14:07.000000000 +0200 -+++ cyrus-sasl-2.1.22/cmulocal/berkdb.m4 2006-10-02 20:36:17.137852392 +0200 -@@ -213,7 +213,7 @@ - fi - - saved_LIBS=$LIBS -- for dbname in db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db -+ for dbname in db-5.1 db-5.0 db-4.8 db-4.7 db-4.6 db-4.5 db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db - do - LIBS="$saved_LIBS -l$dbname" - AC_TRY_LINK([#include <db.h>], ---- cyrus-sasl-2.1.23/sasldb/db_berkeley.c.orig 2009-04-28 17:09:18.000000000 +0200 -+++ cyrus-sasl-2.1.23/sasldb/db_berkeley.c 2010-05-18 21:02:20.418940098 +0200 -@@ -100,7 +100,7 @@ - ret = db_create(mbdb, NULL, 0); - if (ret == 0 && *mbdb != NULL) - { --#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 -+#if (DB_VERSION_MAJOR > 4) || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1) - ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, flags, 0660); - #else - ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, flags, 0660); ---- cyrus-sasl-2.1.23/utils/dbconverter-2.c.orig 2003-02-13 20:56:17.000000000 +0100 -+++ cyrus-sasl-2.1.23/utils/dbconverter-2.c 2010-05-18 21:11:09.982932556 +0200 -@@ -214,7 +214,7 @@ - ret = db_create(mbdb, NULL, 0); - if (ret == 0 && *mbdb != NULL) - { --#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 -+#if (DB_VERSION_MAJOR > 4) || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1) - ret = (*mbdb)->open(*mbdb, NULL, path, NULL, DB_HASH, DB_CREATE, 0664); - #else - ret = (*mbdb)->open(*mbdb, path, NULL, DB_HASH, DB_CREATE, 0664); diff --git a/testing/moc/PKGBUILD b/testing/moc/PKGBUILD deleted file mode 100644 index d782e1b0f..000000000 --- a/testing/moc/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# $Id: PKGBUILD 127443 2011-06-15 03:16:57Z eric $ -# Maintainer: Eric Bélanger <eric@archlinux.org> - -pkgname=moc -pkgver=20110528 -pkgrel=3 -pkgdesc="An ncurses console audio player with support for the mp3, ogg, and wave formats" -arch=('i686' 'x86_64') -url="http://moc.daper.net/" -license=('GPL') -depends=('libmad' 'libid3tag' 'jack' 'curl' 'libsamplerate' 'libtool' 'file') -makedepends=('speex' 'ffmpeg' 'taglib' 'libmpcdec' 'wavpack' 'libmodplug') -optdepends=('speex: for using the speex plugin' - 'ffmpeg: for using the ffmpeg plugin' - 'taglib: for using the musepack plugin' - 'libmpcdec: for using the musepack plugin' - 'wavpack: for using the wavpack plugin' - 'libmodplug: for using the modplug plugin') -options=('!libtool') -source=(ftp://ftp.archlinux.org/other/moc/${pkgname}-${pkgver}.tar.xz \ - gcc-undefined-symbols.diff) -md5sums=('003fd01af2165264eb666040e4f586cd' - 'efacb8559e9145e15b0c25f8fa2a9d79') -sha1sums=('f79049136ce6616bfd6af2f5e08246a5921441cf' - 'a811a4ac7e049914aab528d3f06a6be6634c2720') - -build() { - cd "${srcdir}/${pkgname}" - patch -p0 -i ../gcc-undefined-symbols.diff - -# Disabling aac to use the external ffmpeg to play them (FS#13164) - ./autogen.sh - ./configure --prefix=/usr --without-rcc --without-aac \ - --with-oss --with-alsa --with-jack --with-mp3 \ - --with-musepack --with-vorbis --with-flac --with-wavpack \ - --with-sndfile --with-modplug --with-ffmpeg --with-speex \ - --with-samplerate --with-curl --disable-debug - make -} - -package() { - cd "${srcdir}/${pkgname}" - make DESTDIR="${pkgdir}" install -} diff --git a/testing/moc/gcc-undefined-symbols.diff b/testing/moc/gcc-undefined-symbols.diff deleted file mode 100644 index 09e9b8bda..000000000 --- a/testing/moc/gcc-undefined-symbols.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- decoder.c~ 2011-05-08 09:28:28.077137883 +0200 -+++ decoder.c 2011-05-10 21:40:48.887941968 +0200 -@@ -259,6 +259,9 @@ - for (i = 0; i < plugins_num; i++) - if (plugins[i].decoder->destroy) - plugins[i].decoder->destroy (); -+ for (i = 0; i < plugins_num; i++) -+ if (plugins[i].handle) -+ lt_dlclose(plugins[i].handle); - - if (lt_dlexit()) - logit ("lt_exit() failed: %s", lt_dlerror()); diff --git a/testing/mod_perl/PKGBUILD b/testing/mod_perl/PKGBUILD deleted file mode 100644 index 9f3595deb..000000000 --- a/testing/mod_perl/PKGBUILD +++ /dev/null @@ -1,27 +0,0 @@ -# $Id: PKGBUILD 129799 2011-06-28 23:07:22Z angvp $ -# Maintainer: Firmicus <francois.archlinux.org> -# Contributor: Tom K <tomk@runbox.com> - -pkgname=mod_perl -pkgver=2.0.5 -pkgrel=7 -pkgdesc="Apache module that embeds the Perl interpreter within the server" -url="http://search.cpan.org/dist/${pkgname}/" -depends=('perl' 'apache' 'db' 'apr-util' 'perl-linux-pid') -license=('APACHE') -arch=('i686' 'x86_64') -options=(!emptydirs) -source=(http://search.cpan.org/CPAN/authors/id/P/PH/PHRED/${pkgname}-${pkgver}.tar.gz) -md5sums=('03d01d135a122bd8cebd0cd5b185d674') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - # install module in vendor directories. - perl Makefile.PL INSTALLDIRS=vendor MP_APXS=/usr/sbin/apxs - make -} - -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make install DESTDIR=${pkgdir} -} diff --git a/testing/monica/PKGBUILD b/testing/monica/PKGBUILD new file mode 100644 index 000000000..b3783fd57 --- /dev/null +++ b/testing/monica/PKGBUILD @@ -0,0 +1,33 @@ +# $Id: PKGBUILD 130314 2011-07-04 22:06:55Z eric $ +# Maintainer: tobias <tobias@archlinux.org> +# Contributor: Tobias Kieslich <tobias@justdreams.de> + +pkgname=monica +pkgver=3.7 +pkgrel=2 +pkgdesc="A monitor calibration tool" +arch=('i686' 'x86_64') +url="http://www.pcbypaul.com/software/monica.html" +license=('BSD') +depends=('fltk' 'xorg-xgamma') +makedepends=('librsvg') +#http://www.pcbypaul.com/software/dl/${pkgname}-${pkgver}.tar.bz2 +source=(ftp://ftp.archlinux.org/other/monica/${pkgname}-${pkgver}.tar.bz2 \ + monica.desktop monica.svg) +md5sums=('490aabc35b830e4a3dc32a2f893ba805' + 'a337bfda1fca7228420db0ce92256816' + '4569f5df7d7b3eaf20108adf48e8dfe4') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + install -Dm755 monica "${pkgdir}/usr/bin/monica" + install -Dm644 "${srcdir}/monica.desktop" "${pkgdir}/usr/share/applications/monica.desktop" + install -Dm644 "${srcdir}/monica.svg" "${pkgdir}/usr/share/pixmaps/monica.svg" + rsvg-convert -w 64 -h 57 -f png -o "${pkgdir}/usr/share/pixmaps/monica.png" "${srcdir}/monica.svg" + install -Dm644 licence "${pkgdir}/usr/share/licenses/monica/license.txt" +} diff --git a/testing/monica/monica.desktop b/testing/monica/monica.desktop new file mode 100644 index 000000000..6b17659ca --- /dev/null +++ b/testing/monica/monica.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Monica +Comment=Monitor Calibration for x-server +Exec=monica +Icon=monica +Terminal=false +Type=Application +X-MultipleArgs=false +Categories=Application;Settings;System; diff --git a/testing/monica/monica.svg b/testing/monica/monica.svg new file mode 100644 index 000000000..bb9f77d9b --- /dev/null +++ b/testing/monica/monica.svg @@ -0,0 +1,248 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="monica.svg" + sodipodi:docbase="/home/pool/graphics/arch_candy/svg-icons" + height="67.000000pt" + width="70.000000pt" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg1573"> + <defs + id="defs1575"> + <linearGradient + id="linearGradient1606"> + <stop + id="stop1607" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.62745100;" /> + <stop + id="stop1608" + offset="1.0000000" + style="stop-color:#000000;stop-opacity:0.0000000;" /> + </linearGradient> + <radialGradient + gradientTransform="translate(0.000000,3.125000)" + gradientUnits="userSpaceOnUse" + fy="12.500000" + fx="12.500000" + r="12.433378" + cy="12.500000" + cx="12.500000" + id="radialGradient1636" + xlink:href="#linearGradient1606" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.437333,0.000000,0.000000,0.410284,0.000000,3.125000)" + y2="0.0000000" + x2="20.514223" + y1="30.771334" + x1="20.514223" + id="linearGradient1638" + xlink:href="#linearGradient1606" + inkscape:collect="always" /> + <radialGradient + gradientTransform="translate(-12.50000,3.250000)" + gradientUnits="userSpaceOnUse" + fy="12.500000" + fx="100.00000" + r="12.500000" + cy="12.500000" + cx="100.00000" + id="radialGradient1643" + xlink:href="#linearGradient1606" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447214,0.000000,0.000000,2.236068,-12.50000,3.250000)" + y2="19.565595" + x2="251.55765" + y1="19.565595" + x1="223.60680" + id="linearGradient1645" + xlink:href="#linearGradient1606" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.508806,0.000000,0.000000,1.965387,0.000000,3.125000)" + y2="18.889412" + x2="0.0000000" + y1="18.889412" + x1="25.058681" + id="linearGradient1647" + xlink:href="#linearGradient1606" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.814390,0.000000,0.000000,0.355317,0.000000,-10.12500)" + y2="246.61094" + x2="22.207298" + y1="211.07926" + x1="22.207298" + id="linearGradient1649" + xlink:href="#linearGradient1606" + inkscape:collect="always" /> + <radialGradient + gradientTransform="translate(0.000000,-10.12500)" + gradientUnits="userSpaceOnUse" + fy="75.000000" + fx="12.500000" + r="12.500000" + cy="75.000000" + cx="12.500000" + id="radialGradient1651" + xlink:href="#linearGradient1606" + inkscape:collect="always" /> + <radialGradient + gradientTransform="translate(-12.50000,-10.000000)" + gradientUnits="userSpaceOnUse" + fy="75.000000" + fx="100.00000" + r="12.500000" + cy="75.000000" + cx="100.00000" + id="radialGradient1653" + xlink:href="#linearGradient1606" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:current-layer="svg1573" + inkscape:window-y="3" + inkscape:window-x="0" + inkscape:grid-points="true" + inkscape:grid-bbox="true" + gridtolerance="2.0000000px" + gridoriginx="0.0000000pt" + gridoriginy="0.0000000pt" + gridspacingx="10.000000pt" + gridspacingy="10.000000pt" + snaptogrid="false" + showgrid="true" + inkscape:window-height="1002" + inkscape:window-width="1272" + inkscape:cy="50.235475" + inkscape:cx="67.194289" + inkscape:zoom="7.9999998" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata1576"> + <rdf:RDF + id="RDF1577"> + <cc:Work + id="Work1578" + rdf:about=""> + <dc:description + id="description1579">Created with Inkscape +http://www.inkscape.org/</dc:description> + <dc:format + id="format1581">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type1583" /> + <dc:title + id="title1606">ML-Term Icon</dc:title> + <dc:date + id="date1608">2004-07-14</dc:date> + <dc:creator + id="creator1610"> + <cc:Agent + id="Agent1611"> + <dc:title + id="title1612">Tobias Kieslich</dc:title> + </cc:Agent> + </dc:creator> + <dc:coverage + id="coverage1614" /> + <cc:license + rdf:resource="http://creativecommons.org/licenses/GPL/2.0/" + id="license1616" /> + </cc:Work> + <cc:License + id="License1624" + rdf:about="http://creativecommons.org/licenses/GPL/2.0/"> + <cc:permits + id="permits1625" + rdf:resource="http://web.resource.org/cc/Reproduction" /> + <cc:permits + id="permits1626" + rdf:resource="http://web.resource.org/cc/Distribution" /> + <cc:requires + id="requires1627" + rdf:resource="http://web.resource.org/cc/Notice" /> + <cc:permits + id="permits1628" + rdf:resource="http://web.resource.org/cc/DerivativeWorks" /> + <cc:requires + id="requires1629" + rdf:resource="http://web.resource.org/cc/ShareAlike" /> + <cc:requires + id="requires1630" + rdf:resource="http://web.resource.org/cc/SourceCode" /> + </cc:License> + </rdf:RDF> + </metadata> + <path + sodipodi:nodetypes="cc" + id="path2775" + d="M 5.8437501,76.625001 L 82.343750,76.625001" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:9.1875000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path2007" + d="M 10.593750,6.8437510 L 77.343750,6.8437510" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.0625000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path2803" + d="M 8.2187499,9.3437490 L 8.2187499,59.593751 L 79.718750,59.593751 L 79.718750,9.3437490" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.0625000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path2807" + d="M 29.750001,67.218750 L 58.125000,67.218750" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:14.937500;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path2953" + d="M 22.468750,14.718749 L 22.468750,52.468750" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#3f0000;stroke-width:5.0625000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path2955" + d="M 27.468750,14.718749 L 27.468750,52.468750" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ff1500;stroke-width:5.0625000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path2957" + d="M 41.593750,14.718749 L 41.593750,52.468750" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#0b2f00;stroke-width:5.0625000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path2959" + d="M 46.593750,14.718749 L 46.593750,52.468750" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#08ce00;stroke-width:5.0625000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path2961" + d="M 60.718750,14.718749 L 60.718750,52.468750" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#00004e;stroke-width:5.0625000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path2963" + d="M 65.718750,14.718749 L 65.718750,52.468750" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#0072ff;stroke-width:5.0625000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> +</svg> diff --git a/testing/openldap/PKGBUILD b/testing/openldap/PKGBUILD deleted file mode 100644 index 44029b398..000000000 --- a/testing/openldap/PKGBUILD +++ /dev/null @@ -1,107 +0,0 @@ -# $Id: PKGBUILD 127879 2011-06-19 07:32:04Z andrea $ -# Maintainer: -# Contributor: Judd Vinet <jvinet@zeroflux.org> - -pkgname=openldap -pkgver=2.4.24 -pkgrel=2 -pkgdesc="LDAP Server" -arch=('i686' 'x86_64') -license=('custom') -url="http://www.openldap.org/" -backup=('etc/openldap/slapd.conf' 'etc/default/slapd' 'etc/conf.d/slapd') -depends=("libldap>=${pkgver}" 'tcp_wrappers' 'libfetch' 'util-linux-ng') -provides=('openldap-clients') -replaces=('openldap-clients') -source=("ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/${pkgname}-${pkgver}.tgz" - 'slapd' - 'slapd.default') -md5sums=('116fe1e23a7b67686d5e62274367e6c0' - '832354417c495f29affd2c772808959d' - '6be69f6b7e522cb64cce8703da81ed32') -options=('emptydirs') - -build() { - cd "${srcdir}"/${pkgname}-${pkgver} - - export LIBS=-ldb - ./configure --prefix=/usr \ - --mandir=/usr/share/man \ - --libexecdir=/usr/sbin \ - --sysconfdir=/etc \ - --localstatedir=/var/lib/openldap \ - --enable-bdb \ - --enable-crypt \ - --enable-dynamic \ - --with-threads \ - --enable-wrappers \ - --enable-spasswd \ - --with-cyrus-sasl - - find . -name 'Makefile' -exec \ - sed -e 's|$(LDAP_LIBDIR)/liblber/liblber.la|/usr/lib/liblber-2.4.so.2|g' \ - -e 's|$(LDAP_LIBDIR)/libldap/libldap.la|/usr/lib/libldap-2.4.so.2|g' \ - -e 's|$(LDAP_LIBDIR)/libldap_r/libldap_r.la|/usr/lib/libldap_r-2.4.so.2|g' \ - -i {} \; - - cd include - make - - cd ../libraries - for dir in liblutil librewrite liblunicode; do - pushd ${dir} - make depend - make - popd - done - - cd ../servers - make depend - make - - cd ../clients - make depend - make - - cd ../doc/man - for dir in man{1,5,8}; do - pushd ${dir} - make - popd - done -} - -package() { - cd "${srcdir}"/${pkgname}-${pkgver} - - cd servers - make DESTDIR="${pkgdir}" install - - cd ../clients - make DESTDIR="${pkgdir}" install - - cd ../doc/man - for dir in man{1,5,8}; do - pushd ${dir} - make DESTDIR="${pkgdir}" install - popd - done - rm "${pkgdir}"/usr/share/man/man5/ldap.conf.5 - - cd ../.. - - install -dm700 "${pkgdir}"/etc/openldap/slapd.d - install -Dm755 "${srcdir}"/slapd "${pkgdir}"/etc/rc.d/slapd - install -Dm644 "${srcdir}"/slapd.default "${pkgdir}"/etc/conf.d/slapd - install -dm700 "${pkgdir}"/var/lib/openldap - - # get rid of duplicate default conf files - rm "${pkgdir}"/etc/openldap/*.default - - # hack to fix screwed up dirs - sed -e 's|^pidfile[[:space:]].*$|pidfile /var/run/slapd.pid|g' \ - -e 's|^argsfile[[:space:]].*$|argsfile /var/run/slapd.args|g' \ - -i "${pkgdir}"/etc/openldap/slapd.conf - - install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/$pkgname/LICENSE -} diff --git a/testing/openldap/slapd b/testing/openldap/slapd deleted file mode 100755 index 392075027..000000000 --- a/testing/openldap/slapd +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -[ -f "/etc/conf.d/slapd" ] && . /etc/conf.d/slapd - -PID=`pidof -o %PPID /usr/sbin/slapd` -case "$1" in - start) - stat_busy "Starting OpenLDAP" - if [ -z "$PID" ]; then - if [ -z "$SLAPD_SERVICES" ]; then - /usr/sbin/slapd $SLAPD_OPTIONS - else - /usr/sbin/slapd -h "$SLAPD_SERVICES" $SLAPD_OPTIONS - fi - if [ $? -gt 0 ]; then - stat_fail - else - stat_done - fi - add_daemon slapd - else - stat_fail - fi - ;; - stop) - stat_busy "Stopping OpenLDAP" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm -f /var/run/slapd.pid - rm -f /var/run/slapd.args - rm_daemon slapd - stat_done - fi - ;; - restart) - $0 stop - sleep 3 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac -exit 0 diff --git a/testing/openldap/slapd.default b/testing/openldap/slapd.default deleted file mode 100644 index 72ae2a6a7..000000000 --- a/testing/openldap/slapd.default +++ /dev/null @@ -1,6 +0,0 @@ -# slapd normally serves ldap only on all TCP-ports 389. slapd can also -# service requests on TCP-port 636 (ldaps) and requests via unix -# sockets. -# Example usage: -#SLAPD_SERVICES="ldap://127.0.0.1:389/ ldaps:/// ldapi:///" -SLAPD_OPTIONS="" diff --git a/testing/pam/PKGBUILD b/testing/pam/PKGBUILD deleted file mode 100644 index 5a4f10780..000000000 --- a/testing/pam/PKGBUILD +++ /dev/null @@ -1,56 +0,0 @@ -# $Id: PKGBUILD 127852 2011-06-18 20:12:05Z stephane $ -# Maintainer: Tobias Powalowski <tpowa@archlinux.org> -# Contributor: judd <jvinet@zeroflux.org> - -pkgname=pam -pkgver=1.1.3 -pkgrel=2 -pkgdesc="PAM (Pluggable Authentication Modules) library" -arch=('i686' 'x86_64') -license=('GPL2') -url="http://www.kernel.org/pub/linux/libs/pam/" -depends=('glibc' 'db' 'cracklib') -makedepends=('flex' 'w3m' 'docbook-xml>=4.4' 'docbook-xsl') -backup=(etc/security/{access.conf,group.conf,limits.conf,namespace.conf,namespace.init,pam_env.conf,time.conf} etc/pam.d/other etc/default/passwd etc/environment) -source=(http://www.kernel.org/pub/linux/libs/pam/library/Linux-PAM-$pkgver.tar.bz2 - ftp://ftp.suse.com/pub/people/kukuk/pam/pam_unix2/pam_unix2-2.6.tar.bz2 - other) -options=('!libtool' '!emptydirs') -md5sums=('6db7fcb5db6253350e3a4648ceac40e7' - 'e2788389a6c59224110a45fcff30e02b' - '6e6c8719e5989d976a14610f340bd33a') - -build() { - cd $srcdir/Linux-PAM-$pkgver - ./configure --sysconfdir=/etc DESTDIR=$pkgdir --libdir=/lib - make -} - -package() { - cd $srcdir/Linux-PAM-$pkgver - make INSTALL=/bin/install DESTDIR=$pkgdir install - install -D -m644 ../other $pkgdir/etc/pam.d/other - # build pam_unix2 module - # source ftp://ftp.suse.com/pub/people/kukuk/pam/pam_unix2 - cd $srcdir/pam_unix2-2.6 - ./configure - make - make DESTDIR=$pkgdir install - # add the realtime permissions for audio users - sed -i 's|# End of file||' $pkgdir/etc/security/limits.conf - cat >>$pkgdir/etc/security/limits.conf <<_EOT -* - rtprio 0 -* - nice 0 -@audio - rtprio 65 -@audio - nice -10 -@audio - memlock 40000 -_EOT - # fix some missing symlinks from old pam for compatibility - cd $pkgdir/lib/security - ln -s pam_unix.so pam_unix_acct.so - ln -s pam_unix.so pam_unix_auth.so - ln -s pam_unix.so pam_unix_passwd.so - ln -s pam_unix.so pam_unix_session.so - # set unix_chkpwd uid - chmod +s $pkgdir/sbin/unix_chkpwd -} diff --git a/testing/pam/pam.install b/testing/pam/pam.install deleted file mode 100644 index 9d4588084..000000000 --- a/testing/pam/pam.install +++ /dev/null @@ -1,12 +0,0 @@ -# arg 1: the new package version -post_install() { - # need to run this immediately -- pacman only runs it at the end of - # all package installs - /sbin/ldconfig -r . -} - -# arg 1: the new package version -# arg 2: the old package version -post_upgrade() { - post_install $1 -} diff --git a/testing/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch b/testing/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch deleted file mode 100644 index 1404460df..000000000 --- a/testing/perl/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch +++ /dev/null @@ -1,83 +0,0 @@ -From bb249b0b26c2e79a6f55355ef94889070f07fd21 Mon Sep 17 00:00:00 2001 -From: Niko Tyni <ntyni@debian.org> -Date: Thu, 28 Apr 2011 09:18:54 +0300 -Subject: [PATCH] Append CFLAGS and LDFLAGS to their Config.pm counterparts in - EU::CBuilder - -Since ExtUtils::CBuilder 0.27_04 (bleadperl commit 06e8058f27e4), -CFLAGS and LDFLAGS from the environment have overridden the Config.pm -ccflags and ldflags settings. This can cause binary incompatibilities -between the core Perl and extensions built with EU::CBuilder. - -Append to the Config.pm values rather than overriding them. ---- - .../lib/ExtUtils/CBuilder/Base.pm | 6 +++- - dist/ExtUtils-CBuilder/t/04-base.t | 25 +++++++++++++++++++- - 2 files changed, 28 insertions(+), 3 deletions(-) - -diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm -index b572312..2255c51 100644 ---- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm -+++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm -@@ -40,11 +40,13 @@ sub new { - $self->{config}{$k} = $v unless exists $self->{config}{$k}; - } - $self->{config}{cc} = $ENV{CC} if defined $ENV{CC}; -- $self->{config}{ccflags} = $ENV{CFLAGS} if defined $ENV{CFLAGS}; -+ $self->{config}{ccflags} = join(" ", $self->{config}{ccflags}, $ENV{CFLAGS}) -+ if defined $ENV{CFLAGS}; - $self->{config}{cxx} = $ENV{CXX} if defined $ENV{CXX}; - $self->{config}{cxxflags} = $ENV{CXXFLAGS} if defined $ENV{CXXFLAGS}; - $self->{config}{ld} = $ENV{LD} if defined $ENV{LD}; -- $self->{config}{ldflags} = $ENV{LDFLAGS} if defined $ENV{LDFLAGS}; -+ $self->{config}{ldflags} = join(" ", $self->{config}{ldflags}, $ENV{LDFLAGS}) -+ if defined $ENV{LDFLAGS}; - - unless ( exists $self->{config}{cxx} ) { - my ($ccpath, $ccbase, $ccsfx ) = fileparse($self->{config}{cc}, qr/\.[^.]*/); -diff --git a/dist/ExtUtils-CBuilder/t/04-base.t b/dist/ExtUtils-CBuilder/t/04-base.t -index c3bf6b5..1bb15aa 100644 ---- a/dist/ExtUtils-CBuilder/t/04-base.t -+++ b/dist/ExtUtils-CBuilder/t/04-base.t -@@ -1,7 +1,7 @@ - #! perl -w - - use strict; --use Test::More tests => 50; -+use Test::More tests => 64; - use Config; - use Cwd; - use File::Path qw( mkpath ); -@@ -326,6 +326,29 @@ is_deeply( $mksymlists_args, - "_prepare_mksymlists_args(): got expected arguments for Mksymlists", - ); - -+my %testvars = ( -+ CFLAGS => 'ccflags', -+ LDFLAGS => 'ldflags', -+); -+ -+while (my ($VAR, $var) = each %testvars) { -+ local $ENV{$VAR}; -+ $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); -+ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); -+ isa_ok( $base, 'ExtUtils::CBuilder::Base' ); -+ like($base->{config}{$var}, qr/\Q$Config{$var}/, -+ "honours $var from Config.pm"); -+ -+ $ENV{$VAR} = "-foo -bar"; -+ $base = ExtUtils::CBuilder::Base->new( quiet => 1 ); -+ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" ); -+ isa_ok( $base, 'ExtUtils::CBuilder::Base' ); -+ like($base->{config}{$var}, qr/\Q$ENV{$VAR}/, -+ "honours $VAR from the environment"); -+ like($base->{config}{$var}, qr/\Q$Config{$var}/, -+ "doesn't override $var from Config.pm with $VAR from the environment"); -+} -+ - ##### - - for ($source_file, $object_file, $lib_file) { --- -1.7.4.4 - diff --git a/testing/perl/ChangeLog b/testing/perl/ChangeLog deleted file mode 100644 index 9add39e20..000000000 --- a/testing/perl/ChangeLog +++ /dev/null @@ -1,66 +0,0 @@ -2011-06-22 Angel Velasquez <angvp@archlinux.org> - * Added a patch for ExtUtils doesnt overwrite CFLAGS and LDFLAGS - * Fixed #FS22197, FS#22441, FS#24767 - * Rebuilt perl 5.14.1-2 against db 5.2.28 - -2011-06-16 Angel Velasquez <angvp@archlinux.org> - * Fixed #FS24660 - * Rebuilt against db 5.2.28 - -2011-05-16 Angel Velasquez <angvp@archlinux.org> - * perl 5.14.0 - * Removed patch for h2ph warning from 5.12.3 - * Removed provides array, you can use corelist -v 5.14.0 to know the - modules included with the perl core, through Module::CoreList (thx j3nnn1 - for the tip) - -2010-11-07 kevin <kevin@archlinux.org> - - * perl 5.12.2-1 - - Using /usr/bin/*_perl for script directories - -2010-11-06 kevin <kevin@archlinux.org> - - - Removed otherlibdirs directive from Configure - - Removed /usr/*/perl5/site_perl/5.10.1 from INC - - Finally removed legacy dirs /usr/lib/perl5/current and - /usr/lib/perl5/site_perl/current from @INC - -2010-05-23 kevin <kevin@archlinux.org> - - * perl 5.12.1-2 - - Francois updated the provides array. - -2010-05-23 kevin <kevin@archlinux.org> - - * perl 5.12.1-1 - -2010-05-16 kevin <kevin@archlinux.org> - - * perl 5.12.0-2 - -2010-05-12 kevin <kevin@archlinux.org> - - - FS#19411. Removed the for loop in perlbin.sh which didn't work on zsh. - This makes the loop variables unnecessary so the script no longer - pollutes the user's environment. - - FS#19427. Added /usr/*/perl5/site_perl/5.10.1 to otherlibdirs to support - user built modules. - -2010-05-09 kevin <kevin@archlinux.org> - - * perl 5.12.0-1 - - Modified perlbin.sh to only add existing dirs to PATH. Fixes FS#17402, - path points to non-existant directories - -2010-05-07 kevin <kevin@archlinux.org> - - - Added this changelog. - - Added -Dinc_version_list=none to fix FS#19136, double entry in @INC. - This removes the duplicates and versioned directory entries. - - Change scriptdirs to /usr/lib/perl5/{core,vendor,site}_perl/bin to fix - Fix FS#13808, binaries don't follow FHS. - - Stopped using versioned directories in sitelib and sitearch. - - -# vim: set ft=changelog ts=4 sw=4 et: diff --git a/testing/perl/PKGBUILD b/testing/perl/PKGBUILD deleted file mode 100644 index d25f2aae4..000000000 --- a/testing/perl/PKGBUILD +++ /dev/null @@ -1,103 +0,0 @@ -# $Id: PKGBUILD 129898 2011-06-29 17:25:10Z foutrelis $ -# Maintainer: Angel Velasquez <angvp@archlinux.org> -# Contributor: kevin <kevin.archlinux.org> -# Contributor: judd <jvinet.zeroflux.org> -# Contributor: francois <francois.archlinux.org> -pkgname=perl -pkgver=5.14.1 -pkgrel=3 -pkgdesc="A highly capable, feature-rich programming language" -arch=(i686 x86_64) -license=('GPL' 'PerlArtistic') -url="http://www.perl.org" -groups=('base') -depends=('gdbm' 'db' 'coreutils' 'glibc' 'sh') -changelog=ChangeLog -source=(http://www.cpan.org/src/5.0/perl-${pkgver}.tar.bz2 -perlbin.sh -perlbin.csh -0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch) -install=perl.install -options=('!makeflags' '!purge') -md5sums=('97cd306a2c22929cc141a09568f43bb0' - '5ed2542fdb9a60682f215bd33701e61a' - '1f0cbbee783e8a6d32f01be5118e0d5e' - 'c25d86206d649046538c3daab7874564') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - - if [ "${CARCH}" = "x86_64" ]; then - # for x86_64 - arch_opts="-Dcccdlflags='-fPIC'" - else - # for i686 - arch_opts="" - fi - ./Configure -des -Dusethreads -Duseshrplib -Doptimize="${CFLAGS}" \ - -Dprefix=/usr -Dinstallprefix=${pkgdir}/usr -Dvendorprefix=/usr \ - -Dprivlib=/usr/share/perl5/core_perl \ - -Darchlib=/usr/lib/perl5/core_perl \ - -Dsitelib=/usr/share/perl5/site_perl \ - -Dsitearch=/usr/lib/perl5/site_perl \ - -Dvendorlib=/usr/share/perl5/vendor_perl \ - -Dvendorarch=/usr/lib/perl5/vendor_perl \ - -Dscriptdir=/usr/bin/core_perl \ - -Dsitescript=/usr/bin/site_perl \ - -Dvendorscript=/usr/bin/vendor_perl \ - -Dinc_version_list=none \ - -Dman1ext=1perl -Dman3ext=3perl ${arch_opts} \ - -Dlddlflags="-shared ${LDFLAGS}" -Dldflags="${LDFLAGS}" - patch -Np1 -i $srcdir/0001-Append-CFLAGS-and-LDFLAGS-to-their-Config.pm-counter.patch - make -} -package() { - cd ${srcdir}/${pkgname}-${pkgver} - make install - - ### Perl Settings ### - # Change man page extensions for site and vendor module builds. - # Use archlinux email address instead of my own. - sed -e '/^man1ext=/ s/1perl/1p/' -e '/^man3ext=/ s/3perl/3pm/' \ - -e "/^cf_email=/ s/'.*'/'kevin@archlinux.org'/" \ - -e "/^perladmin=/ s/'.*'/'kevin@archlinux.org'/" \ - -i ${pkgdir}/usr/lib/perl5/core_perl/Config_heavy.pl - - ### CPAN Settings ### - # Set CPAN default config to use the site directories. - sed -e '/(makepl_arg =>/ s/""/"INSTALLDIRS=site"/' \ - -e '/(mbuildpl_arg =>/ s/""/"installdirs=site"/' \ - -i ${pkgdir}/usr/share/perl5/core_perl/CPAN/FirstTime.pm - - ### CPANPLUS Settings ### - # Set CPANPLUS default config to use the site directories. - sed -e "/{'makemakerflags'}/ s/'';/'INSTALLDIRS=site';/" \ - -e "/{'buildflags'}/ s/'';/'installdirs=site';/" \ - -i ${pkgdir}/usr/share/perl5/core_perl/CPANPLUS/Config.pm - - # Profile script to set paths to perl scripts. - install -D -m755 ${srcdir}/perlbin.sh \ - ${pkgdir}/etc/profile.d/perlbin.sh - # Profile script to set paths to perl scripts on csh. (FS#22441) - install -D -m755 ${srcdir}/perlbin.csh \ - ${pkgdir}/etc/profile.d/perlbin.csh - - (cd ${pkgdir}/usr/bin; mv perl${pkgver} perl) - (cd ${pkgdir}/usr/bin/core_perl; ln -sf c2ph pstruct; ln -sf s2p psed) - grep -Rl "${pkgdir}" ${pkgdir}/usr | \ - xargs sed -i "s^${pkgdir}^^g" - - # Remove all pod files *except* those under /usr/share/perl5/core_perl/pod/ - # (FS#16488) - rm -f $pkgdir/usr/share/perl5/core_perl/*.pod - for d in $pkgdir/usr/share/perl5/core_perl/*; do - if [ -d $d -a $(basename $d) != "pod" ]; then - find $d -name *.pod -delete - fi - done - find $pkgdir/usr/lib -name *.pod -delete - find $pkgdir -name .packlist -delete - # Add /usr/lib/perl5/core_perl/CORE/ to standard library path (FS#24660) - install -dv ${pkgdir}/etc/ld.so.conf.d - echo "/usr/lib/perl5/core_perl/CORE" > ${pkgdir}/etc/ld.so.conf.d/perl.conf -} diff --git a/testing/perl/fix-h2ph-and-tests.patch b/testing/perl/fix-h2ph-and-tests.patch deleted file mode 100644 index a2d176ec6..000000000 --- a/testing/perl/fix-h2ph-and-tests.patch +++ /dev/null @@ -1,104 +0,0 @@ -From 8d66b3f930dc6d88b524d103e304308ae73a46e7 Mon Sep 17 00:00:00 2001 -From: Robin Barker <rmbarker@cpan.org> -Date: Thu, 22 Apr 2010 11:51:20 +0100 -Subject: [PATCH 1/1] Fix h2ph and test - ---- - lib/h2ph.t | 12 ++++++++++-- - utils/h2ph.PL | 28 +++++++++++++++++++++++----- - 2 files changed, 33 insertions(+), 7 deletions(-) - -diff --git a/lib/h2ph.t b/lib/h2ph.t -index 27dd7b9..8d62d46 100644 ---- a/lib/h2ph.t -+++ b/lib/h2ph.t -@@ -18,7 +18,7 @@ if (!(-e $extracted_program)) { - exit 0; - } - --plan(4); -+plan(5); - - # quickly compare two text files - sub txt_compare { -@@ -41,8 +41,16 @@ $result = runperl( progfile => 'lib/h2ph.pht', - stderr => 1 ); - like( $result, qr/syntax OK$/, "output compiles"); - -+$result = runperl( progfile => '_h2ph_pre.ph', -+ switches => ['-c'], -+ stderr => 1 ); -+like( $result, qr/syntax OK$/, "preamble compiles"); -+ - $result = runperl( switches => ["-w"], -- prog => '$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);'); -+ stderr => 1, -+ prog => <<'PROG' ); -+$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht); -+PROG - is( $result, '', "output free of warnings" ); - - # cleanup -diff --git a/utils/h2ph.PL b/utils/h2ph.PL -index 8f56db4..1255807 100644 ---- a/utils/h2ph.PL -+++ b/utils/h2ph.PL -@@ -401,7 +401,10 @@ if ($opt_e && (scalar(keys %bad_file) > 0)) { - exit $Exit; - - sub expr { -- $new = '"(assembly code)"' and return if /\b__asm__\b/; # freak out. -+ if (/\b__asm__\b/) { # freak out -+ $new = '"(assembly code)"'; -+ return -+ } - my $joined_args; - if(keys(%curargs)) { - $joined_args = join('|', keys(%curargs)); -@@ -770,7 +773,7 @@ sub inc_dirs - sub build_preamble_if_necessary - { - # Increment $VERSION every time this function is modified: -- my $VERSION = 2; -+ my $VERSION = 3; - my $preamble = "$Dest_dir/_h2ph_pre.ph"; - - # Can we skip building the preamble file? -@@ -798,7 +801,16 @@ sub build_preamble_if_necessary - # parenthesized value: d=(v) - $define{$_} = $1; - } -- if ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { -+ if (/^(\w+)\((\w)\)$/) { -+ my($macro, $arg) = ($1, $2); -+ my $def = $define{$_}; -+ $def =~ s/$arg/\$\{$arg\}/g; -+ print PREAMBLE <<DEFINE; -+unless (defined &$macro) { sub $macro(\$) { my (\$$arg) = \@_; \"$def\" } } -+ -+DEFINE -+ } elsif -+ ($define{$_} =~ /^([+-]?(\d+)?\.\d+([eE][+-]?\d+)?)[FL]?$/) { - # float: - print PREAMBLE - "unless (defined &$_) { sub $_() { $1 } }\n\n"; -@@ -807,8 +819,14 @@ sub build_preamble_if_necessary - print PREAMBLE - "unless (defined &$_) { sub $_() { $1 } }\n\n"; - } elsif ($define{$_} =~ /^\w+$/) { -- print PREAMBLE -- "unless (defined &$_) { sub $_() { &$define{$_} } }\n\n"; -+ my $def = $define{$_}; -+ if ($isatype{$def}) { -+ print PREAMBLE -+ "unless (defined &$_) { sub $_() { \"$def\" } }\n\n"; -+ } else { -+ print PREAMBLE -+ "unless (defined &$_) { sub $_() { &$def } }\n\n"; -+ } - } else { - print PREAMBLE - "unless (defined &$_) { sub $_() { \"", --- -1.6.5.2.74.g610f9.dirty - diff --git a/testing/perl/perl.install b/testing/perl/perl.install deleted file mode 100644 index 3f7d58f23..000000000 --- a/testing/perl/perl.install +++ /dev/null @@ -1,18 +0,0 @@ -# arg 1: the new package version -post_install() { - for ver in 5.8.{0,1,2,3,4,5,6,7,8}; do - [ -h usr/lib/perl5/$ver ] && rm usr/lib/perl5/$ver - [ -h usr/lib/perl5/site_perl/$ver ] && rm usr/lib/perl5/site_perl/$ver - [ -h usr/bin/perl$ver ] && rm usr/bin/perl$ver - done - return 0 -} - -post_upgrade() { - echo '- The directories /usr/lib/perl5/current, /usr/lib/perl5/site_perl/current,' - echo ' /usr/lib/perl5/site_perl/5.10.1, and /usr/share/perl5/site_perl/5.10.1' - echo ' have been removed from @INC.' - - echo '- The script/binary directories are now /usr/bin/*_perl instead of' - echo ' /usr/lib/perl5/*_perl/bin which will be eventually removed.' -} diff --git a/testing/perl/perlbin.csh b/testing/perl/perlbin.csh deleted file mode 100644 index 535f0b18d..000000000 --- a/testing/perl/perlbin.csh +++ /dev/null @@ -1,15 +0,0 @@ -# Set path to perl scriptdirs if they exist -# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts -# Added /usr/bin/*_perl dirs for scripts -# Remove /usr/lib/perl5/*_perl/bin in next release - -[ -d /usr/bin/site_perl ] && setenv PATH ${PATH}:/usr/bin/site_perl -[ -d /usr/lib/perl5/site_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/site_perl/bin - -[ -d /usr/bin/vendor_perl ] && setenv PATH ${PATH}:/usr/bin/vendor_perl -[ -d /usr/lib/perl5/vendor_perl/bin ] && setenv PATH ${PATH}:/usr/lib/perl5/vendor_perl/bin - -[ -d /usr/bin/core_perl ] && setenv PATH ${PATH}:/usr/bin/core_perl - -# If you have modules in non-standard directories you can add them here. -#export PERLLIB=dir1:dir2 diff --git a/testing/perl/perlbin.sh b/testing/perl/perlbin.sh deleted file mode 100755 index 20f830436..000000000 --- a/testing/perl/perlbin.sh +++ /dev/null @@ -1,18 +0,0 @@ -# Set path to perl scriptdirs if they exist -# https://wiki.archlinux.org/index.php/Perl_Policy#Binaries_and_Scripts -# Added /usr/bin/*_perl dirs for scripts -# Remove /usr/lib/perl5/*_perl/bin in next release - -[ -d /usr/bin/site_perl ] && PATH=$PATH:/usr/bin/site_perl -[ -d /usr/lib/perl5/site_perl/bin ] && PATH=$PATH:/usr/lib/perl5/site_perl/bin - -[ -d /usr/bin/vendor_perl ] && PATH=$PATH:/usr/bin/vendor_perl -[ -d /usr/lib/perl5/vendor_perl/bin ] && PATH=$PATH:/usr/lib/perl5/vendor_perl/bin - -[ -d /usr/bin/core_perl ] && PATH=$PATH:/usr/bin/core_perl - -export PATH - -# If you have modules in non-standard directories you can add them here. -#export PERLLIB=dir1:dir2 - diff --git a/testing/php/PKGBUILD b/testing/php/PKGBUILD deleted file mode 100644 index 4e7f515cd..000000000 --- a/testing/php/PKGBUILD +++ /dev/null @@ -1,379 +0,0 @@ -# $Id: PKGBUILD 127446 2011-06-15 08:33:01Z pierre $ -# Maintainer: Pierre Schmitz <pierre@archlinux.de> - -pkgbase=php -pkgname=('php' - 'php-cgi' - 'php-apache' - 'php-fpm' - 'php-embed' - 'php-pear' - 'php-curl' - 'php-enchant' - 'php-gd' - 'php-gmp' - 'php-intl' - 'php-ldap' - 'php-mcrypt' - 'php-mssql' - 'php-odbc' - 'php-pgsql' - 'php-pspell' - 'php-snmp' - 'php-sqlite' - 'php-tidy' - 'php-xsl') -pkgver=5.3.6 -pkgrel=5 -_suhosinver=${pkgver}-0.9.10 -arch=('i686' 'x86_64') -license=('PHP') -url='http://www.php.net' -makedepends=('apache' 'imap' 'postgresql-libs' 'mysql' 'libldap' 'postfix' - 'sqlite3' 'unixodbc' 'net-snmp' 'libzip' 'enchant' 'file' 'freetds' - 'libmcrypt' 'tidyhtml' 'aspell' 'libtool' 'libpng' 'libjpeg' 'icu' - 'curl' 'libxslt' 'openssl' 'bzip2' 'db' 'gmp' 'freetype2') -source=("http://www.php.net/distributions/${pkgbase}-${pkgver}.tar.bz2" - "suhosin-patch-${_suhosinver}.patch.gz" - 'php.ini.patch' 'apache.conf' 'rc.d.php-fpm' 'php-fpm.conf.in.patch' - 'logrotate.d.php-fpm') -md5sums=('2286f5a82a6e8397955a0025c1c2ad98' - 'fff1a38877142f3ae6036dbe5a85d0a6' - '39eaa70d276fc3d45d6bcf6cd5ae1106' - 'dec2cbaad64e3abf4f0ec70e1de4e8e9' - 'b01be5f816988fcee7e78225836e5e27' - 'd50ff349da08110a7cc8c691ce2d0423' - '07c4e412909ac65a44ec90e7a2c4bade') - -build() { - # ldap-sasl does not compile with --as-needed - export LDFLAGS="${LDFLAGS//-Wl,--as-needed}" - export LDFLAGS="${LDFLAGS//,--as-needed}" - - phpconfig="--srcdir=../${pkgbase}-${pkgver} \ - --prefix=/usr \ - --sysconfdir=/etc/php \ - --localstatedir=/var \ - --with-layout=GNU \ - --with-config-file-path=/etc/php \ - --with-config-file-scan-dir=/etc/php/conf.d \ - --enable-inline-optimization \ - --disable-debug \ - --disable-rpath \ - --disable-static \ - --enable-shared \ - --mandir=/usr/share/man \ - --without-pear \ - " - - phpextensions="--enable-bcmath=shared \ - --enable-calendar=shared \ - --enable-dba=shared \ - --enable-exif=shared \ - --enable-ftp=shared \ - --enable-gd-native-ttf \ - --enable-intl=shared \ - --enable-json=shared \ - --enable-mbregex \ - --enable-mbstring \ - --enable-pdo \ - --enable-phar=shared \ - --enable-posix=shared \ - --enable-session \ - --enable-shmop=shared \ - --enable-soap=shared \ - --enable-sockets=shared \ - --enable-sqlite-utf8 \ - --enable-sysvmsg=shared \ - --enable-sysvsem=shared \ - --enable-sysvshm=shared \ - --enable-xml \ - --enable-zip=shared \ - --with-bz2=shared \ - --with-curl=shared \ - --with-db4=/usr \ - --with-enchant=shared,/usr \ - --with-freetype-dir=shared,/usr \ - --with-gd=shared \ - --with-gdbm=shared \ - --with-gettext=shared \ - --with-gmp=shared \ - --with-iconv=shared \ - --with-icu-dir=/usr \ - --with-imap-ssl=shared \ - --with-imap=shared \ - --with-jpeg-dir=shared,/usr \ - --with-ldap=shared \ - --with-ldap-sasl \ - --with-mcrypt=shared \ - --with-mhash \ - --with-mssql=shared \ - --with-mysql-sock=/var/run/mysqld/mysqld.sock \ - --with-mysql=shared,mysqlnd \ - --with-mysqli=shared,mysqlnd \ - --with-openssl=shared \ - --with-pcre-regex=/usr \ - --with-pdo-mysql=shared,mysqlnd \ - --with-pdo-odbc=shared,unixODBC,/usr \ - --with-pdo-pgsql=shared \ - --with-pdo-sqlite=shared,/usr \ - --with-pgsql=shared \ - --with-png-dir=shared,/usr \ - --with-pspell=shared \ - --with-regex=php \ - --with-snmp=shared \ - --with-sqlite3=shared,/usr \ - --with-sqlite=shared \ - --with-tidy=shared \ - --with-unixODBC=shared,/usr \ - --with-xmlrpc=shared \ - --with-xsl=shared \ - --with-zlib \ - --without-db2 \ - --without-db3 \ - " - - EXTENSION_DIR=/usr/lib/php/modules - export EXTENSION_DIR - PEAR_INSTALLDIR=/usr/share/pear - export PEAR_INSTALLDIR - - cd ${srcdir}/${pkgbase}-${pkgver} - - # apply suhosin patch - patch -p1 -i ${srcdir}/suhosin-patch-${_suhosinver}.patch - - # adjust paths - patch -p0 -i ${srcdir}/php.ini.patch - patch -p0 -i ${srcdir}/php-fpm.conf.in.patch - - # php - mkdir ${srcdir}/build-php - cd ${srcdir}/build-php - ln -s ../${pkgbase}-${pkgver}/configure - ./configure ${phpconfig} \ - --disable-cgi \ - --with-readline \ - --enable-pcntl \ - ${phpextensions} - make - - # cgi and fcgi - # reuse the previous run; this will save us a lot of time - cp -a ${srcdir}/build-php ${srcdir}/build-cgi - cd ${srcdir}/build-cgi - ./configure ${phpconfig} \ - --disable-cli \ - --enable-cgi \ - ${phpextensions} - make - - # apache - cp -a ${srcdir}/build-php ${srcdir}/build-apache - cd ${srcdir}/build-apache - ./configure ${phpconfig} \ - --disable-cli \ - --with-apxs2 \ - ${phpextensions} - make - - # fpm - cp -a ${srcdir}/build-php ${srcdir}/build-fpm - cd ${srcdir}/build-fpm - ./configure ${phpconfig} \ - --disable-cli \ - --enable-fpm \ - --with-fpm-user=http \ - --with-fpm-group=http \ - ${phpextensions} - make - - # embed - cp -a ${srcdir}/build-php ${srcdir}/build-embed - cd ${srcdir}/build-embed - ./configure ${phpconfig} \ - --disable-cli \ - --enable-embed=shared \ - ${phpextensions} - make - - # pear - cp -a ${srcdir}/build-php ${srcdir}/build-pear - cd ${srcdir}/build-pear - ./configure ${phpconfig} \ - --disable-cgi \ - --with-readline \ - --enable-pcntl \ - --with-pear \ - ${phpextensions} - make -} - -# check() { -# cd ${srcdir}/build-php -# make test -# } - -package_php() { - pkgdesc='An HTML-embedded scripting language' - depends=('pcre' 'libxml2' 'bzip2' 'openssl') - replaces=('php-fileinfo') - provides=('php-fileinfo') - conflicts=('php-fileinfo') - backup=('etc/php/php.ini') - - cd ${srcdir}/build-php - make -j1 INSTALL_ROOT=${pkgdir} install - install -d -m755 ${pkgdir}/usr/share/pear - # install php.ini - install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/php.ini-production ${pkgdir}/etc/php/php.ini - install -d -m755 ${pkgdir}/etc/php/conf.d/ - - # remove static modules - rm -f ${pkgdir}/usr/lib/php/modules/*.a - # remove modules provided by sub packages - rm -f ${pkgdir}/usr/lib/php/modules/{curl,enchant,gd,gmp,intl,ldap,mcrypt,mssql,odbc,pdo_odbc,pgsql,pdo_pgsql,pspell,snmp,sqlite3,pdo_sqlite,tidy,xsl}.so -} - -package_php-cgi() { - pkgdesc='CGI and FCGI SAPI for PHP' - depends=('php' 'pcre' 'libxml2') - - install -D -m755 ${srcdir}/build-cgi/sapi/cgi/php-cgi ${pkgdir}/usr/bin/php-cgi -} - -package_php-apache() { - pkgdesc='Apache SAPI for PHP' - depends=('php' 'apache' 'pcre' 'libxml2') - backup=('etc/httpd/conf/extra/php5_module.conf') - - install -D -m755 ${srcdir}/build-apache/libs/libphp5.so ${pkgdir}/usr/lib/httpd/modules/libphp5.so - install -D -m644 ${srcdir}/apache.conf ${pkgdir}/etc/httpd/conf/extra/php5_module.conf -} - -package_php-fpm() { - pkgdesc='FastCGI Process Manager for PHP' - depends=('php') - backup=('etc/php/php-fpm.conf') - - install -D -m755 ${srcdir}/build-fpm/sapi/fpm/php-fpm ${pkgdir}/usr/sbin/php-fpm - install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.8 ${pkgdir}/usr/share/man/man8/php-fpm.8 - install -D -m644 ${srcdir}/build-fpm/sapi/fpm/php-fpm.conf ${pkgdir}/etc/php/php-fpm.conf - install -D -m755 ${srcdir}/rc.d.php-fpm ${pkgdir}/etc/rc.d/php-fpm - install -D -m644 ${srcdir}/logrotate.d.php-fpm ${pkgdir}/etc/logrotate.d/php-fpm - install -d -m755 ${pkgdir}/etc/php/fpm.d -} - -package_php-embed() { - pkgdesc='Embed SAPI for PHP' - depends=('php' 'pcre' 'libxml2') - - install -D -m755 ${srcdir}/build-embed/libs/libphp5.so ${pkgdir}/usr/lib/libphp5.so - install -D -m644 ${srcdir}/${pkgbase}-${pkgver}/sapi/embed/php_embed.h ${pkgdir}/usr/include/php/sapi/embed/php_embed.h -} - -package_php-pear() { - pkgdesc='PHP Extension and Application Repository' - depends=('php' 'bash') - backup=('etc/php/pear.conf') - - cd ${srcdir}/build-pear - make -j1 install-pear INSTALL_ROOT=${pkgdir} - local i - while read i; do - [ ! -e "$i" ] || rm -rf "$i" - done < <(find ${pkgdir} -name '.*') -} - -package_php-curl() { - depends=('php' 'curl') - pkgdesc='curl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/curl.so ${pkgdir}/usr/lib/php/modules/curl.so -} - -package_php-enchant() { - depends=('php' 'enchant') - pkgdesc='enchant module for PHP' - install -D -m755 ${srcdir}/build-php/modules/enchant.so ${pkgdir}/usr/lib/php/modules/enchant.so -} - -package_php-gd() { - depends=('php' 'libpng' 'libjpeg' 'freetype2') - pkgdesc='gd module for PHP' - install -D -m755 ${srcdir}/build-php/modules/gd.so ${pkgdir}/usr/lib/php/modules/gd.so -} - -package_php-gmp() { - depends=('php' 'gmp') - pkgdesc='gmp module for PHP' - install -D -m755 ${srcdir}/build-php/modules/gmp.so ${pkgdir}/usr/lib/php/modules/gmp.so -} - -package_php-intl() { - depends=('php' 'icu') - pkgdesc='intl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/intl.so ${pkgdir}/usr/lib/php/modules/intl.so -} - -package_php-ldap() { - depends=('php' 'libldap') - pkgdesc='ldap module for PHP' - install -D -m755 ${srcdir}/build-php/modules/ldap.so ${pkgdir}/usr/lib/php/modules/ldap.so -} - -package_php-mcrypt() { - depends=('php' 'libmcrypt' 'libtool') - pkgdesc='mcrypt module for PHP' - install -D -m755 ${srcdir}/build-php/modules/mcrypt.so ${pkgdir}/usr/lib/php/modules/mcrypt.so -} - -package_php-mssql() { - depends=('php' 'freetds') - pkgdesc='mssql module for PHP' - install -D -m755 ${srcdir}/build-php/modules/mssql.so ${pkgdir}/usr/lib/php/modules/mssql.so -} - -package_php-odbc() { - depends=('php' 'unixodbc') - pkgdesc='ODBC modules for PHP' - install -D -m755 ${srcdir}/build-php/modules/odbc.so ${pkgdir}/usr/lib/php/modules/odbc.so - install -D -m755 ${srcdir}/build-php/modules/pdo_odbc.so ${pkgdir}/usr/lib/php/modules/pdo_odbc.so -} - -package_php-pgsql() { - depends=('php' 'postgresql-libs') - pkgdesc='PostgreSQL modules for PHP' - install -D -m755 ${srcdir}/build-php/modules/pgsql.so ${pkgdir}/usr/lib/php/modules/pgsql.so - install -D -m755 ${srcdir}/build-php/modules/pdo_pgsql.so ${pkgdir}/usr/lib/php/modules/pdo_pgsql.so -} - -package_php-pspell() { - depends=('php' 'aspell') - pkgdesc='pspell module for PHP' - install -D -m755 ${srcdir}/build-php/modules/pspell.so ${pkgdir}/usr/lib/php/modules/pspell.so -} - -package_php-snmp() { - depends=('php' 'net-snmp') - pkgdesc='snmp module for PHP' - install -D -m755 ${srcdir}/build-php/modules/snmp.so ${pkgdir}/usr/lib/php/modules/snmp.so -} - -package_php-sqlite() { - depends=('php' 'sqlite3') - pkgdesc='sqlite3 module for PHP' - install -D -m755 ${srcdir}/build-php/modules/sqlite3.so ${pkgdir}/usr/lib/php/modules/sqlite3.so - install -D -m755 ${srcdir}/build-php/modules/pdo_sqlite.so ${pkgdir}/usr/lib/php/modules/pdo_sqlite.so -} - -package_php-tidy() { - depends=('php' 'tidyhtml') - pkgdesc='tidy module for PHP' - install -D -m755 ${srcdir}/build-php/modules/tidy.so ${pkgdir}/usr/lib/php/modules/tidy.so -} - -package_php-xsl() { - depends=('php' 'libxslt') - pkgdesc='xsl module for PHP' - install -D -m755 ${srcdir}/build-php/modules/xsl.so ${pkgdir}/usr/lib/php/modules/xsl.so -} diff --git a/testing/php/apache.conf b/testing/php/apache.conf deleted file mode 100644 index c3ca0aad5..000000000 --- a/testing/php/apache.conf +++ /dev/null @@ -1,13 +0,0 @@ -# Required modules: dir_module, php5_module - -<IfModule dir_module> - <IfModule php5_module> - DirectoryIndex index.php index.html - <FilesMatch "\.php$"> - SetHandler application/x-httpd-php - </FilesMatch> - <FilesMatch "\.phps$"> - SetHandler application/x-httpd-php-source - </FilesMatch> - </IfModule> -</IfModule> diff --git a/testing/php/logrotate.d.php-fpm b/testing/php/logrotate.d.php-fpm deleted file mode 100644 index 7a1ba2597..000000000 --- a/testing/php/logrotate.d.php-fpm +++ /dev/null @@ -1,6 +0,0 @@ -/var/log/php-fpm.log { - missingok - postrotate - /etc/rc.d/php-fpm logrotate >/dev/null || true - endscript -} diff --git a/testing/php/php-fpm.conf.in.patch b/testing/php/php-fpm.conf.in.patch deleted file mode 100644 index 93c62430a..000000000 --- a/testing/php/php-fpm.conf.in.patch +++ /dev/null @@ -1,80 +0,0 @@ ---- sapi/fpm/php-fpm.conf.in 2010-12-11 08:31:47.695294987 +0100 -+++ sapi/fpm/php-fpm.conf.in 2010-12-11 08:31:55.907812237 +0100 -@@ -12,7 +12,7 @@ - ; Relative path can also be used. They will be prefixed by: - ; - the global prefix if it's been set (-p arguement) - ; - @prefix@ otherwise --;include=etc/fpm.d/*.conf -+;include=/etc/php/fpm.d/*.conf - - ;;;;;;;;;;;;;;;;;; - ; Global Options ; -@@ -22,7 +22,7 @@ - ; Pid file - ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ - ; Default Value: none --;pid = run/php-fpm.pid -+pid = run/php-fpm/php-fpm.pid - - ; Error log file - ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ -@@ -93,7 +93,8 @@ - ; specific port; - ; '/path/to/unix/socket' - to listen on a unix socket. - ; Note: This value is mandatory. --listen = 127.0.0.1:9000 -+;listen = 127.0.0.1:9000 -+listen = /var/run/php-fpm/php-fpm.sock - - ; Set listen(2) backlog. A value of '-1' means unlimited. - ; Default Value: 128 (-1 on FreeBSD and OpenBSD) -@@ -112,9 +113,9 @@ - ; BSD-derived systems allow connections regardless of permissions. - ; Default Values: user and group are set as the running user - ; mode is set to 0666 --;listen.owner = @php_fpm_user@ --;listen.group = @php_fpm_group@ --;listen.mode = 0666 -+listen.owner = @php_fpm_user@ -+listen.group = @php_fpm_group@ -+listen.mode = 0660 - - ; Unix user/group of processes - ; Note: The user is mandatory. If the group is not set, the default user's group -@@ -154,23 +155,23 @@ - ; The number of child processes created on startup. - ; Note: Used only when pm is set to 'dynamic' - ; Default Value: min_spare_servers + (max_spare_servers - min_spare_servers) / 2 --;pm.start_servers = 20 -+pm.start_servers = 20 - - ; The desired minimum number of idle server processes. - ; Note: Used only when pm is set to 'dynamic' - ; Note: Mandatory when pm is set to 'dynamic' --;pm.min_spare_servers = 5 -+pm.min_spare_servers = 5 - - ; The desired maximum number of idle server processes. - ; Note: Used only when pm is set to 'dynamic' - ; Note: Mandatory when pm is set to 'dynamic' --;pm.max_spare_servers = 35 -+pm.max_spare_servers = 35 - - ; The number of requests each child process should execute before respawning. - ; This can be useful to work around memory leaks in 3rd party libraries. For - ; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS. - ; Default Value: 0 --;pm.max_requests = 500 -+pm.max_requests = 500 - - ; The URI to view the FPM status page. If this value is not set, no URI will be - ; recognized as a status page. By default, the status page shows the following -@@ -264,7 +265,7 @@ - ; Chdir to this directory at the start. - ; Note: relative path can be used. - ; Default Value: current directory or / when chroot --;chdir = /var/www -+;chdir = /srv/http - - ; Redirect worker stdout and stderr into main error log. If not set, stdout and - ; stderr will be redirected to /dev/null according to FastCGI specs. diff --git a/testing/php/php.ini.patch b/testing/php/php.ini.patch deleted file mode 100644 index 356e190b4..000000000 --- a/testing/php/php.ini.patch +++ /dev/null @@ -1,126 +0,0 @@ ---- php.ini-production 2011-02-09 01:25:44.000000000 +0100 -+++ php.ini-production 2011-03-19 11:11:44.496987763 +0100 -@@ -376,7 +376,7 @@ - ; or per-virtualhost web server configuration file. This directive is - ; *NOT* affected by whether Safe Mode is turned On or Off. - ; http://php.net/open-basedir --;open_basedir = -+open_basedir = /srv/http/:/home/:/tmp/:/usr/share/pear/ - - ; This directive allows you to disable certain functions for security reasons. - ; It receives a comma-delimited list of function names. This directive is -@@ -781,7 +781,7 @@ - ;;;;;;;;;;;;;;;;;;;;;;;;; - - ; UNIX: "/path1:/path2" --;include_path = ".:/php/includes" -+include_path = ".:/usr/share/pear" - ; - ; Windows: "\path1;\path2" - ;include_path = ".;c:\php\includes" -@@ -804,7 +804,7 @@ - - ; Directory in which the loadable extensions (modules) reside. - ; http://php.net/extension-dir --; extension_dir = "./" -+extension_dir = "/usr/lib/php/modules/" - ; On windows: - ; extension_dir = "ext" - -@@ -938,53 +938,49 @@ - ; If you only provide the name of the extension, PHP will look for it in its - ; default extension directory. - ; --; Windows Extensions --; Note that ODBC support is built in, so no dll is needed for it. --; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5) --; extension folders as well as the separate PECL DLL download (PHP 5). --; Be sure to appropriately set the extension_dir directive. --; --;extension=php_bz2.dll --;extension=php_curl.dll --;extension=php_fileinfo.dll --;extension=php_gd2.dll --;extension=php_gettext.dll --;extension=php_gmp.dll --;extension=php_intl.dll --;extension=php_imap.dll --;extension=php_interbase.dll --;extension=php_ldap.dll --;extension=php_mbstring.dll --;extension=php_exif.dll ; Must be after mbstring as it depends on it --;extension=php_mysql.dll --;extension=php_mysqli.dll --;extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client --;extension=php_oci8_11g.dll ; Use with Oracle 11g Instant Client --;extension=php_openssl.dll --;extension=php_pdo_firebird.dll --;extension=php_pdo_mssql.dll --;extension=php_pdo_mysql.dll --;extension=php_pdo_oci.dll --;extension=php_pdo_odbc.dll --;extension=php_pdo_pgsql.dll --;extension=php_pdo_sqlite.dll --;extension=php_pgsql.dll --;extension=php_pspell.dll --;extension=php_shmop.dll -- --; The MIBS data available in the PHP distribution must be installed. --; See http://www.php.net/manual/en/snmp.installation.php --;extension=php_snmp.dll -- --;extension=php_soap.dll --;extension=php_sockets.dll --;extension=php_sqlite.dll --;extension=php_sqlite3.dll --;extension=php_sybase_ct.dll --;extension=php_tidy.dll --;extension=php_xmlrpc.dll --;extension=php_xsl.dll --;extension=php_zip.dll -+;extension=bcmath.so -+;extension=bz2.so -+;extension=calendar.so -+;extension=curl.so -+;extension=dba.so -+;extension=enchant.so -+;extension=exif.so -+;extension=ftp.so -+;extension=gd.so -+extension=gettext.so -+;extension=gmp.so -+;extension=iconv.so -+;extension=imap.so -+;extension=intl.so -+;extension=json.so -+;extension=ldap.so -+;extension=mcrypt.so -+;extension=mssql.so -+;extension=mysqli.so -+;extension=mysql.so -+;extension=odbc.so -+;extension=openssl.so -+;extension=pdo_mysql.so -+;extension=pdo_odbc.so -+;extension=pdo_pgsql.so -+;extension=pdo_sqlite.so -+;extension=pgsql.so -+;extension=phar.so -+;extension=posix.so -+;extension=pspell.so -+;extension=shmop.so -+;extension=snmp.so -+;extension=soap.so -+;extension=sockets.so -+;extension=sqlite3.so -+;extension=sqlite.so -+;extension=sysvmsg.so -+;extension=sysvsem.so -+;extension=sysvshm.so -+;extension=tidy.so -+;extension=xmlrpc.so -+;extension=xsl.so -+;extension=zip.so - - ;;;;;;;;;;;;;;;;;;; - ; Module Settings ; diff --git a/testing/php/rc.d.php-fpm b/testing/php/rc.d.php-fpm deleted file mode 100644 index 54bcf4d5b..000000000 --- a/testing/php/rc.d.php-fpm +++ /dev/null @@ -1,158 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - - -wait_for_pid () { - try=0 - while test $try -lt 35 ; do - case "$1" in - 'created') - if [ -f "$2" ] ; then - try='' - break - fi - ;; - 'removed') - if [ ! -f "$2" ] ; then - try='' - break - fi - ;; - esac - - stat_append '.' - try=`expr $try + 1` - sleep 1 - done -} - -test_config() { - stat_busy 'Checking configuration' - if [ $(id -u) -ne 0 ]; then - stat_append '(This script must be run as root)' - stat_die - fi - - if [ ! -r /etc/php/php-fpm.conf ]; then - stat_append '(/etc/php/php-fpm.conf not found)' - stat_die - fi - - local test=$(/usr/sbin/php-fpm -t 2>&1) - if [ $? -gt 0 ]; then - stat_append '(error in /etc/php/php-fpm.conf)' - stat_die - elif echo $test | grep -qi 'error'; then - stat_append '(error in /etc/php/php.ini)' - stat_die - fi - - [ -d /var/run/php-fpm ] || install -d -m755 /var/run/php-fpm - - stat_done -} - -case "$1" in - start) - test_config - stat_busy 'Starting php-fpm' - - /usr/sbin/php-fpm - - if [ "$?" != 0 ] ; then - stat_fail - exit 1 - fi - - wait_for_pid created /var/run/php-fpm/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - add_daemon php-fpm - stat_done - fi - ;; - - stop) - test_config - stat_busy 'Gracefully shutting down php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -QUIT `cat /var/run/php-fpm/php-fpm.pid` - - wait_for_pid removed /var/run/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - rm_daemon php-fpm - stat_done - fi - ;; - - force-quit) - stat_busy 'Terminating php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -TERM `cat /var/run/php-fpm/php-fpm.pid` - - wait_for_pid removed /var/run/php-fpm/php-fpm.pid - - if [ -n "$try" ] ; then - stat_fail - exit 1 - else - rm_daemon php-fpm - stat_done - fi - ;; - - restart) - $0 stop - $0 start - ;; - - reload) - test_config - stat_busy 'Reload service php-fpm' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -USR2 `cat /var/run/php-fpm/php-fpm.pid` - stat_done - ;; - - logrotate) - stat_busy 'Reopen php-fpm log' - - if [ ! -r /var/run/php-fpm/php-fpm.pid ] ; then - stat_fail - exit 1 - fi - - kill -USR1 `cat /var/run/php-fpm/php-fpm.pid` - stat_done - ;; - - *) - echo "usage: $0 {start|stop|force-quit|restart|reload|logrotate}" - exit 1 - ;; - -esac diff --git a/testing/php/suhosin-patch-5.3.6-0.9.10.patch.gz b/testing/php/suhosin-patch-5.3.6-0.9.10.patch.gz Binary files differdeleted file mode 100644 index 7167ce2d0..000000000 --- a/testing/php/suhosin-patch-5.3.6-0.9.10.patch.gz +++ /dev/null diff --git a/testing/postfix/PKGBUILD b/testing/postfix/PKGBUILD deleted file mode 100644 index 7ae08c572..000000000 --- a/testing/postfix/PKGBUILD +++ /dev/null @@ -1,64 +0,0 @@ -# $Id: PKGBUILD 127765 2011-06-18 08:12:47Z bisson $ -# Contributor: Jeff Brodnax <tullyarcher@bellsouth.net> -# Maintainer: Gaetan Bisson <bisson@archlinux.org> -# Maintainer: Paul Mattal <paul@archlinux.org> - -pkgname=postfix -pkgver=2.8.3 -pkgrel=4 -pkgdesc='Secure, fast, easy to administer drop in replacement for Sendmail (MTA)' -url='http://www.postfix.org/' -arch=('i686' 'x86_64') -license=('custom') -depends=('pcre' 'libsasl' 'libmysqlclient' 'postgresql-libs' 'sqlite3' 'libldap' 'db') -backup=('etc/postfix/'{access,aliases,canonical,generic,header_checks,main.cf,master.cf,relocated,transport,virtual}) -source=("ftp://ftp.porcupine.org/mirrors/postfix-release/official/${pkgname}-${pkgver}.tar.gz" \ - 'aliases.patch' \ - 'rc.d') -sha1sums=('2604066f158f5327449960afd6334b996dc01799' - '5fc3de6c7df1e5851a0a379e825148868808318b' - '40c6be2eb55e6437a402f43775cdb3d22ea87a66') - -provides=('smtp-server' 'smtp-forwarder') -replaces=('postfix-mysql' 'postfix-pgsql') -conflicts=('postfix-mysql' 'postfix-pgsql' 'smtp-server' 'smtp-forwarder') - -install=install - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - make makefiles DEBUG='' CCARGS=' \ - -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl \ - -DHAS_LDAP \ - -DUSE_TLS \ - -DHAS_MYSQL -I/usr/include/mysql \ - -DHAS_PGSQL -I/usr/include/postgresql \ - -DHAS_SQLITE \ - ' AUXLIBS=' \ - -lsasl2 \ - -lldap -llber \ - -lssl -lcrypto \ - -lmysqlclient -lz -lm \ - -lpq \ - -lsqlite3 -lpthread \ - ' OPT="${CFLAGS} ${LDFLAGS}" - - make -} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - - sh postfix-install -non-interactive \ - install_root="${pkgdir}" \ - daemon_directory="/usr/lib/${pkgname}" \ - sample_directory="/etc/${pkgname}/sample" \ - manpage_directory="/usr/share/man" - - install -D -m755 ../rc.d "${pkgdir}/etc/rc.d/${pkgname}" - install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - - cd "${pkgdir}" - patch -p0 < "${srcdir}"/aliases.patch -} diff --git a/testing/postfix/aliases.patch b/testing/postfix/aliases.patch deleted file mode 100644 index 6767870b7..000000000 --- a/testing/postfix/aliases.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- etc/postfix/main.cf.orig 2010-12-13 20:18:22.000000000 +0100 -+++ etc/postfix/main.cf 2010-12-13 20:18:24.000000000 +0100 -@@ -382,6 +382,7 @@ - #alias_maps = hash:/etc/aliases - #alias_maps = hash:/etc/aliases, nis:mail.aliases - #alias_maps = netinfo:/aliases -+alias_maps = hash:/etc/postfix/aliases - - # The alias_database parameter specifies the alias database(s) that - # are built with "newaliases" or "sendmail -bi". This is a separate -@@ -392,6 +393,7 @@ - #alias_database = dbm:/etc/mail/aliases - #alias_database = hash:/etc/aliases - #alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases -+alias_database = $alias_maps - - # ADDRESS EXTENSIONS (e.g., user+foo) - # diff --git a/testing/postfix/install b/testing/postfix/install deleted file mode 100644 index f5d81a565..000000000 --- a/testing/postfix/install +++ /dev/null @@ -1,35 +0,0 @@ -post_install() { - getent group postdrop &>/dev/null || groupadd -g 75 postdrop >/dev/null - getent group postfix &>/dev/null || groupadd -g 73 postfix >/dev/null - getent passwd postfix &>/dev/null || useradd -u 73 -d /var/spool/postfix -g postfix -s /bin/false postfix >/dev/null - - cd var/spool/postfix - chown postfix active bounce corrupt defer deferred flush hold incoming private public maildrop trace saved - chgrp postdrop public maildrop - cd ../../../usr/sbin - chgrp postdrop postqueue postdrop - chmod g+s postqueue postdrop - cd ../.. - chown postfix var/lib/postfix - - newaliases -} - -post_upgrade() { - post_install - - if [ `vercmp $2 2.8` = -1 ]; then cat <<EOF - -==> You must now execute "/etc/rc.d/postfix reload" (or restart). -==> This is needed because the queue manager to delivery agent -==> protocol has changed. - -EOF - fi -} - -pre_remove() { - getent passwd postfix &>/dev/null && userdel postfix >/dev/null - getent group postfix &>/dev/null && groupdel postfix >/dev/null - getent group postdrop &>/dev/null && groupdel postdrop >/dev/null -} diff --git a/testing/postfix/rc.d b/testing/postfix/rc.d deleted file mode 100755 index fa314bb84..000000000 --- a/testing/postfix/rc.d +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions - -name=postfix - -case "$1" in -start) - stat_busy "Starting $name daemon" - /usr/sbin/postfix start &>/dev/null \ - && { add_daemon $name; stat_done; } \ - || { stat_fail; exit 1; } - ;; -stop) - stat_busy "Stopping $name daemon" - /usr/sbin/postfix stop &>/dev/null \ - && { rm_daemon $name; stat_done; } \ - || { stat_fail; exit 1; } - ;; -reload) - stat_busy "Reloading $name daemon" - /usr/sbin/postfix reload &>/dev/null \ - && { stat_done; } \ - || { stat_fail; exit 1; } - ;; -restart) - $0 stop - sleep 1 - $0 start - ;; -*) - echo "usage: $0 {start|stop|restart|reload}" - ;; -esac -exit 0 diff --git a/testing/python2/PKGBUILD b/testing/python2/PKGBUILD deleted file mode 100644 index e0c363027..000000000 --- a/testing/python2/PKGBUILD +++ /dev/null @@ -1,83 +0,0 @@ -# $Id: PKGBUILD 129895 2011-06-29 15:22:59Z stephane $ -# Maintainer: Stéphane Gaudreault <stephane@archlinux.org> -# Contributer: Allan McRae <allan@archlinux.org> -# Contributer: Jason Chu <jason@archlinux.org> - -pkgname=python2 -pkgver=2.7.2 -pkgrel=2 -_pybasever=2.7 -pkgdesc="A high-level scripting language" -arch=('i686' 'x86_64') -license=('PSF') -url="http://www.python.org/" -depends=('bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite3' 'libffi') -makedepends=('tk') -optdepends=('tk: for IDLE') -conflicts=('python<3') -options=('!makeflags') -source=(http://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz) -sha1sums=('56700044141402dc35e7a0a24aa7ffda1a8c1a53') - -build() { - cd "${srcdir}/Python-${pkgver}" - - # Temporary workaround for FS#22322 - # See http://bugs.python.org/issue10835 for upstream report - sed -i "/progname =/s/python/python${_pybasever}/" Python/pythonrun.c - - # Enable built-in SQLite3 module to load extensions (fix FS#22122) - sed -i "/SQLITE_OMIT_LOAD_EXTENSION/d" setup.py - - # FS#23997 - sed -i -e "s|^#.* /usr/local/bin/python|#!/usr/bin/python2|" Lib/cgi.py - - # Ensure that we are using the system copy of various libraries (expat, zlib and libffi), - # rather than copies shipped in the tarball - rm -r Modules/expat - rm -r Modules/zlib - rm -r Modules/_ctypes/{darwin,libffi}* - - export OPT="${CFLAGS}" - ./configure --prefix=/usr --enable-shared --with-threads --enable-ipv6 \ - --enable-unicode=ucs4 --with-system-expat --with-system-ffi - - make -} - -package() { - cd "${srcdir}/Python-${pkgver}" - make DESTDIR="${pkgdir}" altinstall maninstall - - ln -sf python${_pybasever} "${pkgdir}/usr/bin/python2" - ln -sf python${_pybasever}-config "${pkgdir}/usr/bin/python2-config" - ln -sf python${_pybasever}.1 "${pkgdir}/usr/share/man/man1/python2.1" - - ln -sf ../../libpython${_pybasever}.so \ - "${pkgdir}/usr/lib/python${_pybasever}/config/libpython${_pybasever}.so" - - mv "${pkgdir}/usr/bin/smtpd.py" "${pkgdir}/usr/lib/python${_pybasever}/" - - # some useful "stuff" - install -dm755 "${pkgdir}"/usr/lib/python${_pybasever}/Tools/{i18n,scripts} - install -m755 Tools/i18n/{msgfmt,pygettext}.py \ - "${pkgdir}/usr/lib/python${_pybasever}/Tools/i18n/" - install -m755 Tools/scripts/{README,*py} \ - "${pkgdir}/usr/lib/python${_pybasever}/Tools/scripts/" - - # fix conflicts with python - mv "${pkgdir}"/usr/bin/idle{,2} - mv "${pkgdir}"/usr/bin/pydoc{,2} - mv "${pkgdir}"/usr/bin/2to3{,-2.7} - - # clean up #!s - find "${pkgdir}/usr/lib/python${_pybasever}/" -name '*.py' | \ - xargs sed -i "s|#[ ]*![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" - - # clean-up reference to build directory - sed -i "s#${srcdir}/Python-${pkgver}:##" \ - "${pkgdir}/usr/lib/python${_pybasever}/config/Makefile" - - # license - install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} diff --git a/testing/redland/PKGBUILD b/testing/redland/PKGBUILD deleted file mode 100644 index 949804063..000000000 --- a/testing/redland/PKGBUILD +++ /dev/null @@ -1,78 +0,0 @@ -# $Id: PKGBUILD 129914 2011-06-29 19:31:01Z andrea $ -# Maintainer: AndyRTR <andyrtr@archlinux.org> -# Contributor: Francois Charette <francois.archlinux.org> - -pkgbase=redland -epoch=1 -pkgname=('redland' 'redland-storage-mysql' 'redland-storage-postgresql' 'redland-storage-virtuoso' 'redland-storage-sqlite') -pkgver=1.0.13 -pkgrel=4 -url="http://librdf.org/" -license=("GPL") -arch=('i686' 'x86_64') -makedepends=('rasqal>=0.9.26' 'raptor>=2.0.3' 'db>=5.2' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3') -options=('!libtool') -source=(http://download.librdf.org/source/$pkgname-$pkgver.tar.gz - rpath.diff) -md5sums=('96c15f36f842ad7e1c9d225e4ca97b68' - 'acc85e784f01a656bd56777f95880787') - -build() { - cd ${srcdir}/${pkgname}-${pkgver} - ./configure --prefix=/usr \ - --enable-release \ - --disable-static \ - --with-raptor=system \ - --with-rasqal=system \ - --with-sqlite=3 - - # nuke rpath - patch -Np0 -i ${srcdir}/rpath.diff - - make -} - -package_redland() { - pkgdesc="Library that provides a high-level interface to RDF data" - depends=('rasqal>=0.9.26' 'raptor>=2.0.3' 'libtool') - - cd ${srcdir}/${pkgbase}-${pkgver} - make DESTDIR=${pkgdir} install - rm -rf ${pkgdir}/usr/lib/redland -} - -package_redland-storage-mysql() { - pkgdesc="MySQL storage support for Redland" - depends=('redland' 'libmysqlclient') - - cd ${srcdir}/${pkgbase}-${pkgver} - install -dm755 ${pkgdir}/usr/lib/redland - install -m755 src/.libs/librdf_storage_mysql.so ${pkgdir}/usr/lib/redland/librdf_storage_mysql.so -} - -package_redland-storage-postgresql() { - pkgdesc="PostgreSQL storage support for Redland" - depends=('redland' 'postgresql-libs') - - cd ${srcdir}/${pkgbase}-${pkgver} - install -dm755 ${pkgdir}/usr/lib/redland - install -m755 src/.libs/librdf_storage_postgresql.so ${pkgdir}/usr/lib/redland/ -} - -package_redland-storage-virtuoso() { - pkgdesc="Virtuoso storage support for Redland" - depends=('redland' 'unixodbc' 'db') - - cd ${srcdir}/${pkgbase}-${pkgver} - install -dm755 ${pkgdir}/usr/lib/redland - install -m755 src/.libs/librdf_storage_virtuoso.so ${pkgdir}/usr/lib/redland/ -} - -package_redland-storage-sqlite() { - pkgdesc="SQLite storage support for Redland" - depends=('redland' 'sqlite3' 'db') - - cd ${srcdir}/${pkgbase}-${pkgver} - install -dm755 ${pkgdir}/usr/lib/redland - install -m755 src/.libs/librdf_storage_sqlite.so ${pkgdir}/usr/lib/redland/ -} diff --git a/testing/redland/rpath.diff b/testing/redland/rpath.diff deleted file mode 100644 index 831bc80ed..000000000 --- a/testing/redland/rpath.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- libtool 2011-02-20 10:46:47.000000000 +0100 -+++ libtool.new 2011-02-20 10:52:58.285764909 +0100 -@@ -324,7 +324,7 @@ - - # Flag to hardcode $libdir into a binary during linking. - # This must work even if $libdir does not exist --hardcode_libdir_flag_spec="\${wl}-rpath \${wl}\$libdir" -+hardcode_libdir_flag_spec=" " - - # If ld is used when linking, flag to hardcode $libdir into a binary - # during linking. This must work even if $libdir does not exist. diff --git a/testing/ruby/PKGBUILD b/testing/ruby/PKGBUILD deleted file mode 100644 index a829449da..000000000 --- a/testing/ruby/PKGBUILD +++ /dev/null @@ -1,49 +0,0 @@ -# $Id: PKGBUILD 127449 2011-06-15 09:33:37Z eric $ -# Maintainer: -# Contributor: Allan McRae <allan@archlinux.org> -# Contributor: John Proctor <jproctor@prium.net> -# Contributor: Jeramy Rutley <jrutley@gmail.com> - -pkgbase=ruby -pkgname=('ruby' 'ruby-docs') -pkgver=1.9.2_p180 -pkgrel=3 -pkgdesc="An object-oriented language for quick and easy programming" -arch=('i686' 'x86_64') -url="http://www.ruby-lang.org/en/" -license=('custom') -makedepends=('openssl' 'tk' 'libffi' 'doxygen' 'graphviz') -options=('!emptydirs' '!makeflags') -source=("ftp://ftp.ruby-lang.org/pub/${pkgbase}/1.9/${pkgbase}-${pkgver//_/-}.tar.bz2") -md5sums=('68510eeb7511c403b91fe5476f250538') -sha1sums=('10824b44c8060c7b9b5afc0b3519a1e9f02f7fe5') - -build() { - cd "${srcdir}/${pkgbase}-${pkgver//_/-}" - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --enable-shared \ - --enable-pthread \ - --disable-rpath - make -} - -package_ruby() { - depends=('openssl' 'libffi') - provides=('rubygems' 'rake') - conflicts=('rake') - optdepends=('tk: for Ruby/TK') - - cd "${srcdir}/${pkgbase}-${pkgver//_/-}" - make DESTDIR="${pkgdir}" install-nodoc - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} - -package_ruby-docs() { - pkgdesc="Documentation files for ruby" - depends=('ruby') - - cd "${srcdir}/${pkgbase}-${pkgver//_/-}" - make DESTDIR="${pkgdir}" install-doc install-capi - install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" -} diff --git a/testing/sqlite3/PKGBUILD b/testing/sqlite3/PKGBUILD deleted file mode 100644 index fd4fe1d87..000000000 --- a/testing/sqlite3/PKGBUILD +++ /dev/null @@ -1,75 +0,0 @@ -# $Id: PKGBUILD 130058 2011-07-01 19:36:29Z andyrtr $ -# Maintainer: Andreas Radke <andyrtr@archlinux.org> -# Contributor: Tom Newsom <Jeepster@gmx.co.uk> - -pkgbase="sqlite3" -pkgname=('sqlite3' 'sqlite3-tcl' 'sqlite3-doc') -_amalgamationver=3070701 -_amalgamationver2=${_amalgamationver/00/} -_docver=${_amalgamationver} #3070700 -pkgver=${_amalgamationver2//0/.} -pkgrel=1 -pkgdesc="A C library that implements an SQL database engine" -arch=('i686' 'x86_64') -license=('custom') -url="http://www.sqlite.org/" -makedepends=('tcl' 'readline>=6.0.00') -source=( # tarball containing the amalgamation for SQLite 3.7.5 together with a configure script and makefile for building it; includes now also the Tcl Extension Architecture (TEA) - http://www.sqlite.org/sqlite-autoconf-$_amalgamationver.tar.gz - #http://www.sqlite.org/sqlite-doc-${_amalgamationver}.zip - http://www.sqlite.org/sqlite-doc-${_docver}.zip - license.txt) -options=('!libtool' '!emptydirs') -md5sums=('554026fe7fac47b1cf61c18d5fe43419' - '2bca5613abf9352bc525b6a8fd80156e' - 'c1cdbc5544034d9012e421e75a5e4890') - -build() { - export CFLAGS="$CFLAGS -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_SECURE_DELETE" - - # build sqlite - cd "$srcdir"/sqlite-autoconf-$_amalgamationver - ./configure --prefix=/usr \ - --disable-static - make - - # build the tcl extension - cd "$srcdir"/sqlite-autoconf-$_amalgamationver/tea - ./configure --prefix=/usr \ - --with-system-sqlite - make - -} - -package_sqlite3() { - - pkgdesc="A C library that implements an SQL database engine" - depends=('readline>=6.0.00') - conflicts=('sqlite') - replaces=('sqlite') - - cd ${srcdir}/sqlite-autoconf-$_amalgamationver - make DESTDIR=${pkgdir} install - - # license - install -D -m644 ${srcdir}/license.txt ${pkgdir}/usr/share/licenses/${pkgname}/license.txt -} - -package_sqlite3-tcl() { - - pkgdesc="sqlite3 Tcl Extension Architecture (TEA)" - depends=('sqlite3>=3.7.5') - - cd ${srcdir}/sqlite-autoconf-$_amalgamationver/tea - make DESTDIR=${pkgdir} install -} - -package_sqlite3-doc() { - pkgdesc="most of the static HTML files that comprise this website, including all of the SQL Syntax and the C/C++ interface specs and other miscellaneous documentation" - #arch=('any') - not yet supported - - #cd ${srcdir}/sqlite-doc-${_amalgamationver} - cd ${srcdir}/sqlite-doc-${_docver} - mkdir -p ${pkgdir}/usr/share/doc/${pkgbase} - cp -R * ${pkgdir}/usr/share/doc/${pkgbase}/ -} diff --git a/testing/sqlite3/license.txt b/testing/sqlite3/license.txt deleted file mode 100644 index 118c5d5e6..000000000 --- a/testing/sqlite3/license.txt +++ /dev/null @@ -1,33 +0,0 @@ -SQLite Copyright -SQLite is in the -Public Domain - - -All of the deliverable code in SQLite has been dedicated to the public domain by the authors. All code authors, and representatives of the companies they work for, have signed affidavits dedicating their contributions to the public domain and originals of those signed affidavits are stored in a firesafe at the main offices of Hwaci. Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original SQLite code, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. - -The previous paragraph applies to the deliverable code in SQLite - those parts of the SQLite library that you actually bundle and ship with a larger application. Portions of the documentation and some code used as part of the build process might fall under other licenses. The details here are unclear. We do not worry about the licensing of the documentation and build code so much because none of these things are part of the core deliverable SQLite library. - -All of the deliverable code in SQLite has been written from scratch. No code has been taken from other projects or from the open internet. Every line of code can be traced back to its original author, and all of those authors have public domain dedications on file. So the SQLite code base is clean and is uncontaminated with licensed code from other projects. -Obtaining An Explicit License To Use SQLite - -Even though SQLite is in the public domain and does not require a license, some users want to obtain a license anyway. Some reasons for obtaining a license include: -You are using SQLite in a jurisdiction that does not recognize the public domain. -You are using SQLite in a jurisdiction that does not recognize the right of an author to dedicate their work to the public domain. -You want to hold a tangible legal document as evidence that you have the legal right to use and distribute SQLite. -Your legal department tells you that you have to purchase a license. - -If you feel like you really have to purchase a license for SQLite, Hwaci, the company that employs the architect and principal developers of SQLite, will sell you one. -Contributed Code - -In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement: -The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law. - -We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to: -Hwaci -6200 Maple Cove Lane -Charlotte, NC 28269 -USA - -A template copyright release is available in PDF or HTML. You can use this release to make future changes. - -see http://www.sqlite.org/copyright.html
\ No newline at end of file diff --git a/testing/subversion/PKGBUILD b/testing/subversion/PKGBUILD deleted file mode 100644 index 8f8e8adbe..000000000 --- a/testing/subversion/PKGBUILD +++ /dev/null @@ -1,100 +0,0 @@ -# $Id: PKGBUILD 130071 2011-07-01 21:53:41Z stephane $ -# Maintainer: Paul Mattal <paul@archlinux.org> -# Contributor: Jason Chu <jason@archlinux.org> - -pkgname=subversion -pkgver=1.6.17 -pkgrel=6 -pkgdesc="A Modern Concurrent Version Control System" -arch=('i686' 'x86_64') -license=('apache' 'bsd') -depends=('neon' 'apr-util' 'sqlite3') -optdepends=('libgnome-keyring' 'kdeutils-kwallet' 'bash-completion: for svn bash completion') -makedepends=('krb5' 'apache' 'python2' 'perl' 'swig' 'ruby' 'java-runtime' - 'autoconf' 'db' 'e2fsprogs' 'libgnome-keyring' 'kdelibs') -backup=('etc/xinetd.d/svn' 'etc/conf.d/svnserve') -url="http://subversion.apache.org/" -provides=('svn') -options=('!makeflags' '!libtool') -source=(http://subversion.tigris.org/downloads/$pkgname-$pkgver.tar.bz2 - svnserve svn svnserve.conf svnmerge.py - subversion.rpath.fix.patch - subversion.suppress.deprecation.warnings.patch - subversion-perl-bindings.patch) -md5sums=('81e5dc5beee4b3fc025ac70c0b6caa14' - 'a2b029e8385007ffb99b437b30521c90' - 'a0db6dd43af33952739b6ec089852630' - 'c459e299192552f61578f3438abf0664' - 'a6371baeda7e224504629ecdda2749b4' - '6b4340ba9d8845cd8497e013ae01be3f' - '1166f3b7413d7e7450299b3525680bbe' - '0591aa39837931161b4d61ff35c7b147') - -build() { - cd "${srcdir}/${pkgname}-${pkgver}" - - export PYTHON=/usr/bin/python2 - - # apply patches - patch -Np0 -i ../subversion.rpath.fix.patch - patch -Np1 -i ../subversion.suppress.deprecation.warnings.patch - patch -Np1 -i ../subversion-perl-bindings.patch - - # configure - autoreconf - ./configure --prefix=/usr --with-apr=/usr --with-apr-util=/usr \ - --with-zlib=/usr --with-neon=/usr --with-apxs \ - --with-sqlite=/usr --with-berkeley-db=:/usr/include/:/usr/lib:db-5.2 \ - --enable-javahl --with-gnome-keyring --with-kwallet - - # build - (make external-all && make LT_LDFLAGS="-L$Fdestdir/usr/lib" local-all ) -} - -#check() { -# cd "${srcdir}/${pkgname}-${pkgver}" -# export LANG=C LC_ALL=C -# make check check-swig-pl check-swig-py CLEANUP=yes -#} - -package() { - cd "${srcdir}/${pkgname}-${pkgver}" - - # install - export LD_LIBRARY_PATH=${pkgdir}/usr/lib:$LD_LIBRARY_PATH - make DESTDIR=${pkgdir} install - - make DESTDIR=${pkgdir} swig-py - make install-swig-py DESTDIR=${pkgdir} - - install -d ${pkgdir}/usr/lib/python2.7 - mv ${pkgdir}/usr/lib/svn-python/ ${pkgdir}/usr/lib/python2.7/site-packages - - install -d ${pkgdir}/usr/share/subversion - install -d -m 755 tools/hook-scripts ${pkgdir}/usr/share/subversion/ - rm -f ${pkgdir}/usr/share/subversion/hook-scripts/*.in - - make DESTDIR=${pkgdir} swig-pl - make install-swig-pl DESTDIR=${pkgdir} INSTALLDIRS=vendor - rm -f ${pkgdir}/usr/lib/perl5/vendor_perl/auto/SVN/_Core/.packlist - rm -rf ${pkgdir}/usr/lib/perl5/core_perl - - make DESTDIR=${pkgdir} swig-rb - make install-swig-rb DESTDIR=${pkgdir} - - make DESTDIR=${pkgdir} javahl - make DESTDIR=${pkgdir} install-javahl - - install -d ${pkgdir}/etc/{rc.d,xinetd.d,conf.d} - - install -m 755 ${srcdir}/svnserve ${pkgdir}/etc/rc.d - install -m 644 ${srcdir}/svn ${pkgdir}/etc/xinetd.d - install -m 644 ${srcdir}/svnserve.conf ${pkgdir}/etc/conf.d/svnserve - install -m 755 ${srcdir}/svnmerge.py ${pkgdir}/usr/bin/svnmerge - install -D -m 644 ${srcdir}/subversion-$pkgver/COPYING \ - ${pkgdir}/usr/share/licenses/$pkgname/LICENSE - - # bash completion - install -Dm 644 ${srcdir}/${pkgname}-${pkgver}/tools/client-side/bash_completion \ - ${pkgdir}/etc/bash_completion.d/subversion -} diff --git a/testing/subversion/subversion-perl-bindings.patch b/testing/subversion/subversion-perl-bindings.patch deleted file mode 100644 index 3c34daa47..000000000 --- a/testing/subversion/subversion-perl-bindings.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur subversion-1.6.17.ori/subversion/bindings/swig/perl/native/Makefile.PL.in subversion-1.6.17/subversion/bindings/swig/perl/native/Makefile.PL.in ---- subversion-1.6.17.ori/subversion/bindings/swig/perl/native/Makefile.PL.in 2010-11-24 20:42:16.000000000 +0000 -+++ subversion-1.6.17/subversion/bindings/swig/perl/native/Makefile.PL.in 2011-07-01 20:16:16.520892074 +0000 -@@ -43,7 +43,7 @@ - my %config = ( - ABSTRACT => 'Perl bindings for Subversion', - DEFINE => $cppflags, -- CCFLAGS => $cflags, -+ CCFLAGS => $Config{ccflags}, - INC => join(' ',$apr_cflags, $apu_cflags, - " -I$swig_srcdir/perl/libsvn_swig_perl", - " -I$svnlib_srcdir/include", diff --git a/testing/subversion/subversion.rpath.fix.patch b/testing/subversion/subversion.rpath.fix.patch deleted file mode 100644 index ba6ee9e4e..000000000 --- a/testing/subversion/subversion.rpath.fix.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- Makefile.in.orig 2009-02-16 14:10:48.000000000 -0200 -+++ Makefile.in 2009-06-04 00:56:29.000000000 -0300 -@@ -678,6 +678,7 @@ - - $(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL - cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL -+ cd $(SWIG_PL_DIR)/native; sed -i 's|LD_RUN_PATH|DIE_RPATH_DIE|g' Makefile{,.{client,delta,fs,ra,repos,wc}} - - swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \ - $(SWIG_PL_DIR)/native/Makefile diff --git a/testing/subversion/subversion.suppress.deprecation.warnings.patch b/testing/subversion/subversion.suppress.deprecation.warnings.patch deleted file mode 100644 index 94ce89b18..000000000 --- a/testing/subversion/subversion.suppress.deprecation.warnings.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -urN subversion-1.6.9/subversion/bindings/swig/python/svn/core.py subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py ---- subversion-1.6.9/subversion/bindings/swig/python/svn/core.py 2009-02-13 11:22:26.000000000 -0500 -+++ subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py 2010-02-08 07:46:29.000000000 -0500 -@@ -19,6 +19,7 @@ - from libsvn.core import * - import libsvn.core as _libsvncore - import atexit as _atexit -+import warnings - - class SubversionException(Exception): - def __init__(self, message=None, apr_err=None, child=None, -@@ -44,7 +45,9 @@ - Exception.__init__(self, *args) - - self.apr_err = apr_err -- self.message = message -+ with warnings.catch_warnings(): -+ warnings.simplefilter("ignore", DeprecationWarning) -+ self.message = message - self.child = child - self.file = file - self.line = line diff --git a/testing/subversion/svn b/testing/subversion/svn deleted file mode 100644 index 8988aaf63..000000000 --- a/testing/subversion/svn +++ /dev/null @@ -1,11 +0,0 @@ -service svn -{ - flags = REUSE - socket_type = stream - wait = no - user = root - server = /usr/bin/svnserve - server_args = -i - log_on_failure += USERID - disable = yes -} diff --git a/testing/subversion/svnmerge.py b/testing/subversion/svnmerge.py deleted file mode 100644 index d8931648f..000000000 --- a/testing/subversion/svnmerge.py +++ /dev/null @@ -1,2370 +0,0 @@ -#!/usr/bin/env python2 -# -*- coding: utf-8 -*- -# Copyright (c) 2005, Giovanni Bajo -# Copyright (c) 2004-2005, Awarix, Inc. -# All rights reserved. -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -# -# Author: Archie Cobbs <archie at awarix dot com> -# Rewritten in Python by: Giovanni Bajo <rasky at develer dot com> -# -# Acknowledgments: -# John Belmonte <john at neggie dot net> - metadata and usability -# improvements -# Blair Zajac <blair at orcaware dot com> - random improvements -# Raman Gupta <rocketraman at fastmail dot fm> - bidirectional and transitive -# merging support -# Dustin J. Mitchell <dustin at zmanda dot com> - support for multiple -# location identifier formats -# -# $HeadURL$ -# $LastChangedDate$ -# $LastChangedBy$ -# $LastChangedRevision$ -# -# Requisites: -# svnmerge.py has been tested with all SVN major versions since 1.1 (both -# client and server). It is unknown if it works with previous versions. -# -# Differences from svnmerge.sh: -# - More portable: tested as working in FreeBSD and OS/2. -# - Add double-verbose mode, which shows every svn command executed (-v -v). -# - "svnmerge avail" now only shows commits in source, not also commits in -# other parts of the repository. -# - Add "svnmerge block" to flag some revisions as blocked, so that -# they will not show up anymore in the available list. Added also -# the complementary "svnmerge unblock". -# - "svnmerge avail" has grown two new options: -# -B to display a list of the blocked revisions -# -A to display both the blocked and the available revisions. -# - Improved generated commit message to make it machine parsable even when -# merging commits which are themselves merges. -# - Add --force option to skip working copy check -# - Add --record-only option to "svnmerge merge" to avoid performing -# an actual merge, yet record that a merge happened. -# - Can use a variety of location-identifier formats -# -# TODO: -# - Add "svnmerge avail -R": show logs in reverse order -# -# Information for Hackers: -# -# Identifiers for branches: -# A branch is identified in three ways within this source: -# - as a working copy (variable name usually includes 'dir') -# - as a fully qualified URL -# - as a path identifier (an opaque string indicating a particular path -# in a particular repository; variable name includes 'pathid') -# A "target" is generally user-specified, and may be a working copy or -# a URL. - -import sys, os, getopt, re, types, tempfile, time, locale -from bisect import bisect -from xml.dom import pulldom - -NAME = "svnmerge" -if not hasattr(sys, "version_info") or sys.version_info < (2, 0): - error("requires Python 2.0 or newer") - -# Set up the separator used to separate individual log messages from -# each revision merged into the target location. Also, create a -# regular expression that will find this same separator in already -# committed log messages, so that the separator used for this run of -# svnmerge.py will have one more LOG_SEPARATOR appended to the longest -# separator found in all the commits. -LOG_SEPARATOR = 8 * '.' -LOG_SEPARATOR_RE = re.compile('^((%s)+)' % re.escape(LOG_SEPARATOR), - re.MULTILINE) - -# Each line of the embedded log messages will be prefixed by LOG_LINE_PREFIX. -LOG_LINE_PREFIX = 2 * ' ' - -# Set python to the default locale as per environment settings, same as svn -# TODO we should really parse config and if log-encoding is specified, set -# the locale to match that encoding -locale.setlocale(locale.LC_ALL, '') - -# We want the svn output (such as svn info) to be non-localized -# Using LC_MESSAGES should not affect localized output of svn log, for example -if os.environ.has_key("LC_ALL"): - del os.environ["LC_ALL"] -os.environ["LC_MESSAGES"] = "C" - -############################################################################### -# Support for older Python versions -############################################################################### - -# True/False constants are Python 2.2+ -try: - True, False -except NameError: - True, False = 1, 0 - -def lstrip(s, ch): - """Replacement for str.lstrip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - i = 0 - try: - while s[i] == ch: - i = i+1 - return s[i:] - except IndexError: - return "" - -def rstrip(s, ch): - """Replacement for str.rstrip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - try: - if s[-1] != ch: - return s - i = -2 - while s[i] == ch: - i = i-1 - return s[:i+1] - except IndexError: - return "" - -def strip(s, ch): - """Replacement for str.strip (support for arbitrary chars to strip was - added in Python 2.2.2).""" - return lstrip(rstrip(s, ch), ch) - -def rsplit(s, sep, maxsplits=0): - """Like str.rsplit, which is Python 2.4+ only.""" - L = s.split(sep) - if not 0 < maxsplits <= len(L): - return L - return [sep.join(L[0:-maxsplits])] + L[-maxsplits:] - -############################################################################### - -def kwextract(s): - """Extract info from a svn keyword string.""" - try: - return strip(s, "$").strip().split(": ")[1] - except IndexError: - return "<unknown>" - -__revision__ = kwextract('$Rev$') -__date__ = kwextract('$Date$') - -# Additional options, not (yet?) mapped to command line flags -default_opts = { - "svn": "svn", - "prop": NAME + "-integrated", - "block-prop": NAME + "-blocked", - "commit-verbose": True, - "verbose": 0, -} -logs = {} - -def console_width(): - """Get the width of the console screen (if any).""" - try: - return int(os.environ["COLUMNS"]) - except (KeyError, ValueError): - pass - - try: - # Call the Windows API (requires ctypes library) - from ctypes import windll, create_string_buffer - h = windll.kernel32.GetStdHandle(-11) - csbi = create_string_buffer(22) - res = windll.kernel32.GetConsoleScreenBufferInfo(h, csbi) - if res: - import struct - (bufx, bufy, - curx, cury, wattr, - left, top, right, bottom, - maxx, maxy) = struct.unpack("hhhhHhhhhhh", csbi.raw) - return right - left + 1 - except ImportError: - pass - - # Parse the output of stty -a - if os.isatty(1): - out = os.popen("stty -a").read() - m = re.search(r"columns (\d+);", out) - if m: - return int(m.group(1)) - - # sensible default - return 80 - -def error(s): - """Subroutine to output an error and bail.""" - print >> sys.stderr, "%s: %s" % (NAME, s) - sys.exit(1) - -def report(s): - """Subroutine to output progress message, unless in quiet mode.""" - if opts["verbose"]: - print "%s: %s" % (NAME, s) - -def prefix_lines(prefix, lines): - """Given a string representing one or more lines of text, insert the - specified prefix at the beginning of each line, and return the result. - The input must be terminated by a newline.""" - assert lines[-1] == "\n" - return prefix + lines[:-1].replace("\n", "\n"+prefix) + "\n" - -def recode_stdout_to_file(s): - if locale.getdefaultlocale()[1] is None or not hasattr(sys.stdout, "encoding") \ - or sys.stdout.encoding is None: - return s - u = s.decode(sys.stdout.encoding) - return u.encode(locale.getdefaultlocale()[1]) - -class LaunchError(Exception): - """Signal a failure in execution of an external command. Parameters are the - exit code of the process, the original command line, and the output of the - command.""" - -try: - """Launch a sub-process. Return its output (both stdout and stderr), - optionally split by lines (if split_lines is True). Raise a LaunchError - exception if the exit code of the process is non-zero (failure). - - This function has two implementations, one based on subprocess (preferred), - and one based on popen (for compatibility). - """ - import subprocess - import shlex - - def launch(cmd, split_lines=True): - # Requiring python 2.4 or higher, on some platforms we get - # much faster performance from the subprocess module (where python - # doesn't try to close an exhorbitant number of file descriptors) - stdout = "" - stderr = "" - try: - if os.name == 'nt': - p = subprocess.Popen(cmd, stdout=subprocess.PIPE, \ - close_fds=False, stderr=subprocess.PIPE) - else: - # Use shlex to break up the parameters intelligently, - # respecting quotes. shlex can't handle unicode. - args = shlex.split(cmd.encode('ascii')) - p = subprocess.Popen(args, stdout=subprocess.PIPE, \ - close_fds=False, stderr=subprocess.PIPE) - stdoutAndErr = p.communicate() - stdout = stdoutAndErr[0] - stderr = stdoutAndErr[1] - except OSError, inst: - # Using 1 as failure code; should get actual number somehow? For - # examples see svnmerge_test.py's TestCase_launch.test_failure and - # TestCase_launch.test_failurecode. - raise LaunchError(1, cmd, stdout + " " + stderr + ": " + str(inst)) - - if p.returncode == 0: - if split_lines: - # Setting keepends=True for compatibility with previous logic - # (where file.readlines() preserves newlines) - return stdout.splitlines(True) - else: - return stdout - else: - raise LaunchError(p.returncode, cmd, stdout + stderr) -except ImportError: - # support versions of python before 2.4 (slower on some systems) - def launch(cmd, split_lines=True): - if os.name not in ['nt', 'os2']: - import popen2 - p = popen2.Popen4(cmd) - p.tochild.close() - if split_lines: - out = p.fromchild.readlines() - else: - out = p.fromchild.read() - ret = p.wait() - if ret == 0: - ret = None - else: - ret >>= 8 - else: - i,k = os.popen4(cmd) - i.close() - if split_lines: - out = k.readlines() - else: - out = k.read() - ret = k.close() - - if ret is None: - return out - raise LaunchError(ret, cmd, out) - -def launchsvn(s, show=False, pretend=False, **kwargs): - """Launch SVN and grab its output.""" - username = password = configdir = "" - if opts.get("username", None): - username = "--username=" + opts["username"] - if opts.get("password", None): - password = "--password=" + opts["password"] - if opts.get("config-dir", None): - configdir = "--config-dir=" + opts["config-dir"] - cmd = ' '.join(filter(None, [opts["svn"], "--non-interactive", - username, password, configdir, s])) - if show or opts["verbose"] >= 2: - print cmd - if pretend: - return None - return launch(cmd, **kwargs) - -def svn_command(s): - """Do (or pretend to do) an SVN command.""" - out = launchsvn(s, show=opts["show-changes"] or opts["dry-run"], - pretend=opts["dry-run"], - split_lines=False) - if not opts["dry-run"]: - print out - -def check_dir_clean(dir): - """Check the current status of dir for local mods.""" - if opts["force"]: - report('skipping status check because of --force') - return - report('checking status of "%s"' % dir) - - # Checking with -q does not show unversioned files or external - # directories. Though it displays a debug message for external - # directories, after a blank line. So, practically, the first line - # matters: if it's non-empty there is a modification. - out = launchsvn("status -q %s" % dir) - if out and out[0].strip(): - error('"%s" has local modifications; it must be clean' % dir) - -class PathIdentifier: - """Abstraction for a path identifier, so that we can start talking - about it before we know the form that it takes in the properties (its - external_form). Objects are referenced in the class variable 'locobjs', - keyed by all known forms.""" - - # a map of UUID (or None) to repository root URL. - repo_hints = {} - - # a map from any known string form to the corresponding PathIdentifier - locobjs = {} - - def __init__(self, repo_relative_path, uuid=None, url=None, external_form=None): - self.repo_relative_path = repo_relative_path - self.uuid = uuid - self.url = url - self.external_form = external_form - - def __repr__(self): - return "<PathIdentifier " + ', '.join('%s=%r' % i for i in self.__dict__.items()) + '>' - - def __str__(self): - """Return a printable string representation""" - if self.external_form: - return self.external_form - if self.url: - return self.format('url') - if self.uuid: - return self.format('uuid') - return self.format('path') - - def from_pathid(pathid_str): - """convert pathid_str to a PathIdentifier""" - if not PathIdentifier.locobjs.has_key(pathid_str): - if is_url(pathid_str): - # we can determine every form; PathIdentifier.hint knows how to do that - PathIdentifier.hint(pathid_str) - elif pathid_str[:7] == 'uuid://': - mo = re.match('uuid://([^/]*)(.*)', pathid_str) - if not mo: - error("Invalid path identifier '%s'" % pathid_str) - uuid, repo_relative_path = mo.groups() - pathid = PathIdentifier(repo_relative_path, uuid=uuid) - # we can cache this by uuid:// pathid and by repo-relative path - PathIdentifier.locobjs[pathid_str] = PathIdentifier.locobjs[repo_relative_path] = pathid - elif pathid_str and pathid_str[0] == '/': - # strip any trailing slashes - pathid_str = pathid_str.rstrip('/') - pathid = PathIdentifier(repo_relative_path=pathid_str) - # we can only cache this by repo-relative path - PathIdentifier.locobjs[pathid_str] = pathid - else: - error("Invalid path identifier '%s'" % pathid_str) - return PathIdentifier.locobjs[pathid_str] - from_pathid = staticmethod(from_pathid) - - def from_target(target): - """Convert a target (either a working copy path or an URL) into a - path identifier.""" - # prime the cache first if we don't know about this target yet - if not PathIdentifier.locobjs.has_key(target): - PathIdentifier.hint(target) - - try: - return PathIdentifier.locobjs[target] - except KeyError: - error("Could not recognize path identifier '%s'" % target) - from_target = staticmethod(from_target) - - def hint(target): - """Cache some information about target, as it may be referenced by - repo-relative path in subversion properties; the cache can help to - expand such a relative path to a full path identifier.""" - if PathIdentifier.locobjs.has_key(target): return - if not is_url(target) and not is_wc(target): return - - url = target_to_url(target) - - root = get_repo_root(url) - assert root[-1] != "/" - assert url[:len(root)] == root, "url=%r, root=%r" % (url, root) - repo_relative_path = url[len(root):] - - try: - uuid = get_svninfo(target)['Repository UUID'] - uuid_pathid = 'uuid://%s%s' % (uuid, repo_relative_path) - except KeyError: - uuid = None - uuid_pathid = None - - locobj = PathIdentifier.locobjs.get(url) or \ - (uuid_pathid and PathIdentifier.locobjs.get(uuid_pathid)) - if not locobj: - locobj = PathIdentifier(repo_relative_path, uuid=uuid, url=url) - - PathIdentifier.repo_hints[uuid] = root # (uuid may be None) - - PathIdentifier.locobjs[target] = locobj - PathIdentifier.locobjs[url] = locobj - if uuid_pathid: - PathIdentifier.locobjs[uuid_pathid] = locobj - if not PathIdentifier.locobjs.has_key(repo_relative_path): - PathIdentifier.locobjs[repo_relative_path] = locobj - hint = staticmethod(hint) - - def format(self, fmt): - if fmt == 'path': - return self.repo_relative_path - elif fmt == 'uuid': - return "uuid://%s%s" % (self.uuid, self.repo_relative_path) - elif fmt == 'url': - return self.url - else: - error("Unkonwn path type '%s'" % fmt) - - def match_substring(self, str): - """Test whether str is a substring of any representation of this - PathIdentifier.""" - if self.repo_relative_path.find(str) >= 0: - return True - - if self.uuid: - if ("uuid://%s%s" % (self.uuid, self.repo_relative_path)).find(str) >= 0: - return True - - if self.url: - if (self.url + self.repo_relative_path).find(str) >= 0: - return True - - return False - - def get_url(self): - """Convert a pathid into a URL. If this is not possible, error out.""" - if self.url: - return self.url - # if we have a uuid and happen to know the URL for it, use that - elif self.uuid and PathIdentifier.repo_hints.has_key(self.uuid): - self.url = PathIdentifier.repo_hints[self.uuid] + self.repo_relative_path - PathIdentifier.locobjs[self.url] = self - return self.url - # if we've only seen one rep, use that (a guess, but an educated one) - elif not self.uuid and len(PathIdentifier.repo_hints) == 1: - uuid, root = PathIdentifier.repo_hints.items()[0] - if uuid: - self.uuid = uuid - PathIdentifier.locobjs['uuid://%s%s' % (uuid, self.repo_relative_path)] = self - self.url = root + self.repo_relative_path - PathIdentifier.locobjs[self.url] = self - report("Guessing that '%s' refers to '%s'" % (self, self.url)) - return self.url - else: - error("Cannot determine URL for '%s'; " % self + - "Explicit source argument (-S/--source) required.\n") - -class RevisionLog: - """ - A log of the revisions which affected a given URL between two - revisions. - """ - - def __init__(self, url, begin, end, find_propchanges=False): - """ - Create a new RevisionLog object, which stores, in self.revs, a list - of the revisions which affected the specified URL between begin and - end. If find_propchanges is True, self.propchange_revs will contain a - list of the revisions which changed properties directly on the - specified URL. URL must be the URL for a directory in the repository. - """ - self.url = url - - # Setup the log options (--quiet, so we don't show log messages) - log_opts = '--xml --quiet -r%s:%s "%s"' % (begin, end, url) - if find_propchanges: - # The --verbose flag lets us grab merge tracking information - # by looking at propchanges - log_opts = "--verbose " + log_opts - - # Read the log to look for revision numbers and merge-tracking info - self.revs = [] - self.propchange_revs = [] - repos_pathid = PathIdentifier.from_target(url) - for chg in SvnLogParser(launchsvn("log %s" % log_opts, - split_lines=False)): - self.revs.append(chg.revision()) - for p in chg.paths(): - if p.action() == 'M' and p.pathid() == repos_pathid.repo_relative_path: - self.propchange_revs.append(chg.revision()) - - # Save the range of the log - self.begin = int(begin) - if end == "HEAD": - # If end is not provided, we do not know which is the latest - # revision in the repository. So we set 'end' to the latest - # known revision. - self.end = self.revs[-1] - else: - self.end = int(end) - - self._merges = None - self._blocks = None - - def merge_metadata(self): - """ - Return a VersionedProperty object, with a cached view of the merge - metadata in the range of this log. - """ - - # Load merge metadata if necessary - if not self._merges: - self._merges = VersionedProperty(self.url, opts["prop"]) - self._merges.load(self) - - return self._merges - - def block_metadata(self): - if not self._blocks: - self._blocks = VersionedProperty(self.url, opts["block-prop"]) - self._blocks.load(self) - - return self._blocks - - -class VersionedProperty: - """ - A read-only, cached view of a versioned property. - - self.revs contains a list of the revisions in which the property changes. - self.values stores the new values at each corresponding revision. If the - value of the property is unknown, it is set to None. - - Initially, we set self.revs to [0] and self.values to [None]. This - indicates that, as of revision zero, we know nothing about the value of - the property. - - Later, if you run self.load(log), we cache the value of this property over - the entire range of the log by noting each revision in which the property - was changed. At the end of the range of the log, we invalidate our cache - by adding the value "None" to our cache for any revisions which fall out - of the range of our log. - - Once self.revs and self.values are filled, we can find the value of the - property at any arbitrary revision using a binary search on self.revs. - Once we find the last revision during which the property was changed, - we can lookup the associated value in self.values. (If the associated - value is None, the associated value was not cached and we have to do - a full propget.) - - An example: We know that the 'svnmerge' property was added in r10, and - changed in r21. We gathered log info up until r40. - - revs = [0, 10, 21, 40] - values = [None, "val1", "val2", None] - - What these values say: - - From r0 to r9, we know nothing about the property. - - In r10, the property was set to "val1". This property stayed the same - until r21, when it was changed to "val2". - - We don't know what happened after r40. - """ - - def __init__(self, url, name): - """View the history of a versioned property at URL with name""" - self.url = url - self.name = name - - # We know nothing about the value of the property. Setup revs - # and values to indicate as such. - self.revs = [0] - self.values = [None] - - # We don't have any revisions cached - self._initial_value = None - self._changed_revs = [] - self._changed_values = [] - - def load(self, log): - """ - Load the history of property changes from the specified - RevisionLog object. - """ - - # Get the property value before the range of the log - if log.begin > 1: - self.revs.append(log.begin-1) - try: - self._initial_value = self.raw_get(log.begin-1) - except LaunchError: - # The specified URL might not exist before the - # range of the log. If so, we can safely assume - # that the property was empty at that time. - self._initial_value = { } - self.values.append(self._initial_value) - else: - self._initial_value = { } - self.values[0] = self._initial_value - - # Cache the property values in the log range - old_value = self._initial_value - for rev in log.propchange_revs: - new_value = self.raw_get(rev) - if new_value != old_value: - self._changed_revs.append(rev) - self._changed_values.append(new_value) - self.revs.append(rev) - self.values.append(new_value) - old_value = new_value - - # Indicate that we know nothing about the value of the property - # after the range of the log. - if log.revs: - self.revs.append(log.end+1) - self.values.append(None) - - def raw_get(self, rev=None): - """ - Get the property at revision REV. If rev is not specified, get - the property at revision HEAD. - """ - return get_revlist_prop(self.url, self.name, rev) - - def get(self, rev=None): - """ - Get the property at revision REV. If rev is not specified, get - the property at revision HEAD. - """ - - if rev is not None: - - # Find the index using a binary search - i = bisect(self.revs, rev) - 1 - - # Return the value of the property, if it was cached - if self.values[i] is not None: - return self.values[i] - - # Get the current value of the property - return self.raw_get(rev) - - def changed_revs(self, key=None): - """ - Get a list of the revisions in which the specified dictionary - key was changed in this property. If key is not specified, - return a list of revisions in which any key was changed. - """ - if key is None: - return self._changed_revs - else: - changed_revs = [] - old_val = self._initial_value - for rev, val in zip(self._changed_revs, self._changed_values): - if val.get(key) != old_val.get(key): - changed_revs.append(rev) - old_val = val - return changed_revs - - def initialized_revs(self): - """ - Get a list of the revisions in which keys were added or - removed in this property. - """ - initialized_revs = [] - old_len = len(self._initial_value) - for rev, val in zip(self._changed_revs, self._changed_values): - if len(val) != old_len: - initialized_revs.append(rev) - old_len = len(val) - return initialized_revs - -class RevisionSet: - """ - A set of revisions, held in dictionary form for easy manipulation. If we - were to rewrite this script for Python 2.3+, we would subclass this from - set (or UserSet). As this class does not include branch - information, it's assumed that one instance will be used per - branch. - """ - def __init__(self, parm): - """Constructs a RevisionSet from a string in property form, or from - a dictionary whose keys are the revisions. Raises ValueError if the - input string is invalid.""" - - self._revs = {} - - revision_range_split_re = re.compile('[-:]') - - if isinstance(parm, types.DictType): - self._revs = parm.copy() - elif isinstance(parm, types.ListType): - for R in parm: - self._revs[int(R)] = 1 - else: - parm = parm.strip() - if parm: - for R in parm.split(","): - rev_or_revs = re.split(revision_range_split_re, R) - if len(rev_or_revs) == 1: - self._revs[int(rev_or_revs[0])] = 1 - elif len(rev_or_revs) == 2: - for rev in range(int(rev_or_revs[0]), - int(rev_or_revs[1])+1): - self._revs[rev] = 1 - else: - raise ValueError, 'Ill formatted revision range: ' + R - - def sorted(self): - revnums = self._revs.keys() - revnums.sort() - return revnums - - def normalized(self): - """Returns a normalized version of the revision set, which is an - ordered list of couples (start,end), with the minimum number of - intervals.""" - revnums = self.sorted() - revnums.reverse() - ret = [] - while revnums: - s = e = revnums.pop() - while revnums and revnums[-1] in (e, e+1): - e = revnums.pop() - ret.append((s, e)) - return ret - - def __str__(self): - """Convert the revision set to a string, using its normalized form.""" - L = [] - for s,e in self.normalized(): - if s == e: - L.append(str(s)) - else: - L.append(str(s) + "-" + str(e)) - return ",".join(L) - - def __contains__(self, rev): - return self._revs.has_key(rev) - - def __sub__(self, rs): - """Compute subtraction as in sets.""" - revs = {} - for r in self._revs.keys(): - if r not in rs: - revs[r] = 1 - return RevisionSet(revs) - - def __and__(self, rs): - """Compute intersections as in sets.""" - revs = {} - for r in self._revs.keys(): - if r in rs: - revs[r] = 1 - return RevisionSet(revs) - - def __nonzero__(self): - return len(self._revs) != 0 - - def __len__(self): - """Return the number of revisions in the set.""" - return len(self._revs) - - def __iter__(self): - return iter(self.sorted()) - - def __or__(self, rs): - """Compute set union.""" - revs = self._revs.copy() - revs.update(rs._revs) - return RevisionSet(revs) - -def merge_props_to_revision_set(merge_props, pathid): - """A converter which returns a RevisionSet instance containing the - revisions from PATH as known to BRANCH_PROPS. BRANCH_PROPS is a - dictionary of pathid -> revision set branch integration information - (as returned by get_merge_props()).""" - if not merge_props.has_key(pathid): - error('no integration info available for path "%s"' % pathid) - return RevisionSet(merge_props[pathid]) - -def dict_from_revlist_prop(propvalue): - """Given a property value as a string containing per-source revision - lists, return a dictionary whose key is a source path identifier - and whose value is the revisions for that source.""" - prop = {} - - # Multiple sources are separated by any whitespace. - for L in propvalue.split(): - # We use rsplit to play safe and allow colons in pathids. - pathid_str, revs = rsplit(L.strip(), ":", 1) - - pathid = PathIdentifier.from_pathid(pathid_str) - - # cache the "external" form we saw - pathid.external_form = pathid_str - - prop[pathid] = revs - return prop - -def get_revlist_prop(url_or_dir, propname, rev=None): - """Given a repository URL or working copy path and a property - name, extract the values of the property which store per-source - revision lists and return a dictionary whose key is a source path - identifier, and whose value is the revisions for that source.""" - - # Note that propget does not return an error if the property does - # not exist, it simply does not output anything. So we do not need - # to check for LaunchError here. - args = '--strict "%s" "%s"' % (propname, url_or_dir) - if rev: - args = '-r %s %s' % (rev, args) - out = launchsvn('propget %s' % args, split_lines=False) - - return dict_from_revlist_prop(out) - -def get_merge_props(dir): - """Extract the merged revisions.""" - return get_revlist_prop(dir, opts["prop"]) - -def get_block_props(dir): - """Extract the blocked revisions.""" - return get_revlist_prop(dir, opts["block-prop"]) - -def get_blocked_revs(dir, source_pathid): - p = get_block_props(dir) - if p.has_key(source_pathid): - return RevisionSet(p[source_pathid]) - return RevisionSet("") - -def format_merge_props(props, sep=" "): - """Formats the hash PROPS as a string suitable for use as a - Subversion property value.""" - assert sep in ["\t", "\n", " "] # must be a whitespace - props = props.items() - props.sort() - L = [] - for h, r in props: - L.append("%s:%s" % (h, r)) - return sep.join(L) - -def _run_propset(dir, prop, value): - """Set the property 'prop' of directory 'dir' to value 'value'. We go - through a temporary file to not run into command line length limits.""" - try: - fd, fname = tempfile.mkstemp() - f = os.fdopen(fd, "wb") - except AttributeError: - # Fallback for Python <= 2.3 which does not have mkstemp (mktemp - # suffers from race conditions. Not that we care...) - fname = tempfile.mktemp() - f = open(fname, "wb") - - try: - f.write(value) - f.close() - report("property data written to temp file: %s" % value) - svn_command('propset "%s" -F "%s" "%s"' % (prop, fname, dir)) - finally: - os.remove(fname) - -def set_props(dir, name, props): - props = format_merge_props(props) - if props: - _run_propset(dir, name, props) - else: - # Check if NAME exists on DIR before trying to delete it. - # As of 1.6 propdel no longer supports deleting a - # non-existent property. - out = launchsvn('propget "%s" "%s"' % (name, dir)) - if out: - svn_command('propdel "%s" "%s"' % (name, dir)) - -def set_merge_props(dir, props): - set_props(dir, opts["prop"], props) - -def set_block_props(dir, props): - set_props(dir, opts["block-prop"], props) - -def set_blocked_revs(dir, source_pathid, revs): - props = get_block_props(dir) - if revs: - props[source_pathid] = str(revs) - elif props.has_key(source_pathid): - del props[source_pathid] - set_block_props(dir, props) - -def is_url(url): - """Check if url looks like a valid url.""" - return re.search(r"^[a-zA-Z][-+\.\w]*://[^\s]+$", url) is not None and url[:4] != 'uuid' - -def check_url(url): - """Similar to is_url, but actually invoke get_svninfo to find out""" - return get_svninfo(url) != {} - -def is_pathid(pathid): - return isinstance(pathid, PathIdentifier) - -def is_wc(dir): - """Check if a directory is a working copy.""" - return os.path.isdir(os.path.join(dir, ".svn")) or \ - os.path.isdir(os.path.join(dir, "_svn")) - -_cache_svninfo = {} -def get_svninfo(target): - """Extract the subversion information for a target (through 'svn info'). - This function uses an internal cache to let clients query information - many times.""" - if _cache_svninfo.has_key(target): - return _cache_svninfo[target] - info = {} - for L in launchsvn('info "%s"' % target): - L = L.strip() - if not L: - continue - key, value = L.split(": ", 1) - info[key] = value.strip() - _cache_svninfo[target] = info - return info - -def target_to_url(target): - """Convert working copy path or repos URL to a repos URL.""" - if is_wc(target): - info = get_svninfo(target) - return info["URL"] - return target - -_cache_reporoot = {} -def get_repo_root(target): - """Compute the root repos URL given a working-copy path, or a URL.""" - # Try using "svn info WCDIR". This works only on SVN clients >= 1.3 - if not is_url(target): - try: - info = get_svninfo(target) - root = info["Repository Root"] - _cache_reporoot[root] = None - return root - except KeyError: - pass - url = target_to_url(target) - assert url[-1] != '/' - else: - url = target - - # Go through the cache of the repository roots. This avoids extra - # server round-trips if we are asking the root of different URLs - # in the same repository (the cache in get_svninfo() cannot detect - # that of course and would issue a remote command). - assert is_url(url) - for r in _cache_reporoot: - if url.startswith(r): - return r - - # Try using "svn info URL". This works only on SVN clients >= 1.2 - try: - info = get_svninfo(url) - # info may be {}, in which case we'll see KeyError here - root = info["Repository Root"] - _cache_reporoot[root] = None - return root - except (KeyError, LaunchError): - pass - - # Constrained to older svn clients, we are stuck with this ugly - # trial-and-error implementation. It could be made faster with a - # binary search. - while url: - temp = os.path.dirname(url) - try: - launchsvn('proplist "%s"' % temp) - except LaunchError: - _cache_reporoot[url] = None - return rstrip(url, "/") - url = temp - - error("svn repos root of %s not found" % target) - -class SvnLogParser: - """ - Parse the "svn log", going through the XML output and using pulldom (which - would even allow streaming the command output). - """ - def __init__(self, xml): - self._events = pulldom.parseString(xml) - def __getitem__(self, idx): - for event, node in self._events: - if event == pulldom.START_ELEMENT and node.tagName == "logentry": - self._events.expandNode(node) - return self.SvnLogRevision(node) - raise IndexError, "Could not find 'logentry' tag in xml" - - class SvnLogRevision: - def __init__(self, xmlnode): - self.n = xmlnode - def revision(self): - return int(self.n.getAttribute("revision")) - def author(self): - return self.n.getElementsByTagName("author")[0].firstChild.data - def paths(self): - return [self.SvnLogPath(n) - for n in self.n.getElementsByTagName("path")] - - class SvnLogPath: - def __init__(self, xmlnode): - self.n = xmlnode - def action(self): - return self.n.getAttribute("action") - def pathid(self): - return self.n.firstChild.data - def copyfrom_rev(self): - try: return self.n.getAttribute("copyfrom-rev") - except KeyError: return None - def copyfrom_pathid(self): - try: return self.n.getAttribute("copyfrom-path") - except KeyError: return None - -def get_copyfrom(target): - """Get copyfrom info for a given target (it represents the - repository-relative path from where it was branched). NOTE: - repos root has no copyfrom info. In this case None is returned. - - Returns the: - - source file or directory from which the copy was made - - revision from which that source was copied - - revision in which the copy was committed - """ - repos_path = PathIdentifier.from_target(target).repo_relative_path - for chg in SvnLogParser(launchsvn('log -v --xml --stop-on-copy "%s"' - % target, split_lines=False)): - for p in chg.paths(): - if p.action() == 'A' and p.pathid() == repos_path: - # These values will be None if the corresponding elements are - # not found in the log. - return p.copyfrom_pathid(), p.copyfrom_rev(), chg.revision() - return None,None,None - -def get_latest_rev(url): - """Get the latest revision of the repository of which URL is part.""" - try: - info = get_svninfo(url) - if not info.has_key("Revision"): - error("Not a valid URL: %s" % url) - return info["Revision"] - except LaunchError: - # Alternative method for latest revision checking (for svn < 1.2) - report('checking latest revision of "%s"' % url) - L = launchsvn('proplist --revprop -r HEAD "%s"' % opts["source-url"])[0] - rev = re.search("revision (\d+)", L).group(1) - report('latest revision of "%s" is %s' % (url, rev)) - return rev - -def get_created_rev(url): - """Lookup the revision at which the path identified by the - provided URL was first created.""" - oldest_rev = -1 - report('determining oldest revision for URL "%s"' % url) - ### TODO: Refactor this to use a modified RevisionLog class. - lines = None - cmd = "log -r1:HEAD --stop-on-copy -q " + url - try: - lines = launchsvn(cmd + " --limit=1") - except LaunchError: - # Assume that --limit isn't supported by the installed 'svn'. - lines = launchsvn(cmd) - if lines and len(lines) > 1: - i = lines[1].find(" ") - if i != -1: - oldest_rev = int(lines[1][1:i]) - if oldest_rev == -1: - error('unable to determine oldest revision for URL "%s"' % url) - return oldest_rev - -def get_commit_log(url, revnum): - """Return the log message for a specific integer revision - number.""" - out = launchsvn("log --incremental -r%d %s" % (revnum, url)) - return recode_stdout_to_file("".join(out[1:])) - -def construct_merged_log_message(url, revnums): - """Return a commit log message containing all the commit messages - in the specified revisions at the given URL. The separator used - in this log message is determined by searching for the longest - svnmerge separator existing in the commit log messages and - extending it by one more separator. This results in a new commit - log message that is clearer in describing merges that contain - other merges. Trailing newlines are removed from the embedded - log messages.""" - messages = [''] - longest_sep = '' - for r in revnums.sorted(): - message = get_commit_log(url, r) - if message: - message = re.sub(r'(\r\n|\r|\n)', "\n", message) - message = rstrip(message, "\n") + "\n" - messages.append(prefix_lines(LOG_LINE_PREFIX, message)) - for match in LOG_SEPARATOR_RE.findall(message): - sep = match[1] - if len(sep) > len(longest_sep): - longest_sep = sep - - longest_sep += LOG_SEPARATOR + "\n" - messages.append('') - return longest_sep.join(messages) - -def get_default_source(branch_target, branch_props): - """Return the default source for branch_target (given its branch_props). - Error out if there is ambiguity.""" - if not branch_props: - error("no integration info available") - - props = branch_props.copy() - pathid = PathIdentifier.from_target(branch_target) - - # To make bidirectional merges easier, find the target's - # repository local path so it can be removed from the list of - # possible integration sources. - if props.has_key(pathid): - del props[pathid] - - if len(props) > 1: - err_msg = "multiple sources found. " - err_msg += "Explicit source argument (-S/--source) required.\n" - err_msg += "The merge sources available are:" - for prop in props: - err_msg += "\n " + str(prop) - error(err_msg) - - return props.keys()[0] - -def should_find_reflected(branch_dir): - should_find_reflected = opts["bidirectional"] - - # If the source has integration info for the target, set find_reflected - # even if --bidirectional wasn't specified - if not should_find_reflected: - source_props = get_merge_props(opts["source-url"]) - should_find_reflected = source_props.has_key(PathIdentifier.from_target(branch_dir)) - - return should_find_reflected - -def analyze_revs(target_pathid, url, begin=1, end=None, - find_reflected=False): - """For the source of the merges in the source URL being merged into - target_pathid, analyze the revisions in the interval begin-end (which - defaults to 1-HEAD), to find out which revisions are changes in - the url, which are changes elsewhere (so-called 'phantom' - revisions), optionally which are reflected changes (to avoid - conflicts that can occur when doing bidirectional merging between - branches), and which revisions initialize merge tracking against other - branches. Return a tuple of four RevisionSet's: - (real_revs, phantom_revs, reflected_revs, initialized_revs). - - NOTE: To maximize speed, if "end" is not provided, the function is - not able to find phantom revisions following the last real - revision in the URL. - """ - - begin = str(begin) - if end is None: - end = "HEAD" - else: - end = str(end) - if long(begin) > long(end): - return RevisionSet(""), RevisionSet(""), \ - RevisionSet(""), RevisionSet("") - - logs[url] = RevisionLog(url, begin, end, find_reflected) - revs = RevisionSet(logs[url].revs) - - if end == "HEAD": - # If end is not provided, we do not know which is the latest revision - # in the repository. So return the phantom revision set only up to - # the latest known revision. - end = str(list(revs)[-1]) - - phantom_revs = RevisionSet("%s-%s" % (begin, end)) - revs - - if find_reflected: - reflected_revs = logs[url].merge_metadata().changed_revs(target_pathid) - reflected_revs += logs[url].block_metadata().changed_revs(target_pathid) - else: - reflected_revs = [] - - initialized_revs = RevisionSet(logs[url].merge_metadata().initialized_revs()) - reflected_revs = RevisionSet(reflected_revs) - - return revs, phantom_revs, reflected_revs, initialized_revs - -def analyze_source_revs(branch_target, source_url, **kwargs): - """For the given branch and source, extract the real and phantom - source revisions.""" - branch_url = target_to_url(branch_target) - branch_pathid = PathIdentifier.from_target(branch_target) - - # Extract the latest repository revision from the URL of the branch - # directory (which is already cached at this point). - end_rev = get_latest_rev(source_url) - - # Calculate the base of analysis. If there is a "1-XX" interval in the - # merged_revs, we do not need to check those. - base = 1 - r = opts["merged-revs"].normalized() - if r and r[0][0] == 1: - base = r[0][1] + 1 - - # See if the user filtered the revision set. If so, we are not - # interested in something outside that range. - if opts["revision"]: - revs = RevisionSet(opts["revision"]).sorted() - if base < revs[0]: - base = revs[0] - if end_rev > revs[-1]: - end_rev = revs[-1] - - return analyze_revs(branch_pathid, source_url, base, end_rev, **kwargs) - -def minimal_merge_intervals(revs, phantom_revs): - """Produce the smallest number of intervals suitable for merging. revs - is the RevisionSet which we want to merge, and phantom_revs are phantom - revisions which can be used to concatenate intervals, thus minimizing the - number of operations.""" - revnums = revs.normalized() - ret = [] - - cur = revnums.pop() - while revnums: - next = revnums.pop() - assert next[1] < cur[0] # otherwise it is not ordered - assert cur[0] - next[1] > 1 # otherwise it is not normalized - for i in range(next[1]+1, cur[0]): - if i not in phantom_revs: - ret.append(cur) - cur = next - break - else: - cur = (next[0], cur[1]) - - ret.append(cur) - ret.reverse() - return ret - -def display_revisions(revs, display_style, revisions_msg, source_url): - """Show REVS as dictated by DISPLAY_STYLE, either numerically, in - log format, or as diffs. When displaying revisions numerically, - prefix output with REVISIONS_MSG when in verbose mode. Otherwise, - request logs or diffs using SOURCE_URL.""" - if display_style == "revisions": - if revs: - report(revisions_msg) - print revs - elif display_style == "logs": - for start,end in revs.normalized(): - svn_command('log --incremental -v -r %d:%d %s' % \ - (start, end, source_url)) - elif display_style in ("diffs", "summarize"): - if display_style == 'summarize': - summarize = '--summarize ' - else: - summarize = '' - - for start, end in revs.normalized(): - print - if start == end: - print "%s: changes in revision %d follow" % (NAME, start) - else: - print "%s: changes in revisions %d-%d follow" % (NAME, - start, end) - print - - # Note: the starting revision number to 'svn diff' is - # NOT inclusive so we have to subtract one from ${START}. - svn_command("diff -r %d:%d %s %s" % (start - 1, end, summarize, - source_url)) - else: - assert False, "unhandled display style: %s" % display_style - -def action_init(target_dir, target_props): - """Initialize for merges.""" - # Check that directory is ready for being modified - check_dir_clean(target_dir) - - target_pathid = PathIdentifier.from_target(target_dir) - source_pathid = opts['source-pathid'] - if source_pathid == target_pathid: - error("cannot init integration source path '%s'\nIts path identifier does not " - "differ from the path identifier of the current directory, '%s'." - % (source_pathid, target_pathid)) - - source_url = opts['source-url'] - - # If the user hasn't specified the revisions to use, see if the - # "source" is a copy from the current tree and if so, we can use - # the version data obtained from it. - revision_range = opts["revision"] - if not revision_range: - # If source was originally copied from target, and we are merging - # changes from source to target (the copy target is the merge source, - # and the copy source is the merge target), then we want to mark as - # integrated up to the rev in which the copy was committed which - # created the merge source: - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(source_url) - - cf_pathid = None - if cf_source: - cf_url = get_repo_root(source_url) + cf_source - if is_url(cf_url) and check_url(cf_url): - cf_pathid = PathIdentifier.from_target(cf_url) - - if target_pathid == cf_pathid: - report('the source "%s" was copied from "%s" in rev %s and committed in rev %s' % - (source_url, target_dir, cf_rev, copy_committed_in_rev)) - revision_range = "1-" + str(copy_committed_in_rev) - - if not revision_range: - # If the reverse is true: copy source is the merge source, and - # the copy target is the merge target, then we want to mark as - # integrated up to the specific rev of the merge target from - # which the merge source was copied. (Longer discussion at: - # http://subversion.tigris.org/issues/show_bug.cgi?id=2810 ) - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(target_dir) - - cf_pathid = None - if cf_source: - cf_url = get_repo_root(target_dir) + cf_source - if is_url(cf_url) and check_url(cf_url): - cf_pathid = PathIdentifier.from_target(cf_url) - - source_pathid = PathIdentifier.from_target(source_url) - if source_pathid == cf_pathid: - report('the target "%s" was copied the source "%s" in rev %s and committed in rev %s' % - (target_dir, source_url, cf_rev, copy_committed_in_rev)) - revision_range = "1-" + cf_rev - - # When neither the merge source nor target is a copy of the other, and - # the user did not specify a revision range, then choose a default which is - # the current revision; saying, in effect, "everything has been merged, so - # mark as integrated up to the latest rev on source url). - if not revision_range: - revision_range = "1-" + get_latest_rev(source_url) - - revs = RevisionSet(revision_range) - - report('marking "%s" as already containing revisions "%s" of "%s"' % - (target_dir, revs, source_url)) - - revs = str(revs) - # If the local svnmerge-integrated property already has an entry - # for the source-pathid, simply error out. - if not opts["force"] and target_props.has_key(source_pathid): - error('Repository-relative path %s has already been initialized at %s\n' - 'Use --force to re-initialize' % (source_pathid, target_dir)) - # set the pathid's external_form based on the user's options - source_pathid.external_form = source_pathid.format(opts['location-type']) - - revs = str(revs) - target_props[source_pathid] = revs - - # Set property - set_merge_props(target_dir, target_props) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Initialized merge tracking via "%s" with revisions "%s" from ' \ - % (NAME, revs) - print >>f, '%s' % source_url - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_avail(branch_dir, branch_props): - """Show commits available for merges.""" - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"], - find_reflected= - should_find_reflected(branch_dir)) - report('skipping phantom revisions: %s' % phantom_revs) - if reflected_revs: - report('skipping reflected revisions: %s' % reflected_revs) - report('skipping initialized revisions: %s' % initialized_revs) - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - avail_revs = source_revs - opts["merged-revs"] - blocked_revs - \ - reflected_revs - initialized_revs - - # Compose the set of revisions to show - revs = RevisionSet("") - report_msg = "revisions available to be merged are:" - if "avail" in opts["avail-showwhat"]: - revs |= avail_revs - if "blocked" in opts["avail-showwhat"]: - revs |= blocked_revs - report_msg = "revisions blocked are:" - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs = revs & RevisionSet(opts["revision"]) - - display_revisions(revs, opts["avail-display"], - report_msg, - opts["source-url"]) - -def action_integrated(branch_dir, branch_props): - """Show change sets already merged. This set of revisions is - calculated from taking svnmerge-integrated property from the - branch, and subtracting any revision older than the branch - creation revision.""" - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - revs = merge_props_to_revision_set(branch_props, opts["source-pathid"]) - - # Lookup the oldest revision on the branch path. - oldest_src_rev = get_created_rev(opts["source-url"]) - - # Subtract any revisions which pre-date the branch. - report("subtracting revisions which pre-date the source URL (%d)" % - oldest_src_rev) - revs = revs - RevisionSet(range(1, oldest_src_rev)) - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs = revs & RevisionSet(opts["revision"]) - - display_revisions(revs, opts["integrated-display"], - "revisions already integrated are:", opts["source-url"]) - -def action_merge(branch_dir, branch_props): - """Record merge meta data, and do the actual merge (if not - requested otherwise via --record-only).""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"], - find_reflected= - should_find_reflected(branch_dir)) - - if opts["revision"]: - revs = RevisionSet(opts["revision"]) - else: - revs = source_revs - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - merged_revs = opts["merged-revs"] - - # Show what we're doing - if opts["verbose"]: # just to avoid useless calculations - if merged_revs & revs: - report('"%s" already contains revisions %s' % (branch_dir, - merged_revs & revs)) - if phantom_revs: - report('memorizing phantom revision(s): %s' % phantom_revs) - if reflected_revs: - report('memorizing reflected revision(s): %s' % reflected_revs) - if blocked_revs & revs: - report('skipping blocked revisions(s): %s' % (blocked_revs & revs)) - if initialized_revs: - report('skipping initialized revision(s): %s' % initialized_revs) - - # Compute final merge set. - revs = revs - merged_revs - blocked_revs - reflected_revs - \ - phantom_revs - initialized_revs - if not revs: - report('no revisions to merge, exiting') - return - - # When manually marking revisions as merged, we only update the - # integration meta data, and don't perform an actual merge. - record_only = opts["record-only"] - - if record_only: - report('recording merge of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - else: - report('merging in revision(s) %s from "%s"' % - (revs, opts["source-url"])) - - # Do the merge(s). Note: the starting revision number to 'svn merge' - # is NOT inclusive so we have to subtract one from start. - # We try to keep the number of merge operations as low as possible, - # because it is faster and reduces the number of conflicts. - old_block_props = get_block_props(branch_dir) - merge_metadata = logs[opts["source-url"]].merge_metadata() - block_metadata = logs[opts["source-url"]].block_metadata() - for start,end in minimal_merge_intervals(revs, phantom_revs): - if not record_only: - # Preset merge/blocked properties to the source value at - # the start rev to avoid spurious property conflicts - set_merge_props(branch_dir, merge_metadata.get(start - 1)) - set_block_props(branch_dir, block_metadata.get(start - 1)) - # Do the merge - svn_command("merge --force -r %d:%d %s %s" % \ - (start - 1, end, opts["source-url"], branch_dir)) - # TODO: to support graph merging, add logic to merge the property - # meta-data manually - - # Update the set of merged revisions. - merged_revs = merged_revs | revs | reflected_revs | phantom_revs | initialized_revs - branch_props[opts["source-pathid"]] = str(merged_revs) - set_merge_props(branch_dir, branch_props) - # Reset the blocked revs - set_block_props(branch_dir, old_block_props) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - if record_only: - print >>f, 'Recorded merge of revisions %s via %s from ' % \ - (revs, NAME) - else: - print >>f, 'Merged revisions %s via %s from ' % \ - (revs, NAME) - print >>f, '%s' % opts["source-url"] - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], revs), - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_block(branch_dir, branch_props): - """Block revisions.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - source_revs, phantom_revs, reflected_revs, initialized_revs = \ - analyze_source_revs(branch_dir, opts["source-url"]) - revs_to_block = source_revs - opts["merged-revs"] - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs_to_block = RevisionSet(opts["revision"]) & revs_to_block - - if not revs_to_block: - error('no available revisions to block') - - # Change blocked information - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - blocked_revs = blocked_revs | revs_to_block - set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Blocked revisions %s via %s' % (revs_to_block, NAME) - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], - revs_to_block), - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_unblock(branch_dir, branch_props): - """Unblock revisions.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"]) - revs_to_unblock = blocked_revs - - # Limit to revisions specified by -r (if any) - if opts["revision"]: - revs_to_unblock = revs_to_unblock & RevisionSet(opts["revision"]) - - if not revs_to_unblock: - error('no available revisions to unblock') - - # Change blocked information - blocked_revs = blocked_revs - revs_to_unblock - set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Unblocked revisions %s via %s' % (revs_to_unblock, NAME) - if opts["commit-verbose"]: - print >>f - print >>f, construct_merged_log_message(opts["source-url"], - revs_to_unblock), - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -def action_rollback(branch_dir, branch_props): - """Rollback previously integrated revisions.""" - - # Make sure the revision arguments are present - if not opts["revision"]: - error("The '-r' option is mandatory for rollback") - - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - # Get the list of all revisions already merged into this source-pathid. - merged_revs = merge_props_to_revision_set(branch_props, - opts["source-pathid"]) - - # At which revision was the src created? - oldest_src_rev = get_created_rev(opts["source-url"]) - src_pre_exist_range = RevisionSet("1-%d" % oldest_src_rev) - - # Limit to revisions specified by -r (if any) - revs = merged_revs & RevisionSet(opts["revision"]) - - # make sure there's some revision to rollback - if not revs: - report("Nothing to rollback in revision range r%s" % opts["revision"]) - return - - # If even one specified revision lies outside the lifetime of the - # merge source, error out. - if revs & src_pre_exist_range: - err_str = "Specified revision range falls out of the rollback range.\n" - err_str += "%s was created at r%d" % (opts["source-pathid"], - oldest_src_rev) - error(err_str) - - record_only = opts["record-only"] - - if record_only: - report('recording rollback of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - else: - report('rollback of revision(s) %s from "%s"' % - (revs, opts["source-url"])) - - # Do the reverse merge(s). Note: the starting revision number - # to 'svn merge' is NOT inclusive so we have to subtract one from start. - # We try to keep the number of merge operations as low as possible, - # because it is faster and reduces the number of conflicts. - rollback_intervals = minimal_merge_intervals(revs, []) - # rollback in the reverse order of merge - rollback_intervals.reverse() - for start, end in rollback_intervals: - if not record_only: - # Do the merge - svn_command("merge --force -r %d:%d %s %s" % \ - (end, start - 1, opts["source-url"], branch_dir)) - - # Write out commit message if desired - # calculate the phantom revs first - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - if record_only: - print >>f, 'Recorded rollback of revisions %s via %s from ' % \ - (revs , NAME) - else: - print >>f, 'Rolled back revisions %s via %s from ' % \ - (revs , NAME) - print >>f, '%s' % opts["source-url"] - - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - - # Update the set of merged revisions. - merged_revs = merged_revs - revs - branch_props[opts["source-pathid"]] = str(merged_revs) - set_merge_props(branch_dir, branch_props) - -def action_uninit(branch_dir, branch_props): - """Uninit SOURCE URL.""" - # Check branch directory is ready for being modified - check_dir_clean(branch_dir) - - # If the source-pathid does not have an entry in the svnmerge-integrated - # property, simply error out. - if not branch_props.has_key(opts["source-pathid"]): - error('Repository-relative path "%s" does not contain merge ' - 'tracking information for "%s"' \ - % (opts["source-pathid"], branch_dir)) - - del branch_props[opts["source-pathid"]] - - # Set merge property with the selected source deleted - set_merge_props(branch_dir, branch_props) - - # Set blocked revisions for the selected source to None - set_blocked_revs(branch_dir, opts["source-pathid"], None) - - # Write out commit message if desired - if opts["commit-file"]: - f = open(opts["commit-file"], "w") - print >>f, 'Removed merge tracking for "%s" for ' % NAME - print >>f, '%s' % opts["source-url"] - f.close() - report('wrote commit message to "%s"' % opts["commit-file"]) - -############################################################################### -# Command line parsing -- options and commands management -############################################################################### - -class OptBase: - def __init__(self, *args, **kwargs): - self.help = kwargs["help"] - del kwargs["help"] - self.lflags = [] - self.sflags = [] - for a in args: - if a.startswith("--"): self.lflags.append(a) - elif a.startswith("-"): self.sflags.append(a) - else: - raise TypeError, "invalid flag name: %s" % a - if kwargs.has_key("dest"): - self.dest = kwargs["dest"] - del kwargs["dest"] - else: - if not self.lflags: - raise TypeError, "cannot deduce dest name without long options" - self.dest = self.lflags[0][2:] - if kwargs: - raise TypeError, "invalid keyword arguments: %r" % kwargs.keys() - def repr_flags(self): - f = self.sflags + self.lflags - r = f[0] - for fl in f[1:]: - r += " [%s]" % fl - return r - -class Option(OptBase): - def __init__(self, *args, **kwargs): - self.default = kwargs.setdefault("default", 0) - del kwargs["default"] - self.value = kwargs.setdefault("value", None) - del kwargs["value"] - OptBase.__init__(self, *args, **kwargs) - def apply(self, state, value): - assert value == "" - if self.value is not None: - state[self.dest] = self.value - else: - state[self.dest] += 1 - -class OptionArg(OptBase): - def __init__(self, *args, **kwargs): - self.default = kwargs["default"] - del kwargs["default"] - self.metavar = kwargs.setdefault("metavar", None) - del kwargs["metavar"] - OptBase.__init__(self, *args, **kwargs) - - if self.metavar is None: - if self.dest is not None: - self.metavar = self.dest.upper() - else: - self.metavar = "arg" - if self.default: - self.help += " (default: %s)" % self.default - def apply(self, state, value): - assert value is not None - state[self.dest] = value - def repr_flags(self): - r = OptBase.repr_flags(self) - return r + " " + self.metavar - -class CommandOpts: - class Cmd: - def __init__(self, *args): - self.name, self.func, self.usage, self.help, self.opts = args - def short_help(self): - return self.help.split(".")[0] - def __str__(self): - return self.name - def __call__(self, *args, **kwargs): - return self.func(*args, **kwargs) - - def __init__(self, global_opts, common_opts, command_table, version=None): - self.progname = NAME - self.version = version.replace("%prog", self.progname) - self.cwidth = console_width() - 2 - self.ctable = command_table.copy() - self.gopts = global_opts[:] - self.copts = common_opts[:] - self._add_builtins() - for k in self.ctable.keys(): - cmd = self.Cmd(k, *self.ctable[k]) - opts = [] - for o in cmd.opts: - if isinstance(o, types.StringType) or \ - isinstance(o, types.UnicodeType): - o = self._find_common(o) - opts.append(o) - cmd.opts = opts - self.ctable[k] = cmd - - def _add_builtins(self): - self.gopts.append( - Option("-h", "--help", help="show help for this command and exit")) - if self.version is not None: - self.gopts.append( - Option("-V", "--version", help="show version info and exit")) - self.ctable["help"] = (self._cmd_help, - "help [COMMAND]", - "Display help for a specific command. If COMMAND is omitted, " - "display brief command description.", - []) - - def _cmd_help(self, cmd=None, *args): - if args: - self.error("wrong number of arguments", "help") - if cmd is not None: - cmd = self._command(cmd) - self.print_command_help(cmd) - else: - self.print_command_list() - - def _paragraph(self, text, width=78): - chunks = re.split("\s+", text.strip()) - chunks.reverse() - lines = [] - while chunks: - L = chunks.pop() - while chunks and len(L) + len(chunks[-1]) + 1 <= width: - L += " " + chunks.pop() - lines.append(L) - return lines - - def _paragraphs(self, text, *args, **kwargs): - pars = text.split("\n\n") - lines = self._paragraph(pars[0], *args, **kwargs) - for p in pars[1:]: - lines.append("") - lines.extend(self._paragraph(p, *args, **kwargs)) - return lines - - def _print_wrapped(self, text, indent=0): - text = self._paragraphs(text, self.cwidth - indent) - print text.pop(0) - for t in text: - print " " * indent + t - - def _find_common(self, fl): - for o in self.copts: - if fl in o.lflags+o.sflags: - return o - assert False, fl - - def _compute_flags(self, opts, check_conflicts=True): - back = {} - sfl = "" - lfl = [] - for o in opts: - sapp = lapp = "" - if isinstance(o, OptionArg): - sapp, lapp = ":", "=" - for s in o.sflags: - if check_conflicts and back.has_key(s): - raise RuntimeError, "option conflict: %s" % s - back[s] = o - sfl += s[1:] + sapp - for l in o.lflags: - if check_conflicts and back.has_key(l): - raise RuntimeError, "option conflict: %s" % l - back[l] = o - lfl.append(l[2:] + lapp) - return sfl, lfl, back - - def _extract_command(self, args): - """ - Try to extract the command name from the argument list. This is - non-trivial because we want to allow command-specific options even - before the command itself. - """ - opts = self.gopts[:] - for cmd in self.ctable.values(): - opts.extend(cmd.opts) - sfl, lfl, _ = self._compute_flags(opts, check_conflicts=False) - - lopts,largs = getopt.getopt(args, sfl, lfl) - if not largs: - return None - return self._command(largs[0]) - - def _fancy_getopt(self, args, opts, state=None): - if state is None: - state= {} - for o in opts: - if not state.has_key(o.dest): - state[o.dest] = o.default - - sfl, lfl, back = self._compute_flags(opts) - try: - lopts,args = getopt.gnu_getopt(args, sfl, lfl) - except AttributeError: - # Before Python 2.3, there was no gnu_getopt support. - # So we can't parse intermixed positional arguments - # and options. - lopts,args = getopt.getopt(args, sfl, lfl) - - for o,v in lopts: - back[o].apply(state, v) - return state, args - - def _command(self, cmd): - if not self.ctable.has_key(cmd): - self.error("unknown command: '%s'" % cmd) - return self.ctable[cmd] - - def parse(self, args): - if not args: - self.print_small_help() - sys.exit(0) - - cmd = None - try: - cmd = self._extract_command(args) - opts = self.gopts[:] - if cmd: - opts.extend(cmd.opts) - args.remove(cmd.name) - state, args = self._fancy_getopt(args, opts) - except getopt.GetoptError, e: - self.error(e, cmd) - - # Handle builtins - if self.version is not None and state["version"]: - self.print_version() - sys.exit(0) - if state["help"]: # special case for --help - if cmd: - self.print_command_help(cmd) - sys.exit(0) - cmd = self.ctable["help"] - else: - if cmd is None: - self.error("command argument required") - if str(cmd) == "help": - cmd(*args) - sys.exit(0) - return cmd, args, state - - def error(self, s, cmd=None): - print >>sys.stderr, "%s: %s" % (self.progname, s) - if cmd is not None: - self.print_command_help(cmd) - else: - self.print_small_help() - sys.exit(1) - def print_small_help(self): - print "Type '%s help' for usage" % self.progname - def print_usage_line(self): - print "usage: %s <subcommand> [options...] [args...]\n" % self.progname - def print_command_list(self): - print "Available commands (use '%s help COMMAND' for more details):\n" \ - % self.progname - cmds = self.ctable.keys() - cmds.sort() - indent = max(map(len, cmds)) - for c in cmds: - h = self.ctable[c].short_help() - print " %-*s " % (indent, c), - self._print_wrapped(h, indent+6) - def print_command_help(self, cmd): - cmd = self.ctable[str(cmd)] - print 'usage: %s %s\n' % (self.progname, cmd.usage) - self._print_wrapped(cmd.help) - def print_opts(opts, self=self): - if not opts: return - flags = [o.repr_flags() for o in opts] - indent = max(map(len, flags)) - for f,o in zip(flags, opts): - print " %-*s :" % (indent, f), - self._print_wrapped(o.help, indent+5) - print '\nCommand options:' - print_opts(cmd.opts) - print '\nGlobal options:' - print_opts(self.gopts) - - def print_version(self): - print self.version - -############################################################################### -# Options and Commands description -############################################################################### - -global_opts = [ - Option("-F", "--force", - help="force operation even if the working copy is not clean, or " - "there are pending updates"), - Option("-n", "--dry-run", - help="don't actually change anything, just pretend; " - "implies --show-changes"), - Option("-s", "--show-changes", - help="show subversion commands that make changes"), - Option("-v", "--verbose", - help="verbose mode: output more information about progress"), - OptionArg("-u", "--username", - default=None, - help="invoke subversion commands with the supplied username"), - OptionArg("-p", "--password", - default=None, - help="invoke subversion commands with the supplied password"), - OptionArg("-c", "--config-dir", metavar="DIR", - default=None, - help="cause subversion commands to consult runtime config directory DIR"), -] - -common_opts = [ - Option("-b", "--bidirectional", - value=True, - default=False, - help="remove reflected and initialized revisions from merge candidates. " - "Not required but may be specified to speed things up slightly"), - OptionArg("-f", "--commit-file", metavar="FILE", - default="svnmerge-commit-message.txt", - help="set the name of the file where the suggested log message " - "is written to"), - Option("-M", "--record-only", - value=True, - default=False, - help="do not perform an actual merge of the changes, yet record " - "that a merge happened"), - OptionArg("-r", "--revision", - metavar="REVLIST", - default="", - help="specify a revision list, consisting of revision numbers " - 'and ranges separated by commas, e.g., "534,537-539,540"'), - OptionArg("-S", "--source", "--head", - default=None, - help="specify a merge source for this branch. It can be either " - "a working directory path, a full URL, or an unambiguous " - "substring of one of the locations for which merge tracking was " - "already initialized. Needed only to disambiguate in case of " - "multiple merge sources"), -] - -command_table = { - "init": (action_init, - "init [OPTION...] [SOURCE]", - """Initialize merge tracking from SOURCE on the current working - directory. - - If SOURCE is specified, all the revisions in SOURCE are marked as already - merged; if this is not correct, you can use --revision to specify the - exact list of already-merged revisions. - - If SOURCE is omitted, then it is computed from the "svn cp" history of the - current working directory (searching back for the branch point); in this - case, %s assumes that no revision has been integrated yet since - the branch point (unless you teach it with --revision).""" % NAME, - [ - "-f", "-r", # import common opts - OptionArg("-L", "--location-type", - dest="location-type", - default="path", - help="Use this type of location identifier in the new " + - "Subversion properties; 'uuid', 'url', or 'path' " + - "(default)"), - ]), - - "avail": (action_avail, - "avail [OPTION...] [PATH]", - """Show unmerged revisions available for PATH as a revision list. - If --revision is given, the revisions shown will be limited to those - also specified in the option. - - When svnmerge is used to bidirectionally merge changes between a - branch and its source, it is necessary to not merge the same changes - forth and back: e.g., if you committed a merge of a certain - revision of the branch into the source, you do not want that commit - to appear as available to merged into the branch (as the code - originated in the branch itself!). svnmerge will automatically - exclude these so-called "reflected" revisions.""", - [ - Option("-A", "--all", - dest="avail-showwhat", - value=["blocked", "avail"], - default=["avail"], - help="show both available and blocked revisions (aka ignore " - "blocked revisions)"), - "-b", - Option("-B", "--blocked", - dest="avail-showwhat", - value=["blocked"], - help="show the blocked revision list (see '%s block')" % NAME), - Option("-d", "--diff", - dest="avail-display", - value="diffs", - default="revisions", - help="show corresponding diff instead of revision list"), - Option("--summarize", - dest="avail-display", - value="summarize", - help="show summarized diff instead of revision list"), - Option("-l", "--log", - dest="avail-display", - value="logs", - help="show corresponding log history instead of revision list"), - "-r", - "-S", - ]), - - "integrated": (action_integrated, - "integrated [OPTION...] [PATH]", - """Show merged revisions available for PATH as a revision list. - If --revision is given, the revisions shown will be limited to - those also specified in the option.""", - [ - Option("-d", "--diff", - dest="integrated-display", - value="diffs", - default="revisions", - help="show corresponding diff instead of revision list"), - Option("-l", "--log", - dest="integrated-display", - value="logs", - help="show corresponding log history instead of revision list"), - "-r", - "-S", - ]), - - "rollback": (action_rollback, - "rollback [OPTION...] [PATH]", - """Rollback previously merged in revisions from PATH. The - --revision option is mandatory, and specifies which revisions - will be rolled back. Only the previously integrated merges - will be rolled back. - - When manually rolling back changes, --record-only can be used to - instruct %s that a manual rollback of a certain revision - already happened, so that it can record it and offer that - revision for merge henceforth.""" % (NAME), - [ - "-f", "-r", "-S", "-M", # import common opts - ]), - - "merge": (action_merge, - "merge [OPTION...] [PATH]", - """Merge in revisions into PATH from its source. If --revision is omitted, - all the available revisions will be merged. In any case, already merged-in - revisions will NOT be merged again. - - When svnmerge is used to bidirectionally merge changes between a - branch and its source, it is necessary to not merge the same changes - forth and back: e.g., if you committed a merge of a certain - revision of the branch into the source, you do not want that commit - to appear as available to merged into the branch (as the code - originated in the branch itself!). svnmerge will automatically - exclude these so-called "reflected" revisions. - - When manually merging changes across branches, --record-only can - be used to instruct %s that a manual merge of a certain revision - already happened, so that it can record it and not offer that - revision for merge anymore. Conversely, when there are revisions - which should not be merged, use '%s block'.""" % (NAME, NAME), - [ - "-b", "-f", "-r", "-S", "-M", # import common opts - ]), - - "block": (action_block, - "block [OPTION...] [PATH]", - """Block revisions within PATH so that they disappear from the available - list. This is useful to hide revisions which will not be integrated. - If --revision is omitted, it defaults to all the available revisions. - - Do not use this option to hide revisions that were manually merged - into the branch. Instead, use '%s merge --record-only', which - records that a merge happened (as opposed to a merge which should - not happen).""" % NAME, - [ - "-f", "-r", "-S", # import common opts - ]), - - "unblock": (action_unblock, - "unblock [OPTION...] [PATH]", - """Revert the effect of '%s block'. If --revision is omitted, all the - blocked revisions are unblocked""" % NAME, - [ - "-f", "-r", "-S", # import common opts - ]), - - "uninit": (action_uninit, - "uninit [OPTION...] [PATH]", - """Remove merge tracking information from PATH. It cleans any kind of merge - tracking information (including the list of blocked revisions). If there - are multiple sources, use --source to indicate which source you want to - forget about.""", - [ - "-f", "-S", # import common opts - ]), -} - - -def main(args): - global opts - - # Initialize default options - opts = default_opts.copy() - logs.clear() - - optsparser = CommandOpts(global_opts, common_opts, command_table, - version="%%prog r%s\n modified: %s\n\n" - "Copyright (C) 2004,2005 Awarix Inc.\n" - "Copyright (C) 2005, Giovanni Bajo" - % (__revision__, __date__)) - - cmd, args, state = optsparser.parse(args) - opts.update(state) - - source = opts.get("source", None) - branch_dir = "." - - if str(cmd) == "init": - if len(args) == 1: - source = args[0] - elif len(args) > 1: - optsparser.error("wrong number of parameters", cmd) - elif str(cmd) in command_table.keys(): - if len(args) == 1: - branch_dir = args[0] - elif len(args) > 1: - optsparser.error("wrong number of parameters", cmd) - else: - assert False, "command not handled: %s" % cmd - - # Validate branch_dir - if not is_wc(branch_dir): - if str(cmd) == "avail": - info = None - # it should be noted here that svn info does not error exit - # if an invalid target is specified to it (as is - # intuitive). so the try, except code is not absolutely - # necessary. but, I retain it to indicate the intuitive - # handling. - try: - info = get_svninfo(branch_dir) - except LaunchError: - pass - # test that we definitely targeted a subversion directory, - # mirroring the purpose of the earlier is_wc() call - if info is None or not info.has_key("Node Kind") or info["Node Kind"] != "directory": - error('"%s" is neither a valid URL, nor a working directory' % branch_dir) - else: - error('"%s" is not a subversion working directory' % branch_dir) - - # give out some hints as to potential pathids - PathIdentifier.hint(branch_dir) - if source: PathIdentifier.hint(source) - - # Extract the integration info for the branch_dir - branch_props = get_merge_props(branch_dir) - - # Calculate source_url and source_path - report("calculate source path for the branch") - if not source: - if str(cmd) == "init": - cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(branch_dir) - if not cf_source: - error('no copyfrom info available. ' - 'Explicit source argument (-S/--source) required.') - opts["source-url"] = get_repo_root(branch_dir) + cf_source - opts["source-pathid"] = PathIdentifier.from_target(opts["source-url"]) - - if not opts["revision"]: - opts["revision"] = "1-" + cf_rev - else: - opts["source-pathid"] = get_default_source(branch_dir, branch_props) - opts["source-url"] = opts["source-pathid"].get_url() - - assert is_pathid(opts["source-pathid"]) - assert is_url(opts["source-url"]) - else: - # The source was given as a command line argument and is stored in - # SOURCE. Ensure that the specified source does not end in a /, - # otherwise it's easy to have the same source path listed more - # than once in the integrated version properties, with and without - # trailing /'s. - source = rstrip(source, "/") - if not is_wc(source) and not is_url(source): - # Check if it is a substring of a pathid recorded - # within the branch properties. - found = [] - for pathid in branch_props.keys(): - if pathid.match_substring(source): - found.append(pathid) - if len(found) == 1: - # (assumes pathid is a repository-relative-path) - source_pathid = found[0] - source = source_pathid.get_url() - else: - error('"%s" is neither a valid URL, nor an unambiguous ' - 'substring of a repository path, nor a working directory' - % source) - else: - source_pathid = PathIdentifier.from_target(source) - - source_pathid = PathIdentifier.from_target(source) - if str(cmd) == "init" and \ - source_pathid == PathIdentifier.from_target("."): - error("cannot init integration source path '%s'\n" - "Its repository-relative path must differ from the " - "repository-relative path of the current directory." - % source_pathid) - opts["source-pathid"] = source_pathid - opts["source-url"] = target_to_url(source) - - # Sanity check source_url - assert is_url(opts["source-url"]) - # SVN does not support non-normalized URL (and we should not - # have created them) - assert opts["source-url"].find("/..") < 0 - - report('source is "%s"' % opts["source-url"]) - - # Get previously merged revisions (except when command is init) - if str(cmd) != "init": - opts["merged-revs"] = merge_props_to_revision_set(branch_props, - opts["source-pathid"]) - - # Perform the action - cmd(branch_dir, branch_props) - - -if __name__ == "__main__": - try: - main(sys.argv[1:]) - except LaunchError, (ret, cmd, out): - err_msg = "command execution failed (exit code: %d)\n" % ret - err_msg += cmd + "\n" - err_msg += "".join(out) - error(err_msg) - except KeyboardInterrupt: - # Avoid traceback on CTRL+C - print "aborted by user" - sys.exit(1) diff --git a/testing/subversion/svnserve b/testing/subversion/svnserve deleted file mode 100755 index 670fee742..000000000 --- a/testing/subversion/svnserve +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash - -. /etc/rc.conf -. /etc/rc.d/functions -. /etc/conf.d/svnserve - -PID=`pidof -o %PPID /usr/bin/svnserve` -case "$1" in - start) - stat_busy "Starting svnserve" - if [ -z "$PID" ]; then - if [ -n "$SVNSERVE_USER" ]; then - su -s '/bin/sh' $SVNSERVE_USER -c "/usr/bin/svnserve -d $SVNSERVE_ARGS" & - else - /usr/bin/svnserve -d $SVNSERVE_ARGS & - fi - fi - if [ ! -z "$PID" -o $? -gt 0 ]; then - stat_fail - else - add_daemon svnserve - stat_done - fi - ;; - stop) - stat_busy "Stopping svnserve" - [ ! -z "$PID" ] && kill $PID &> /dev/null - if [ $? -gt 0 ]; then - stat_fail - else - rm_daemon svnserve - stat_done - fi - ;; - restart) - $0 stop - sleep 1 - $0 start - ;; - *) - echo "usage: $0 {start|stop|restart}" -esac diff --git a/testing/subversion/svnserve.conf b/testing/subversion/svnserve.conf deleted file mode 100644 index 37fb7ea10..000000000 --- a/testing/subversion/svnserve.conf +++ /dev/null @@ -1,7 +0,0 @@ -# -# Parameters to be passed to svnserve -# -#SVNSERVE_ARGS="-r /path/to/some/repos" -SVNSERVE_ARGS="" - -#SVNSERVE_USER="svn" diff --git a/testing/usbutils/PKGBUILD b/testing/usbutils/PKGBUILD new file mode 100644 index 000000000..6c00f0dc4 --- /dev/null +++ b/testing/usbutils/PKGBUILD @@ -0,0 +1,40 @@ +# $Id: PKGBUILD 130339 2011-07-05 15:17:16Z tpowa $ +# Maintainer: Judd Vinet <jvinet@zeroflux.org> +# Contributor: Curtis Campbell <curtisjamescampbell@hotmail.com> +pkgname=usbutils +pkgver=003 +pkgrel=1 +_usb_ids_date=2011.04.14 +pkgdesc="USB Device Utilities" +arch=(i686 x86_64) +license=('GPL') +groups=('base') +makedepends=('wget') +depends=('glibc' 'libusb') +optdepends=('python2: for lsusb.py usage' + 'coreutils: for lsusb.py usage') +url="http://linux-usb.sourceforge.net/" +source=(http://www.kernel.org/pub/linux/utils/usb/$pkgname/$pkgname-$pkgver.tar.gz + fix-python2.patch + usb.ids-${_usb_ids_date}) # from http://linux-usb.sourceforge.net/usb.ids + +build() { + cd $srcdir/$pkgname-$pkgver + rm usb.ids + cp $srcdir/usb.ids-${_usb_ids_date} usb.ids + # patch lsusb.py to use correct usb.ids file and python2 interpreter + patch -Np1 -i $srcdir/fix-python2.patch + ./configure --prefix=/usr --datadir=/usr/share/hwdata --disable-zlib + make +} + +package() { + cd $srcdir/$pkgname-$pkgver + make DESTDIR=$pkgdir install + # fix pkgconfig file + install -dm755 $pkgdir/usr/lib + mv $pkgdir/usr/share/pkgconfig $pkgdir/usr/lib/ +} +md5sums=('94a1738fe92062cdd6a9642eeaccefc1' + '45766196895b4cc50b53cd56e1bbf3d1' + 'd64f120c208ca742d3a1d05d84e3f531') diff --git a/testing/usbutils/fix-python2.patch b/testing/usbutils/fix-python2.patch new file mode 100644 index 000000000..7e2875e99 --- /dev/null +++ b/testing/usbutils/fix-python2.patch @@ -0,0 +1,17 @@ +--- usbutils-002/lsusb.py 2010-12-16 01:07:09.000000000 +0100 ++++ usbutils-002/lsusb.py 2011-04-09 22:43:59.043828595 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/env python2 + # lsusb.py + # Displays your USB devices in reasonable form. + # (c) Kurt Garloff <garloff@suse.de>, 2/2009, GPL v2 or v3. +@@ -16,7 +16,7 @@ + warnsort = False + + prefix = "/sys/bus/usb/devices/" +-usbids = "/usr/share/usb.ids" ++usbids = "/usr/share/hwdata/usb.ids" + + esc = chr(27) + norm = esc + "[0;0m" diff --git a/testing/usbutils/usb.ids-2011.04.14 b/testing/usbutils/usb.ids-2011.04.14 new file mode 100644 index 000000000..02e03ba36 --- /dev/null +++ b/testing/usbutils/usb.ids-2011.04.14 @@ -0,0 +1,16374 @@ +# +# List of USB ID's +# +# Maintained by Stephen J. Gowdy <linux.usb.ids@gmail.com> +# If you have any new entries, please submit them via +# http://www.linux-usb.org/usb-ids.html +# or send entries as patches (diff -u old new) in the +# body of your email (a bot will attempt to deal with it). +# The latest version can be obtained from +# http://www.linux-usb.org/usb.ids +# +# Version: 2011.04.14 +# Date: 2011-04-14 20:34:04 +# + +# Vendors, devices and interfaces. Please keep sorted. + +# Syntax: +# vendor vendor_name +# device device_name <-- single tab +# interface interface_name <-- two tabs + +0001 Fry's Electronics + 142b Arbiter Systems, Inc. +0002 Ingram +0003 Club Mac +0004 Nebraska Furniture Mart +0053 Planex + 5301 GW-US54ZGL 802.11bg +0079 DragonRise Inc. + 0006 Generic USB Joystick + 0011 Gamepad +0105 Trust International B.V. + 145f NW-3100 802.11b/g 54Mbps Wireless Network Adapter [zd1211] +0145 Unknown + 0112 Card Reader +0204 Chipsbank Microelectronics Co., Ltd + 6025 CBM2080 Flash drive controller + 6026 CBM1180 Flash drive controller +0218 Hangzhou Worlde + 0301 MIDI Port +02ad HUMAX Co., Ltd. + 138c PVR Mass Storage +0300 MM300 eBook Reader +0324 OCZ Technology Inc + bc06 OCZ ATV USB 2.0 Flash Drive + bc08 OCZ Rally2/ATV USB 2.0 Flash Drive +0325 OCZ Technology Inc + ac02 ATV Turbo / Rally2 Dual Channel USB 2.0 Flash Drive +0386 LTS + 0001 PSX for USB Converter +03da Bernd Walter Computer Technology + 0002 HD44780 LCD interface +03e8 EndPoints, Inc. + 0004 SE401 Webcam + 0008 101 Ethernet [klsi] + 0015 ATAPI Enclosure + 2123 SiPix StyleCam Deluxe + 8004 Aox 99001 +03e9 Thesys Microelectronics +03ea Data Broadcasting Corp. +03eb Atmel Corp. + 0902 4-Port Hub + 2002 Mass Storage Device + 2015 at90usbkey sample firmware (HID keyboard) + 2018 at90usbkey sample firmware (CDC ACM) + 2019 stk525 sample firmware (microphone) + 201c at90usbkey sample firmware (HID mouse) + 201d at90usbkey sample firmware (HID generic) + 2022 at90usbkey sample firmware (composite device) + 2040 LUFA Test PID + 2041 LUFA Mouse Demo Application + 2042 LUFA Keyboard Demo Application + 2043 LUFA Joystick Demo Application + 2044 LUFA CDC Demo Application + 2045 LUFA Mass Storage Demo Application + 2046 LUFA Audio Output Demo Application + 2047 LUFA Audio Input Demo Application + 2048 LUFA MIDI Demo Application + 2049 Stripe Snoop Magnetic Stripe Reader + 204a LUFA CDC Class Bootloader + 204b LUFA USB to Serial Adapter Project + 204c LUFA RNDIS Demo Application + 204d LUFA Combined Mouse and Keyboard Demo Application + 204e LUFA Dual CDC Demo Application + 204f LUFA Generic HID Demo Application + 2060 Benito Programmer Project + 2061 LUFA Combined Mass Storage and Keyboard Demo Application + 2062 LUFA Combined CDC and Mouse Demo Application + 2063 LUFA Datalogger Device + 2064 Interfaceless Control-Only LUFA Devices + 2065 LUFA Test and Measurement Demo Application + 2066 LUFA Multiple Report HID Demo + 2068 LUFA Virtual Serial/Mass Storage Demo + 2103 JTAG ICE mkII + 2104 AVR ISP mkII + 2105 AVRONE! + 2106 STK600 development board + 2107 AVR Dragon + 210d XPLAIN evaluation kit (CDC ACM) + 2122 XMEGA-A1 Explained evaluation kit + 2310 EVK11xx evaluation board + 2ffb at90usb AVR DFU bootloader + 2ffd at89c5130/c5131 DFU bootloader + 2fff at89c5132/c51snd1c DFU bootloader + 3301 at43301 4-Port Hub + 3312 4-Port Hub + 4102 AirVast W-Buddie WN210 + 5601 at76c510 Prism-II 802.11b Access Point + 5603 Cisco 7920 WiFi IP Phone + 6124 at91sam SAMBA bootloader + 7603 D-Link DWL-120 802.11b Wireless Adapter [Atmel at76c503a] + 7604 at76c503a 802.11b Adapter + 7605 at76c503a 802.11b Adapter + 7606 at76c505 802.11b Adapter + 7611 at76c510 rfmd2948 802.11b Access Point + 7613 WL-1130 USB + 7614 AT76c505a Wireless Adapter + 7615 AT76C505AMX Wireless Adapter + 7617 AT76C505AS Wireless Adapter + ff07 Tux Droid fish dongle +03ec Iwatsu America, Inc. +03ed Mitel Corp. +03ee Mitsumi + 0000 CD-R/RW Drive + 2501 eHome Infrared Receiver + 2502 eHome Infrared Receiver + 5609 Japanese Keyboard + 641f WIF-0402C Bluetooth Adapter + 6438 Bluetooth Device + 6440 WML-C52APR Bluetooth Adapter + 6901 SmartDisk FDD + 6902 Floppy Disk Drive + 7500 CD-R/RW + ffff Dongle with BlueCore in DFU mode +03f0 Hewlett-Packard + 0004 DeskJet 895c + 0011 OfficeJet G55 + 0012 DeskJet 1125C Printer Port + 0024 KU-0316 Keyboard + 002a LaserJet P1102 + 0101 ScanJet 4100c + 0102 PhotoSmart S20 + 0104 DeskJet 880c/970c + 0105 ScanJet 4200c + 0107 CD-Writer Plus + 010c Multimedia Keyboard Hub + 0111 G55xi Printer/Scanner/Copier + 0117 LaserJet 3200 + 011c hn210w 802.11b Adapter + 011d Integrated Bluetooth Module + 0121 HP49g+ Calculator + 0122 HID Internet Keyboard + 0201 ScanJet 6200c + 0202 PhotoSmart S20 + 0204 DeskJet 815c + 0205 ScanJet 3300c + 0207 CD-Writer Plus 8200e + 020c Multimedia Keyboard + 0211 OfficeJet G85 + 0212 DeskJet 1220C + 0217 LaserJet 2200 + 0218 APOLLO P2500/2600 + 0304 DeskJet 810c/812c + 0305 ScanJet 4300c + 0307 CD-Writer+ CD-4e + 0311 OfficeJet G85xi + 0312 Color Inkjet CP1700 + 0314 designjet 30/130 series + 0317 LaserJet 1200 + 0324 SK-2885 keyboard + 0401 ScanJet 5200c + 0404 DeskJet 830c/832c + 0405 ScanJet 3400cse + 0411 OfficeJet G95 + 0412 Printing Support + 0417 LaserJet 1200 series + 0423 HS-COMBO + 0504 DeskJet 885c + 0505 ScanJet 2100c + 0507 DVD+RW + 050c 5219 Wireless Keyboard + 0511 OfficeJet K60 + 0512 DeckJet 450 + 0517 LaserJet 1000 + 051d integrated module with Bluetooth wireless technology. + 0601 ScanJet 6300c + 0604 DeskJet 840c + 0605 ScanJet 2200c + 0611 OfficeJet K60xi + 0612 business inkjet 3000 + 0624 Bluetooth Dongle + 0701 ScanJet 5300c/5370c + 0704 DeskJet 825c + 0705 ScanJet 4400c + 0711 OfficeJet K80 + 0712 DeskJet 1180c + 0714 Printing Support + 0801 ScanJet 7400c + 0804 DeskJet 816c + 0805 HP4470C + 0811 OfficeJet K80xi + 0817 LaserJet 3300 + 0901 ScanJet 2300c + 0904 DeskJet 845c + 0912 Printing Support + 0917 LaserJet 3330 + 0924 Modular Smartcard Keyboard + 0a01 ScanJet 2400c + 0a17 color LaserJet 3700 + 0b01 ScanJet 82x0C + 0b0c Wireless Keyboard and Optical Mouse receiver + 0b17 LaserJet 2300d + 0c17 LaserJet 1010 + 0c24 Bluetooth Dongle + 0d12 OfficeJet 9100 series + 0d17 LaserJet 1012 + 0e17 LaserJet 1015 + 0f0c Wireless Keyboard and Optical Mouse receiver + 0f11 OfficeJet V40 + 0f12 Printing Support + 0f17 LaserJet 1150 + 1001 Photo Scanner 1000 + 1002 PhotoSmart 140 series + 1004 DeskJet 970c/970cse + 1005 ScanJet 5400c + 1011 OfficeJet V40xi + 1016 Jornada 548 / iPAQ HW6515 Pocket PC + 1017 LaserJet 1300 + 1024 Smart Card Keyboard + 1027 Virtual keyboard and mouse + 1102 PhotoSmart 240 series + 1104 DeskJet 959c + 1105 ScanJet 5470c/5490c + 1111 OfficeJet v60 + 1116 Jornada 568 Pocket PC + 1117 LaserJet 1300n + 1151 PSC-750xi Printer/Scanner/Copier + 1202 PhotoSmart 320 series + 1204 DeskJet 930c + 1205 ScanJet 4500C/5550C + 1211 OfficeJet v60xi + 1217 LaserJet 2300L + 1302 PhotoSmart 370 series + 1305 ScanJet 4570c + 1311 OfficeJet V30 + 1312 DeskJet 460 + 1317 LaserJet 1005 + 1405 ScanJet 3670 + 1411 PSC 750 + 1424 f2105 Monitor Hub + 1502 PhotoSmart 420 series + 1504 DeskJet 920c + 150c Mood Lighting (Microchip Technology Inc.) + 1511 PSC 750xi + 1512 Printing Support + 1517 color LaserJet 3500 + 1524 Smart Card Keyboard - KR + 1602 PhotoSmart 330 series + 1604 DeskJet 940c + 1605 ScanJet 5530C PhotoSmart + 1611 psc 780 + 1617 LaserJet 3015 + 161d Wireless Rechargeable Optical Mouse (HID) + 1624 Smart Card Keyboard - JP + 1702 PhotoSmart 380 series + 1704 DeskJet 948C + 1705 ScanJet 5590 + 1711 psc 780xi + 1712 Printing Support + 1717 LaserJet 3020 + 171d Wireless (Bluetooth + WLAN) Interface [Integrated Module] + 1801 Inkjet P-2000U + 1802 PhotoSmart 470 series + 1804 DeskJet 916C + 1805 ScanJet 7650 + 1811 PSC 720 + 1812 OfficeJet Pro K550 + 1817 LaserJet 3030 + 181d integrated module with Bluetooth 2.0 wireless technology. + 1902 PhotoSmart A430 series + 1904 DeskJet 3820 + 1911 OfficeJet V45 + 1917 LaserJet 3380 + 1a02 PhotoSmart A510 series + 1a11 OfficeJet 5100 series + 1a17 color LaserJet 4650 + 1b02 PhotoSmart A610 series + 1b04 DeskJet 3810 + 1b05 ScanJet 4850C/4890C + 1c02 PhotoSmart A710 series + 1c17 Color LaserJet 2550l + 1d02 PhotoSmart A310 series + 1d17 LaserJet 1320 + 1e02 PhotoSmart A320 Printer series + 1e11 PSC-950 + 1e17 LaserJet 1160 series + 1f02 PhotoSmart A440 Printer series + 1f11 PSC 920 + 1f12 OfficeJet Pro K5300 + 1f17 color LaserJet 5550 + 1f1d un2400 Gobi Wireless Modem + 2001 Floppy + 2002 Hub + 2004 DeskJet 640c + 2005 ScanJet 3570c + 2012 OfficeJet Pro K5400 + 201d un2400 Gobi Wireless Modem (QDL mode) + 2102 PhotoSmart 7345 + 2104 DeskJet 630c + 2112 OfficeJet Pro L7500 + 211d Sierra MC5725 [ev2210] + 2202 PhotoSmart 7600 series + 2205 ScanJet 3500c + 2212 OfficeJet Pro L7600 + 2217 color LaserJet 9500 MFP + 2302 PhotoSmart 7600 series + 2304 DeskJet 656c + 2305 ScanJet 3970c + 2311 OfficeJet d series + 2312 OfficeJet Pro L7700 + 2317 LaserJet 4350 + 2402 PhotoSmart 7700 series + 2404 Deskjet F2280 series + 2405 ScanJet 4070 PhotoSmart + 2417 LaserJet 4250 + 241d Gobi 2000 Wireless Modem (QDL mode) + 2424 LP1965 19" Monitor Hub + 2502 PhotoSmart 7700 series + 2504 DeskJet F4200 series + 2505 ScanJet 3770 + 2512 OfficeJet Pro L7300 + 2517 LaserJet 2410 + 251d Gobi 2000 Wireless Modem + 2524 LP3065 30" Monitor Hub + 2602 PhotoSmart A520 series + 2605 ScanJet 3800c + 2611 OfficeJet 7100 series + 2617 Color LaserJet 2820 series + 2624 Pole Display (HP522 2 x 20 Line Display) + 2702 PhotoSmart A620 series + 2704 DeskJet 915 + 2717 Color LaserJet 2830 + 2811 PSC-2100 + 2817 Color LaserJet 2840 + 2902 PhotoSmart A820 series + 2911 PSC 2200 + 2917 LaserJet 2420 + 2a11 PSC 2150 series + 2a17 LaserJet 2430 + 2b11 PSC 2170 series + 2b17 LaserJet 1020 + 2c12 Officejet J4680 + 2c17 LaserJet 1022 + 2c24 Logitech M-UAL-96 Mouse + 2d11 OfficeJet 6110 + 2d17 Printing Support + 2e11 PSC 1000 + 2e17 LaserJet 2600n + 2e24 LP2275w Monitor Hub + 2f11 PSC 1200 + 2f17 EWS 2605dn + 2f24 LP2475w Monitor Hub + 3002 PhotoSmart P1000 + 3004 DeskJet 980c + 3005 ScanJet 4670v + 3011 PSC 1100 series + 3017 Printing Support + 3102 PhotoSmart P1100 Printer w/ Card Reader + 3104 DeskJet 960c + 3111 OfficeJet 4100 series + 3117 EWS 2605dtn + 311d Atheros AR9285 Malbec Bluetooth Adapter + 3202 PhotoSmart 1215 + 3207 4 GB flash drive + 3211 OfficeJet 4105 series + 3217 LaserJet 3050 + 3302 PhotoSmart 1218 + 3304 DeskJet 990c + 3312 OfficeJet J6410 + 3317 LaserJet 3052 + 3402 PhotoSmart 1115 + 3404 DeskJet 6122 + 3417 LaserJet 3055 + 3502 PhotoSmart 230 + 3504 DeskJet 6127c + 3511 PSC 2300 + 3517 LaserJet 3390 + 3602 PhotoSmart 1315 + 3611 PSC 2410 PhotoSmart + 3617 Color LaserJet 2605 + 3711 PSC 2500 + 3717 EWS UPD + 3724 Webcam + 3802 PhotoSmart 100 + 3817 LaserJet P2015 series + 3902 PhotoSmart 130 + 3a02 PhotoSmart 7150 + 3a11 OfficeJet 5500 series + 3a17 Printing Support + 3b02 PhotoSmart 7150~ + 3b11 PSC 1300 series + 3b17 LaserJet M1005 MFP + 3c02 PhotoSmart 7350 + 3c11 PSC 1358 + 3c17 EWS UPD + 3d02 PhotoSmart 7350~ + 3d11 OfficeJet 4215 + 3d17 LaserJet P1005 + 3e02 PhotoSmart 7550 + 3e17 LaserJet P1006 + 3f02 PhotoSmart 7550~ + 3f11 PSC-1315/PSC-1317 + 4002 PhotoSmart 635/715/720/735/935 (storage) + 4004 cp1160 + 4102 PhotoSmart 618 + 4105 ScanJet 4370 + 4111 OfficeJet 7200 series + 4117 LaserJet 1018 + 4202 PhotoSmart 812 + 4205 ScanJet G3010 + 4211 OfficeJet 7300 series + 4217 EWS CM1015 + 4302 PhotoSmart 850 (ptp) + 4305 ScanJet G3110 + 4311 OfficeJet 7400 series + 4317 Color LaserJet CM1017 + 4402 PhotoSmart 935 (ptp) + 4417 EWS UPD + 4502 PhotoSmart 945 (PTP mode) + 4505 ScanJet G4010 + 4511 PhotoSmart 2600 + 4517 EWS UPD + 4605 ScanJet G4050 + 4611 PhotoSmart 2700 + 4717 Color LaserJet CP1215 + 4811 PSC 1600 + 4911 PSC 2350 + 4b11 OfficeJet 6200 + 4c11 PSC 1500 series + 4c17 EWS UPD + 4d11 PSC 1400 + 4d17 EWS UPD + 4e11 PhotoSmart 2570 series + 4f11 OfficeJet 5600 (USBHUB) + 5004 DeskJet 995c + 5011 PhotoSmart 3100 series + 5017 EWS UPD + 5111 PhotoSmart 3200 series + 5211 PhotoSmart 3300 series + 5311 OfficeJet 6300 + 5411 OfficeJet 4300 + 5511 DeskJet F300 series + 5611 PhotoSmart C3180 + 5617 LaserJet M1120 MFP + 5711 PhotoSmart C4100 series + 5717 LaserJet M1120n MFP + 5811 PhotoSmart C5100 series + 5817 LaserJet M1319f MFP + 5911 PhotoSmart C6180 + 5a11 PhotoSmart C7100 series + 5b11 OfficeJet J2100 series + 5c11 PhotoSmart C4200 Printer series + 5d11 PhotoSmart C5200 series + 5e11 PhotoSmart D7400 series + 6004 DeskJet 5550 + 6102 Hewlett Packard Digital Camera + 6104 DeskJet 5650c + 6117 color LaserJet 3550 + 6202 PhotoSmart 215 + 6204 DeskJet 5150c + 6217 Color LaserJet 4700 + 6302 PhotoSmart 318/612 + 6317 Color LaserJet 4730mfp + 6402 PhotoSmart 715 (ptp) + 6411 PhotoSmart C8100 series + 6417 LaserJet 5200 + 6502 PhotoSmart 120 (ptp) + 6511 PhotoSmart C7200 series + 6602 PhotoSmart 320 + 6611 PhotoSmart C4380 series + 6617 LaserJet 5200L + 6702 PhotoSmart 720 (ptp) + 6717 Color LaserJet 3000 + 6802 PhotoSmart 620 (ptp) + 6811 PhotoSmart D5300 series + 6817 Color LaserJet 3800 + 6911 PhotoSmart D7200 series + 6917 Color LaserJet 3600 + 6a02 PhotoSmart 735 (ptp) + 6a11 PhotoSmart C6200 series + 6a17 LaserJet 4240 + 6b02 PhotoSmart R707 (PTP mode) + 6b11 Photosmart C4500 series + 6c17 Color LaserJet 4610 + 6f17 Color LaserJet CP6015 series + 7004 DeskJet 3320c + 7102 PhotoSmart 635 (PTP mode) + 7104 DeskJet 3420c + 7117 CM8060 Color MFP with Edgeline Technology + 7202 PhotoSmart 43x (ptp) + 7204 DeskJet 36xx + 7217 LaserJet M5035 MFP + 7302 PhotoSmart M307 (PTP mode) + 7304 DeskJet 35xx + 7311 Photosmart Premium C309 + 7317 LaserJet P3005 + 7404 Printing Support + 7417 LaserJet M4345 MFP + 7504 Printing Support + 7517 LaserJet M3035 MFP + 7604 DeskJet 3940 + 7611 DeskJet F2492 All-in-One + 7617 LaserJet P3004 + 7702 PhotoSmart R817 (PTP mode) + 7704 DeskJet D4100 + 7717 CM8050 Color MFP with Edgeline Technology + 7804 DeskJet D1360 + 7817 Color LaserJet CP3505 + 7917 LaserJet M5025 MFP + 7a02 PhotoSmart M415 (PTP mode) + 7a04 DeskJet D2460 + 7a17 LaserJet M3027 MFP + 7b02 PhotoSmart M23 (PTP mode) + 7b17 Color LaserJet CP4005 + 7c17 Color LaserJet CM6040 series + 7d04 DeskJet F2100 Printer series + 7d17 Color LaserJet CM4730 MFP + 7e04 DeskJet F4100 Printer series + 8017 LaserJet P4515 + 8104 Printing Support + 8117 LaserJet P4015 + 811c Ethernet HN210E + 8204 Printing Support + 8207 FHA-3510 2.4GHz Wireless Optical Mobile Mouse + 8217 LaserJet P4014 + 8317 LaserJet M9050 MFP + 8404 DeskJet 6800 series + 8417 LaserJet M9040 MFP + 8504 DeskJet 6600 series + 8604 DeskJet 5440 + 8704 DeskJet 5940 + 8804 DeskJet 6980 series + 8904 DeskJet 6940 series + 9002 PhotoSmart M437 + 9102 PhotoSmart M537 + 9302 PhotoSmart R930 series + 9402 PhotoSmart R837 + 9502 PhotoSmart R840 series + 9602 PhotoSmart M730 series + 9702 PhotoSmart R740 series + 9802 PhotoSmart Mz60 series + 9902 PhotoSmart M630 series + 9a02 PhotoSmart E330 series + 9b02 PhotoSmart M540 series + 9c02 PhotoSmart M440 series + a004 DeskJet 5850c + b002 PhotoSmart 7200 series + b102 PhotoSmart 7200 series + b116 Webcam + b202 PhotoSmart 7600 series + b302 PhotoSmart 7600 series + b402 PhotoSmart 7700 series + b502 PhotoSmart 7700 series + b602 PhotoSmart 7900 series + b702 PhotoSmart 7900 series + b802 PhotoSmart 7400 series + b902 PhotoSmart 7800 series + ba02 PhotoSmart 8100 series + bb02 PhotoSmart 8400 series + bc02 PhotoSmart 8700 series + bd02 PhotoSmart Pro B9100 series + bef4 NEC Picty760 + c002 PhotoSmart 7800 series + c102 PhotoSmart 8000 series + c202 PhotoSmart 8200 series + c302 DeskJet D2300 + c402 PhotoSmart D5100 series + c502 PhotoSmart D6100 series + c602 PhotoSmart D7100 series + c702 PhotoSmart D7300 series + c802 PhotoSmart D5060 Printer + d104 Bluetooth Dongle + efbe NEC Picty900 + f0be NEC Picty920 + f1be NEC Picty800 +03f1 Genoa Technology +03f2 Oak Technology, Inc. +03f3 Adaptec, Inc. + 0020 AWN-8020 WLAN + 0080 AVC-1100 Audio Capture + 0083 AVC-2200 Device + 0087 AVC-2210 Loader + 0088 AVC-2210 Device + 008b AVC-2310 Loader + 008c AVC-2310 Device + 0094 eHome Infrared Receiver + 009b AVC-1410 GameBridge TV NTSC + 2000 USBXchange + 2001 USBXchange Adapter + 2002 USB2-Xchange + 2003 USB2-Xchange Adapter + adcc Composite Device Support +03f4 Diebold, Inc. +03f5 Siemens Electromechanical +03f8 Epson Imaging Technology Center +03f9 KeyTronic Corp. + 0100 Keyboard + 0101 Keyboard + 0102 Keyboard Mouse +03fb OPTi, Inc. +03fc Elitegroup Computer Systems +03fd Xilinx, Inc. +03fe Farallon Comunications +0400 National Semiconductor Corp. + 05dc Rigol Technologies DS1000USB Oscilloscope + 0807 Bluetooth Dongle + 080a Bluetooth Device + 09c4 Rigol Technologies DG1022 Arbitrary Waveform Generator + 1000 Mustek BearPaw 1200 Scanner + 1001 Mustek BearPaw 2400 Scanner + 1237 Hub + a000 Smart Display Reference Device + c359 Logitech Harmony (Boot loader mode) + c35b Printing Support + c55d Rigol Technologies DS5000USB Oscilloscope +0401 National Registry, Inc. +0402 ALi Corp. + 5462 M5462 IDE Controller + 5602 M5602 Video Camera Controller + 5603 M5603 Video Camera Controller + 5606 M5606 Video Camera Controller [UVC] + 5621 M5621 High-Speed IDE Controller + 5623 M5623 Scanner Controller + 5627 Welland ME-740PS USB2 3.5" Power Saving Enclosure + 5632 M5632 Host-to-Host Link + 5635 M5635 Flash Card Reader + 5636 USB 2.0 Storage Device + 5637 M5637 IDE Controller + 5661 M5661 MP3 player + 5667 M5667 MP3 player +0403 Future Technology Devices International, Ltd + 0000 H4SMK 7 Port Hub + 0232 Serial Converter + 1060 JTAG adapter + 6001 FT232 USB-Serial (UART) IC + 6007 Serial Converter + 6008 Serial Converter + 6009 Serial Converter + 6010 FT2232C Dual USB-UART/FIFO IC + 6011 FT4232H + 8040 4 Port Hub + 8070 7 Port Hub + 8370 7 Port Hub + 8371 PS/2 Keyboard And Mouse + 8372 FT8U100AX Serial Port + bcd8 Stellaris Development Board + bcd9 Stellaris Evaluation Board + c630 lcd2usb interface + c7d0 RR-CirKits LocoBuffer-USB + c8b8 Alpermann+Velte MTD TCU + c8b9 Alpermann+Velte MTD TCU 1HE + c8ba Alpermann+Velte Rubidium H1 + c8bb Alpermann+Velte Rubidium H3 + c8bc Alpermann+Velte Rubidium S1 + c8bd Alpermann+Velte Rubidium T1 + c8be Alpermann+Velte Rubidium D1 + cc48 product FTDI TACTRIX_OPENPORT_13M 0xcc48 OpenPort 1.3 Mitsubishi + cc49 product FTDI TACTRIX_OPENPORT_13S 0xcc49 OpenPort 1.3 Subaru + cc4a product FTDI TACTRIX_OPENPORT_13U 0xcc4a OpenPort 1.3 Universal + d010 SCS PTC-IIusb + d011 SCS Position-Tracker/TNC + d012 SCS DRAGON 1 + d013 SCS DRAGON 1 + d6f8 UNI Black BOX + d9a9 Actisense USG-1 NMEA Serial Gateway + d9aa Actisense NGT-1 NMEA2000 PC Interface + e0d0 Total Phase Aardvark I2C/SPI Host Adapter + e521 EVER Sinline XL Series UPS + e700 Elster Unicom III Optical Probe + e888 Expert ISDN Control USB + e889 USB-RS232 OptoBridge + e88a Expert mouseCLOCK USB II + e88b Precision Clock MSF USB + e88c Expert mouseCLOCK USB II HBG + ea90 Eclo 1-Wire Adapter + ed71 HAMEG HO870 Serial Port + ed72 HAMEG HO720 Serial Port + ed73 HAMEG HO730 Serial Port + ed74 HAMEG HO820 Serial Port + ef10 FT1245BL + f070 Serial Converter 422/485 [Vardaan VEUSB422R3] + f1a0 Asix PRESTO Programmer + f208 Papenmeier Braille-Display + f3c0 4N-GALAXY Serial Converter + f680 Suunto Sports Instrument + f758 GW Instek GDS-8x0 Oscilloscope + f850 USB-UIRT (Universal Infrared Receiver+Transmitter) + f918 Ant8 Logic Probe + fa00 Matrix Orbital USB Serial + fa01 Matrix Orbital MX2 or MX3 + fa02 Matrix Orbital MX4 or MX5 + fa03 Matrix Orbital VK/LK202 Family + fa04 Matrix Orbital VK/LK204 Family + fc08 Crystalfontz CFA-632 USB LCD + fc09 Crystalfontz CFA-634 USB LCD + fc0b Crystalfontz CFA-633 USB LCD + fc0c Crystalfontz CFA-631 USB LCD + fc0d Crystalfontz CFA-635 USB LCD + fc82 SEMC DSS-20/DSS-25 SyncStation + fd48 ShipModul MiniPlex-4xUSB NMEA Multiplexer + fd49 ShipModul MiniPlex-4xUSB-AIS NMEA Multiplexer + ff08 ToolHouse LoopBack Adapter + ff18 Logbook Bus + ff19 Logbook Bus + ff1a Logbook Bus + ff1b Logbook Bus + ff1c Logbook Bus + ff1d Logbook Bus + ff1e Logbook Bus + ff1f Logbook Bus +0404 NCR Corp. + 0202 78XX Scanner + 0203 78XX Scanner - Embedded System + 0310 K590 Printer, Self-Service + 0311 7167 Printer, Receipt/Slip + 0312 7197 Printer Receipt + 0320 5932-USB Keyboard + 0321 5953-USB Dynakey + 0322 5932-USB Enhanced Keyboard + 0323 5932-USB Enhanced Keyboard, Flash-Recovery/Download + 0324 5953-USB Enhanced Dynakey + 0325 5953-USB Enhanced Dynakey Flash-Recovery/Download + 0328 K016: USB-MSR ISO 3-track MSR: POS Standard (See HID pages) + 0329 K018: USB-MSR JIS 2-Track MSR: POS Standard + 032a K016: USB-MSR ISO 3-Track MSR: HID Keyboard Mode + 032b K016/K018: USB-MSR Flash-Recovery/Download +0405 Synopsys, Inc. +0406 Fujitsu-ICL Computers +0407 Fujitsu Personal Systems, Inc. +0408 Quanta Computer, Inc. + 0103 FV TouchCam N1 (Audio) + 030c HP Webcam + 03b2 HP Webcam + 1030 FV TouchCam N1 (Video) + 3000 Optical dual-touch panel + 3001 Optical Touch Screen +0409 NEC Corp. + 0011 PC98 Series Layout Keyboard Mouse + 0012 ATerm IT75DSU ISDN TA + 0014 Japanese Keyboard + 0019 109 Japanese Keyboard with Bus-Powered Hub + 001a PC98 Series Layout Keyboard with Bus-Powered Hub + 0025 Mini Keyboard with Bus-Powered Hub + 0027 MultiSync Monitor + 002c Clik!-USB Drive + 0034 109 Japanese Keyboard with One-touch start buttons + 003f Wireless Keyboard with One-touch start buttons + 0040 Floppy + 004e SuperScript 1400 Series + 004f Wireless Keyboard with One-touch start buttons + 0058 HighSpeed Hub + 0059 HighSpeed Hub + 005a HighSpeed Hub + 006a Conceptronic USB Harddisk Box + 0081 SuperScript 1400 Series + 0082 SuperScript 1400 Series + 0094 Japanese Keyboard with One-touch start buttons + 0095 Japanese Keyboard + 00a9 AtermIT21L 128K Support Standard + 00aa AtermITX72 128K Support Standard + 00ab AtermITX62 128K Support Standard + 00ac AtermIT42 128K Support Standard + 00ae INSMATEV70G-MAX Standard + 00af AtermITX70 128K Support Standard + 00b0 AtermITX80 128K Support Standard + 00b2 AtermITX80D 128K Support Standard + 00c0 Wireless Remocon + 00f7 Smart Display PK-SD10 + 011d e228 Mobile Phone + 0203 HID Audio Controls + 0248 Aterm PA-WL54GU + 0249 Aterm WL300NU-G + 02b4 Aterm WL300NU-AG + 55aa Hub + 55ab Hub [iMac/iTouch kbd] + 8010 Intellibase Hub + 8011 Intellibase Hub + efbe P!cty 900 [HP DJ] + f0be P!cty 920 [HP DJ 812c] +040a Kodak Co. + 0001 DVC-323 + 0002 DVC-325 + 0100 DC-220 + 0110 DC-260 + 0111 DC-265 + 0112 DC-290 + 0120 DC-240 + 0121 DC-240 (PTP firmware) + 0130 DC-280 + 0131 DC-5000 + 0132 DC-3400 + 0140 DC-4800 + 0160 DC4800 + 0170 DX3900 + 0200 Digital Camera + 0300 EZ-200 + 0400 MC3 + 0402 Digital Camera + 0403 Z7590 + 0500 DX3500 + 0510 DX3600 + 0525 DX3215 + 0530 DX3700 + 0535 EasyShare CX4230 Camera + 0540 LS420 + 0550 DX4900 + 0555 DX4330 + 0560 CX4200 + 0565 CX4210 + 0566 CX4300 + 0567 LS753 + 0568 LS443 + 0569 LS663 + 0570 DX6340 + 0571 CX6330 + 0572 DX6440 + 0573 CX6230 + 0574 CX6200 + 0575 DX6490 + 0576 DX4530 + 0577 DX7630 + 0578 CX7300/CX7310 + 0579 CX7220 + 057a CX7330 + 057b CX7430 + 057c CX7530 + 057d DX7440 + 057e C300 + 057f DX7590 + 0580 Z730 + 0581 Digital Camera + 0582 Digital Camera + 0583 Digital Camera + 0584 CX6445 + 0585 Digital Camera + 0586 CX7525 + 0587 Digital Camera + 0588 Digital Camera + 0589 EasyShare C360 + 058a C310 + 058b Digital Camera + 058c C330 + 058d C340 + 058e V530 + 058f V550 + 0590 Digital Camera + 0591 Digital Camera + 0592 Digital Camera + 0593 Digital Camera + 0594 Digital Camera + 0595 Digital Camera + 0596 Digital Camera + 0597 Digital Camera + 0598 Digital Camera + 0599 Digital Camera + 059a Digital Camera + 059b Digital Camera + 059c Digital Camera + 059d Digital Camera + 059e Digital Camera + 059f Digital Camera + 05a0 Digital Camera + 05a1 Digital Camera + 05a2 Digital Camera + 05a3 Digital Camera + 05a4 Digital Camera + 05a5 Digital Camera + 05a6 Digital Camera + 05a7 Digital Camera + 05a8 Digital Camera + 05a9 Digital Camera + 05aa Digital Camera + 05ab Digital Camera + 05ac Digital Camera + 05ad Digital Camera + 05ae Digital Camera + 05af Digital Camera + 05b0 Digital Camera + 05b1 Digital Camera + 05b2 Digital Camera + 05b3 EasyShare Z710 Camera + 05b4 Digital Camera + 05b5 Digital Camera + 05b6 Digital Camera + 05b7 Digital Camera + 05b8 Digital Camera + 05b9 Digital Camera + 05ba Digital Camera + 05bb Digital Camera + 05bc Digital Camera + 05bd Digital Camera + 05be Digital Camera + 05bf Digital Camera + 05c0 Digital Camera + 05c1 Digital Camera + 05c2 Digital Camera + 05c3 Digital Camera + 05c4 Digital Camera + 05c5 Digital Camera + 05c8 EASYSHARE Z1485 IS Digital Camera + 05d3 EasyShare M320 Camera + 05d4 EasyShare C180 Digital Camera + 1001 EasyShare SV811 Digital Picture Frame + 4000 InkJet Color Printer + 4109 EasyShare Printer Dock Series 3 + 410d EasyShare G600 Printer Dock + 5010 Wireless Adapter + 5012 DBT-220 Bluetooth Adapter + 6001 i30 + 6002 i40 + 6003 i50 + 6004 i60 + 6005 i80 +040b Weltrend Semiconductor + 6510 Weltrend Bar Code Reader + 6520 XBOX Xploder + 6533 Speed-Link Competition Pro +040c VTech Computers, Ltd +040d VIA Technologies, Inc. + 3184 VNT VT6656 USB-802.11 Wireless LAN Adapter + 6205 USB 2.0 Card Reader +040e MCCI +040f Echo Speech Corp. +0411 BUFFALO INC. (formerly MelCo., Inc.) + 0001 LUA-TX Ethernet [pegasus] + 0005 LUA-TX Ethernet + 0006 WLI-USB-L11 Wireless LAN Adapter + 0009 LUA2-TX Ethernet + 000b WLI-USB-L11G-WR Wireless LAN Adapter + 000d WLI-USB-L11G Wireless LAN Adapter + 0012 LUA-KTX Ethernet + 0013 USB2-IDE Adapter + 0016 WLI-USB-S11 802.11b Adapter + 0018 USB2-IDE Adapter + 001c USB-IDE Bridge: DUB-PxxG + 0027 WLI-USB-KS11G 802.11b Adapter + 003d LUA-U2-KTX Ethernet + 0044 WLI-USB-KB11 Wireless LAN Adapter + 004b WLI-USB-G54 802.11g Adapter [Broadcom 4320 USB] + 004d WLI-USB-B11 Wireless LAN Adapter + 0050 WLI2-USB2-G54 Wireless LAN Adapter + 005e WLI-U2-KG54-YB WLAN + 0065 Python2 WDM Encoder + 0066 WLI-U2-KG54 WLAN + 0067 WLI-U2-KG54-AI WLAN + 0089 Buffalo RUF-C/U2 Flash Drive + 008b Nintendo Wi-Fi + 0091 WLI-U2-KAMG54 Wireless LAN Adapter + 0092 WLI-U2-KAMG54 Bootloader + 0097 WLI-U2-KG54-BB + 00a9 WLI-U2-AMG54HP Wireless LAN Adapter + 00aa WLI-U2-AMG54HP Bootloader + 00b3 PC-OP-RS1 RemoteStation + 00bc WLI-U2-KG125S 802.11g Adapter [Broadcom 4320 USB] + 00ca 802.11n Network Adapter + 00cb WLI-U2-G300N 802.11n Adapter + 00d8 WLI-U2-SG54HP + 00d9 WLI-U2-G54HP + 00da WLI-U2-KG54L 802.11bg [ZyDAS ZD1211B] + 00e8 Buffalo WLI-UC-G300N Wireless LAN Adapter + 012e Buffalo WLI-UC-AG300N Wireless LAN Adapter + 0148 Buffalo WLI-UC-G300HP Wireless LAN Adapter + 0150 Buffalo WLP-UC-AG300 Wireless LAN Adapter + 0157 Buffalo External Hard Drive HD-PEU2 + 0158 Buffalo WLI-UC-GNHP Wireless LAN Adapter + 015d Buffalo WLI-UC-GN Wireless LAN Adapter [Ralink RT2870] + 016f Buffalo WLI-UC-G301N Wireless LAN Adapter + 017f Sony UWA-BR100 802.11abgn Wireless Adapter [Atheros AR7010+AR9280] + 019e Buffalo WLI-UC-GNP Wireless LAN Adapter + 01a1 MiniStation Metro + 01a2 Buffalo WLI-UC-GNM Wireless LAN Adapter +0412 Award Software International +0413 Leadtek Research, Inc. + 1310 WinFast TV - NTSC + FM + 1311 WinFast TV - NTSC + MTS + FM + 1312 WinFast TV - PAL BG + FM + 1313 WinFast TV - PAL BG+TXT + FM + 1314 WinFast TV Audio - PHP PAL I + 1315 WinFast TV Audio - PHP PAL I+TXT + 1316 WinFast TV Audio - PHP PAL DK + 1317 WinFast TV Audio - PHP PAL DK+TXT + 1318 WinFast TV - PAL I/DK + FM + 1319 WinFast TV - PAL N + FM + 131a WinFast TV Audio - PHP SECAM LL + 131b WinFast TV Audio - PHP SECAM LL+TXT + 131c WinFast TV Audio - PHP SECAM DK + 131d WinFast TV - SECAM DK + TXT + FM + 131e WinFast TV - NTSC Japan + FM + 1320 WinFast TV - NTSC + 1321 WinFast TV - NTSC + MTS + 1322 WinFast TV - PAL BG + 1323 WinFast TV - PAL BG+TXT + 1324 WinFast TV Audio - PHP PAL I + 1325 WinFast TV Audio - PHP PAL I+TXT + 1326 WinFast TV Audio - PHP PAL DK + 1327 WinFast TV Audio - PHP PAL DK+TXT + 1328 WinFast TV - PAL I/DK + 1329 WinFast TV - PAL N + 132a WinFast TV Audio - PHP SECAM LL + 132b WinFast TV Audio - PHP SECAM LL+TXT + 132c WinFast TV Audio - PHP SECAM DK + 132d WinFast TV - SECAM DK + TXT + 132e WinFast TV - NTSC Japan + 6023 EMP Audio Device + 6024 WinFast PalmTop/Novo TV Video + 6025 WinFast DTV Dongle (cold state) + 6026 WinFast DTV Dongle (warm state) + 6029 WinFast DTV Dongle Gold + 6125 WinFast DTV Dongle + 6126 WinFast DTV Dongle BDA Driver + 6f00 WinFast DTV Dongle (STK7700P based) +0414 Giga-Byte Technology Co., Ltd +0416 Winbond Electronics Corp. + 0035 W89C35 802.11bg WLAN Adapter + 0101 Hub + 0961 AVL Flash Card Reader + 3810 Smart Card Controller + 3811 Generic Controller - Single interface + 3812 Smart Card Controller_2Interface + 3813 Panel Display + 5518 4-Port Hub + 551a PC Sync Keypad + 551b PC Async Keypad + 551c Sync Tenkey + 551d Async Tenkey + 551e Keyboard + 551f Keyboard w/ Sys and Media + 5521 Keyboard + 6481 16-bit Scanner + 7721 Memory Stick Reader/Writer + 7722 Memory Stick Reader/Writer + 7723 SD Card Reader +0417 Symbios Logic +0418 AST Research +0419 Samsung Info. Systems America, Inc. + 0001 IrDA Remote Controller / Creative Cordless Mouse + 0600 Desktop Wireless 6000 + 3001 Xerox P1202 Laser Printer + 3003 Olivetti PG L12L + 3201 Docuprint P8ex + 3404 SCX-5x12 series + 3406 MFP 830 series + 3407 ML-912 + 3601 InkJet Color Printer + 3602 InkJet Color Printer + 4602 Remote NDIS Network Device + 8001 Hub + 8002 SyncMaster HID Monitor Control + aa03 SDAS-3 MP3 Player +041a Phoenix Technologies, Ltd +041b d'TV +041d S3, Inc. +041e Creative Technology, Ltd + 1002 Nomad II + 1003 Blaster GamePad Cobra + 1050 GamePad Cobra + 1053 Mouse Gamer HD7600L + 200c MuVo V100 + 2020 Zen X-Fi 2 + 2029 ZiiO + 2801 Prodikeys PC-MIDI multifunction keyboard + 3000 SoundBlaster Extigy + 3002 SB External Composite Device + 3010 SoundBlaster MP3+ + 3014 SB External Composite Device + 3015 Sound Blaster Digital Music LX + 3020 SoundBlaster Audigy 2 NX + 3030 SB External Composite Device + 3040 SoundBlaster Live! 24-bit External SB0490 + 3060 Sound Blaster Audigy 2 ZS External + 3061 SoundBlaster Audigy 2 ZS Video Editor + 3090 Sound Blaster Digital Music SX + 3f00 E-Mu Xboard 25 MIDI Controller + 3f02 E-Mu 0202 + 3f04 E-Mu 0404 + 3f07 E-Mu Xmidi 1x1 + 4003 VideoBlaster Webcam Go Plus [W9967CF] + 4004 Nomad II MG + 4005 Webcam Blaster Go ES + 4007 Go Mini + 400a PC-Cam 300 + 400b PC-Cam 600 + 400c Webcam 5 [pwc] + 400d Webcam PD1001 + 400f PC-CAM 550 (Composite) + 4011 Webcam PRO eX + 4012 PC-CAM350 + 4013 PC-Cam 750 + 4015 CardCam Value + 4016 CardCam + 4017 Webcam Mobile [PD1090] + 4018 Webcam Vista [PD1100] + 4019 Audio Device + 401a Webcam Vista [PD1100] + 401c Webcam NX [PD1110] + 401d Webcam NX Ultra + 401e Webcam NX Pro + 401f Webcam Notebook [PD1171] + 4020 Webcam NX + 4021 Webcam NX Ultra + 4022 Webcam NX Pro + 4028 Vista Plus cam [VF0090] + 4029 Webcam Live! + 402f DC-CAM 3000Z + 4034 Webcam Instant + 4035 Webcam Instant + 4036 Webcam Live!/Live! Pro + 4037 Webcam Live! + 4038 ORITE CCD Webcam [PC370R] + 4039 Webcam Live! Effects + 403a Webcam NX Pro 2 + 403b Creative Webcam Vista [VF0010] + 403c Webcam Live! Ultra + 403d Webcam Notebook Ultra + 403e Webcam Vista Plus + 4041 Webcam Live! Motion + 4045 Live! Cam Voice + 4049 Live! Cam Voice + 4051 Live! Cam Notebook Pro [VF0250] + 4052 Live! Cam Vista IM + 4053 Live! Cam Video IM + 4054 Live! Cam Video IM + 4055 Live! Cam Video IM Pro + 4056 Live! Cam Video IM Pro + 4057 Live! Cam Optia + 4058 Live! Cam Optia AF + 4061 Live! Cam Notebook Pro [VF0400] + 4063 Live! Cam Video IM Pro + 4068 Live! Cam Notebook [VF0470] + 406c Live! Cam Sync [VF0520] + 4083 Live! Cam Socialize [VF0640] + 4100 Nomad Jukebox 2 + 4101 Nomad Jukebox 3 + 4102 NOMAD MuVo^2 + 4106 Nomad MuVo + 4107 NOMAD MuVo + 4108 Nomad Jukebox Zen + 4109 Nomad Jukebox Zen NX + 410b Nomad Jukebox Zen USB 2.0 + 410c Nomad MuVo NX + 410f NOMAD MuVo^2 (Flash) + 4110 Nomad Jukebox Zen Xtra + 4111 Dell Digital Jukebox + 4116 MuVo^2 + 4117 Nomad MuVo TX + 411b Zen Touch + 411c Nomad MuVo USB 2.0 + 411d Zen + 411e Zen Micro + 4120 Nomad MuVo TX FM + 4123 Zen Portable Media Center + 4124 MuVo^2 FM (uHDD) + 4126 Dell DJ (2nd gen) + 4127 Dell DJ + 4128 NOMAD Jukebox Zen Xtra (mtp) + 412b MuVo N200 with FM radio + 412f Dell Digital Jukebox 2.Gen + 4130 Zen Micro (mtp) + 4131 Zen Touch (mtp) + 4133 Mass Storage Device + 4134 Zen Neeon + 4136 Zen Sleek + 4137 Zen Sleek (mtp) + 4139 Zen Nano Plus + 413c Zen MicroPhoto + 4150 Zen V (MTP) + 4151 Zen Vision:M (mtp) + 4152 Zen V Plus + 4153 Zen Vision W + 4155 Zen Stone plus + 4157 Zen (MTP) + 500f Broadband Blaster 8012U-V + 5015 TECOM Bluetooth Device + ffff Webcam Live! Ultra +041f LCS Telegraphics +0420 Chips and Technologies + 1307 Celly SIM Card Reader +0421 Nokia Mobile Phones + 0001 E61i (PC Suite mode) + 0018 6288 GSM Smartphone + 0019 6288 GSM Smartphone (imaging mode) + 001a 6288 GSM Smartphone (file transfer mode) + 0024 5610 XpressMusic (Storage mode) + 0025 5610 XpressMusic (PC Suite mode) + 0028 5610 XpressMusic (Imaging mode) + 002d 6120 Phone (Mass storage mode) + 002e 6120 Phone (Media-Player mode) + 002f 6120 Phone (PC-Suite mode) + 0042 E51 (PC Suite mode) + 0064 3109c GSM Phone + 006b 5310 Xpress Music (PC Suite mode) + 006c 5310 Xpress music (Storage mode) + 006d N95 (Storage mode) + 006e N95 (Multimedia mode) + 006f N95 (Printing mode) + 0070 N95 (PC Suite mode) + 0096 N810 Internet Tablet + 00aa E71 (Mass storage mode) + 00ab E71 (PC Suite mode) + 00e4 E71 (Media transfer mode) + 0103 ADL Flashing Engine AVALON Parent + 0104 ADL Re-Flashing Engine Parent + 0105 Nokia Firmware Upgrade Mode + 0106 ROM Parent + 0154 5800 XpressMusic (PC Suite mode) + 0155 5800 XpressMusic (Multimedia mode) + 0156 5800 XpressMusic (Storage mode) + 0157 5800 XpressMusic (Imaging mode) + 0199 6700 Classic (msc) + 019a 6700 Classic (PC Suite) + 019b 6700 Classic (mtp) + 01b0 6303 classic Phone (PC Suite mode) + 01b1 6303 classic Phone (Mass storage mode) + 01b2 6303 classic Phone (Printing and media mode) + 01c7 N900 (Storage Mode) + 01c8 N900 (PC-Suite Mode) + 0228 5530 XpressMusic + 026a N97 (mass storage) + 026b N97 (Multimedia) + 026c N97 (PC Suite) + 026d N97 (Pictures) + 0295 660i/6600i Slide Phone (Mass Storage) + 0297 660i/6600i Slide Phone (Still Image) + 02e1 5230 (Storage mode) + 02e2 5230 (Multimedia mode) + 02e3 5230 (PC-Suite mode) + 02e4 5230 (Imaging mode) + 03a4 C5 (Storage mode) + 0400 7600 Phone Parent + 0401 6650 GSM Phone + 0402 6255 Phone Parent + 0404 5510 + 0405 9500 GSM Communicator + 0407 Music Player HDR-1(tm) + 040b N-Gage GSM Phone + 040d 6620 Phone Parent + 040e 6651 Phone Parent + 040f 6230 GSM Phone + 0410 6630 Imaging Smartphone + 0411 7610 Phone Parent + 0413 6260 Phone Parent + 0414 7370 + 0415 9300 GSM Smartphone + 0416 6170 Phone Parent + 0417 7270 Phone Parent + 0418 E70 (PC Suite mode) + 0419 E60 (PC Suite mode) + 041a 9500 GSM Communicator (RNDIS) + 041b 9300 GSM Smartphone (RNDIS) + 041c 7710 Phone Parent + 041d 6670 Phone Parent + 041e 6680 + 041f 6235 Phone Parent + 0421 3230 Phone Parent + 0422 6681 Phone Parent + 0423 6682 Phone Parent + 0428 6230i Modem + 0429 6230i MultiMedia Card + 0431 770 Internet Tablet + 0432 N90 Phone Parent + 0435 E70 (IP Passthrough/RNDIS mode) + 0436 E60 (IP Passthrough/RNDIS mode) + 0437 6265 Phone Parent + 043a N70 USB Phone Parent + 043b 3155 Phone Parent + 043c 6155 Phone Parent + 043d 6270 Phone Parent + 0443 N70 Phone Parent + 0444 N91 + 044c NM850iG Phone Parent + 044d E61 (PC Suite mode) + 044e E61 (Data Exchange mode) + 044f E61 (IP Passthrough/RNDIS mode) + 0453 9300 Phone Parent + 0456 6111 Phone Parent + 0457 6111 Phone (Printing mode) + 045a 6280 Phone Parent + 045d 6282 Phone Parent + 046e 6110 Navigator + 0471 6110 Navigator + 0485 MTP Device + 04b9 5300 + 04c3 N800 Internet Tablet + 04ce E90 Communicator (PC Suite mode) + 04cf E90 Communicator (Storage mode) + 04f0 Nokia N95 (PC Suite mode) + 04f9 6300 (PC Suite mode) + 0508 E65 (PC Suite mode) + 0509 E65 (Storage mode) + 0600 Digital Pen SU-1B + 0610 CS-15 (Internet Stick 3G modem) + 0800 Connectivity Cable DKU-5 + 0801 Data Cable DKU-6 + 0802 CA-42 Phone Parent +0422 ADI Systems, Inc. +0423 Computer Access Technology Corp. + 000a NetMate Ethernet + 000c NetMate2 Ethernet + 000d USB Chief Analyzer + 0100 Generic Universal Protocol Analyzer + 0101 UPA USBTracer + 0200 Generic 10K Universal Protocol Analyzer + 020a PETracer ML + 0300 Generic Universal Protocol Analyzer + 0301 2500H Tracer Trainer + 030a PETracer x1 + 1237 Andromeda Hub +0424 Standard Microsystems Corp. + 0001 Integrated Hub + 0acd Sitecom Internal Multi Memory reader/writer MD-005 + 0fdc Floppy + 10cd Sitecom Internal Multi Memory reader/writer MD-005 + 2020 USB Hub + 20cd Sitecom Internal Multi Memory reader/writer MD-005 + 20fc 6-in-1 Card Reader + 2228 9-in-2 Card Reader + 223a 8-in-1 Card Reader + 2503 USB 2.0 Hub + 2504 USB 2.0 Hub + 2512 USB 2.0 Hub + 2514 USB 2.0 Hub + 2524 USB MultiSwitch Hub + 2602 USB 2.0 Hub + 2640 USB 2.0 Hub + 4060 Ultra Fast Media Reader + 4064 Ultra Fast Media Reader +0425 Motorola Semiconductors HK, Ltd + 0101 G-Tech Wireless Mouse & Keyboard + f102 G-Tech U+P Wireless Mouse +0426 Integrated Device Technology, Inc. + 0426 WDM Driver +0427 Motorola Electronics Taiwan, Ltd +0428 Advanced Gravis Computer Tech, Ltd + 4001 GamePad Pro +0429 Cirrus Logic +042a Ericsson Austrian, AG +042b Intel Corp. + 9316 8x931Hx Customer Hub +042c Innovative Semiconductors, Inc. +042d Micronics +042e Acer, Inc. + 0380 MP3 Player +042f Molex, Inc. +0430 Sun Microsystems, Inc. + 0002 109 Keyboard + 0005 Type 6 Keyboard + 000a 109 Japanese Keyboard + 000b 109 Japanese Keyboard + 0082 109 Japanese Keyboard + 0083 109 Japanese Keyboard + 00a2 Type 7 Keyboard + 0100 3-button Mouse + 100e 24.1" LCD Monitor v4 / FID-638 Mouse + 36ba Bus Powered Hub + cdab Raritan KVM dongle +0431 Itac Systems, Inc. + 0100 Mouse-Trak 3-button Track Ball +0432 Unisys Corp. +0433 Alps Electric, Inc. + 1101 IBM Game Controller + abab Keyboard +0434 Samsung Info. Systems America, Inc. +0435 Hyundai Electronics America +0436 Taugagreining HF + 0005 CameraMate (DPCM_USB) +0437 Framatome Connectors USA +0438 Advanced Micro Devices, Inc. +0439 Voice Technologies Group +043d Lexmark International, Inc. + 0001 Laser Printer + 0002 Optra E310 Printer + 0003 Laser Printer + 0004 Laser Printer + 0005 Laser Printer + 0006 Laser Printer + 0007 Laser Printer + 0008 Inkjet Color Printer + 0009 Optra S2450 Printer + 000a Laser Printer + 000b Inkjet Color Printer + 000c Optra E312 Printer + 000d Laser Printer + 000e Laser Printer + 000f Laser Printer + 0010 Laser Printer + 0011 Laser Printer + 0012 Inkjet Color Printer + 0013 Inkjet Color Printer + 0014 InkJet Color Printer + 0015 InkJet Color Printer + 0016 Z12 Color Jetprinter + 0017 Z32 printer + 0018 Z52 Printer + 0019 Forms Printer + 001a Z65 Printer + 001b InkJet Photo Printer + 001c Kodak Personal Picture Maker 200 Printer + 001d InkJet Color Printer + 001e InkJet Photo Printer + 001f Kodak Personal Picture Maker 200 Card Reader + 0020 Z51 Printer + 0021 Z33 Printer + 0022 InkJet Color Printer + 0023 Laser Printer + 0024 Laser Printer + 0025 InkJet Color Printer + 0026 InkJet Color Printer + 0027 InkJet Color Printer + 0028 InkJet Color Printer + 0029 Scan Print Copy + 002a Scan Print Copy + 002b Scan Print Copy + 002c Scan Print Copy + 002d X70/X73 Scan/Print/Copy + 002e Scan Print Copy + 002f Scan Print Copy + 0030 Scan Print Copy + 0031 Scan Print Copy + 0032 Scan Print Copy + 0033 Scan Print Copy + 0034 Scan Print Copy + 0035 Scan Print Copy + 0036 Scan Print Copy + 0037 Scan Print Copy + 0038 Scan Print Copy + 0039 Scan Print Copy + 003a Scan Print Copy + 003b Scan Print Copy + 003c Scan Print Copy + 003d X83 Scan/Print/Copy + 003e Scan Print Copy + 003f Scan Print Copy + 0040 Scan Print Copy + 0041 Scan Print Copy + 0042 Scan Print Copy + 0043 Scan Print Copy + 0044 Scan Print Copy + 0045 Scan Print Copy + 0046 Scan Print Copy + 0047 Scan Print Copy + 0048 Scan Print Copy + 0049 Scan Print Copy + 004a Scan Print Copy + 004b Scan Print Copy + 004c Scan Print Copy + 004d Laser Printer + 004e Laser Printer + 004f InkJet Color Printer + 0050 InkJet Color Printer + 0051 Laser Printer + 0052 Laser Printer + 0053 InkJet Color Printer + 0054 InkJet Color Printer + 0057 Z35 Printer + 0058 Laser Printer + 005a X63 + 005c InkJet Color Printer + 0060 X74/X75 Scanner + 0061 X74 Hub + 0065 X5130 + 0069 X74/X75 Printer + 006d X125 + 006e C510 + 0072 X6170 Printer + 0073 InkJet Color Printer + 0078 InkJet Color Printer + 0079 InkJet Color Printer + 007a Generic Hub + 007b InkJet Color Printer + 007c Lexmark X1110/X1130/X1140/X1150/X1170/X1180/X1185 + 007d Photo 3150 + 008a 4200 series + 008b InkJet Color Printer + 008c to CF/SM/SD/MS Card Reader + 008e InkJet Color Printer + 008f X422 + 0093 X5250 + 0095 E220 Printer + 0096 2200 series + 0097 P6250 + 0098 7100 series + 009e P910 series Human Interface Device + 009f InkJet Color Printer + 00a9 IBM Infoprint 1410 MFP + 00ab InkJet Color Printer + 00b2 3300 series + 00b8 7300 series + 00b9 8300 series + 00ba InkJet Color Printer + 00bb 2300 series + 00bd Printing Support + 00be Printing Support + 00bf Printing Support + 00c0 6300 series + 00c1 4300 series + 00c7 Printing Support + 00c8 Printing Support + 00c9 Printing Support + 00cb Printing Support + 00cc E120(n) + 00d0 9300 series + 00d3 X340 Scanner + 00d4 X342n Scanner + 00d5 Printing Support + 00d6 X340 Scanner + 00e8 X642e + 00e9 2400 series + 00f6 3400 series + 00f7 InkJet Color Printer + 00ff InkJet Color Printer + 010b 2500 series + 010d 3500-4500 series + 010f 6500 series + 0142 X3650 (Printer, Scanner, Copier) + 4303 Xerox WorkCentre Pro 412 +043e LG Electronics USA, Inc. + 3001 AN-WF100 802.11abgn Wireless Adapter [Broadcom BCM4323] + 42bd Flatron 795FT Plus Monitor + 4a4d Flatron 915FT Plus Monitor + 7001 MF-PD100 Soul Digital MP3 Player + 7013 MP3 Player + 8484 LPC-U30 Webcam II + 8585 LPC-UC35 Webcam + 8888 Electronics VCS Camera II(LPC-U20) + 9800 Remote Control Receiver_iMON + 9803 eHome Infrared Receiver + 9804 DMB Receiver Control + 9c01 LGE Sync +043f RadiSys Corp. +0440 Eizo Nanao Corp. +0441 Winbond Systems Lab. + 1456 Hub +0442 Ericsson, Inc. + abba Bluetooth Device +0443 Gateway, Inc. + 000e Multimedia Keyboard + 002e Millennium Keyboard +0445 Lucent Technologies, Inc. +0446 NMB Technologies Corp. + 6781 Keyboard with PS/2 Mouse Port + 6782 Keyboard +0447 Momentum Microsystems +044a Shamrock Tech. Co., Ltd +044b WSI +044c CCL/ITRI +044d Siemens Nixdorf AG +044e Alps Electric Co., Ltd + 1104 Japanese Keyboard + 2002 MD-5500 Printer + 2014 Bluetooth Device + 3001 UGTZ4 Bluetooth + 3002 Bluetooth Device + 3003 Bluetooth Device + 3004 Bluetooth Adapter + 3005 Integrated Bluetooth Device + 3006 Bluetooth Adapter + 3007 Bluetooth Controller (ALPS/UGX) + 300c Bluetooth Controller (ALPS/UGPZ6) + 300d Bluetooth Controller (ALPS/UGPZ6) + 3010 Bluetooth Adapter + 3017 BCM2046 Bluetooth Device + ffff Compaq Bluetooth Multiport Module +044f ThrustMaster, Inc. + 0400 HOTAS Cougar + a003 Rage 3D Game Pad + a01b PK-GP301 Driving Wheel + a0a0 Top Gun Joystick + a0a1 Top Gun Joystick (rev2) + a0a3 Fusion Digital GamePad + a201 PK-GP201 PlayStick + b10a T.16000M Joystick + b203 360 Modena Pro Wheel + b300 Firestorm Dual Power + b304 Firestorm Dual Power + b307 vibrating Upad + b30b Wireless VibrationPad + b323 Dual Trigger 3-in-1 (PC Mode) + b324 Dual Trigger 3-in-1 (PS3 Mode) + b603 force feedback Wheel + b605 force feedback Racing Wheel + b651 Ferrari GT Rumble Force Wheel + b653 RGT Force Feedback Clutch Racing Wheel + b654 Ferrari GT Force Feedback Wheel + b700 Tacticalboard +0450 DFI, Inc. +0451 Texas Instruments, Inc. + 1234 Bluetooth Device + 1428 Hub + 1446 TUSB2040/2070 Hub + 16a6 BM-USBD1 BlueRobin RF heart rate sensor receiver + 2036 TUSB2036 Hub + 2046 TUSB2046 Hub + 2077 TUSB2077 Hub + 3410 TUSB3410 Microcontroller + 3f00 OMAP1610 + 3f02 SMC WSKP100 Wi-Fi Phone + 5409 Frontier Labs NEX IA+ Digital Audio Player + 6000 AU5 ADSL Modem (pre-reenum) + 6001 AU5 ADSL Modem + 6060 RNDIS/BeWAN ADSL2+ + 6070 RNDIS/BeWAN ADSL2+ + 625f Trekstor USB-Stick 12 CS-D 12 GB + dbc0 Device Bay Controller + e001 GraphLink + e003 TI-84 Plus Calculator + e004 TI-89 Titanium Calculator + e008 TI-84 Plus Silver Calculator + f430 MSP-FET430UIF JTAG Tool + f432 eZ430 Development Tool + ffff Bluetooth Device +0452 Mitsubishi Electronics America, Inc. + 0021 HID Monitor Controls + 0050 Diamond Pro 900u CRT Monitor + 0051 Integrated Hub +0453 CMD Technology + 6781 NMB Keyboard + 6783 Chicony Composite Keyboard +0454 Vobis Microcomputer AG +0455 Telematics International, Inc. +0456 Analog Devices, Inc. + f000 FT2232 JTAG ICE [gnICE] + f001 FT2232H Hi-Speed JTAG ICE [gnICE+] +0457 Silicon Integrated Systems Corp. + 0150 Super Talent 1GB Flash Drive + 0151 Super Flash 1GB / GXT 64MB Flash Drive + 0162 SiS162 usb Wireless LAN Adapter + 0163 802.11 Wireless LAN Adapter + 5401 Wireless Adapter RO80211GS-USB +0458 KYE Systems Corp. (Mouse Systems) + 0001 Mouse + 0002 Genius NetMouse Pro + 0003 Genius NetScroll+ + 0006 Easy Mouse+ USB(USB\Vid_0458&Pid;_0006) Mouse + 000b NetMouse Wheel(P+U) + 000c TACOMA Fingerprint V1.06.01 + 000e VideoCAM Web + 0013 TACOMA Fingerprint Mouse V1.06.01 + 001a Genius WebScroll+ + 0036 Pocket Mouse LE + 0039 NetScroll+ Superior + 003a NetScroll+ Mini Traveler / Genius NetScroll 120 + 004c Slimstar Pro Keyboard + 0056 Ergo 300 Mouse + 0057 Enhanced Gaming Device + 0059 Enhanced Laser Device + 005a Enhanced Device + 005b Enhanced Device + 005c Enhanced Laser Gaming Device + 005d Enhanced Device + 0061 Bluetooth Dongle + 0072 Navigator 335 + 0083 Bluetooth Dongle + 0087 Ergo 525V Laser Mouse + 0100 EasyPen Tablet + 0101 CueCat + 011b NetScroll T220 + 1001 Joystick + 1002 Game Pad + 1003 Genius VideoCam + 1004 Flight2000 F-23 Joystick + 100a Aashima Technology Trust Sight Fighter Vibration Feedback Joystick + 2001 ColorPage-Vivid Pro Scanner + 2004 ColorPage-HR6 V1 Scanner + 2005 ColorPage-HR6/Vivid3 + 2007 ColorPage-HR6 V2 Scanner + 2008 ColorPage-HR6 V2 Scanner + 2009 ColorPage-HR6A Scanner + 2011 ColorPage-Vivid3x Scanner + 2012 Plustek Scanner + 2013 ColorPage-HR7 Scanner + 2014 ColorPage-Vivid4 + 2015 ColorPage-HR7LE Scanner + 2016 ColorPage-HR6X Scanner + 2017 ColorPage-Vivid3xe + 2018 ColorPage-HR7X + 2019 ColorPage-HR6X Slim + 201a ColorPage-Vivid4xe + 201b ColorPage-Vivid4x + 201c ColorPage-HR8 + 201d ColorPage-Vivid 1200 X + 201e ColorPage-Slim 1200 + 201f ColorPage-Vivid 1200 XE + 2020 ColorPage-Slim 1200 USB2 + 2021 ColorPage-SF600 + 3017 SPEED WHEEL 3 Vibration + 3018 Wireless 2.4Ghz Game Pad + 3019 10-Button USB Joystick with Vibration + 301a MaxFire G-12U Vibration + 301d Genius MaxFire MiniPad + 400f Genius TVGo DVB-T02Q MCE + 4012 TVGo DVB-T03 + 5003 G-pen 560 Tablet + 5004 G-pen Tablet + 6001 GF3000F Ethernet Adapter + 7004 VideoCAM Express V2 + 7006 Dsc 1.3 Smart Camera Device + 7007 VideoCAM Web + 7009 G-Shot G312 Still Camera Device + 700c VideoCAM Web V3 + 700d G-Shot G511 Composite Device + 700f VideoCAM Web + 7012 WebCAM USB2.0 + 7014 VideoCAM Live V3 + 701c G-Shot G512 Still Camera + 7020 Sim 321C + 7025 Eye 311Q Camera + 7029 Genius Look 320s (SN9C201 + HV7131R) + 702f Genius Slim 322 + 7035 i-Look 325T Camera + 7045 Genius Look 1320 V2 + 704c Genius i-Look 1321 + 704d Slim 1322AF + 7055 Slim 2020AF camera + 705a Asus USB2.0 Webcam + 705c Genius iSlim 1300AF +0459 Adobe Systems, Inc. +045a SONICblue, Inc. + 07da Supra Express 56K modem + 0b4a SupraMax 2890 56K Modem [Lucent Atlas] + 0b68 SupraMax 56K Modem + 5001 Rio 600 MP3 Player + 5002 Rio 800 MP3 Player + 5003 Nike Psa/Play MP3 Player + 5005 Rio S10 MP3 Player + 5006 Rio S50 MP3 Player + 5007 Rio S35 MP3 Player + 5008 Rio 900 MP3 Player + 5009 Rio S30 MP3 Player + 500d Fuse MP3 Player + 500e Chiba MP3 Player + 500f Cali MP3 Player + 5010 Rio S11 MP3 Player + 501c Virgin MPF-1000 + 501d Rio Fuse + 501e Rio Chiba + 501f Rio Cali + 503f Cali256 MP3 Player + 5202 Rio Riot MP3 Player + 5210 Rio Karma Music Player + 5220 Rio Nitrus MP3 Player + 5221 Rio Eigen +045b Hitachi, Ltd +045d Nortel Networks, Ltd +045e Microsoft Corp. + 0007 SideWinder Game Pad + 0008 SideWinder Precision Pro + 0009 IntelliMouse + 000b Natural Keyboard Elite + 000e SideWinder® Freestyle Pro + 0014 Digital Sound System 80 + 001a SideWinder Precision Racing Wheel + 001b SideWinder Force Feedback 2 Joystick + 001c Internet Keyboard Pro + 001d Natural Keyboard Pro + 001e IntelliMouse Explorer + 0023 Trackball Optical + 0024 Trackball Explorer + 0025 IntelliEye Mouse + 0026 SideWinder GamePad Pro + 0027 SideWinder PnP GamePad + 0028 SideWinder Dual Strike + 0029 IntelliMouse Optical + 002b Internet Keyboard Pro + 002d Internet Keyboard + 002f Integrated Hub + 0033 Sidewinder Strategic Commander + 0034 SideWinder Force Feedback Wheel + 0038 SideWinder Precision 2 + 0039 IntelliMouse Optical + 003b SideWinder Game Voice + 003c SideWinder Joystick + 0040 Wheel Mouse Optical + 0047 IntelliMouse Explorer 3.0 + 0048 Office Keyboard 1.0A + 0053 Optical Mouse + 0059 Wireless IntelliMouse Explorer + 005c Office Keyboard (106/109) + 005f Wireless MultiMedia Keyboard + 0061 Wireless MultiMedia Keyboard (106/109) + 0063 Wireless Natural MultiMedia Keyboard + 0065 Wireless Natural MultiMedia Keyboard (106/109) + 006a Wireless Optical Mouse (IntelliPoint) + 006d eHome Remote Control Keyboard keys + 006e MN510 802.11b Adapter + 006f Smart Display Reference Device + 0070 Wireless MultiMedia Keyboard + 0071 Wireless MultiMedia Keyboard (106/109) + 0072 Wireless Natural MultiMedia Keyboard + 0073 Wireless Natural MultiMedia Keyboard (106/109) + 0079 IXI Ogo CT-17 handheld device + 007a 10/100 USB NIC + 007d Notebook Optical Mouse + 007e Wireless Transceiver for Bluetooth + 0080 Digital Media Pro Keyboard + 0083 Basic Optical Mouse + 0084 Basic Optical Mouse + 008a Wireless Keyboard and Mouse + 008b Dual Receiver Wireless Mouse (IntelliPoint) + 008c Wireless Intellimouse Explorer 2.0 + 0095 IntelliMouse Explorer 4.0 (IntelliPoint) + 009c Wireless Transceiver for Bluetooth 2.0 + 009d Wireless Optical Desktop 3.0 + 00a0 eHome Infrared Receiver + 00b0 Digital Media Pro Keyboard + 00b9 Wireless Optical Mouse 3.0 + 00bb Fingerprint Reader + 00bc Fingerprint Reader + 00bd Fingerprint Reader + 00c2 MN-710 802.11g Wireless Adapter [Intersil ISL3886] + 00c9 MTP Device + 00ca Fingerprint Reader + 00cb Basic Optical Mouse v2.0 + 00ce Generic PPC Flash device + 00d1 Optical Mouse with Tilt Wheel + 00da eHome Infrared Receiver + 00db Natural Ergonomic Keyboard 4000 V1.0 + 00dd Comfort Curve Keyboard 2000 V1.0 + 00e1 Wireless Laser Mouse 6000 Reciever + 00f4 LifeCam VX-6000 (SN9C20x + OV9650) + 00f5 LifeCam VX-3000 + 00f6 Comfort Optical Mouse 1000 + 00f7 LifeCam VX-1000 + 00f8 LifeCam NX-6000 + 00f9 Wireless Desktop Receiver 3.1 + 0202 Xbox Controller + 0280 XBox Device + 0283 Xbox Communicator + 0284 Xbox DVD Playback Kit + 0285 Xbox Controller S + 0288 Xbox Controller S Hub + 0289 Xbox Controller S + 028b Xbox360 DVD Emulator + 028d Xbox360 Memory Unit 64MB + 028e Xbox360 Controller + 028f Xbox360 Wireless Controller + 0290 Xbox360 Performance Pipe (PIX) + 0291 Xbox 360 Wireless Receiver for Windows + 0292 Xbox360 Wireless Networking Adapter + 029c Xbox360 HD-DVD Drive + 029d Xbox360 HD-DVD Drive + 029e Xbox360 HD-DVD Memory Unit + 02a0 Xbox360 Big Button IR + 02a8 Xbox360 Wireless N Networking Adapter [Atheros AR7010+AR9280] + 02ad Xbox NUI Audio + 02ae Xbox NUI Camera + 02b0 Xbox NUI Motor + 0400 Windows Powered Pocket PC 2002 + 0401 Windows Powered Pocket PC 2002 + 0402 Windows Powered Pocket PC 2002 + 0403 Windows Powered Pocket PC 2002 + 0404 Windows Powered Pocket PC 2002 + 0405 Windows Powered Pocket PC 2002 + 0406 Windows Powered Pocket PC 2002 + 0407 Windows Powered Pocket PC 2002 + 0408 Windows Powered Pocket PC 2002 + 0409 Windows Powered Pocket PC 2002 + 040a Windows Powered Pocket PC 2002 + 040b Windows Powered Pocket PC 2002 + 040c Windows Powered Pocket PC 2002 + 040d Windows Powered Pocket PC 2002 + 040e Windows Powered Pocket PC 2002 + 040f Windows Powered Pocket PC 2002 + 0410 Windows Powered Pocket PC 2002 + 0411 Windows Powered Pocket PC 2002 + 0412 Windows Powered Pocket PC 2002 + 0413 Windows Powered Pocket PC 2002 + 0414 Windows Powered Pocket PC 2002 + 0415 Windows Powered Pocket PC 2002 + 0416 Windows Powered Pocket PC 2002 + 0417 Windows Powered Pocket PC 2002 + 0432 Windows Powered Pocket PC 2003 + 0433 Windows Powered Pocket PC 2003 + 0434 Windows Powered Pocket PC 2003 + 0435 Windows Powered Pocket PC 2003 + 0436 Windows Powered Pocket PC 2003 + 0437 Windows Powered Pocket PC 2003 + 0438 Windows Powered Pocket PC 2003 + 0439 Windows Powered Pocket PC 2003 + 043a Windows Powered Pocket PC 2003 + 043b Windows Powered Pocket PC 2003 + 043c Windows Powered Pocket PC 2003 + 043d Becker Traffic Assist Highspeed 7934 + 043e Windows Powered Pocket PC 2003 + 043f Windows Powered Pocket PC 2003 + 0440 Windows Powered Pocket PC 2003 + 0441 Windows Powered Pocket PC 2003 + 0442 Windows Powered Pocket PC 2003 + 0443 Windows Powered Pocket PC 2003 + 0444 Windows Powered Pocket PC 2003 + 0445 Windows Powered Pocket PC 2003 + 0446 Windows Powered Pocket PC 2003 + 0447 Windows Powered Pocket PC 2003 + 0448 Windows Powered Pocket PC 2003 + 0449 Windows Powered Pocket PC 2003 + 044a Windows Powered Pocket PC 2003 + 044b Windows Powered Pocket PC 2003 + 044c Windows Powered Pocket PC 2003 + 044d Windows Powered Pocket PC 2003 + 044e Windows Powered Pocket PC 2003 + 044f Windows Powered Pocket PC 2003 + 0450 Windows Powered Pocket PC 2003 + 0451 Windows Powered Pocket PC 2003 + 0452 Windows Powered Pocket PC 2003 + 0453 Windows Powered Pocket PC 2003 + 0454 Windows Powered Pocket PC 2003 + 0455 Windows Powered Pocket PC 2003 + 0456 Windows Powered Pocket PC 2003 + 0457 Windows Powered Pocket PC 2003 + 0458 Windows Powered Pocket PC 2003 + 0459 Windows Powered Pocket PC 2003 + 045a Windows Powered Pocket PC 2003 + 045b Windows Powered Pocket PC 2003 + 045c Windows Powered Pocket PC 2003 + 045d Windows Powered Pocket PC 2003 + 045e Windows Powered Pocket PC 2003 + 045f Windows Powered Pocket PC 2003 + 0460 Windows Powered Pocket PC 2003 + 0461 Windows Powered Pocket PC 2003 + 0462 Windows Powered Pocket PC 2003 + 0463 Windows Powered Pocket PC 2003 + 0464 Windows Powered Pocket PC 2003 + 0465 Windows Powered Pocket PC 2003 + 0466 Windows Powered Pocket PC 2003 + 0467 Windows Powered Pocket PC 2003 + 0468 Windows Powered Pocket PC 2003 + 0469 Windows Powered Pocket PC 2003 + 046a Windows Powered Pocket PC 2003 + 046b Windows Powered Pocket PC 2003 + 046c Windows Powered Pocket PC 2003 + 046d Windows Powered Pocket PC 2003 + 046e Windows Powered Pocket PC 2003 + 046f Windows Powered Pocket PC 2003 + 0470 Windows Powered Pocket PC 2003 + 0471 Windows Powered Pocket PC 2003 + 0472 Windows Powered Pocket PC 2003 + 0473 Windows Powered Pocket PC 2003 + 0474 Windows Powered Pocket PC 2003 + 0475 Windows Powered Pocket PC 2003 + 0476 Windows Powered Pocket PC 2003 + 0477 Windows Powered Pocket PC 2003 + 0478 Windows Powered Pocket PC 2003 + 0479 Windows Powered Pocket PC 2003 + 047a Windows Powered Pocket PC 2003 + 047b Windows Powered Pocket PC 2003 + 04c8 Windows Powered Smartphone 2002 + 04c9 Windows Powered Smartphone 2002 + 04ca Windows Powered Smartphone 2002 + 04cb Windows Powered Smartphone 2002 + 04cc Windows Powered Smartphone 2002 + 04cd Windows Powered Smartphone 2002 + 04ce Windows Powered Smartphone 2002 + 04d7 Windows Powered Smartphone 2003 + 04d8 Windows Powered Smartphone 2003 + 04d9 Windows Powered Smartphone 2003 + 04da Windows Powered Smartphone 2003 + 04db Windows Powered Smartphone 2003 + 04dc Windows Powered Smartphone 2003 + 04dd Windows Powered Smartphone 2003 + 04de Windows Powered Smartphone 2003 + 04df Windows Powered Smartphone 2003 + 04e0 Windows Powered Smartphone 2003 + 04e1 Windows Powered Smartphone 2003 + 04e2 Windows Powered Smartphone 2003 + 04e3 Windows Powered Smartphone 2003 + 04e4 Windows Powered Smartphone 2003 + 04e5 Windows Powered Smartphone 2003 + 04e6 Windows Powered Smartphone 2003 + 04e7 Windows Powered Smartphone 2003 + 04e8 Windows Powered Smartphone 2003 + 04e9 Windows Powered Smartphone 2003 + 04ea Windows Powered Smartphone 2003 + 04ec Windows Phone (Zune) + 063e Zune HD Media Player + 0640 KIN Phone + 0641 KIN Phone + 0642 KIN Phone + 0707 Wireless Laser Mouse 8000 + 0708 Transceiver v 3.0 for Bluetooth + 070a Charon Bluetooth Dongle (DFU) + 0710 Zune Media Player + 0713 Wireless Presenter Mouse 8000 + 0719 Xbox 360 Wireless Adapter + 0721 LifeCam NX-3000 (UVC-compliant) + 0723 LifeCam VX-7000 (UVC-compliant) + 0734 Wireless Optical Desktop 700 + 0737 Compact Optical Mouse 500 + 0745 Nano Transceiver v1.0 for Bluetooth + 0750 Wired Keyboard 600 + 075d LifeCam Cinema + 076d LifeCam HD-5000 + 930a ISOUSB.SYS Intel 82930 Isochronous IO Test Board + fff8 Keyboard + ffff Windows CE Mass Storage +0460 Ace Cad Enterprise Co., Ltd + 0004 Tablet (5x3.75) + 0006 LCD Tablet (12x9) + 0008 Tablet (3x2.25) +0461 Primax Electronics, Ltd + 0300 G2-300 Scanner + 0301 G2E-300 Scanner + 0302 G2-300 #2 Scanner + 0303 G2E-300 #2 Scanner + 0340 Colorado 9600 Scanner + 0341 Colorado 600u Scanner + 0345 Visioneer 6200 Scanner + 0346 Memorex Maxx 6136u Scanner + 0347 Primascan Colorado 2600u/Visioneer 4400 Scanner + 0360 Colorado 19200 Scanner + 0361 Colorado 1200u Scanner + 0363 VistaScan Astra 3600(ENG) + 0364 LG Electronics Scanworks 600U Scanner + 0365 VistaScan Astra 3600(ENG) + 0366 6400 + 0367 VistaScan Astra 3600(ENG) + 0371 Visioneer Onetouch 8920 Scanner + 0374 UMAX Astra 2500 + 0375 VistaScan Astra 3600(ENG) + 0377 Medion MD 5345 Scanner + 0378 VistaScan Astra 3600(ENG) + 037b Medion MD 6190 Scanner + 037c VistaScan Astra 3600(ENG) + 0380 G2-600 Scanner + 0381 ReadyScan 636i Scanner + 0382 G2-600 #2 Scanner + 0383 G2E-600 Scanner + 038a UMAX Astra 3000/3600 + 038b Xerox 2400 Onetouch + 038c UMAX Astra 4100 + 0392 Medion/Lifetec/Tevion/Cytron MD 6190 + 03a8 9420M + 0813 IBM UltraPort Camera + 0815 Micro Innovations IC200 Webcam + 0819 Fujifilm IX-30 Camera [webcam mode] + 081a Fujifilm IX-30 Camera [storage mode] + 081c Elitegroup ECS-C11 Camera + 081d Elitegroup ECS-C11 Storage + 0a00 Micro Innovations Web Cam 320 + 4d01 Comfort Keyboard + 4d02 Mouse-in-a-Box + 4d03 Kensington Mouse-in-a-box + 4d04 Mouse + 4d06 Balless Mouse (HID) + 4d15 Dell Optical Mouse + 4d17 Optical Mouse + 4d2a PoPo Elixir Mouse (HID) + 4d2b Wireless Laser Mini Mouse (HID) + 4d2c PoPo Mini Pointer Mouse (HID) + 4d2e Optical Mobile Mouse (HID) + 4d51 0Y357C PMX-MMOCZUL (B) [Dell Laser Mouse] + 4d75 Rocketfish RF-FLBTAD Bluetooth Adapter +0463 MGE UPS Systems + 0001 UPS + ffff UPS +0464 AMP/Tycoelectronics Corp. +0467 AT&T Paradyne +0468 Wieson Technologies Co., Ltd +046a Cherry GmbH + 0001 My3000 Keyboard + 0003 My3000 Hub + 0004 CyBoard Keyboard + 0005 XX33 SmartCard Reader Keyboard + 0008 Wireless Keyboard and Mouse + 0010 SmartBoard XX44 + 0011 G83 (RS 6000) Keyboard + 0021 CyMotion Expert Combo + 0023 CyMotion Master Linux Keyboard + 0027 CyMotion Master Solar Keyboard + 002a Wireless Mouse & Keyboard + 002d SmartTerminal XX44 + 003e SmartTerminal ST-2xxx + 0080 eHealth Terminal ST 1503 + 0081 eHealth Keyboard G87 1504 + 0106 R-300 Wireless Mouse Receiver +046b American Megatrends, Inc. + 0001 Keyboard + 0101 PS/2 Keyboard, Mouse & Joystick Ports + 0301 USB 1.0 Hub + 0500 Serial & Parallel Ports +046c Toshiba Corp., Digital Media Equipment +046d Logitech, Inc. + 0082 Acer Aspire 5672 Webcam + 0200 WingMan Extreme Joystick + 0203 M2452 Keyboard + 0301 M4848 Mouse + 0401 HP PageScan + 0402 NEC PageScan + 040f Logitech/Storm PageScan + 0430 Mic (Cordless) + 0801 QuickCam Home + 0802 Webcam C200 + 0804 Webcam C250 + 0805 Webcam C300 + 0807 Webcam B500 + 0808 Webcam C600 + 0809 Webcam Pro 9000 + 080a Portable Webcam C905 + 080f Webcam C120 + 0810 QuickCam Pro + 0819 Webcam C210 + 081b Webcam C310 + 0820 QuickCam VC + 0825 Webcam C270 + 0830 QuickClip + 0840 QuickCam Express + 0850 QuickCam Web + 0870 QuickCam Express + 0890 QuickCam Traveler + 0892 OrbiCam + 0894 CrystalCam + 0895 QuickCam for Dell Notebooks + 0896 OrbiCam + 0897 QuickCam for Dell Notebooks + 0899 QuickCam for Dell Notebooks + 089d QuickCam E2500 series + 08a0 QuickCam IM + 08a1 QuickCam IM with sound + 08a2 Labtec Webcam Pro + 08a3 QuickCam QuickCam Chat + 08a6 QuickCam IM + 08a7 QuickCam Image + 08a9 Notebook Deluxe + 08aa Labtec Notebooks + 08ac QuickCam Cool + 08ad QuickCam Communicate STX + 08ae QuickCam for Notebooks + 08af QuickCam Easy/Cool + 08b0 QuickCam 3000 Pro [pwc] + 08b1 QuickCam Notebook Pro + 08b2 QuickCam Pro 4000 + 08b3 QuickCam Zoom + 08b4 QuickCam Zoom + 08b5 QuickCam Sphere + 08b9 QuickCam IM + 08bd Microphone (Pro 4000) + 08c0 QuickCam Pro 3000 + 08c1 QuickCam Fusion + 08c2 QuickCam PTZ + 08c3 Camera (Notebooks Pro) + 08c5 QuickCam Pro 5000 + 08c6 QuickCam for DELL Notebooks + 08c7 QuickCam OEM Cisco VT Camera II + 08c9 QuickCam Ultra Vision + 08ca Mic (Fusion) + 08cb Mic (Notebooks Pro) + 08cc Mic (PTZ) + 08ce QuickCam Pro 5000 + 08cf QuickCam UpdateMe + 08d0 QuickCam Express + 08d7 QuickCam Communicate STX + 08d8 QuickCam for Notebook Deluxe + 08d9 QuickCam IM/Connect + 08da QuickCam Messanger + 08dd QuickCam for Notebooks + 08e0 QuickCam Express + 08e1 Labtec Webcam + 08f0 QuickCam Messenger + 08f1 QuickCam Express + 08f2 Microphone (Messenger) + 08f3 QuickCam Express + 08f4 Labtec Webcam + 08f5 QuickCam Messenger Communicate + 08f6 QuickCam Messenger Plus + 0900 ClickSmart 310 + 0901 ClickSmart 510 + 0903 ClickSmart 820 + 0905 ClickSmart 820 + 0910 QuickCam Cordless + 0920 QuickCam Express + 0921 Labtec Webcam + 0922 QuickCam Live + 0928 QuickCam Express + 0929 Labtec Webcam Pro + 092a QuickCam for Notebooks + 092b Labtec Webcam Plus + 092c QuickCam Chat + 092d QuickCam Express / Go + 092e QuickCam Chat + 092f QuickCam Express Plus + 0950 Pocket Camera + 0960 ClickSmart 420 + 0970 Pocket750 + 0990 QuickCam Pro 9000 + 0991 QuickCam Pro for Notebooks + 0992 QuickCam Communicate Deluxe + 0994 QuickCam Orbit/Sphere AF + 09a1 QuickCam Communicate MP/S5500 + 09a2 QuickCam Communicate Deluxe/S7500 + 09a4 QuickCam E 3500 + 09a5 Quickcam 3000 For Business + 09a6 QuickCam Vision Pro + 09b0 Acer OrbiCam + 09b2 Fujitsu Webcam + 09c0 QuickCam for Dell Notebooks Mic + 09c1 QuickCam Deluxe for Notebooks + 0a01 USB Headset + 0a02 Premium Stereo USB Headset 350 + 0a03 Logitech USB Microphone + 0a04 V20 portable speakers (USB powered) + 0a07 Z-10 Speakers + 0a0b ClearChat Pro USB + 0a0c Clear Chat Comfort USB Headset + 0a13 Z-5 Speakers + 0a17 G330 Headset + 0b02 BT Mini-Receiver (HID proxy mode) + 8801 Video Camera + b305 BT Mini-Receiver + bfe4 Premium Optical Wheel Mouse + c000 N43 [Pilot Mouse] + c001 N48/M-BB48 [FirstMouse Plus] + c002 M-BA47 [MouseMan Plus] + c003 MouseMan + c004 WingMan Gaming Mouse + c005 WingMan Gaming Wheel Mouse + c00b MouseMan Wheel + c00c Optical Wheel Mouse + c00d MouseMan Wheel+ + c00e M-BJ58/M-BJ69 Optical Wheel Mouse + c00f MouseMan Traveler/Mobile + c011 Optical MouseMan + c012 Mouseman Dual Optical + c014 Corded Workstation Mouse + c015 Corded Workstation Mouse + c016 Optical Wheel Mouse + c018 Optical Wheel Mouse + c019 Optical Tilt Wheel Mouse + c01a M-BQ85 Optical Wheel Mouse + c01b MX310 Optical Mouse + c01c Optical Mouse + c01d MX510 Optical Mouse + c01e MX518 Optical Mouse + c024 MX300 Optical Mouse + c025 MX500 Optical Mouse + c030 iFeel Mouse + c031 iFeel Mouse+ + c032 MouseMan iFeel + c033 iFeel MouseMan+ + c034 MouseMan Optical + c035 Mouse + c036 Mouse + c037 Mouse + c038 Mouse + c03d M-BT96a Pilot Optical Mouse + c03e Premium Optical Wheel Mouse (M-BT58) + c03f M-BT85 [UltraX Optical Mouse] + c040 Corded Tilt-Wheel Mouse + c041 G5 Laser Mouse + c042 G3 Laser Mouse + c043 MX320/MX400 Laser Mouse + c044 LX3 Optical Mouse + c045 Optical Mouse + c046 RX1000 Laser Mouse + c047 Laser Mouse + c048 G9 Laser Mouse + c049 G5 Laser Mouse + c050 RX 250 Optical Mouse + c051 G3 (MX518) Optical Mouse + c053 Laser Mouse + c058 M115 Mouse + c05a Optical Mouse M90 + c05d Optical Mouse + c061 RX1500 Laser Mouse + c062 LS1 Laser Mouse, corded + c068 G500 Laser Mouse + c101 UltraX Media Remote + c110 Harmony 885 Remote + c11f Harmony 900 Remote + c122 Harmony 700 Remote + c201 WingMan Extreme Joystick with Throttle + c202 WingMan Formula + c207 WingMan Extreme Digital 3D + c208 WingMan Gamepad Extreme + c209 WingMan Gamepad + c20a WingMan RumblePad + c20b WingMan Action Pad + c20c WingMan Precision + c20d WingMan Attack 2 + c20e WingMan Formula GP + c211 iTouch Cordless Reciever + c212 WingMan Extreme Digital 3D + c213 J-UH16 (Freedom 2.4 Cordless Joystick) + c214 ATK3 (Attack III Joystick) + c215 Extreme 3D Pro + c216 Dual Action Gamepad + c218 Logitech RumblePad 2 USB + c219 Cordless RumblePad 2 + c21a Precision Gamepad + c21c G13 Advanced Gameboard + c21d F310 Gamepad [XInput Mode] + c21f F710 Wireless Gamepad [XInput Mode] + c221 G11/G15 Keyboard / Keyboard + c222 G15 Keyboard / LCD + c223 G11/G15 Keyboard / USB Hub + c225 G11/G15 Keyboard / G keys + c226 G15 Refresh Keyboard + c227 G15 Refresh Keyboard + c22d G510 Gaming Keyboard + c22e G510 Gaming Keyboard onboard audio + c281 WingMan Force + c283 WingMan Force 3D + c285 WingMan Strike Force 3D + c286 Force 3D Pro + c287 Flight System G940 + c291 WingMan Formula Force + c293 WingMan Formula Force GP + c294 Driving Force + c295 Momo Force Steering Wheel + c298 Driving Force Pro + c299 G25 Racing Wheel + c2a0 Wingman Force Feedback Mouse + c2a1 WingMan Force Feedback Mouse + c301 iTouch Keyboard + c302 iTouch Pro Keyboard + c303 iTouch Keyboard + c305 Internet Keyboard + c307 Internet Keyboard + c308 Internet Navigator Keyboard + c309 Internet Keyboard + c30a iTouch Composite + c30b NetPlay Keyboard + c30c Internet Keys (X) + c30d Internet Keys + c30e UltraX Keyboard (Y-BL49) + c30f Logicool HID-Compliant Keyboard (106 key) + c311 Y-UF49 [Internet Pro Keyboard] + c312 DeLuxe 250 Keyboard + c313 Internet 350 Keyboard + c315 Classic New Touch Keyboard + c316 HID-Compliant Keyboard + c317 Wave Corded Keyboard + c318 Illuminated Keyboard + c31a Comfort Wave 450 + c31b Compact Keyboard K300 + c31c Keyboard K120 for Business + c401 TrackMan Marble Wheel + c402 Marble Mouse (2-button) + c403 Turbo TrackMan Marble FX + c404 TrackMan Wheel + c408 Marble Mouse (4-button) + c501 Cordless Mouse Receiver + c502 Cordless Mouse & iTouch Keys + c503 Cordless Mouse+Keyboard Receiver + c504 Cordless Mouse+Keyboard Receiver + c505 Cordless Mouse+Keyboard Receiver + c506 MX700 Cordless Mouse Receiver + c508 Cordless Trackball + c509 Cordless Keyboard & Mouse + c50a Cordless Mouse + c50b Cordless Desktop Optical + c50c Cordless Desktop S510 + c50d Cordless Mouse + c50e Cordless Mouse Receiver + c510 Cordless Mouse + c512 LX-700 Cordless Desktop Receiver + c513 MX3000 Cordless Desktop Receiver + c514 Cordless Mouse + c515 Cordless 2.4 GHz Presenter Presentation remote control + c517 LX710 Cordless Desktop Laser + c518 MX610 Laser Cordless Mouse + c51a MX Revolution/G7 Cordless Mouse + c51b V220 Cordless Optical Mouse for Notebooks + c521 Cordless Mouse Receiver + c525 MX Revolution Cordless Mouse + c526 Nano Receiver + c529 diNovo Keyboard for notebooks + c52b Unifying Receiver + c52f Wireless Mouse M305 + c623 3Dconnexion Space Traveller 3D Mouse + c625 3Dconnexion Space Pilot 3D Mouse + c626 3Dconnexion Space Navigator 3D Mouse + c627 3Dconnexion Space Explorer 3D Mouse + c702 Cordless Presenter + c703 Elite Keyboard Y-RP20 + Mouse MX900 (Bluetooth) + c704 diNovo Wireless Desktop + c705 MX900 Bluetooth Wireless Hub (C-UJ16A) + c707 Bluetooth wireless hub + c708 Bluetooth wireless hub + c709 BT Mini-Receiver (HCI mode) + c70a MX5000 Cordless Desktop + c70b BT Mini-Receiver (HID proxy mode) + c70c BT Mini-Receiver (HID proxy mode) + c70d Bluetooth wireless hub + c70e MX1000 Bluetooth Laser Mouse + c70f Bluetooth wireless hub + c712 Bluetooth wireless hub + c714 diNovo Edge Keyboard + c715 Bluetooth wireless hub + c71a Bluetooth wireless hub + c71d Bluetooth wireless hub + c71f diNovo Mini Wireless Keyboard + c720 Bluetooth wireless hub + ca03 MOMO Racing + ca04 Formula Vibration Feedback Wheel + cab1 Cordless Keyboard for Wii HID Receiver + d001 QuickCam Pro +046e Behavior Tech. Computer Corp. + 0100 Keyboard + 3001 Mass Storage Device + 3002 Mass Storage Device + 3003 Mass Storage Device + 3005 Mass Storage Device + 3008 Mass Storage Device + 5250 KeyMaestro Multimedia Keyboard + 5273 KeyMaestro Multimedia Keyboard + 52e6 Cordless Mouse + 5308 KeyMaestro Keyboard + 5408 KeyMaestro Multimedia Keyboard/Hub + 5500 Portable Keyboard 86+9 keys (Model 6100C US) + 5720 Smart Card Reader + 6782 BTC 7932 mouse+keyboard +046f Crystal Semiconductor +0471 Philips (or NXP) + 0101 DSS350 Digital Speaker System + 0104 DSS330 Digital Speaker System [uda1321] + 0105 UDA1321 + 014f GoGear SA9200 + 0160 MP3 Player + 0161 MP3 Player + 0163 GoGear SA1100 + 0164 GoGear SA1110/02 + 0165 GoGear SA1330 + 0201 Hub + 0222 Creative Nomad Jukebox + 0302 PCA645VC Webcam [pwc] + 0303 PCA646VC Webcam [pwc] + 0304 Askey VC010 Webcam [pwc] + 0307 PCVC675K Webcam [pwc] + 0308 PCVC680K Webcam [pwc] + 030b PC VGA Camera (Vesta Fun) + 030c PCVC690K Webcam [pwc] + 0310 PCVC730K Webcam [pwc] + 0311 PCVC740K ToUcam Pro [pwc] + 0312 PCVC750K Webcam [pwc] + 0314 DMVC 1000K + 0316 DMVC 2000K Video Capture + 0321 FunCam + 0322 DMVC1300K PC Camera + 0325 SPC 200NC PC Camera + 0326 SPC 300NC PC Camera + 0327 Webcam SPC 6000 NC (Webcam w/ mic) + 0328 SPC 700NC PC Camera + 0329 SPC 900NC PC Camera / ORITE CCD Webcam(PC370R) + 032d SPC 210NC PC Camera + 032e SPC 315NC PC Camera + 0330 SPC 710NC PC Camera + 0331 SPC 1300NC PC Camera + 0332 SPC 1000NC PC Camera + 0333 SPC 620NC PC Camera + 0334 SPC 520/525NC PC Camera + 0401 Semiconductors CICT Keyboard + 0402 PS/2 Mouse on Semiconductors CICT Keyboard + 0406 15 inch Detachable Monitor + 0407 10 inch Mobile Monitor + 0471 Digital Speaker System + 0601 OVU1020 IR Dongle (Kbd+Mouse) + 0602 ATI Remote Wonder II Input Device + 0603 ATI Remote Wonder II Controller + 0608 eHome Infrared Receiver + 060a TSU9600 Remote Control + 060c Consumer Infrared Transceiver (HP) + 060d Consumer Infrared Transceiver (SRM5100) + 060e RF Dongle + 060f Consumer Infrared Transceiver + 0613 Infrared Transceiver + 0617 IEEE802.15.4 RF Dongle + 0619 TSU9400 Remote Control + 0666 Hantek DDS-3005 Arbitrary Waveform Generator + 0700 Semiconductors CICT Hub + 0701 150P1 TFT Display + 0809 AVNET Bluetooth Device + 0811 JR24 CDRW + 0814 DCCX38/P data cable + 0815 eHome Infrared Receiver + 0844 SA2111/02 1GB Flash Audio Player + 084a GoGear SA3125 + 084e GoGear SA60xx (mtp) + 0888 Hantek DDS-3005 Arbitrary Waveform Generator + 1103 Digital Speaker System + 1120 Creative Rhomba MP3 player + 1125 Nike psa[128max Player + 1137 HDD065 MP3 player + 1201 Arima Bluetooth Device + 1230 Wireless Adapter 11g + 1232 SNU6500 Wireless Adapter + 1233 Wireless Adapter Bootloader Download + 1236 SNU5600 802.11bg + 1237 TalkTalk SNU5630NS/05 802.11bg + 1552 ISP 1581 Hi-Speed USB MPEG2 Encoder Reference Kit + 1801 Diva MP3 player + 200a Wireless Network Adapter + 200f 802.11n Wireless Adapter + 2021 SDE3273FC/97 2.5" SATA HDD Enclosure [INIC-1608L] + 2022 GoGear SA52XX + 2034 Webcam SPC530NC + 2036 Webcam SPC1030NC + 203f TSU9200 Remote Control + 2046 TSU9800 Remote Control + 204e GoGear RaGa (SA1942/02) + 205e TSU9300 Remote Control + 2070 GoGear Mix + 2076 GoGear Aria + 2079 GoGear Opus + 2088 MCE IR Receiver with ALS- Spinel plus for ASUS + 262c SPC230NC Webcam + 485d Senselock SenseIV v2.x + df55 LPCXpresso LPC-Link +0472 Chicony Electronics Co., Ltd + 0065 PFU-65 Keyboard [Chicony] + b086 Asus USB2.0 Webcam + b091 Webcam +0473 Sanyo Information Business Co., Ltd +0474 Sanyo Electric Co., Ltd + 0110 Digital Voice Recorder R200 + 0217 Xacti J2 + 022f C5 Digital Media Camera (mass storage mode) + 0230 C5 Digital Media Camera (PictBridge mode) + 0231 C5 Digital Media Camera (PC control mode) + 0401 Optical Drive + 0701 SCP-4900 Cellphone + 071f Usb Com Port Enumerator + 0722 W33SA Camera +0475 Relisys/Teco Information System + 0100 NEC Petiscan + 0103 Eclipse 1200U/Episode + 0210 Scorpio Ultra 3 +0476 AESP +0477 Seagate Technology, Inc. +0478 Connectix Corp. + 0001 QuickCam + 0002 QuickClip + 0003 QuickCam Pro +0479 Advanced Peripheral Laboratories +047a Semtech Corp. + 0004 ScreenCoder UR7HCTS2-USB +047b Silitek Corp. + 0001 Keyboard + 0002 Keyboard and Mouse + 00f9 SK-1789u Keyboard + 0101 BlueTooth Keyboard and Mouse + 020b SK-3105 SmartCard Reader + 050e Internet Compact Keyboard + 1000 Trust Office Scan USB 19200 + 1002 HP ScanJet 4300c Parallel Port +047c Dell Computer Corp. +047d Kensington + 1001 Mouse*in*a*Box + 1002 Expert Mouse Pro + 1003 Orbit TrackBall + 1004 MouseWorks + 1005 TurboBall + 1006 TurboRing + 1009 Orbit TrackBall for Mac + 1012 PocketMouse + 1013 Mouse*in*a*Box Optical Pro + 1014 Expert Mouse Pro Wireless + 1015 Expert Mouse + 1016 ADB/USB Orbit + 1018 Studio Mouse + 101d Mouse*in*a*Box Optical Pro + 101e Studio Mouse Wireless + 101f PocketMouse Pro + 1020 Expert Mouse Trackball + 1021 Expert Mouse Wireless + 1022 Orbit Optical + 1023 Pocket Mouse Pro Wireless + 1024 PocketMouse + 1025 Mouse*in*a*Box Optical Elite Wireless + 1026 Pocket Mouse Pro + 1027 StudioMouse + 1028 StudioMouse Wireless + 1029 Mouse*in*a*Box Optical Elite + 102a Mouse*in*a*Box Optical + 102b PocketMouse + 102c Iridio + 102d Pilot Optical + 102e Pilot Optical Pro + 102f Pilot Optical Pro Wireless + 1043 Ci65m Wireless Notebook Optical Mouse + 104a PilotMouse Mini Retractable + 105d PocketMouse Bluetooth + 105e Bluetooth EDR Dongle + 1061 PocketMouse Grip + 1062 PocketMouse Max + 1063 PocketMouse Max Wireless + 1064 PocketMouse 2.0 Wireless + 1065 PocketMouse 2.0 + 1066 PocketMouse Max Glow + 1067 ValueMouse + 1068 ValueOpt White + 1069 ValueOpt Black + 106a PilotMouse Laser Wireless Mini + 106b PilotMouse Laser - 3 Button + 106c PilotMouse Laser - Gaming + 106d PilotMouse Laser - Wired + 106e PilotMouse Micro Laser + 1070 ValueOpt Travel + 1071 ValueOpt RF TX + 1072 PocketMouse Colour + 1073 PilotMouse Laser - 6 Button + 1074 PilotMouse Laser Wireless Mini + 1075 SlimBlade Presenter Media Mouse + 1076 SlimBlade Media Mouse + 1077 SlimBlade Presenter Mouse + 1152 Bluetooth EDR Dongle + 2002 Optical Elite Wireless + 2010 Wireless Presentation Remote + 2012 Wireless Presenter with Laser Pointer + 2021 PilotBoard Wireless + 2030 PilotBoard Wireless + 2034 SlimBlade Media Notebook Set + 2041 SlimBlade Trackball + 4003 Gravis Xterminator Digital Gamepad + 4005 Gravis Eliminator GamePad Pro + 4006 Gravis Eliminator AfterShock + 4007 Gravis Xterminator Force + 4008 Gravis Destroyer TiltPad + 5001 Cabo I Camera + 5002 VideoCam CABO II + 5003 VideoCam +047e Agere Systems, Inc. (Lucent) + 0300 ORiNOCO Card + 1001 USS720 Parallel Port + 2892 Systems Soft Modem + bad1 Lucent 56k Modem + f101 Atlas Modem +047f Plantronics, Inc. + 0101 Bulk Driver + 0301 Bulk Driver + 0ca1 USB DSP v4 Audio Interface + 4254 BUA-100 Bluetooth Adapter +0480 Toshiba America Info. Systems, Inc. + 0001 InTouch Module + 0004 InTouch Module + 0011 InTouch Module + 0014 InTouch Module +0481 Zenith Data Systems +0482 Kyocera Corp. + 000e FS-1020D Printer + 0100 Finecam S3x + 0101 Finecam S4 + 0103 Finecam S5 + 0105 Finecam L3 + 0106 Finecam + 0107 Digital Camera Device + 0108 Digital Camera Device + 0203 AH-K3001V + 0204 iBurst Terminal +0483 SGS Thomson Microelectronics + 0137 BeWAN ADSL USB ST (blue or green) + 0138 Unicorn II (ST70138B + MTC-20174TQ chipset) + 1307 Cytronix 6in1 Card Reader + 163d Cool Icam Digi-MP3 + 2015 TouchChip® Fingerprint Reader + 2016 Fingerprint Reader + 2017 Biometric Smart Card Reader + 2018 BioSimKey + 2302 Portable Flash Device (PFD) + 4810 ISDN adapter + 481d BT Digital Access adapter + 5000 ST Micro Bluetooth Device + 5001 ST Micro Bluetooth Device + 5721 Hantek DDS-3X25 Arbitrary Waveform Generator + 7270 ST Micro Serial Bridge + 7554 56k SoftModem + ff10 Swann ST56 Modem +0484 Specialix +0485 Nokia Monitors +0486 ASUS Computers, Inc. + 0185 EeePC T91MT HID Touch Panel +0487 Stewart Connector +0488 Cirque Corp. +0489 Foxconn / Hon Hai + 0502 SmartMedia Card Reader Firmware Loader + 0503 SmartMedia Card Reader + d00c Rollei Compactline (Storage Mode) + d00e Rollei Compactline (Video Mode) + e000 T-Com TC 300 + e003 Pirelli DP-L10 + e00f Foxconn T77H114 BCM2070 [Single-Chip Bluetooth 2.1 + EDR Adapter] + e016 Ubee PXU1900 WiMAX Adapter [Beceem BCSM250] + e02c Atheros AR5BBU12 Bluetooth Device +048a S-MOS Systems, Inc. +048c Alps Electric Ireland, Ltd +048d Integrated Technology Express, Inc. + 9009 Zolid HD DVD Maker + 9135 Zolid Mini DVB-T Stick +048f Eicon Tech. +0490 United Microelectronics Corp. +0491 Capetronic + 0003 Taxan Monitor Control +0492 Samsung SemiConductor, Inc. + 0140 MP3 player + 0141 MP3 Player +0493 MAG Technology Co., Ltd +0495 ESS Technology, Inc. +0496 Micron Electronics +0497 Smile International + c001 Camera Device +0498 Capetronic (Kaohsiung) Corp. +0499 Yamaha Corp. + 1000 UX256 MIDI I/F + 1001 MU1000 + 1002 MU2000 + 1003 MU500 + 1004 UW500 + 1005 MOTIF6 + 1006 MOTIF7 + 1007 MOTIF8 + 1008 UX96 MIDI I/F + 1009 UX16 MIDI I/F + 100a EOS BX + 100c UC-MX + 100d UC-KX + 100e S08 + 100f CLP-150 + 1010 CLP-170 + 1011 P-250 + 1012 TYROS + 1013 PF-500 + 1014 S90 + 1015 MOTIF-R + 1016 MDP-5 + 1017 CVP-204 + 1018 CVP-206 + 1019 CVP-208 + 101a CVP-210 + 101b PSR-1100 + 101c PSR-2100 + 101d CLP-175 + 101e PSR-K1 + 101f EZ-J24 + 1020 EZ-250i + 1021 MOTIF ES 6 + 1022 MOTIF ES 7 + 1023 MOTIF ES 8 + 1024 CVP-301 + 1025 CVP-303 + 1026 CVP-305 + 1027 CVP-307 + 1028 CVP-309 + 1029 CVP-309GP + 102a PSR-1500 + 102b PSR-3000 + 102e ELS-01/01C + 1030 PSR-295/293 + 1031 DGX-205/203 + 1032 DGX-305 + 1033 DGX-505 + 1037 PSR-E403 + 103c MOTIF-RACK ES + 1054 S90XS Keyboard/Music Synthesizer + 2000 DGP-7 + 2001 DGP-5 + 3001 YST-MS55D USB Speaker + 3003 YST-M45D USB Speaker + 4000 NetVolante RTA54i Broadband&ISDN Router + 4001 NetVolante RTW65b Broadband Wireless Router + 4002 NetVolante RTW65i Broadband&ISDN Wireless Router + 4004 NetVolante RTA55i Broadband VoIP Router + 5000 CS1D + 5001 DSP1D + 5002 DME32 + 5003 DM2000 + 5004 02R96 + 5005 ACU16-C + 5006 NHB32-C + 5007 DM1000 + 5008 01V96 + 5009 SPX2000 + 500a PM5D + 500b DME64N + 500c DME24N + 6001 CRW2200UX Lightspeed 2 External CD-RW Drive + 7000 DTX + 7010 UB99 +049a Gandalf Technologies, Ltd +049b Curtis Computer Products +049c Acer Advanced Labs, Inc. + 0002 Keyboard (???) +049d VLSI Technology +049f Compaq Computer Corp. + 0002 InkJet Color Printer + 0003 iPAQ PocketPC + 000e Internet Keyboard + 0012 InkJet Color Printer + 0018 PA-1/PA-2 MP3 Player + 0019 InkJet Color Printer + 001a S4 100 Scanner + 001e IJ650 Inkjet Printer + 001f WL215 Adapter + 0021 S200 Scanner + 0027 Bluetooth Multiport Module by Compaq + 002a 1400P Inkjet Printer + 002b A3000 + 002c Lexmark X125 + 0032 802.11b Adapter [ipaq h5400] + 0033 802.11b Adapter [orinoco] + 0036 Bluetooth Multiport Module + 0051 KU-0133 Easy Access Interner Keyboard + 0076 Wireless LAN MultiPort W200 + 0080 GPRS Multiport + 0086 Bluetooth Device + 504a Personal Jukebox PJB100 + 505a Linux-USB "CDC Subset" Device, or Itsy (experimental) + 8511 iPAQ Networking 10/100 Ethernet [pegasus2] +04a0 Digital Equipment Corp. +04a1 SystemSoft Corp. + fff0 Telex Composite Device +04a2 FirePower Systems +04a3 Trident Microsystems, Inc. +04a4 Hitachi, Ltd + 0004 DVD-CAM DZ-MV100A Camcorder + 001e DVDCAM USB HS Interface +04a5 Acer Peripherals Inc. (now BenQ Corp.) + 0001 Keyboard + 0002 API Ergo K/B + 0003 API Generic K/B Mouse + 12a6 AcerScan C310U + 1a20 Prisa 310U + 1a2a Prisa 620U + 2022 Prisa 320U/340U + 2040 Prisa 620UT + 205e ScanPrisa 640BU + 2060 Prisa 620U+/640U + 207e Prisa 640BU + 209e ScanPrisa 640BT + 20ae S2W 3000U + 20b0 S2W 3300U/4300U + 20be Prisa 640BT + 20c0 Prisa 1240UT + 20de S2W 4300U+ + 20f8 Benq 5000 + 20fc Benq 5000 + 20fe SW2 5300U + 2137 Benq 5150/5250 + 2202 Benq 7400UT + 2311 Benq 5560 + 3003 Benq Webcam + 3008 Benq 1500 + 300a Benq 3410 + 300c Benq 1016 + 3019 Benq DC C40 + 4000 P30 Composite Device + 4013 BenQ-Siemens EF82/SL91 + 4044 BenQ-Siemens SF71 + 4045 BenQ-Siemens E81 + 4048 BenQ M7 + 6001 Mass Storage Device + 6002 Mass Storage Device + 6003 ATA/ATAPI Adapter + 6004 Mass Storage Device + 6005 Mass Storage Device + 6006 Mass Storage Device + 6007 Mass Storage Device + 6008 Mass Storage Device + 6009 Mass Storage Device + 600a Mass Storage Device + 600b Mass Storage Device + 600c Mass Storage Device + 600d Mass Storage Device + 600e Mass Storage Device + 600f Mass Storage Device + 6010 Mass Storage Device + 6011 Mass Storage Device + 6012 Mass Storage Device + 6013 Mass Storage Device + 6014 Mass Storage Device + 6015 Mass Storage Device + 6125 MP3 Player + 6180 MP3 Player + 6200 MP3 Player + 7500 Hi-Speed Mass Storage Device + 9000 AWL300 Wireless Adapter + 9001 AWL400 Wireless Adapter + 9213 Kbd Hub +04a6 Nokia Display Products + 00b9 Audio + 0180 Hub Type P + 0181 HID Monitor Controls +04a7 Visioneer + 0100 StrobePro + 0101 Strobe Pro Scanner (1.01) + 0102 StrobePro Scanner + 0211 OneTouch 7600 Scanner + 0221 OneTouch 5300 Scanner + 0223 OneTouch 8200 + 0224 OneTouch 4800 USB/Microtek Scanport 3000 + 0225 VistaScan Astra 3600(ENG) + 0226 OneTouch 5300 USB + 0229 OneTouch 7100 + 022a OneTouch 6600 + 022c OneTouch 9000/9020 + 0231 6100 Scanner + 0311 6200 EPP/USB Scanner + 0321 OneTouch 8100 EPP/USB Scanner + 0331 OneTouch 8600 EPP/USB Scanner + 0341 6400 + 0361 VistaScan Astra 3600(ENG) + 0362 OneTouch 9320 + 0371 OneTouch 8700/8920 + 0380 OneTouch 7700 + 0382 Photo Port 7700 + 0390 9650 + 03a0 Xerox 4800 One Touch + 0410 OneTouch Pro 8800/8820 + 0421 9450 USB + 0423 9750 Scanner + 0424 Strobe XP 450 + 0425 Strobe XP 100 + 0426 Strobe XP 200 + 0427 Strobe XP 100 + 0444 OneTouch 7300 + 0445 CardReader 100 + 0446 Xerox DocuMate 510 + 0447 XEROX DocuMate 520 + 0448 XEROX DocuMate 250 + 0449 Xerox DocuMate 252 + 044a Xerox 6400 + 044c Xerox DocuMate 262 + 0474 Strobe XP 300 + 0475 Xerox DocuMate 272 + 0478 Strobe XP 220 + 0479 Strobe XP 470 + 047a 9450 + 047b 9650 + 047d 9420 + 0480 9520 + 048f Strobe XP 470 + 0491 Strobe XP 450 + 0493 9750 + 0494 Strobe XP 120 + 0497 Patriot 430 + 0498 Patriot 680 + 0499 Patriot 780 + 049b Strobe XP 100 + 04a0 7400 + 04ac Xerox Travel Scanner 100 +04a8 Multivideo Labs, Inc. + 0101 Hub + 0303 Peripheral Switch + 0404 Peripheral Switch +04a9 Canon, Inc. + 1005 BJ Printer Hub + 1035 PD Printer Storage + 1050 BJC-8200 + 1051 BJC-3000 Color Printer + 1052 BJC-6100 + 1053 BJC-6200 + 1054 BJC-6500 + 1055 BJC-85 + 1056 BJC-2110 Color Printer + 1057 LR1 + 105a BJC-55 + 105b S600 Printer + 105c S400 + 105d S450 Printer + 105e S800 + 1062 S500 Printer + 1063 S4500 + 1064 S300 Printer + 1065 S100 + 1066 S630 + 1067 S900 + 1068 S9000 + 1069 S820 + 106a S200 Printer + 106b S520 Printer + 106d S750 Printer + 106e S820D + 1070 S530D + 1072 I850 Printer + 1073 I550 Printer + 1074 S330 Printer + 1076 i70 + 1077 i950 + 107a S830D + 107b i320 + 107c i470D + 107d i9100 + 107e i450 + 107f i860 + 1082 i350 + 1084 i250 + 1085 i255 + 1086 i560 + 1088 i965 + 108a i455 + 108b i900D + 108c i475D + 108d PIXMA iP2000 + 108f i80 + 1090 i9900 Photo Printer + 1091 PIXMA iP1500 + 1093 PIXMA iP4000 + 1094 PIXMA iP3000x Printer + 1095 PIXMA iP6000D + 1097 PIXMA iP5000 + 1098 PIXMA iP1000 + 1099 PIXMA iP8500 + 109c PIXMA iP4000R + 109d iP90 + 10a0 PIXMA iP1600 Printer + 10a2 iP4200 + 10a4 iP5200R + 10a5 iP5200 + 10a7 iP6210D + 10a8 iP6220D + 10a9 iP6600D + 10b6 PIXMA iP4300 Printer + 10c2 PIXMA iP1800 Printer + 10c4 Pixma iP4500 Printer + 1404 W6400PG + 1405 W8400PG + 150f BIJ2350 PCL + 1510 BIJ1350 PCL + 1512 BIJ1350D PCL + 1601 DR-2080C Scanner + 1607 DR-6080 Scanner + 1700 PIXMA MP110 Scanner + 1701 PIXMA MP130 Scanner + 1702 MP410 Composite + 1703 MP430 Composite + 1704 MP330 Composite + 1706 PIXMA MP750 Scanner + 1707 PIXMA MP780 Scanner + 1708 PIXMA MP760 Scanner + 1709 PIXMA MP150 Scanner + 170a PIXMA MP170 Scanner + 170b PIXMA MP450 Scanner + 170c PIXMA MP500 Scanner + 170d PIXMA MP800 Scanner + 170e MP800R + 1710 MP950 + 1712 MP530 + 1713 PIXMA MP830 Scanner + 1714 MP160 + 1715 MP180 Storage + 1716 MP460 Composite + 1717 MP510 + 1718 MP600 Storage + 171a MP810 Storage + 171b MP960 + 1721 MP210 ser + 1723 MP470 ser + 1725 MP610 ser + 1726 MP970 ser + 1727 MX300 ser + 1728 MX310 ser + 1729 MX700 ser + 172b MP140 ser + 173e MP560 + 173f Pixma MP640 Multifunction device + 1748 Pixma MG5150 + 1900 CanoScan LiDE 90 + 1901 CanoScan 8800F + 1904 CanoScan LiDE 100 + 1905 CanoScan LiDE 200 + 1906 CanoScan 5600F + 1907 CanoScan LiDE 700F + 1909 CanoScan LiDE 110 + 190a CanoScan LiDE 210 + 2200 CanoScan LiDE 25 + 2201 CanoScan FB320U + 2202 CanoScan FB620U + 2204 CanoScan FB630U + 2205 CanoScan FB1210U + 2206 CanoScan N650U/N656U + 2207 CanoScan 1220U + 2208 CanoScan D660U + 220a CanoScan D2400UF + 220b CanoScan D646U + 220c CanoScan D1250U2 + 220d CanoScan N670U/N676U/LiDE 20 + 220e CanoScan N1240U/LiDE 30 + 220f CanoScan 8000F + 2210 CanoScan 9900F + 2212 CanoScan 5000F + 2213 CanoScan LiDE 50/LiDE 35/LiDE 40 + 2214 CanoScan LiDE 80 + 2215 CanoScan 3000/3000F/3000ex + 2216 CanoScan 3200F + 2217 CanoScan 5200F + 2219 CanoScan 9950F + 221b CanoScan 4200F + 221c CanoScan LiDE 60 + 221e CanoScan 8400F + 221f CanoScan LiDE 500F + 2220 CanoScan LIDE 25 + 2224 CanoScan LiDE 600F + 2225 CanoScan LiDE 70 + 2228 CanoScan 4400F + 2602 MultiPASS C555 + 2603 MultiPASS C755 + 260a CAPT Printer + 260e LBP-2000 + 2610 MPC600F + 2611 SmartBase MPC400 + 2612 MultiPASS C855 + 2617 CAPT Printer + 261a iR1600 + 261b iR1610 + 261c iC2300 + 261f MPC200 Printer + 2621 iR2000 + 2622 iR2010 + 2623 FAX-B180C + 2629 FAXPHONE L75 + 262b LaserShot LBP-1120 Printer + 262d iR C3200 + 262f MultiPASS MP730 + 2630 MultiPASS MP700 + 2631 LASER CLASS 700 + 2632 FAX-L2000 + 2635 MPC190 + 2637 iR C6800 + 2638 iR C3100 + 263c Smartbase MP360 + 263d MP370 + 263e MP390 FAX + 263f MP375 + 2646 MF5530 Scanner Device V1.9.1 + 2647 MF5550 Composite + 264d PIXMA MP710 + 264e MF5630 + 264f MF5650 (FAX) + 2650 iR 6800C EUR + 2651 iR 3100C EUR + 2655 FP-L170/MF350/L380/L398 + 2659 MF8100 + 265b CAPT Printer + 265c iR C3220 + 265d MF5730 + 265e MF5750 + 265f MF5770 + 2660 MF3110 + 2663 iR3570/iR4570 + 2664 iR2270/iR2870 + 2665 iR C2620 + 2666 iR C5800 + 2667 iR85PLUS + 2669 iR105PLUS + 266a CAPT Device + 266b iR8070 + 266c iR9070 + 266d iR 5800C EUR + 266e CAPT Device + 266f iR2230 + 2670 iR3530 + 2671 iR5570/iR6570 + 2672 iR C3170 + 2673 iR 3170C EUR + 2674 L120 + 2675 iR2830 + 2676 CAPT Device + 2677 iR C2570 + 2678 iR 2570C EUR + 2679 CAPT Device + 267a iR2016 + 267b iR2020 + 267d MF7100 series + 2684 MF3200 series + 2686 MF6500 series + 2687 iR4530 + 2688 LBP3460 + 268c iR C6870 + 268d iR 6870C EUR + 268e iR C5870 + 268f iR 5870C EUR + 2691 iR7105 + 26a3 MF4100 series + 26b0 MF4600 series + 26b4 MF4010 series + 26b5 MF4200 series + 3041 PowerShot S10 + 3042 CanoScan FS4000US Film Scanner + 3043 PowerShot S20 + 3044 EOS D30 + 3045 PowerShot S100 + 3046 IXY Digital + 3047 Digital IXUS + 3048 PowerShot G1 + 3049 PowerShot Pro90 IS + 304a CP-10 + 304b IXY Digital 300 + 304c PowerShot S300 + 304d Digital IXUS 300 + 304e PowerShot A20 + 304f PowerShot A10 + 3050 PowerShot unknown 1 + 3051 PowerShot S110 + 3052 Digital IXUS V + 3055 PowerShot G2 + 3056 PowerShot S40 + 3057 PowerShot S30 + 3058 PowerShot A40 + 3059 PowerShot A30 + 305b ZR45MC Digital Camcorder + 305c PowerShot unknown 2 + 3060 EOS D60 + 3061 PowerShot A100 + 3062 PowerShot A200 + 3063 CP-100 + 3065 PowerShot S200 + 3066 Digital IXUS 330 + 3067 MV550i Digital Video Camera + 3069 PowerShot G3 + 306a Digital unknown 3 + 306b MVX2i Digital Video Camera + 306c PowerShot S45 + 306d PowerShot S45 PtP Mode + 306e PowerShot G3 (normal mode) + 306f PowerShot G3 (ptp) + 3070 PowerShot S230 + 3071 PowerShot S230 (ptp) + 3072 PowerShot SD100 / Digital IXUS II (ptp) + 3073 PowerShot A70 (ptp) + 3074 PowerShot A60 (ptp) + 3075 IXUS 400 Camera + 3076 PowerShot A300 + 3077 PowerShot S50 + 3078 ZR70MC Digital Camcorder + 307a MV650i (normal mode) + 307b MV630i Digital Video Camera + 307c MV630i (normal mode) + 307d CP-300 + 307f Optura 20 + 3080 MVX150i (normal mode) / Optura 20 (normal mode) + 3081 Optura 10 + 3082 MVX100i / Optura 10 + 3083 EOS 10D + 3084 EOS 300D / EOS Digital Rebel + 3085 PowerShot G5 + 3087 Elura 50 (PTP mode) + 3088 Elura 50 (normal mode) + 308d MVX3i + 308e FV M1 (normal mode) / MVX 3i (normal mode) / Optura Xi (normal mode) + 3093 Optura 300 + 3096 IXY DV M2 (normal mode) / MVX 10i (normal mode) + 3099 EOS 300D (ptp) + 309a PowerShot A80 + 309b Digital IXUS (ptp) + 309c PowerShot S1 IS + 309d Camera + 309f Camera + 30a0 Camera + 30a1 Camera + 30a2 Camera + 30a8 Elura 60E/Optura 40 (ptp) + 30a9 MVX25i (normal mode) / Optura 40 (normal mode) + 30b1 PowerShot S70 (normal mode) / PowerShot S70 (PTP mode) + 30b2 PowerShot S60 (normal mode) / PowerShot S60 (PTP mode) + 30b3 PowerShot G6 (normal mode) / PowerShot G6 (PTP mode) + 30b4 PowerShot S500 + 30b5 PowerShot A75 + 30b6 Digital IXUS II2 / Digital IXUS II2 (PTP mode) / PowerShot SD110 (PTP mode) / PowerShot SD110 Digital ELPH + 30b7 PowerShot A400 / PowerShot A400 (PTP mode) + 30b8 PowerShot A310 / PowerShot A310 (PTP mode) + 30b9 Powershot A85 + 30ba PowerShot S410 Digital Elph + 30bb PowerShot A95 + 30bd CP-220 + 30be CP-330 + 30bf Digital IXUS 40 + 30c0 Digital IXUS 30 (PTP mode) / PowerShot SD200 (PTP mode) + 30c1 Digital IXUS 50 (normal mode) / IXY Digital 55 (normal mode) / PowerShot A520 (PTP mode) / PowerShot SD400 (normal mode) + 30c2 PowerShot A510 (normal mode) / PowerShot A510 (PTP mode) + 30c4 Digital IXUS i5 (normal mode) / IXY Digital L2 (normal mode) / PowerShot SD20 (normal mode) + 30ea EOS 1D Mark II (PTP mode) + 30eb EOS 20D + 30ec EOS 20D (ptp) + 30ee EOS 350D + 30ef EOS 350D (ptp) + 30f0 PowerShot S2 IS (PTP mode) + 30f2 Digital IXUS 700 (normal mode) / Digital IXUS 700 (PTP mode) / IXY Digital 600 (normal mode) / PowerShot SD500 (normal mode) / PowerShot SD500 (PTP mode) + 30f6 SELPHY CP400 + 30f8 Powershot A430 + 30f9 PowerShot A410 (PTP mode) + 30fc PowerShot A620 (PTP mode) + 30fd PowerShot A610 (normal mode)/PowerShot A610 (PTP mode) + 30fe Digital IXUS 65 (PTP mode)/PowerShot SD630 (PTP mode) + 30ff Digital IXUS 55 (PTP mode)/PowerShot SD450 (PTP mode) + 310b SELPHY CP600 + 310e Digital IXUS 50 (PTP mode) + 3110 EOS Digital Rebel XTi + 3116 Digital IXUS 750 (PTP mode) + 3117 PowerShot A700 + 312d Elura 100 + 3138 PowerShot A710 IS + 3147 EOS 1Ds Mark III + 3155 PowerShot A450 + 315a PowerShot G9 + 315d PowerShot A720 + 3160 Digital IXUS 860 IS + 3175 IXY Digital 25 IS + 3176 PowerShot A590 + 317a Powershot A470 + 3184 Digital IXUS 80 IS (PTP mode) + 319a EOS 7D + 31bc PowerShot D10 + 31c0 PowerShot SX200 IS + 31e5 Digital IXUS 200 IS + 31ee SELPHY ES40 + 31f3 PowerShot Digital ELPH SD1400 IS + 31ff Digital IXUS 55 +04aa DaeWoo Telecom, Ltd +04ab Chromatic Research +04ac Micro Audiometrics Corp. +04ad Dooin Electronics + 2501 Bluetooth Device +04af Winnov L.P. +04b0 Nikon Corp. + 0102 Coolpix 990 + 0103 Coolpix 880 + 0104 Coolpix 995 + 0106 Coolpix 775 + 0107 Coolpix 5000 + 0108 Coolpix 2500 + 0109 Coolpix 2500 (ptp) + 010a Coolpix 4500 + 010b Coolpix 4500 (ptp) + 010d Coolpix 5700 (ptp) + 010e Coolpix 4300 (storage) + 010f Coolpix 4300 (ptp) + 0110 Coolpix 3500 (Sierra Mode) + 0111 Coolpix 3500 (ptp) + 0112 Coolpix 885 (ptp) + 0113 Coolpix 5000 (ptp) + 0114 Coolpix 3100 (storage) + 0115 Coolpix 3100 (ptp) + 0117 Coolpix 2100 (ptp) + 0119 Coolpix 5400 (ptp) + 011d Coolpix 3700 (ptp) + 0121 Coolpix 3200 (ptp) + 0122 Coolpix 2200 (ptp) + 0124 Coolpix 8400 (mass storage mode) + 0125 Coolpix 8400 (ptp) + 0126 Coolpix 8800 + 0129 Coolpix 4800 (ptp) + 012c Coolpix 4100 (storage) + 012d Coolpix 4100 (ptp) + 012e Coolpix 5600 (ptp) + 0130 Coolpix 4600 (ptp) + 0135 Coolpix 5900 (ptp) + 0136 Coolpix 7900 (storage) + 0137 Coolpix 7900 (ptp) + 013a Coolpix 100 (storage) + 013b Coolpix 100 (ptp) + 0141 Coolpix P2 (storage) + 0142 Coolpix P2 (ptp) + 0163 Coolpix P5100 (ptp) + 0169 Coolpix P50 (ptp) + 0202 Coolpix SQ (ptp) + 0203 Coolpix 4200 (mass storage mode) + 0204 Coolpix 4200 (ptp) + 0205 Coolpix 5200 (storage) + 0206 Coolpix 5200 (ptp) + 0301 Coolpix 2000 (storage) + 0302 Coolpix 2000 (ptp) + 0317 Coolpix L20 (ptp) + 0402 DSC D100 (ptp) + 0403 D2H (mass storage mode) + 0404 D2H SLR (ptp) + 0405 D70 (mass storage mode) + 0406 DSC D70 (ptp) + 0408 D2X SLR (ptp) + 0409 D50 digital camera + 040a D50 (ptp) + 040c D2Hs + 040e DSC D70s (ptp) + 040f D200 (mass storage mode) + 0410 D200 (ptp) + 0413 D40 (mass storage mode) + 0422 D700 (ptp) + 0425 D300S + 0f03 PD-10 Wireless Printer Adapter + 4000 Coolscan LS 40 ED + 4001 LS 50 ED/Coolscan V ED + 4002 Super Coolscan LS-5000 ED +04b1 Pan International +04b3 IBM Corp. + 3003 Rapid Access III Keyboard + 3004 Media Access Pro Keyboard + 300a Rapid Access IIIe Keyboard + 3016 UltraNav Keyboard Hub + 3018 UltraNav Keyboard + 301b SK-8815 Keyboard + 301c Enhanced Performance Keyboard + 3020 Enhanced Performance Keyboard + 3100 NetVista Mouse + 3103 ScrollPoint Pro Mouse + 3104 ScrollPoint Wireless Mouse + 3105 ScrollPoint Optical (HID) + 3107 ThinkPad 800dpi Optical Travel Mouse + 3108 800dpi Optical Mouse w/ Scroll Point + 3109 Optical ScrollPoint Pro Mouse + 310b Red Wheel Mouse + 310c Wheel Mouse + 4427 Portable CD ROM + 4482 Serial Converter + 4485 Serial Converter + 4525 Double sided CRT + 4550 NVRAM (128 KB) + 4554 Cash Drawer + 4580 Hub w/ NVRAM + 4581 4800-2xx Hub w/ Cash Drawer + 4604 Keyboard w/ Card Reader + 4671 4820 LCD w/ MSR/KB +04b4 Cypress Semiconductor Corp. + 0000 Dacal DC-101 CD Library + 0001 Mouse + 0002 CY7C63x0x Thermometer + 0033 Mouse + 0100 Cino FuzzyScan F760-B + 0101 Keyboard/Hub + 0102 Keyboard with APM + 0130 MyIRC Remote Receiver + 0306 Telephone Receiver + 0407 Optical Skype Mouse + 0bad MetaGeek Wi-Spy + 1002 CY7C63001 R100 FM Radio + 1006 Human Interface Device + 2050 hub + 2830 Opera1 DVB-S (cold state) + 4381 SCAPS USC-1 Scanner Controller + 4611 Storage Adapter FX2 (CY) + 4616 Flash Disk (TPP) + 5201 Combi Keyboard-Hub (Hub) + 5202 Combi Keyboard-Hub (Keyboard) + 5500 HID->COM RS232 Adapter + 6370 ViewMate Desktop Mouse CC2201 + 6560 CY7C65640 USB-2.0 "TetraHub" + 6830 CY7C68300A EZ-USB AT2 USB 2.0 to ATA/ATAPI + 6831 Storage Adapter ISD-300LP (CY) + 7417 Wireless PC Lock/Ultra Mouse + 8329 USB To keyboard/Mouse Converter + 8613 CY7C68013 EZ-USB FX2 USB 2.0 Development Kit + 8614 DTV-DVB UDST7020BDA DVB-S Box(DVBS for MCE2005) + 861f Anysee E30 USB 2.0 DVB-T Receiver + bca1 Barcode Reader + cc04 Centor USB RACIA-ALVAR USB PORT + cc06 Centor-P RACIA-ALVAR USB PORT + d5d5 CY7C63x0x Zoltrix Z-Boxer GamePad + de61 Barcode Reader + de64 Barcode Reader + f000 CY30700 Licorice evaluation board + f111 CY8CKIT-002 PSoC MiniProg3 Rev A Program and debug kit + f115 PSoC FirstTouch Programmer +04b5 ROHM LSI Systems USA, LLC +04b6 Hint Corp. +04b7 Compal Electronics, Inc. +04b8 Seiko Epson Corp. + 0001 Stylus Color 740 / Photo 750 + 0002 ISD Smart Cable for Mac + 0003 ISD Smart Cable + 0004 Printer + 0005 Printer + 0006 Printer + 0007 Printer + 0101 Perfection 636 + 0102 GT-2200 + 0103 Perfection 610 + 0104 Perfection 1200 + 0105 StylusScan 2000 + 0106 Stylus Scan 2500 + 0107 Expression 1600U + 0109 Expression 1640 XL + 010a Perfection 1640SU + 010b Perfection 1240 + 010c Perfection 640 + 010e Perfection 1680 + 010f Perfection 1250 + 0110 Perfection 1650 + 0112 Perfection 2450 + 0114 Perfection 660 + 0116 Perfection 3170 (GT-9400) + 0118 Perfection 4180 (GF-F600) + 0119 Perfection 4490 Photo + 011a 1000 ICS + 011b Perfection 2400 Photo + 011c Perfection 3200 + 011d Perfection 1260 Photo + 011e Perfection 1660 Photo + 011f Perfection 1670 + 0120 Perfection 1270 scanner + 0121 Perfection 2480 Photo + 0122 Perfection 3590 scanner + 0126 GT-15000 (ES-7000) + 0128 Perfection 4870 (GT-X700) + 0129 Expression 10000XL (ES-10000G) + 012a Perfection 4990 Photo scanner + 012b GT-2500 (ES-H300) + 012c Perfection V700 Photo (GT-X900) + 012d Perfection V10/V100 (GT-S600/F650) + 012f Perfection V350 (GT-F700) + 0130 Perfection V500 (GT-X770) + 0131 Perfection V300 + 0202 Receipt Printer M129C + 0401 CP 800 Digital Camera + 0402 PhotoPC 850z + 0403 PhotoPC 3000z + 0509 JVC PIX-MC10 + 0601 Stylus Photo 875DC Card Reader + 0602 Stylus Photo 895 Card Reader + 0801 Stylus CX5200/CX5400/CX6600 + 0802 Stylus CX3200 + 0803 Printer (Composite Device) + 0804 Storage Device + 0805 Stylus CX6400 + 0806 Stylus Photo RX600/610 + 0807 Stylus Photo RX500/510 + 0808 Stylus CX5200 + 0809 Storage Device + 080a Storage Device + 080c ME100 + 080d Stylus CX4500/4600 + 080e CX-3500/3600/3650 MFP + 080f Stylus Photo RX425 scanner + 0810 Stylus Photo RX700 (PM-A900) + 0811 Stylus Photo RX620 all-in-one + 0812 MFP Composite Device + 0813 Stylus CX6500/6600 + 0814 (PM-A700) + 0815 AcuLaser CX11 (LP-A500) + 0816 Printer (Composite Device) + 0817 (LP-M5500) + 0818 Stylus CX3700/CX3800/DX3800 + 0819 Stylus CX4700/CX4800/DX4800 (PX-A750) + 081a Stylus Photo RX520/RX530 (PM-A750) + 081b MFP Composite Device + 081c Stylus Photo RX640/RX650 (PM-A890) + 081d (PM-A950) + 081e MFP Composite Device + 081f Stylus CX7700/7800 + 0820 CX4200 MP scanner + 0821 MFP Composite Device + 0822 Storage Device + 0823 MFP Composite Device + 0824 Storage Device + 0825 MFP Composite Device + 0826 Storage Device + 0827 Stylus Photo RX560/580/590 (PM-A820) + 0828 (PM-A970) + 0829 (PM-T990) + 082a (PM-A920) + 082b Stylus DX5050 + 082c Storage Device + 082d Storage Device + 082e 0x082e DX-60x0 MFP scanner + 082f Stylus DX4050 + 0830 Stylus CX2800/CX2900/ME200 + 0831 MFP Composite Device + 0832 MFP Composite Device + 0833 (LP-M5600) + 0834 MFP Composite Device + 0835 AcuLaser CX21 + 0836 MFP Composite Device + 0837 MFP Composite Device + 0838 CX7300/CX7400/DX7400 + 0839 CX8300/CX8400/DX8400 + 083a CX9300F/CX9400Fax/DX9400F + 083b MFP Composite Device + 083c MFP Composite Device + 083d MFP Composite Device + 083e MFP Composite Device + 083f Stylus DX4450 + 0849 Stylus SX205 + 084d Stylus SX115 + 0856 Stylus SX515W +04b9 Rainbow Technologies, Inc. + 0300 SafeNet USB SuperPro/UltraPro + 1000 iKey 1000 Token + 1001 iKey 1200 Token + 1002 iKey Token + 1003 iKey Token + 1004 iKey Token + 1005 iKey Token + 1006 iKey Token + 1200 iKey 2000 Token + 1201 iKey Token + 1202 iKey 2032 Token + 1203 iKey Token + 1204 iKey Token + 1205 iKey Token + 1206 iKey 4000 Token + 1300 iKey 3000 Token + 1301 iKey 3000 + 1302 iKey Token + 1303 iKey Token + 1304 iKey Token + 1305 iKey Token + 1306 iKey Token +04ba Toucan Systems, Ltd +04bb I-O Data Device, Inc. + 0101 USB2-IDE/ATAPI Bridge Adapter + 0201 USB2-IDE/ATAPI Bridge Adapter + 0204 DVD Multi-plus unit iU-CD2 + 0206 DVD Multi-plus unit DVR-UEH8 + 0301 Storage Device + 0314 USB-SSMRW SD-card + 0319 USB2-IDE/ATAPI Bridge Adapter + 031a USB2-IDE/ATAPI Bridge Adapter + 031b USB2-IDE/ATAPI Bridge Adapter + 031e USB-SDRW SD-card + 0502 Nogatech Live! (BT) + 0528 GV-USB Video Capture + 0901 USB ETT + 0904 ET/TX Ethernet [pegasus] + 0913 ET/TX-S Ethernet [pegasus2] + 0919 USB WN-B11 + 0922 IOData AirPort WN-B11/USBS 802.11b + 0930 ETG-US2 + 0937 WN-WAG/USL Wireless LAN Adapter + 0938 WN-G54/USL Wireless LAN Adapter + 093b WN-GDN/USB + 093f WNGDNUS2 802.11n + 0944 WHG-AGDN/US Wireless LAN Adapter + 0945 WN-GDN/US3 Wireless LAN Adapter + 0947 WN-G150U Wireless LAN Adapter + 0948 WN-G300U Wireless LAN Adapter + 0a03 Serial USB-RSAQ1 + 0a07 USB2-iCN Adapter + 0a08 USB2-iCN Adapter + 0c01 FM-10 Pro Disk +04bd Toshiba Electronics Taiwan Corp. +04be Telia Research AB +04bf TDK Corp. + 0100 MediaReader CF + 0115 USB-PDC Adapter UPA9664 + 0116 USB-cdmaOne Adapter UCA1464 + 0117 USB-PHS Adapter UHA6400 + 0118 USB-PHS Adapter UPA6400 + 0135 MediaReader Dual + 0202 73S1121F Smart Card Reader- + 0309 Bluetooth USB dongle + 030a IBM Bluetooth Ultraport Module + 030b Bluetooth Device + 030c Ultraport Bluetooth Device + 0310 Integrated Bluetooth + 0311 Integrated Bluetooth Device + 0317 Bluetooth UltraPort Module from IBM + 0318 IBM Integrated Bluetooth + 0319 Bluetooth Adapter + 0320 Bluetooth Adapter + 0321 Bluetooth Device + 0a28 INDI AV-IN Device +04c1 U.S. Robotics (3Com) + 0020 56K Voice Pro + 0022 56K Voice Pro + 007e ISDN TA + 0082 OfficeConnect Analog Modem + 008f Pro ISDN TA + 0097 OfficeConnect Analog + 009d HomeConnect Webcam [vicam] + 00a9 ISDN Pro TA-U + 00b9 HomeConnect IDSL Modem + 3021 56k Voice FaxModem Pro +04c2 Methode Electronics Far East PTE, Ltd +04c3 Maxi Switch, Inc. + 1102 Mouse + 2102 Mouse +04c4 Lockheed Martin Energy Research +04c5 Fujitsu, Ltd + 1029 fi-4010c Scanner + 1033 fi-4110CU + 1041 fi-4120c Scanner + 1042 fi-4220c Scanner + 105b AH-F401U Air H device + 1096 fi-5110EOX + 1097 fi-5110C + 10ae fi-4120C2 + 10af fi-4220C2 + 10e0 fi-5120c Scanner + 10e1 fi-5220C + 10e7 fi-5900C + 10fe S500 +04c6 Toshiba America Electronic Components +04c7 Micro Macro Technologies +04c8 Konica Corp. + 0720 Digital Color Camera + 0721 e-miniD Camera + 0722 e-mini + 0723 KD-200Z Camera + 0726 KD-310Z Camera + 0728 Revio C2 Mass Storage Device + 0729 Revio C2 Digital Camera + 072c Revio KD20M + 072d Revio KD410Z +04ca Lite-On Technology Corp. + 1766 HID Monitor Controls + 9304 Hub +04cb Fuji Photo Film Co., Ltd + 0100 FinePix 30i/40i/50i, A101/201, 1300/2200, 1400/2400/2600/2800/4500/4700/4800/4900/6800/6900 Zoom + 0103 FinePix NX-500/NX-700 printer + 0104 FinePix A101, 2600/2800/4800/6800 Zoom (PC CAM) + 0108 FinePix F601 Zoom (DSC) + 0109 FinePix F601 Zoom (PC CAM) + 010a FinePix S602 (Pro) Zoom (DSC) + 010b FinePix S602 (Pro) Zoom (PC CAM) + 010d FinePix Digital Camera 020531 + 010e FinePix F402 Zoom (DSC) + 010f FinePix F402 Zoom (PC CAM) + 0110 FinePix M603 Zoom (DSC) + 0111 FinePix M603 Zoom (PC CAM) + 0112 FinePix A202, A200 Zoom (DSC) + 0113 FinePix A202, A200 Zoom (PC CAM) + 0114 FinePix F401 Zoom (DSC) + 0115 FinePix F401 Zoom (PC CAM) + 0116 FinePix A203 Zoom (DSC) + 0117 FinePix A203 Zoom (PC CAM) + 0118 FinePix A303 Zoom (DSC) + 0119 FinePix A303 Zoom (PC CAM) + 011a FinePix S304/3800 Zoom (DSC) + 011b FinePix S304/3800 Zoom (PC CAM) + 011c FinePix A204/2650 Zoom (DSC) + 011d FinePix A204/2650 Zoom (PC CAM) + 0120 FinePix F700 Zoom (DSC) + 0121 FinePix F700 Zoom (PC CAM) + 0122 FinePix F410 Zoom (DSC) + 0123 FinePix F410 Zoom (PC CAM) + 0124 FinePix A310 Zoom (DSC) + 0125 FinePix A310 Zoom (PC CAM) + 0126 FinePix A210 Zoom (DSC) + 0127 FinePix A210 Zoom (PC CAM) + 0128 FinePix A205(S) Zoom (DSC) + 0129 FinePix A205(S) Zoom (PC CAM) + 012a FinePix F610 Zoom (DSC) + 012b FinePix Digital Camera 030513 + 012c FinePix S7000 Zoom (DSC) + 012d FinePix S7000 Zoom (PC CAM) + 012f FinePix Digital Camera 030731 + 0130 FinePix S5000 Zoom (DSC) + 0131 FinePix S5000 Zoom (PC CAM) + 013b FinePix Digital Camera 030722 + 013c FinePix S3000 Zoom (DSC) + 013d FinePix S3000 Zoom (PC CAM) + 013e FinePix F420 Zoom (DSC) + 013f FinePix F420 Zoom (PC CAM) + 0142 FinePix S7000 Zoom (PTP) + 0148 FinePix A330 Zoom (DSC) + 0149 FinePix A330 Zoom (UVC) + 014a FinePix A330 Zoom (PTP) + 014b FinePix A340 Zoom (DSC) + 014c FinePix A340 Zoom (UVC) + 0159 FinePix F710 Zoom (DSC) + 0165 FinePix S3500 Zoom (DSC) + 0168 FinePix E500 Zoom (DSC) + 0169 FinePix E500 Zoom (UVC) + 016b FinePix E510 Zoom (DSC) + 016c FinePix E510 Zoom (PC CAM) + 016e FinePix S5500 Zoom (DSC) + 016f FinePix S5500 Zoom (UVC) + 0171 FinePix E550 Zoom (DSC) + 0172 FinePix E550 Zoom (UVC) + 0177 FinePix F10 (DSC) + 0179 Finepix F10 (PTP) + 0186 FinePix S5200/S5600 Zoom (DSC) + 0188 FinePix S5200/S5600 Zoom (PTP) + 018e FinePix S9500 Zoom (DSC) + 018f FinePix S9500 Zoom (PTP) + 0192 FinePix E900 Zoom (DSC) + 0193 FinePix E900 Zoom (PTP) + 019b FinePix F30 (PTP) + 01af FinePix A700 (PTP) + 01bf FinePix F6000fd/S6500fd Zoom (PTP) + 01c0 FinePix F20 (PTP) + 01c1 FinePix F31fd (PTP) + 01c4 FinePix S5700 Zoom (PTP) + 01c5 FinePix F40fd (PTP) + 01c6 FinePix A820 Zoom (PTP) + 01d2 FinePix A800 Zoom (PTP) + 01d4 FinePix F50fd (PTP) + 01d5 FinePix F47 (PTP) + 01f7 FinePix J250 (PTP) + 01fd A160 +04cc ST-Ericsson + 1122 Hub + 1520 USB 2.0 Hub (Avocent KVM) + 1521 USB 2.0 Hub + 1a62 GW Instek GSP-830 Spectrum Analyzer (HID) + 2533 NFC device (PN533) + 8116 Camera +04cd Tatung Co. Of America +04ce ScanLogic Corp. + 0002 SL11R-IDE IDE Bridge + 0100 USB2PRN Printer Class + 0300 Phantom 336CX - C3 scanner + 04ce SL11DEMO, VID: 0x4ce, PID: 0x4ce + 07d1 SL11R, VID: 0x4ce, PID: 0x07D1 +04cf Myson Century, Inc. + 0800 MTP800 Mass Storage Device + 8810 CS8810 Mass Storage Device + 8811 CS8811 Mass Storage Device + 8813 CS8813 Mass Storage Device + 8818 USB2.0 to ATAPI Bridge Controller + 8819 USB 2.0 SD/MMC Reader + 9920 CS8819A2-114 Mass Storage Device +04d0 Digi International +04d1 ITT Canon +04d2 Altec Lansing Technologies + 0070 ADA70 Speakers + 0305 Non-Compliant Audio Device + 0311 ADA-310 Speakers + 2060 Claritel-i750 - vp + ff05 ADA-305 Speakers + ff47 Lansing HID Audio Controls + ff49 Lansing HID Audio Controls +04d3 VidUS, Inc. +04d4 LSI Logic, Inc. +04d5 Forte Technologies, Inc. +04d6 Mentor Graphics +04d7 Oki Semiconductor + 1be4 Bluetooth Device +04d8 Microchip Technology, Inc. + 0002 PicoLCD 20x2 + 0003 PICkit 2 Microcontroller Programmer + 000a CDC RS-232 Emulation Demo + 000b PIC18F2550 (32K Flashable 10 Channel, 10 Bit A/D USB Microcontroller) + 0032 PICkit1 + 0033 PICkit2 + 0036 PICkit Serial Analyzer + 00e0 PIC32 Starter Board + 0a04 AGP LIN Serial Analyzer + 8000 In-Circuit Debugger + 8001 ICD2 in-circuit debugger + 900a PICkit3 + c001 PicoLCD 20x4 + fbba DiscFerret Magnetic Disc Analyser (bootloader mode) + fbbb DiscFerret Magnetic Disc Analyser (active mode) +04d9 Holtek Semiconductor, Inc. + 0022 Portable Keyboard + 048e Optical Mouse + 0499 Optical Mouse + 1203 Keyboard + 1400 PS/2 keyboard + mouse controller + 1503 Shortboard Lefty +04da Panasonic (Matsushita) + 0901 LS-120 Camera + 0912 SDR-S10 + 0b01 CD-R/RW Drive + 0b03 SuperDisk 240MB + 0d01 CD-R Drive KXL-840AN + 0d09 CD-R Drive KXL-RW32AN + 0d0a CD-R Drive KXL-CB20AN + 0d0d CDRCB03 + 0d0e DVD-ROM & CD-R/RW + 0f40 Printer + 1500 MFSUSB Driver + 1800 DY-WL10 802.11abgn Adapter [Broadcom BCM4323] + 1b00 MultiMediaCard + 2121 EB-VS6 + 2316 DVC Mass Storage Device + 2317 DVC USB-SERIAL Driver for WinXP + 2318 NV-GS11/230/250 (webcam mode) + 2319 NV-GS15 (webcam mode) + 231a NV-GS11/230/250 (DV mode) + 231d DVC Web Camera Device + 231e DVC DV Stream Device + 2372 Lumix Camera + 2374 DMC-FZ18/FZ20 + 2451 HDC-SD9 + 2497 HDC-TM700 + 250c Gobi Wireless Modem (QDL mode) + 250d Gobi Wireless Modem + 3904 N5HBZ0000055 802.11abgn Wireless Adapter [Atheros AR7010] + 3c04 JT-P100MR-20 [ePassport Reader] +04db Hypertec Pty, Ltd +04dc Huan Hsin Holdings, Ltd +04dd Sharp Corp. + 13a6 MFC2000 + 6006 AL-1216 + 6007 AL-1045 + 6008 AL-1255 + 6009 AL-1530CS + 600a AL-1540CS + 600b AL-1456 + 600c AL-1555 + 600d AL-1225 + 600e AL-1551CS + 600f AR-122E + 6010 AR-152E + 6011 AR-157E + 6012 SN-1045 + 6013 SN-1255 + 6014 SN-1456 + 6015 SN-1555 + 6016 AR-153E + 6017 AR-122E N + 6018 AR-153E N + 6019 AR-152E N + 601a AR-157E N + 601b AL-1217 + 601c AL-1226 + 601d AR-123E + 6021 IS01 + 7002 DVC Ver.1.0 + 7004 VE-CG40U Digital Still Camera + 7005 VE-CG30 Digital Still Camera + 7007 VL-Z7S Digital Camcorder + 8004 Zaurus SL-5000D/SL-5500 PDA + 8005 Zaurus A-300 + 8006 Zaurus SL-B500/SL-5600 PDA + 8007 Zaurus C-700 PDA + 9014 IM-DR80 Portable NetMD Player + 9031 Zaurus C-750/C-760/C-860/SL-C3000 PDA + 9032 Zaurus SL-6000 + 903a GSM GPRS + 9050 Zaurus C-860 PDA + 9056 Viewcam Z + 9073 AM-900 + 9074 GSM GPRS + 90a9 Sharp Composite + 90d0 USB-to-Serial Comm. Port + 90f2 Sharp 3G GSM USB Control + 9120 WS004SH + 9122 WS007SH + 9123 W-ZERO3 ES Smartphone + 91a3 922SH Internet Machine +04de MindShare, Inc. +04df Interlink Electronics +04e1 Iiyama North America, Inc. + 0201 Monitor Hub +04e2 Exar Corp. +04e3 Zilog, Inc. +04e4 ACC Microelectronics +04e5 Promise Technology +04e6 SCM Microsystems, Inc. + 0001 E-USB ATA Bridge + 0002 eUSCSI SCSI Bridge + 0003 eUSB SmartMedia Card Reader + 0005 eUSB SmartMedia/CompactFlash Card Reader + 0006 eUSB SmartMedia Card Reader + 0007 Hifd + 0009 eUSB ATA/ATAPI Adapter + 000a eUSB CompactFlash Adapter + 000b eUSCSI Bridge + 000c eUSCSI Bridge + 000d Dazzle MS + 0012 Dazzle SD/MMC + 0101 eUSB ATA Bridge (Sony Spressa USB CDRW) + 0311 Dazzle DM-CF + 0312 Dazzle DM-SD/MMC + 0313 Dazzle SM + 0314 Dazzle MS + 0322 e-Film Reader-5 + 0325 eUSB ORCA Quad Reader + 0327 Digital Media Reader + 03fe DMHS2 DFU Adapter + 0406 eUSB SmartDM Reader + 04e6 eUSB DFU Adapter + 04e7 STCII DFU Adapter + 04e8 eUSBDM DFU Adapter + 04e9 DM-E DFU Adapter + 0500 Veridicom 5thSense Fingerprint Sensor and eUSB SmartCard + 0701 DCS200 Loader Device + 0702 DVD Creation Station 200 + 0703 DVC100 Loader Device + 0704 Digital Video Creator 100 + 1001 SCR300 Smart Card Reader + 1010 USBAT-2 CompactFlash Card Reader + 1014 e-Film Reader-3 + 1020 USBAT ATA/ATAPI Adapter + 2007 RSA SecurID ComboReader + 2009 Citibank Smart Card Reader + 200a Reflex v.2 Smart Card Reader + 200d STR391 Reader + 5111 SCR331-DI SmartCard Reader + 5113 SCR333 SmartCard Reader + 5114 SCR331-DI SmartCard Reader + 5115 SCR335 SmartCard Reader + 5116 SCR331-LC1 / SCR3310 SmartCard Reader + 5117 SCR3320 - Smart Card Reader + 5118 Expresscard SIM Card Reader + 5119 SCR3340 - ExpressCard54 Smart Card Reader + 511b SmartCard Reader + 511d SCR3311 Smart Card Reader + 5120 SCR331-DI SmartCard Reader + 5121 SDI010 Smart Card Reader + 5151 SCR338 Keyboard Smart Card Reader + 5292 SCL011 RFID reader + 5410 SCR35xx Smart Card Reader + e000 SCRx31 Reader + e001 SCR331 SmartCard Reader + e003 SPR532 PinPad SmartCard Reader +04e7 Elo TouchSystems + 0001 TouchScreen + 0002 Touchmonitor Interface 2600 Rev 2 + 0004 4000U CarrollTouch® Touchmonitor Interface + 0007 2500U IntelliTouch® Touchmonitor Interface + 0008 3000U AccuTouch® Touchmonitor Interface + 0009 4000U CarrollTouch® Touchmonitor Interface + 0020 Touchscreen Interface (2700) + 0021 Touchmonitor Interface + 0030 4500U CarrollTouch® Touchmonitor Interface + 0032 Touchmonitor Interface + 0033 Touchmonitor Interface + 0041 5010 Surface Capacitive Touchmonitor Interface + 0042 Touchmonitor Interface + 0050 2216 AccuTouch® Touchmonitor Interface + 0071 Touchmonitor Interface + 0072 Touchmonitor Interface + 0081 Touchmonitor Interface + 0082 Touchmonitor Interface + 00ff Touchmonitor Interface +04e8 Samsung Electronics Co., Ltd + 0100 Kingston Flash Drive (128MB) + 0110 Connect3D Flash Drive + 0111 Connect3D Flash Drive + 1003 MP3 Player and Recorder + 1006 SDC-200Z + 2018 WIS09ABGN LinkStick Wireless LAN Adapter + 2035 Digital Photo Frame Mass Storage + 2036 Digital Photo Frame Mini Monitor + 3004 ML-4600 + 3005 Docuprint P1210 + 3008 ML-6060 laser printer + 300c ML-1210 Printer + 300e Laser Printer + 3104 ML-3550N + 3210 ML-5200A Laser Printer + 3226 Laser Printer + 3228 Laser Printer + 322a Laser Printer + 322c Laser Printer + 3230 ML-1440 + 3232 Laser Printer + 3236 ML-1450 + 3238 ML-1430 + 323a ML-1710 Printer + 323b Phaser 3130 + 323c Laser Printer + 323d Phaser 3120 + 323e Laser Printer + 3240 Laser Printer + 3242 ML-1510 Laser Printer + 3248 Color Laser Printer + 324a Laser Printer + 324c ML-1740 Printer + 324d Phaser 3121 + 3256 ML-1520 Laser Printer + 325b Xerox Phaser 3117 Laser Printer + 325f Phaser 3425 Laser Printer + 3260 CLP-510 Color Laser Printer + 3268 ML-1610 Mono Laser Printer + 326c ML-2010P Mono Laser Printer + 3276 ML-3050/ML-3051 Laser Printer + 328e CLP-310 Color Laser Printer + 3296 ML-2580N Mono Laser Printer + 3297 ML-191x/ML-252x Laser Printer + 3409 SCX-4216F Scanner + 340c SCX-5x15 series + 340d SCX-6x20 series + 340e MFP 560 series + 340f Printing Support + 3412 SCX-4x20 series + 3413 SCX-4100 Scanner + 3415 Composite Device + 3419 Composite Device + 341a Printing Support + 341b SCX-4200 series + 341c Composite Device + 341d Composite Device + 341f Composite Device + 3420 Composite Device + 3426 SCX-4500 Laser Printer + 3605 InkJet Color Printer + 3606 InkJet Color Printer + 3609 InkJet Color Printer + 3902 InkJet Color Printer + 3903 Xerox WorkCentre XK50cx + 390f InkJet Color Printer + 3911 SCX-1020 series + 4005 GT-S8000 Jet (msc) + 4f1f GT-S8000 Jet (mtp) + 5000 YP-MF series + 5001 YP-100 + 5002 YP-30 + 5003 YP-700 + 5004 YP-30 + 5005 YP-300 + 5006 YP-750 + 500d MP3 Player + 5010 Yepp YP-35 + 5011 YP-780 + 5013 YP-60 + 5015 yepp upgrade + 501b MP3 Player + 5021 Yepp YP-ST5 + 5026 YP-MT6V + 5027 YP-T7 + 502b YP-F1 + 5032 YP-J70 + 503b YP-U1 MP3 Player + 503d YP-T7F + 5041 YP-Z5 + 5050 YP-U2 MP3 Player + 5051 YP-F2R + 5055 YP-T9 + 507d YP-U3 (mtp) + 507f YP-T9J + 5080 Yepp YP-K3 (msc) + 5081 Yepp YP-K3 (mtp) + 5082 YP-P2 (msc) + 5083 YP-P2 (mtp) + 508a YP-T10 + 508b YP-S5 MP3 Player + 508c YP-S5 + 5090 YP-S3 (msc) + 5091 YP-S3 (mtp) + 5092 YP-U4 (msc) + 5093 YP-U4 (mtp) + 5095 YP-S2 + 510f YP-R1 + 5119 Yepp YP-P3 + 511c YP-Q2 + 5121 YP-U5 + 5123 Yepp YP-M1 + 5a00 YP-NEU + 5a01 YP-NDU + 5a03 Yepp MP3 Player + 5a04 YP-800 + 5a08 YP-90 + 5a0f Meizu M6 MiniPlayer + 5b01 Memory Stick Reader/Writer + 5b02 Memory Stick Reader/Writer + 5b03 Memory Stick Reader/Writer + 5b04 Memory Stick Reader/Writer + 5b05 Memory Stick Reader/Writer + 5b11 SEW-2001u Card + 5f00 NEXiO Sync + 5f01 NEXiO Sync + 5f02 NEXiO Sync + 5f03 NEXiO Sync + 5f04 NEXiO Sync + 6032 G2 Portable hard drive + 6601 Mobile Phone + 6602 Galaxy + 6603 Galaxy + 6611 MITs Sync + 6613 MITs Sync + 6615 MITs Sync + 6617 MITs Sync + 6619 MITs Sync + 661b MITs Sync + 661e Handheld + 6620 Handheld + 6622 Handheld + 6624 Handheld + 662e MITs Sync + 6630 MITs Sync + 6632 MITs Sync + 663e D900e Phone + 663f SGH-E720/SGH-E840 + 6640 Usb Modem Enumerator + 6702 X830 + 6708 U600 Phone + 6709 U600 + 6734 Juke + 6759 D900e Media Player + 675a D900e Mass Storage + 675b D900e Camera + 6772 Standalone LTE device (Trial) + 6795 S5230 + 6802 Standalone HSPA device + 6806 Composite LTE device (Trial) + 6807 Composite HSPA device + 681c Galaxy Portal/Spica/S + 681d Galaxy Portal/Spica Android Phone + 684e Wave (GT-S8500) + 6875 GT-B3710 Standalone LTE device (Commercial) + 6876 GT-B3710 LTE Modem + 6877 Galaxy S + 6888 GT-B3730 Composite LTE device (Commercial) + 6889 GT-B3730 Composite LTE device (Commercial) + 689a LTE Storage Driver [CMC2xx] + 7011 SEW-2003U Card + 7021 Bluetooth Device + 7061 eHome Infrared Receiver + 7080 Anycall SCH-W580 + 7081 Human Interface Device + 8001 Handheld + e020 SERI E02 SCOM 6200 UMTS Phone + e021 SERI E02 SCOM 6200 Virtual UARTs + e022 SERI E02 SCOM 6200 Flash Load Disk + ff30 SG_iMON +04e9 PC-Tel, Inc. +04ea Brooktree Corp. +04eb Northstar Systems, Inc. + e004 eHome Infrared Transceiver +04ec Tokyo Electron Device, Ltd +04ed Annabooks +04ef Pacific Electronic International, Inc. +04f0 Daewoo Electronics Co., Ltd +04f1 Victor Company of Japan, Ltd + 0001 GC-QX3 Digital Still Camera + 0004 GR-DVL815U Digital Video Camera + 0006 DV Camera Storage + 0008 GZ-MG30AA/MC500E Digital Video Camera + 0009 GR-DX25EK Digital Video Camera + 000a GR-D72 Digital Video Camera + 1001 GC-A50 Camera Device + 3008 MP-PRX1 Ethernet + 3009 MP-XP7250 WLAN Adapter +04f2 Chicony Electronics Co., Ltd + 0001 KU-8933 Keyboard + 0002 NT68P81 Keyboard + 0110 KU-2971 Keyboard + 0111 KU-9908 Keyboard + 0112 KU-8933 Keyboard with PS/2 Mouse port + 0116 KU-2971/KU-0325 Keyboard + 0220 Wireless HID Receiver + 0402 Genius LuxeMate i200 Keyboard + 0403 KU-0420 keyboard + 0418 KU-0418 Tactical Pad + 0760 Acer KU-0760 Keyboard + 0860 2.4G Multimedia Wireless Kit + a001 E-Video DC-100 Camera + a120 ORITE CCD Webcam(PC370R) + a121 ORITE CCD Webcam(PC370R) + a122 ORITE CCD Webcam(PC370R) + a123 ORITE CCD Webcam(PC370R) + a124 ORITE CCD Webcam(PC370R) + a128 PC Camera (SN9C202 + OV7663 + EEPROM) + a133 Gateway Webcam + a136 LabTec Webcam 5500 + a204 DSC WIA Device (1300) + a208 DSC WIA Device (2320) + a209 Labtec DC-2320 + a20a DSC WIA Device (3310) + a20c DSC WIA Device (3320) + a210 Audio Device + b008 USB 2.0 Camera + b009 Integrated Camera + b010 Integrated Camera + b012 1.3 MPixel UVC Webcam + b013 USB 2.0 Camera + b015 VGA 24fps UVC Webcam + b016 VGA 30fps UVC Webcam + b018 2M UVC Webcam + b021 ViewSonic 1.3M, USB2.0 Webcam + b022 Gateway USB 2.0 Webcam + b023 Gateway USB 2.0 Webcam + b024 USB 2.0 Webcam + b025 Camera + b027 Gateway USB 2.0 Webcam + b028 VGA UVC Webcam + b029 1.3M UVC Webcam + b036 Asus Integrated 0.3M UVC Webcam + b044 Acer CrystalEye Webcam + b057 integrated USB webcam + b071 2.0M UVC Webcam / CNF7129 + b091 Webcam + b104 CNF7069 Webcam + b107 CNF7070 Webcam + b14c CNF8050 Webcam + b175 4-Port Hub + b1aa Webcam-101 + b1b4 Lenovo Integrated Camera + b1cf Lenovo Integrated Camera +04f3 Elan Microelectronics Corp. + 0210 AM-400 Hama Optical Mouse + 0212 Laser Mouse + 0214 Lynx M9 Optical Mouse + 0230 3D Optical Mouse + 02f4 2.4G Cordless Mouse +04f4 Harting Elektronik, Inc. +04f5 Fujitsu-ICL Systems, Inc. +04f6 Norand Corp. +04f7 Newnex Technology Corp. +04f8 FuturePlus Systems +04f9 Brother Industries, Ltd + 0002 HL-1050 Laser Printer + 0005 Printer + 0006 HL-1240 Laser Printer + 0007 HL-1250 Laser Printer + 0008 HL-1270 Laser Printer + 0009 Printer + 000a P2500 series + 000b Printer + 000c Printer + 000d HL-1440 Laser Printer + 000e HL-1450 series + 000f HL-1470N series + 0010 Printer + 0011 Printer + 0012 Printer + 0013 Printer + 0014 Printer + 0015 Printer + 0016 Printer + 0017 Printer + 0018 Printer + 001a HL-1430 Laser Printer + 001c Printer + 001e Printer + 0020 HL-5130 series + 0021 HL-5140 series + 0022 HL-5150D series + 0023 HL-5170DN series + 0024 Printer + 0025 Printer + 0027 HL-2030 Laser Printer + 0028 Printer + 0029 Printer + 002a HL-52x0 series + 002b HL-5250DN Printer + 002c Printer + 002d Printer + 0100 MFC8600/9650 series + 0101 MFC9600/9870 series + 0102 MFC9750/1200 series + 0104 MFC-8300J + 0105 MFC-9600J + 0106 MFC-7300C + 0107 MFC-7400C + 0108 MFC-9200C + 0109 MFC-830 + 010a MFC-840 + 010b MFC-860 + 010c MFC-7400J + 010d MFC-9200J + 010e MFC3100C Scanner + 010f MFC 5100C + 0110 MFC4800 Scanner + 0111 MFC 6800 + 0112 DCP1000 Port(FaxModem) + 0113 MFC-8500 + 0114 MFC9700 Port(FaxModem) + 0115 MFC9800 Scanner + 0116 DCP1400 Scanner + 0119 MFC-9660 + 011b MFC-9880 + 011c MFC-9760 + 011d MFC-9070 + 011e MFC-9180 + 011f MFC-9160 + 0120 MFC580 Port(FaxModem) + 0121 MFC-590 + 0122 MFC-5100J + 0129 Imagistics 2500 (MFC-8640D clone) + 012f FAX-4750e + 0132 MFC-5200C RemovableDisk + 0135 MFC-100 Scanner + 0136 MFC-150CL Scanner + 013c MFC-890 Port + 013d MFC-5200J Printer + 013e MFC-4420C RemovableDisk + 013f MFC-4820C RemovableDisk + 0140 DCP-8020 + 0141 DCP-8025D + 0142 MFC-8420 + 0143 MFC-8820D + 0144 DCP-4020C RemovableDisk + 0146 MFC-3220C + 0147 FAX-1820C Printer + 0148 MFC-3320CN Printer + 0149 FAX-1920CN Printer + 014a MFC-3420C + 014b MFC-3820CN + 014d FAX-1815C Printer + 014e MFC-8820J + 0150 MFC-8220 Port(FaxModem) + 0151 MFC-8210J + 0157 MFC-3420J Printer + 0158 MFC-3820JN Port(FaxModem) + 015d MFC Composite Device + 015e DCP-8045D + 015f MFC-8440 + 0160 MFC-8840D + 0161 MFC-210C + 0162 MFC-420CN Remote Setup Port + 0163 MFC-410CN RemovableDisk + 0165 MFC-620CN + 0166 MFC-610CLN RemovableDisk + 0168 MFC-620CLN + 0169 DCP-110C RemovableDisk + 016b DCP-310CN RemovableDisk + 016c FAX-2440C Printer + 016d MFC-5440CN + 016e MFC-5840CN Remote Setup Port + 0170 FAX-1840C Printer + 0171 FAX-1835C Printer + 0172 FAX-1940CN Printer + 0173 MFC-3240C Remote Setup Port + 0174 MFC-3340CN RemovableDisk + 017b Imagistics sx2100 + 0180 MFC-7420 + 0181 MFC-7820N Port(FaxModem) + 0182 Composite Device + 0183 DCP-7020 + 0184 DCP-7025 Printer + 0185 MFC-7220 Printer + 0186 Composite Device + 0187 FAX-2820 Printer + 0188 FAX-2920 Printer + 018a MFC-9420CN + 018c DCP-115C + 018d DCP-116C + 018e DCP-117C + 018f DCP-118C + 0190 DCP-120C + 0191 DCP-315CN + 0192 DCP-340CW + 0193 MFC-215C + 0194 MFC-425CN + 0195 MFC-820CW Remote Setup Port + 0196 MFC-820CN Remote Setup Port + 0197 MFC-640CW + 019a MFC-840CLN Remote Setup Port + 01a2 MFC-8640D + 01a3 Composite Device + 01a4 DCP-8065DN Printer + 01a5 MFC-8460N Port(FaxModem) + 01a6 MFC-8860DN Port(FaxModem) + 01a7 MFC-8870DW Printer + 01a8 DCP-130C + 01a9 DCP-330C + 01aa DCP-540CN + 01ab MFC-240C + 01ae DCP-750CW RemovableDisk + 01af MFC-440CN + 01b0 MFC-660CN + 01b1 MFC-665CW Remote Setup Port + 01b2 MFC-845CW Remote Setup Port + 01b4 MFC-460CN Remote Setup Port + 01b5 MFC-630CD + 01b6 MFC-850CDN + 01b7 MFC-5460CN Remote Setup Port + 01b8 MFC-5860CN + 01ba MFC-3360C + 01bd MFC-8660DN + 01be DCP-750CN RemovableDisk + 01bf MFC-860CDN Remote Setup Port + 01c0 DCP-128C + 01c1 DCP-129C + 01c2 DCP-131C + 01c3 DCP-329C + 01c4 DCP-331C + 01c5 MFC-239C + 01ca MFC-9440CN Remote Setup Port + 01ce DCP-135C + 01cf DCP-150C + 01d0 DCP-350C + 01d1 DCP-560CN + 01d4 MFC-230C + 01d5 MFC-235C + 01d6 MFC-260C + 01df DCP-155C + 01e0 MFC-265C + 01e1 DCP-153C + 01e2 DCP-157C + 01e3 DCP-353C + 01e4 DCP-357C + 01e7 MFC-7340 + 01e9 DCP-7040 + 01ea DCP-7030 + 01eb MFC-7320 + 01f4 MFC-5890CN + 1000 Printer + 1002 Printer + 2002 PTUSB Printing + 2004 PT-2300/2310 p-Touch Laber Printer + 2015 QL-500 P-touch label printer + 2016 QL-550 P-touch label printer + 201a PT-18R P-touch label printer + 2027 QL-560 P-Touch Label Printer + 2100 Card Reader Writer +04fa Dallas Semiconductor + 2490 DS1490F 2-in-1 Fob, 1-Wire adapter + 4201 DS4201 Audio DAC +04fb Biostar Microtech International Corp. +04fc Sunplus Technology Co., Ltd + 0003 CM1092 Optical Scroller Mouse + 0005 USB OpticalWheel Mouse + 0013 ViewMate Desktop Mouse CC2201 + 0015 ViewMate Desktop Mouse CC2201 + 00d3 00052486 / Laser Mouse M1052 [hama] + 0171 SPCA1527A/SPCA1528 SD card camera (Mass Storage mode) + 0232 Fingerprint + 0561 Flexcam 100 + 05d8 Wireless keyboard/mouse + 0c15 SPIF215A SATA bridge + 0c25 SATALink SPIF225A + 1528 SPCA1527A/SPCA1528 SD card camera (webcam mode) + 1533 Mass Storage + 2080 ASUS Webcam + 500c CA500C Digital Camera + 504a Aiptek Mini PenCam 1.3 + 504b Aiptek Mega PockerCam 1.3/Maxell MaxPocket LE 1.3 + 5330 Digitrex 2110 + 5331 Vivitar Vivicam 10 + 5360 Sunplus Generic Digital Camera + 5720 Card Reader Driver + 7333 Finet Technology Palmpix DC-85 + 757a Aiptek, MP315 MP3 Player + ffff PureDigital Ritz Disposable +04fd Soliton Systems, K.K. + 0003 Smart Card Reader II +04fe PFU, Ltd +04ff E-CMOS Corp. +0500 Siam United Hi-Tech + 0001 DART Keyboard Mouse + 0002 DART-2 Keyboard +0501 Fujikura DDK, Ltd +0502 Acer, Inc. + 0001 Handheld + 0736 Handheld + 15b1 PDA n311 + 1631 c10 Series + 1632 c20 Series + 16e1 n10 Handheld Sync + 16e2 n20 Pocket PC Sync + 16e3 n30 Handheld Sync + 3202 Liquid + 3203 Liquid (Debug mode) + d001 Divio NW801/DVC-V6+ Digital Camera +0503 Hitachi America, Ltd +0504 Hayes Microcomputer Products +0506 3Com Corp. + 009d HomeConnect Camera + 00a0 3CREB96 Bluetooth Adapter + 00a1 Bluetooth Device + 00a2 Bluetooth Device + 00df 3Com Home Connect lite + 0100 HomeConnect ADSL Modem Driver + 03e8 3C19250 Ethernet [klsi] + 0a01 3CRSHEW696 Wireless Adapter + 0a11 3CRWE254G72 802.11g Adapter + 11f8 HomeConnect 3C460 + 2922 HomeConnect Cable Modem External with + 3021 U.S.Robotics 56000 Voice FaxModem Pro + 4601 3C460B 10/100 Ethernet Adapter + f002 3CP4218 ADSL Modem (pre-init) + f003 3CP4218 ADSL Modem + f100 3CP4218 ADSL Modem (pre-init) +0507 Hosiden Corp. + 0011 Konami ParaParaParadise Controller +0508 Clarion Co., Ltd +0509 Aztech Systems, Ltd + 0801 ADSL Modem + 0802 ADSL Modem (RFC1483) + 0806 DSL Modem + 080f Binatone ADSL500 Modem Network Interface + 0812 Pirelli ADSL Modem Network Interface +050a Cinch Connectors +050b Cable System International +050c InnoMedia, Inc. +050d Belkin Components + 0004 Direct Connect + 0012 F8T012 Bluetooth Adapter + 0013 F8T013 Bluetooth Adapter + 0017 B8T017 Bluetooth+EDR 2.1 + 0050 F5D6050 802.11b Wireless Adapter v2000 [Atmel at76c503a] + 0081 F8T001v2 Bluetooth + 0083 Bluetooth Device + 0084 F8T003v2 Bluetooth + 0102 Flip KVM + 0103 F5U103 Serial Adapter [etek] + 0106 VideoBus II Adapter, Video + 0108 F1DE108B KVM + 0109 F5U109/F5U409 PDA Adapter + 0115 SCSI Adapter + 0119 F5U120-PC Dual PS/2 Ports / F5U118-UNV ADB Adapter + 0121 F5D5050 100Mbps Ethernet + 0122 Ethernet Adapter + 0131 Bluetooth Device with trace filter + 016a Bluetooth Mini Dongle + 0201 Peripheral Switch + 0208 USBView II Video Adapter [nt1004] + 0210 F5U228 Hi-Speed USB 2.0 DVD Creator + 0211 F5U211 USB 2.0 15-in-1 Media Reader & Writer + 0224 F5U224 USB 2.0 4-Port Hub + 0234 F5U234 USB 2.0 4-Port Hub + 0237 F5U237 USB 2.0 7-Port Hub + 0240 F5U240 USB 2.0 CF Card Reader + 0249 USB 2 Flash Media Device + 0257 F5U257 Serial + 0304 FSU304 USB 2.0 - 4 Ports Hub + 0409 F5U409 Serial + 0551 F6C550-AVR UPS + 0802 Nostromo n40 Gamepad + 0803 Nostromo 1745 GamePad + 0805 Nostromo N50 GamePad + 0815 Nostromo n52 HID SpeedPad Mouse Wheel + 0826 ErgoFit Wireless Optical Mouse (HID) + 0980 HID UPS Battery + 1102 Realtek RTL8188CE-VAU 1T1R 802.11n WLAN Adapter + 1202 F5U120-PC Parallel Printer Port + 1203 F5U120-PC Serial Port + 258a F5U258 Host to Host cable + 3101 F1DF102U/F1DG102U Flip Hub + 3201 F1DF102U/F1DG102U Flip KVM + 4050 ZD1211B + 5055 F5D5055 Gigabit Network Adapter [AX88xxx] + 6051 F5D6051 802.11b Wireless Network Adapter [ZyDAS ZD1201] + 7050 F5D7050 Wireless G Adapter v1000/v2000 [Intersil ISL3887] + 7051 F5D7051 802.11g Adapter v1000 [Broadcom 4320 USB] + 705a F5D7050 Wireless G Adapter v3000 [Ralink RT2573] + 705b Wireless G Adapter + 705c F5D7050 Wireless G Adapter v4000 [Zydas ZD1211B] + 705e F5D7050 Wireless G Adapter v5000 [Realtek RTL8187B] + 8053 F5D8053 N Wireless USB Adapter v1000/v4000 [Ralink RT2870] + 805c F5D8053 N Wireless Adapter v3000 [Ralink RT2870] + 805e F5D8053 N Wireless USB Adapter v5000 [Realtek RTL8192U] + 815c F5D8053 N Wireless USB Adapter v3000 [Ralink RT2870] + 815f F5D8053 N Wireless USB Adapter v6000 [Realtek RTL8192SU] + 825a F5D8055 N+ Wireless Adapter v1000 [Ralink RT2870] + 825b F5D8055 N+ Wireless Adapter v2000 [Ralink RT3070] + 845a F7D2101deSH [rtl8192su] + 905b F5D9050 Wireless G+ MIMO Network Adapter v3000 [Ralink RT2573] + 905c F5D9050 Wireless G+ MIMO Network Adapter v4000 [Ralink RT2573] + 935a F6D4050 N150 Enhanced Wireless Network Adapter v1000 [Ralink RT2870] + 935b F6D4050 N150 Enhanced Wireless Network Adapter v2000 [Ralink RT3070] + 945a F7D1101 Basic Wireless USB Adapter v1000 [Realtek RTL8188SU] +050e Neon Technology, Inc. +050f KC Technology, Inc. + 0001 Hub + 0003 KC82C160S Hub + 0180 KC-180 IrDA Dongle + 0190 KC2190 USB Host-to-Host cable +0510 Sejin Electron, Inc. + 0001 Keyboard + 1000 Keyboard with PS/2 Mouse Port + e001 Mouse +0511 N'Able (DataBook) Technologies, Inc. +0512 Hualon Microelectronics Corp. +0513 digital-X, Inc. +0514 FCI Electronics +0515 ACTC +0516 Longwell Electronics +0517 Butterfly Communications +0518 EzKEY Corp. + 0001 USB to PS2 Adaptor v1.09 + 0002 EZ-9900C Keyboard +0519 Star Micronics Co., Ltd + 0003 TSP100ECO/TSP100II + c002 Xlive Bluetooth XBM-100S MP3 Player +051a WYSE Technology + a005 Smart Display Version 9973 +051b Silicon Graphics +051c Shuttle, Inc. + 0005 VFD Module + c001 eHome Infrared Receiver + c002 eHome Infrared Receiver +051d American Power Conversion + 0001 UPS + 0002 Uninterruptible Power Supply + 0003 UPS +051e Scientific Atlanta, Inc. +051f IO Systems (Elite Electronics), Inc. +0520 Taiwan Semiconductor Manufacturing Co. +0521 Airborn Connectors +0522 Advanced Connectek, Inc. +0523 ATEN GmbH +0524 Sola Electronics +0525 Netchip Technology, Inc. + 100d RFMD Bluetooth Device + 1080 NET1080 USB-USB Bridge + 1265 File-backed Storage Gadget + a140 USB Clik! 40 + a141 (OME) PocketZip 40 MP3 Player Driver + a220 GVC Bluetooth Wireless Adapter + a4a0 Linux-USB "Gadget Zero" + a4a1 Linux-USB Ethernet Gadget + a4a2 Linux-USB Ethernet/RNDIS Gadget + a4a3 Linux-USB user-mode isochronous source/sink + a4a4 Linux-USB user-mode bulk source/sink + a4a5 Linux-USB File Storage Gadget + a4a6 Linux-USB Serial Gadget + a4a7 Linux-USB Serial Gadget (CDC ACM mode) + a4a8 Linux-USB Printer Gadget + a4a9 Linux-USB OBEX Gadget + a4aa Linux-USB CDC Composite Gadge (Ethernet and ACM) +0526 Temic MHS S.A. +0527 ALTRA +0528 ATI Technologies, Inc. + 7561 TV Wonder + 7562 TV Wonder, Edition (FN5) + 7563 TV Wonder, Edition (FI) + 7564 TV Wonder, Edition (FQ) + 7565 TV Wonder, Edition (NTSC+) + 7566 TV Wonder, Edition (FN5) + 7567 TV Wonder, Edition (FI) + 7568 TV Wonder, Edition (FQ) + 7569 Live! Pro (A) + 756a Live! Pro Audio (O) +0529 Aladdin Knowledge Systems + 0001 HASP v0.06 + 030b eToken R1 v3.1.3.x + 0313 eToken R1 v3.2.3.x + 031b eToken R1 v3.3.3.x + 0323 eToken R1 v3.4.3.x + 0412 eToken R2 v2.2.4.x + 041a eToken R2 v2.2.4.x + 0422 eToken R2 v2.4.4.x + 042a eToken R2 v2.5.4.x + 050c eToken Pro v4.1.5.x + 0514 eToken Pro v4.2.5.4 + 0600 eToken Pro 64k (4.2) +052a Crescent Heart Software +052b Tekom Technologies, Inc. + 0102 Ca508A HP1020 Camera v.1.3.1.6 + 0801 Yakumo MegaImage 37 + 1512 Yakumo MegaImage IV + 1513 Aosta CX100 Webcam + 1514 Aosta CX100 Webcam Storage + 1905 Yakumo MegaImage 47 + 1911 Yakumo MegaImage 47 SL + 2202 WDM Still Image Capture + 2203 Sound Vision Stream Driver + 3a06 DigiLife DDV-5120A + d001 P35U Camera Capture +052c Canon Information Systems, Inc. +052d Avid Electronics Corp. +052e Standard Microsystems Corp. +052f Unicore Software, Inc. +0530 American Microsystems, Inc. +0531 Wacom Technology Corp. +0532 Systech Corp. +0533 Alcatel Mobile Phones +0534 Motorola, Inc. +0535 LIH TZU Electric Co., Ltd +0536 Hand Held Products (Welch Allyn, Inc.) + 01a0 PDT +0537 Inventec Corp. +0538 Caldera International, Inc. (SCO) +0539 Shyh Shiun Terminals Co., Ltd +053a PrehKeyTec GmbH + 0b00 Hub +053b Global Village Communication +053c Institut of Microelectronic & Mechatronic Systems +053d Silicon Architect +053e Mobility Electronics +053f Synopsys, Inc. +0540 UniAccess AB + 0101 Panache Surf ISDN TA +0541 Sirf Technology, Inc. +0543 ViewSonic Corp. + 00fe G773 Monitor Hub + 00ff P815 Monitor Hub + 0bf2 airpanel V150 Wireless Smart Display + 0bf3 airpanel V110 Wireless Smart Display + 0ed9 Color Pocket PC V35 + 0f01 airsync Wi-Fi Wireless Adapter + 1527 Color Pocket PC V36 + 1529 Color Pocket PC V37 + 152b Color Pocket PC V38 + 152e Pocket PC + 1921 Communicator Pocket PC + 1922 Smartphone + 1923 Pocket PC V30 + 1a11 Wireless 802.11g Adapter + 1e60 TA310 - ATSC/NTSC/PAL Driver(PCM4) + 4153 ViewSonic G773 Control (?) +0544 Cristie Electronics, Ltd +0545 Xirlink, Inc. + 7333 Trution Web Camera + 8002 IBM NetCamera + 8009 Veo PC Camera + 800c Veo Stingray + 800d Veo PC Camera + 8080 IBM C-It Webcam + 808a Veo PC Camera + 808b Veo Stingray + 808d Veo PC Camera + 810a Veo Advanced Connect Webcam + 810b Veo PC Camera + 810c Veo PC Camera + 8135 Veo Mobile/Advanced Web Camera + 813a Veo PC Camera + 813b Veo PC Camera + 813c Veo Mobile/Advanced Web Camera + 8333 Veo Stingray/Connect Web Camera + 888c eVision 123 digital camera + 888d eVision 123 digital camera +0546 Polaroid Corp. + 0daf PDC 2300Z + 1bed PDC 1320 Camera + 3097 PDC 310 + 3155 PDC 3070 Camera + 3187 Digital Camera + 3191 Ion 80 Camera + 3273 PDC 2030 Camera + 3304 a500 Digital Camera + dccf Sound Vision Stream Driver +0547 Anchor Chips, Inc. + 0001 ICSI Bluetooth Device + 1002 Python2 WDM Encoder + 2131 AN2131 EZUSB Microcontroller + 2235 AN2235 EZUSB-FX Microcontroller + 2710 EZ-Link Loader (EZLNKLDR.SYS) + 2720 AN2720 USB-USB Bridge + 2727 Xircom PGUNET USB-USB Bridge + 2750 EZ-Link (EZLNKUSB.SYS) + 2810 Cypress ATAPI Bridge + 7777 Bluetooth Device + 9999 AN2131 uninitialized (?) +0548 Tyan Computer Corp. + 1005 EZ Cart II GameBoy Flash Programmer +0549 Pixera Corp. +054a Fujitsu Microelectronics, Inc. +054b New Media Corp. +054c Sony Corp. + 0001 HUB + 0002 Standard HUB + 0010 DSC-S30/S70/S75/F505V/F505/FD92/W1 Cybershot/Mavica Digital Camera + 0014 Nogatech USBVision (SY) + 0022 Storage Adapter V2 (TPP) + 0023 CD Writer + 0024 Mavica CD-1000 Camera + 0025 NW-MS7 Walkman MemoryStick Reader + 002b Portable USB Harddrive V2 + 002c USB Floppy Disk Drive + 002d MSAC-US1 MemoryStick Reader + 002e Sony HandyCam MemoryStick Reader + 0030 Storage Adapter V2 (TPP) + 0032 MemoryStick MSC-U01 Reader + 0035 Network Walkman (E) + 0036 Net MD + 0037 MG Memory Stick Reader/Writer + 0038 Clie PEG-S300/D PalmOS PDA + 0039 Network Walkman (MS) + 003c VAIO-MX LCD Control + 0045 Digital Imaging Video + 0046 Network Walkman + 004a Memory Stick Hi-Fi System + 004b Memory Stick Reader/Writer + 004e DSC-xxx (ptp) + 0056 MG Memory Stick Reader/Writer + 0058 Clie PEG-N7x0C PalmOS PDA Mass Storage + 0066 Clie PEG-N7x0C/PEG-T425 PalmOS PDA Serial + 0067 CMR-PC3 Webcam + 0069 Memorystick MSC-U03 Reader + 006c FeliCa S310 [PaSoRi] + 006d Clie PEG-T425 PDA Mass Storage + 006f Network Walkman (EV) + 0073 Storage CRX1750U + 0075 Net MD + 0076 Storage Adapter ACR-U20 + 007c Net MD + 007f IC Recorder (MS) + 0080 Net MD + 0081 Net MD + 0084 Net MD + 0085 Net MD + 0086 Net MD + 008b Micro Vault 64M Mass Storage + 0095 Sony Clie s360 + 0099 Clie NR70 PDA Mass Storage + 009a Clie NR70 PDA Serial + 00ab Visual Communication Camera (PCGA-UVC10) + 00af DPP-EX Series Digital Photo Printer + 00bf IC Recorder (S) + 00c0 Handycam DCR-30 + 00c6 Net MD + 00c7 Net MD + 00c8 MZ-N710 Minidisc Walkman + 00c9 Net MD + 00ca MZ-DN430 Minidisc Walkman + 00cb MSAC-US20 Memory Stick Reader + 00da Sony Clie nx60 + 00e8 Network Walkman (MS) + 00e9 Handheld + 00eb Net MD + 0101 Net MD + 0103 IC Recorder (ST) + 0105 Micro Vault Hub + 0107 VCC-U01 Visual Communication Camera + 0110 Digital Imaging Video + 0113 Net MD + 0116 IC Recorder (P) + 0144 Clie PEG-TH55 PDA + 0147 Visual Communication Camera (PCGA-UVC11) + 014c Aiwa AM-NX9 Net MD Music Recorder MDLP + 014d Memory Stick Reader/Writer + 0154 Eyetoy Audio Device + 015f IC Recorder (BM) + 0169 Clie PEG-TJ35 PDA Serial + 016a Clie PEG-TJ35 PDA Mass Storage + 016b Mobile HDD + 016d IC Recorder (SX) + 016e DPP-EX50 Digital Photo Printer + 0171 Fingerprint Sensor 3500 + 017e Net MD + 017f Hi-MD WALKMAN + 0180 Net MD + 0181 Hi-MD WALKMAN + 0182 Net MD + 0183 Hi-MD WALKMAN + 0184 Net MD + 0185 Hi-MD WALKMAN + 0186 Net MD + 0187 Hi-MD MZ-NH600 WALKMAN + 0188 Net MD + 018a Net MD + 018b Hi-MD SOUND GATE + 019e Micro Vault 1.0G Mass Storage + 01ad ATRAC HDD PA + 01bb FeliCa S320 [PaSoRi] + 01bd MRW62E Multi-Card Reader/Writer + 01c3 NW-E55 Network Walkman + 01c6 MEMORY P-AUDIO + 01c7 Printing Support + 01c8 PSP Type A + 01c9 PSP Type B + 01d0 DVD+RW External Drive DRU-700A + 01d5 IC RECORDER + 01de VRD-VC10 [Video Capture] + 01e9 Net MD + 01ea Hi-MD WALKMAN + 01ee IC RECORDER + 01fa Sony IC Recorder (P) + 01fb NW-E405 Network Walkman + 020f Device + 0210 ATRAC HDD PA + 0219 Net MD + 021a Hi-MD WALKMAN + 021b Net MD + 021c Hi-MD WALKMAN + 021d Net MD + 0227 Printing Support + 022c Net MD + 022d Hi-MD AUDIO + 0233 ATRAC HDD PA + 0236 Mobile HDD + 023b DVD+RW External Drive DRU-800UL + 023c Net MD + 023d Hi-MD WALKMAN + 0243 MicroVault Flash Drive + 024b Vaio VGX Mouse + 0257 IFU-WLM2 USB Wireless LAN Module (Wireless Mode) + 0258 IFU-WLM2 USB Wireless LAN Module (Memory Mode) + 0259 IC RECORDER + 0267 Tachikoma Device + 0268 Batoh Device / PlayStation 3 Controller + 0269 HDD WALKMAN + 026a HDD WALKMAN + 0271 IC Recorder (P) + 027c NETWORK WALKMAN + 027e SONY Communicator + 027f IC RECORDER + 0286 Net MD + 0287 Hi-MD WALKMAN + 0290 VGP-UVC100 Visual Communication Camera + 029b PRS-500 eBook reader + 02a5 MicroVault Flash Drive + 02af Handycam DCR-DVD306E + 02c4 Device + 02d1 DVD RW + 02d2 PSP Slim + 02e1 FeliCa S330 [PaSoRi] + 02ea PlayStation 3 Memory Card Adaptor + 02f9 DSC-H9 + 0317 WALKMAN + 031a Walkman NWD-B103F + 031e PRS-300/PRS-505 eBook reader + 033e DSC-W120 + 0346 Handycam DCR-SR55E + 0348 HandyCam HDR-TG3E + 0382 Memory Stick PRO-HG Duo Adaptor (MSAC-UAH1) + 03bc Webbie HD - MHS-CM1 + 03d3 DR-BT100CX + 03d5 PlayStation Move motion controller + 03fc WALKMAN [NWZ-E345] + 03fd Walkman NWZ-E443 + 0440 DSC-H55 + 0485 MHS-PM5 HD camcorder + 04cb WALKMAN NWZ-E354 + 1000 Wireless Buzz! Receiver +054d Try Corp. +054e Proside Corp. +054f WYSE Technology Taiwan +0550 Fuji Xerox Co., Ltd + 0002 InkJet Color Printer + 0004 InkJet Color Printer + 0005 InkJet Color Printer +0551 CompuTrend Systems, Inc. +0552 Philips Monitors +0553 STMicroelectronics Imaging Division (VLSI Vision) + 0001 TerraCAM + 0002 CPiA Webcam + 0100 STV0672 Camera + 0140 Video Camera + 0150 CDE CAM 100 + 0151 Digital Blue QX5 Microscope + 0200 Dual-mode Camera0 + 0201 Dual-mode Camera1 + 0202 Aiptek PenCam 1 + 0674 Multi-mode Camera + 0679 NMS Video Camera (Webcam) + 1002 Che-ez! Splash +0554 Dictaphone Corp. +0555 ANAM S&T Co., Ltd +0556 Asahi Kasei Microsystems Co., Ltd + 0001 AK5370 I/F A/D Converter +0557 ATEN International Co., Ltd + 2001 UC-1284 Printer Port + 2002 10Mbps Ethernet [klsi] + 2004 UC-100KM PS/2 Mouse and Keyboard adapter + 2006 UC-1284B Printer Port + 2007 UC-110T 100Mbps Ethernet [pegasus] + 2008 UC-232A Serial Port [pl2303] + 2009 UC-210T Ethernet + 2011 UC-2324 4xSerial Ports [mos7840] + 2202 CS124U Miniview II KVM Switch + 2213 CS682 2-Port USB 2.0 DVI KVM Switch + 2600 IDE Bridge + 2701 CE700A KVM Extender + 4000 DSB-650 10Mbps Ethernet [klsi] + 7000 Hub + 7820 UC-2322 2xSerial Ports [mos7820] +0558 Truevision, Inc. + 1009 GW Instek GDS-1000 Oscilloscope + 100a GW Instek GDS-1000A Oscilloscope + 2009 GW Instek GDS-2000 Oscilloscope +0559 Cadence Design Systems, Inc. +055a Kenwood USA +055b KnowledgeTek, Inc. +055c Proton Electronic Ind. +055d Samsung Electro-Mechanics Co. + 0001 Keyboard + 0bb1 Bluetooth Device + 1030 Optical Wheel Mouse (OMS3CB/OMGB30) + 1031 Optical Wheel Mouse (OMA3CB/OMGI30) + 1040 Mouse HID Device + 1050 E-Mail Optical Wheel Mouse (OMS3CE) + 1080 Optical Wheel Mouse (OMS3CH) + 2020 Floppy Disk Drive + 6780 Keyboard V1 + 6781 Keyboard Mouse + 8001 E.M. Hub + 9000 AnyCam [pwc] + 9001 MPC-C30 AnyCam Premium for Notebooks [pwc] + a000 SWL-2100U + a010 WLAN Adapter(SWL-2300) + a011 Boot Device + a012 WLAN Adapter(SWL-2300) + a013 WLAN Adapter(SWL-2350) + a230 Boot Device + b000 11Mbps WLAN Mini Adapter + b230 Netopia 802.11b WLAN Adapter + b231 LG Wireless LAN 11b Adapter +055e CTX Opto-Electronics Corp. +055f Mustek Systems, Inc. + 0001 ScanExpress 1200 CU + 0002 ScanExpress 600 CU + 0003 ScanExpress 1200 USB + 0006 ScanExpress 1200 UB + 0007 ScanExpress 1200 USB Plus + 0008 ScanExpress 1200 CU Plus + 0010 BearPaw 1200F + 0210 ScanExpress A3 USB + 0218 BearPaw 2400 TA + 0219 BearPaw 2400 TA Plus + 021a BearPaw 2448 TA Plus + 021b BearPaw 1200 CU Plus + 021c BearPaw 1200 CU Plus + 021d BearPaw 2400 CU Plus + 021e BearPaw 1200 TA/CS + 021f SNAPSCAN e22 + 0400 BearPaw 2400 TA Pro + 0401 P 3600 A3 Pro + 0408 BearPaw 2448 CU Pro + 0409 BearPaw 2448 TA Pro + 0873 ScanExpress 600 USB + 1000 BearPaw 4800 TA Pro + a350 gSmart 350 Camera + a800 MDC 800 Camera + b500 MDC 3000 Camera + c005 PC CAM 300A + c200 gSmart 300 + c211 Kowa Bs888e Microcamera + c220 gSmart mini + c230 Digicam 330K + c232 MDC3500 Camera + c360 DV 4000 Camera + c420 gSmart mini 2 Camera + c430 gSmart LCD 2 Camera + c440 DV 3000 Camera + c520 gSmart mini 3 Camera + c530 gSmart LCD 2 Camera + c540 gSmart D30 Camera + c630 MDC 4000 Camera + c631 MDC 4000 Camera + c650 MDC 5500Z Camera + d001 WCam 300 + d003 WCam 300A + d004 WCam 300AN +0560 Interface Corp. +0561 Oasis Design, Inc. +0562 Telex Communications, Inc. + 0001 Enhanced Microphone + 0002 Telex Microphone +0563 Immersion Corp. +0564 Kodak Digital Product Center, Japan Ltd. (formerly Chinon Industries Inc.) +0565 Peracom Networks, Inc. + 0001 Serial Port [etek] + 0002 Enet Ethernet [klsi] + 0003 @Home Networks Ethernet [klsi] + 0005 Enet2 Ethernet [klsi] + 0041 Peracom Remote NDIS Ethernet Adapter +0566 Monterey International Corp. + 0110 ViewMate Desktop Mouse CC2201 + 1001 ViewMate Desktop Mouse CC2201 + 1002 ViewMate Desktop Mouse CC2201 + 1003 ViewMate Desktop Mouse CC2201 + 1004 ViewMate Desktop Mouse CC2201 + 1005 ViewMate Desktop Mouse CC2201 + 1006 ViewMate Desktop Mouse CC2201 + 1007 ViewMate Desktop Mouse CC2201 + 2800 MIC K/B + 2801 MIC K/B Mouse + 2802 Kbd Hub + 3004 Genius KB-29E +0567 Xyratex International, Ltd +0568 Quartz Ingenierie +0569 SegaSoft +056a Wacom Co., Ltd + 0000 PenPartner + 0001 PenPartner 4x5 + 0002 PenPartner 6x8 + 0003 Cintiq Partner + 0010 Graphire + 0011 Graphire 2 4x5 + 0012 Graphire 2 5x7 + 0013 Graphire 3 4x5 + 0014 Graphire 3 6x8 + 0015 Graphire 4 4x5 + 0016 Graphire 4 6x8 + 0017 Bamboo Fun 4x5 + 0018 Bamboo Fun 6x8 + 0019 Bamboo One Medium + 0020 Intuos 4x5 + 0021 Intuos 6x8 + 0022 Intuos 9x12 + 0023 Intuos 12x12 + 0024 Intuos 12x18 + 0030 PL400 + 0031 PL500 + 0032 PL600 + 0033 PL600SX + 0034 PL550 + 0035 PL800 + 0037 PL700 + 0038 PL510 + 0039 DTU-710 + 003f Cintiq 21UX + 0041 Intuos2 4x5 + 0042 Intuos2 6x8 + 0043 Intuos2 9x12 + 0044 Intuos2 12x12 + 0045 Intuos2 12x18 + 0047 Intuos2 6x8 + 0060 Volito + 0061 PenStation2 + 0062 Volito2 4x5 + 0063 Volito2 2x3 + 0064 PenPartner2 + 0065 Bamboo + 0069 Bamboo One + 0081 Graphire Wireless 6x8 + 0090 TPC90 + 0093 TPC93 + 009a TPC9A + 00b0 Intuos3 4x5 + 00b1 Intuos3 6x18 + 00b2 Intuos3 9x12 + 00b3 Intuos3 12x12 + 00b4 Intuos3 12x19 + 00b5 Intuos3 6x11 (PTZ-631W) + 00b7 Intuos3 4x6 + 00b8 Intuos4 4x6 + 00b9 Intuos4 6x9 + 00ba Intuos4 8x13 + 00bb Intuos4 12x19 + 00c0 DTF-521 + 00c4 DTF-720 + 00c5 Cintiq 20WSX + 00c6 Cintiq 12WX + 00c7 DTU-1931 + 00d1 Bamboo Pen & Touch (CTH-460-DE) + 00d3 Bamboo Fun (CTH-661) + 00db Bamboo Fun (CTH-661SE-NL) + 0400 PenPartner 4x5 + 4850 PenPartner 6x8 +056b Decicon, Inc. +056c eTEK Labs + 0006 KwikLink Host-Host Connector + 8007 Kwik232 Serial Port + 8100 KwikLink Host-Host Connector + 8101 KwikLink USB-USB Bridge +056d EIZO Corp. + 0000 Hub + 0001 Monitor + 0002 HID Monitor Controls + 0003 Device Bay Controller +056e Elecom Co., Ltd + 0002 29UO Mouse + 200c LD-USB/TX + 4002 Laneed 100Mbps Ethernet LD-USB/TX [pegasus] + 4005 LD-USBL/TX + 400b LD-USB/TX + 4010 LD-USB20 + 5003 UC-SGT + 5004 UC-SGT + abc1 LD-USB/TX +056f Korea Data Systems Co., Ltd + cd00 CDM-751 CD organizer +0570 Epson America +0571 Interex, Inc. + 0002 echoFX InterView Lite +0572 Conexant Systems (Rockwell), Inc. + 0001 Ezcam II Webcam + 0002 Ezcam II Webcam + 0040 Wondereye CP-115 Webcam + 0041 Webcam Notebook + 0042 Webcam Notebook + 1232 V.90 modem + 1234 Typhoon Redfun Modem V90 56k + 1252 HCF V90 Data Fax Voice Modem + 1253 Zoom V.92 Faxmodem + 1300 SoftK56 Data Fax Voice CARP + 1301 Modem Enumerator + 2000 SoftGate 802.11 Adapter + 2002 SoftGate 802.11 Adapter + 8390 WinFast PalmTop/Novo TV Video + 8392 WinFast PalmTop/Novo TV Video + cafe AccessRunner ADSL Modem + cb00 ADSL Modem + cb01 ADSL Modem + cb06 StarModem Network Interface +0573 Zoran Co. Personal Media Division (Nogatech) + 0003 USBGear USBG-V1 + 0400 D-Link V100 + 0600 Dazzle USBVision (1006) + 1300 leadtek USBVision (1006) + 2000 X10 va10a Wireless Camera + 2001 Dazzle EmMe (2001) + 2101 Zoran Co. PMD (Nogatech) AV-grabber Manhattan + 2d00 Osprey 50 + 2d01 Hauppauge USB-Live Model 600 + 3000 Dazzle MicroCam (NTSC) + 3001 Dazzle MicroCam (PAL) + 4000 Nogatech TV! (NTSC) + 4001 Nogatech TV! (PAL) + 4002 Nogatech TV! (PAL-I-) + 4003 Nogatech TV! (MF-) + 4008 Nogatech TV! (NTSC) (T) + 4009 Nogatech TV! (PAL) (T) + 4010 Nogatech TV! (NTSC) (A) + 4100 USB-TV FM (NTSC) + 4110 PNY USB-TV (NTSC) FM + 4400 Nogatech TV! Pro (NTSC) + 4401 Nogatech TV! Pro (PAL) + 4450 PixelView PlayTv-USB PRO (PAL) FM + 4451 Nogatech TV! Pro (PAL+) + 4452 Nogatech TV! Pro (PAL-I+) + 4500 Nogatech TV! Pro (NTSC) + 4501 Nogatech TV! Pro (PAL) + 4550 ZTV ZT-721 2.4GHz A/V Receiver + 4551 Dazzle TV! Pro Audio (P+) + 4d00 Hauppauge WinTV-USB USA + 4d01 Hauppauge WinTV-USB + 4d02 Hauppauge WinTV-USB UK + 4d03 Hauppauge WinTV-USB France + 4d04 Hauppauge WinTV (PAL D/K) + 4d10 Hauppauge WinTV-USB with FM USA radio + 4d11 Hauppauge WinTV-USB (PAL) with FM radio + 4d12 Hauppauge WinTV-USB UK with FM Radio + 4d14 Hauppauge WinTV (PAL D/K FM) + 4d20 Hauppauge WinTV-USB II (PAL) with FM radio + 4d21 Hauppauge WinTV-USB II (PAL) + 4d22 Hauppauge WinTV-USB II (PAL) Model 566 + 4d23 Hauppauge WinTV-USB France 4D23 + 4d24 Hauppauge WinTV Pro (PAL D/K) + 4d25 Hauppauge WinTV-USB Model 40209 rev B234 + 4d26 Hauppauge WinTV-USB Model 40209 rev B243 + 4d27 Hauppauge WinTV-USB Model 40204 Rev B281 + 4d28 Hauppauge WinTV-USB Model 40204 rev B283 + 4d29 Hauppauge WinTV-USB Model 40205 rev B298 + 4d2a Hauppague WinTV-USB Model 602 Rev B285 + 4d2b Hauppague WinTV-USB Model 602 Rev B282 + 4d2c Hauppauge WinTV Pro (PAL/SECAM) + 4d30 Hauppauge WinTV-USB FM Model 40211 Rev B123 + 4d31 Hauppauge WinTV-USB III (PAL) with FM radio Model 568 + 4d32 Hauppauge WinTV-USB III (PAL) FM Model 573 + 4d34 Hauppauge WinTV Pro (PAL D/K FM) + 4d35 Hauppauge WinTV-USB III (PAL) FM Model 597 + 4d36 Hauppauge WinTV Pro (PAL B/G FM) + 4d37 Hauppauge WinTV-USB Model 40219 rev E189 + 4d38 Hauppauge WinTV Pro (NTSC FM) +0574 City University of Hong Kong +0575 Philips Creative Display Solutions +0576 BAFO/Quality Computer Accessories +0577 ELSA +0578 Intrinsix Corp. +0579 GVC Corp. +057a Samsung Electronics America +057b Y-E Data, Inc. + 0000 FlashBuster-U Floppy + 0001 Tri-Media Reader Floppy + 0006 Tri-Media Reader Card Reader + 0010 Memory Stick Reader Writer + 0020 HEXA Media Drive 6-in-1 Card Reader Writer + 0030 Memory Card Viewer (TV) +057c AVM GmbH + 0b00 ISDN-Controller B1 Family + 0c00 ISDN-Controller FRITZ!Card + 1000 ISDN-Controller FRITZ!Card v2.0 + 1900 ISDN-Controller FRITZ!Card v2.1 + 2000 ISDN-Connector FRITZ!X + 2200 BlueFRITZ! + 2300 Teledat X130 DSL + 2800 ISDN-Connector TA + 3200 Teledat X130 DSL + 3500 FRITZ!Card DSL SL + 3701 FRITZ!Box SL + 3702 FRITZ!Box + 3800 BlueFRITZ! Bluetooth Stick + 3a00 FRITZ!Box Fon + 3c00 FRITZ!Box WLAN + 3d00 Fritz!Box + 3e01 FRITZ!Box (Annex A) + 4001 FRITZ!Box Fon (Annex A) + 4101 FRITZ!Box WLAN (Annex A) + 4201 FRITZ!Box Fon WLAN (Annex A) + 4601 Eumex 5520PC (WinXP/2000) + 4602 Eumex 400 (WinXP/2000) + 4701 AVM FRITZ!Box Fon ata + 5401 Eumex 300 IP + 5601 AVM Fritz!WLAN [Texas Instruments TNETW1450] + 6201 AVM Fritz!WLAN v1.1 [Texas Instruments TNETW1450] + 62ff AVM Fritz!WLAN USB (in CD-ROM-mode) + 8401 AVM Fritz!WLAN N [Atheros AR9001U] + 8402 AVM Fritz!WLAN N 2.4 [Atheros AR9001U] + 84ff AVM Fritz!WLAN USB N (in CD-ROM-mode) +057d Shark Multimedia, Inc. +057e Nintendo Co., Ltd + 0306 Wii Remote Controller RVL-003 +057f QuickShot, Ltd + 6238 USB StrikePad +0580 Denron, Inc. +0581 Racal Data Group +0582 Roland Corp. + 0000 UA-100 + 0002 UM-4/MPU-64 MIDI Interface + 0003 SoundCanvas SC-8850 + 0004 U-8 + 0005 Edirol UM-2 MIDI Adapter + 0007 SoundCanvas SC-8820 + 0008 PC-300 + 0009 Edirol UM-1SX MIDI Adapter + 000b SK-500 + 000c SC-D70 + 0010 EDIROL UA-5 + 0011 Edirol UA-5 Sound Capture + 0012 XV-5050 + 0013 XV-5050 + 0014 EDIROL UM-880 MIDI I/F (native) + 0015 EDIROL UM-880 MIDI I/F (generic) + 0016 EDIROL SD-90 + 0017 EDIROL SD-90 + 0018 UA-1A + 001b MMP-2 + 001c MMP-2 + 001d V-SYNTH + 001e V-SYNTH + 0023 EDIROL UM-550 + 0024 EDIROL UM-550 + 0025 EDIROL UA-20 + 0026 EDIROL UA-20 + 0027 EDIROL SD-20 + 0028 EDIROL SD-20 + 0029 EDIROL SD-80 + 002a EDIROL SD-80 + 002b EDIROL UA-700 + 002c EDIROL UA-700 + 002d XV-2020 Synthesizer + 002e XV-2020 Synthesizer + 002f VariOS + 0030 VariOS + 0033 EDIROL PCR + 0034 EDIROL PCR + 0037 Digital Piano + 0038 Digital Piano + 003b BOSS GS-10 + 003c BOSS GS-10 + 0040 GI-20 + 0041 GI-20 + 0042 RS-70 + 0043 RS-70 + 0044 EDIROL UA-1000 + 0047 EDIROL UR-80 WAVE + 0048 EDIROL UR-80 MIDI + 0049 EDIROL UR-80 WAVE + 004a EDIROL UR-80 MIDI + 004b EDIROL M-100FX + 004c EDIROL PCR-A WAVE + 004d EDIROL PCR-A MIDI + 004e EDIROL PCR-A WAVE + 004f EDIROL PCR-A MIDI + 0050 EDIROL UA-3FX + 0052 EDIROL UM-1SX + 0054 Digital Piano + 0060 EXR Series + 0064 EDIROL PCR-1 WAVE + 0065 EDIROL PCR-1 MIDI + 0066 EDIROL PCR-1 WAVE + 0067 EDIROL PCR-1 MIDI + 006a SP-606 + 006b SP-606 + 006d FANTOM-X + 006e FANTOM-X + 0073 EDIROL UA-25 + 0074 EDIROL UA-25 + 0075 BOSS DR-880 + 0076 BOSS DR-880 + 007a RD + 007b RD + 007d EDIROL UA-101 + 0080 G-70 + 0081 G-70 + 008b EDIROL PC-50 + 008c EDIROL PC-50 + 008d EDIROL UA-101 USB1 + 0092 EDIROL PC-80 WAVE + 0093 EDIROL PC-80 MIDI + 0096 EDIROL UA-1EX + 009a EDIROL UM-3EX + 009d EDIROL UM-1 + 00a2 Digital Piano + 00a3 EDIROL UA-4FX + 00a6 Juno-G + 00ad SH-201 + 00c4 EDIROL M-16DX + 00db BOSS GT-10 Guitar Effects Processor + 00de Fantom-G7 + 00e6 EDIROL UA-25EX (Advanced mode) + 00e7 EDIROL UA-25EX + 010f A-PRO + 0110 A-PRO +0583 Padix Co., Ltd (Rockfire) + 0001 4 Axis 12 button +POV + 0002 4 Axis 12 button +POV + 2030 RM-203 USB Nest [mode 1] + 2031 RM-203 USB Nest [mode 2] + 2032 RM-203 USB Nest [mode 3] + 2033 RM-203 USB Nest [mode 4] + 2050 PX-205 PSX Bridge + 205f PSX/USB converter + 206f USB, 2-axis 8-button gamepad + 3050 QF-305u Gamepad + 3379 Rockfire X-Force + 337f Rockfire USB RacingStar Vibra + 509f USB,4-Axis,12-Button with POV + 5259 Rockfire USB SkyShuttle Vibra + 525f USB Vibration Pad + 5308 USB Wireless VibrationPad + 5359 Rockfire USB SkyShuttle Pro + 535f USB,real VibrationPad + 5659 Rockfire USB SkyShuttle Vibra + 565f USB VibrationPad + 6009 Revenger + 600f USB,GameBoard II + 6258 USB, 4-axis, 6-button joystick w/view finder + 6889 Windstorm Pro + 688f QF-688uv Windstorm Pro Joystick + 7070 QF-707u Bazooka Joystick + a000 MaxFire G-08XU Gamepad + a015 4-Axis,16-Button with POV + a019 USB, Vibration ,4-axis, 8-button joystick w/view finder + a020 USB,4-Axis,10-Button with POV + a021 USB,4-Axis,12-Button with POV + a022 USB,4-Axis,14-Button with POV + a023 USB,4-Axis,16-Button with POV + a024 4axis,12button vibrition audio gamepad + a025 4axis,12button vibrition audio gamepad + a130 USB Wireless 2.4GHz Gamepad + a131 USB Wireless 2.4GHz Joystick + a132 USB Wireless 2.4GHz Wheelpad + a133 USB Wireless 2.4GHz Wheel&Gamepad + a202 ForceFeedbackWheel + a209 MetalStrike FF + b000 USB,4-Axis,12-Button with POV + b001 USB,4-Axis,12-Button with POV + b002 Vibration,12-Button USB Wheel + b005 USB,12-Button Wheel + b008 USB Wireless 2.4GHz Wheel + b009 USB,12-Button Wheel + b00a PSX/USB converter + b00b PSX/USB converter + b00c PSX/USB converter + b00d PSX/USB converter + b00e 4-Axis,12-Button with POV + b00f USB,5-Axis,10-Button with POV + b010 MetalStrike Pro + b012 Wireless MetalStrike + b013 USB,Wiress 2.4GHZ Joystick + b016 USB,5-Axis,10-Button with POV + b018 TW6 Wheel + ff60 USB Wireless VibrationPad +0584 RATOC System, Inc. + 0008 Fujifilm MemoryCard ReaderWriter + 0220 U2SCX SCSI Converter + b000 REX-USB60 +0585 FlashPoint Technology, Inc. + 0001 Digital Camera + 0002 Digital Camera + 0003 Digital Camera + 0004 Digital Camera + 0005 Digital Camera + 0006 Digital Camera + 0007 Digital Camera + 0008 Digital Camera + 0009 Digital Camera + 000a Digital Camera + 000b Digital Camera + 000c Digital Camera + 000d Digital Camera + 000e Digital Camera + 000f Digital Camera +0586 ZyXEL Communications Corp. + 0025 802.11b/g/n USB Wireless Network Adapter + 0102 omni.net II ISDN TA + 1000 Omni NET Modem / ISDN TA + 1500 Omni 56K Plus + 2011 Scorpion-980N keyboard + 3304 LAN Modem + 3309 ADSL Modem Prestige 600 series + 330a ADSL Modem Interface + 330e USB Broadband ADSL Modem Rev 1.10 + 3400 ZyAIR B-220 IEEE 802.11b Adapter + 3401 ZyAIR G-220 802.11bg + 3402 ZyAIR G-220F 802.11bg + 3407 G-200 v2 802.11bg + 3409 AG-225H 802.11bg + 340a M-202 802.11bg + 340f G-220 v2 802.11bg + 3410 ZyAIR G-202 802.11bg + 3412 802.11bg + 3413 ZyAIR AG-225H v2 802.11bg + 3415 G-210H 802.11g Wireless Adapter + 3416 NWD-210N 802.11b/g/n-draft wireless adapter + 3417 NWD271N 802.11n Wireless Adapter [Atheros AR9001U-(2)NG] + 3418 NWD211AN 802.11abgn Wireless Adapter [Ralink RT2870] + 341a NWD-270N Wireless N-lite USB Adapter +0587 America Kotobuki Electronics Industries, Inc. +0588 Sapien Design +0589 Victron +058a Nohau Corp. +058b Infineon Technologies +058c In Focus Systems + 0007 Flash + 0008 LP130 + 000a LP530 + 0010 Projector + 0011 Projector + 0012 Projector + 0013 Projector + 0014 Projector + 0015 Projector + 0016 Projector + 0017 Projector + 0018 Projector + 0019 Projector + 001a Projector + 001b Projector + 001c Projector + 001d Projector + 001e Projector + 001f Projector +058d Micrel Semiconductor +058e Tripath Technology, Inc. +058f Alcor Micro Corp. + 1234 Flash Drive + 2412 SCard R/W CSR-145 + 2802 Monterey Keyboard + 5492 Hub + 6232 Hi-Speed 16-in-1 Flash Card Reader/Writer + 6254 USB Hub + 6331 SD/MMC/MS Card Reader + 6332 Multi-Function Card Reader + 6335 SD/MMC Card Reader + 6360 Multimedia Card Reader + 6361 Multimedia Card Reader + 6362 Flash Card Reader/Writer + 6366 Multi Flash Reader + 6377 Multimedia Card Reader + 6386 Memory Card + 6387 Transcend JetFlash Flash Drive + 6390 USB 2.0-IDE bridge + 9213 MacAlly Kbd Hub + 9215 AU9814 Hub + 9254 Hub + 9310 Mass Storage (UID4/5A & UID7A) + 9320 Micro Storage Driver for Win98 + 9321 Micro Storage Driver for Win98 + 9330 SD Reader + 9331 Micro Storage Driver for Win98 + 9340 Delkin eFilm Reader-32 + 9350 Delkin eFilm Reader-32 + 9360 8-in-1 Media Card Reader + 9361 Multimedia Card Reader + 9368 Multimedia Card Reader + 9380 Flash Drive + 9382 Acer/Sweex Flash drive + 9384 qdi U2Disk T209M + 9410 Keyboard + 9472 Keyboard Hub + 9510 ChunghwaTL USB02 Smartcard Reader + 9520 EMV Certified Smart Card Reader + 9720 USB-Serial Adapter +0590 Omron Corp. + 0004 Cable Modem + 000b MR56SVS + 0028 HJ-720IT Pedometer / Blood Pressure Monitor HEM-7080IT-E +0591 Questra Consulting +0592 Powerware Corp. + 0002 UPS (X-Slot) +0593 Incite +0594 Princeton Graphic Systems +0595 Zoran Microelectronics, Ltd + 1001 Digitrex DSC-1300/DSC-2100 (mass storage mode) + 2002 DIGITAL STILL CAMERA 6M 4X + 4343 Digital Camera EX-20 DSC +0596 MicroTouch Systems, Inc. + 0001 Touchscreen + 0002 Touch Screen Controller + 0500 PCT Multitouch HID Controller +0597 Trisignal Communications +0598 Niigata Canotec Co., Inc. +0599 Brilliance Semiconductor, Inc. +059a Spectrum Signal Processing, Inc. +059b Iomega Corp. + 0001 Zip 100 (Type 1) + 000b Zip 100 (Type 2) + 0021 Win98 Disk Controller + 0030 Zip 250 (Ver 1) + 0031 Zip 100 (Type 3) + 0032 Zip 250 (Ver 2) + 0034 Zip 100 Driver + 0037 Zip 750 MB + 0040 SCSI Bridge + 0042 Rev 70 GB + 0050 Zip CD 650 Writer + 0053 CDRW55292EXT CD-RW External Drive + 0057 Mass Storage Device + 005d Mass Storage Device + 005f CDRW64892EXT3-C CD-RW 52x24x52x External Drive + 0060 PCMCIA PocketZip Dock + 0061 Varo PocketZip 40 MP3 Player + 006d HipZip MP3 Player + 007c Ultra Max USB/1394 + 007e Mini 256MB/512MB Flash Drive [IOM2D5] + 00db FotoShow Zip 250 Driver + 0150 Mass Storage Device + 015d Super DVD Writer + 0173 Hi-Speed USB-to-IDE Bridge Controller + 0174 Hi-Speed USB-to-IDE Bridge Controller + 0176 Hi-Speed USB-to-IDE Bridge Controller + 0177 Hi-Speed USB-to-IDE Bridge Controller + 0178 Hi-Speed USB-to-IDE Bridge Controller + 0179 Hi-Speed USB-to-IDE Bridge Controller + 017a HDD + 017b HDD/1394A + 017c HDD/1394B + 0251 Optical + 0252 Optical + 027a LPHD250-U [Portable Hard Drive Silver Series 250 Go] + 0470 Prestige Portable Hard Drive + 047a Select Portable Hard Drive + 0579 eGo Portable Hard Drive + 1052 DVD+RW External Drive +059c A-Trend Technology Co., Ltd +059d Advanced Input Devices +059e Intelligent Instrumentation +059f LaCie, Ltd + 0201 StudioDrive USB2 + 0202 StudioDrive USB2 + 0203 StudioDrive USB2 + 0211 PocketDrive + 0212 PocketDrive + 0213 PocketDrive USB2 + 0323 LaCie d2 Drive USB2 + 0421 Big Disk G465 + 0641 Mobile Hard Drive + 1010 Desktop Hard Drive + 1019 Desktop Hard Drive + 102a Rikiki Hard Drive + a601 HardDrive + a602 CD R/W +05a0 Vetronix Corp. +05a1 USC Corp. +05a2 Fuji Film Microdevices Co., Ltd +05a3 ARC International + 8388 Marvell 88W8388 802.11a/b/g WLAN +05a4 Ortek Technology, Inc. + 2000 WKB-2000 Wireless Keyboard with Touchpad + 9720 Keyboard Mouse + 9722 Keyboard + 9731 MCK-600W/MCK-800USB Keyboard + 9783 Wireless Keypad +05a5 Sampo Technology Corp. +05a6 Cisco Systems, Inc. + 0001 CVA124 Cable Voice Adapter (WDM) + 0002 CVA122 Cable Voice Adapter (WDM) + 0003 CVA124E Cable Voice Adapter (WDM) + 0004 CVA122E Cable Voice Adapter (WDM) +05a7 Bose Corp. +05a8 Spacetec IMC Corp. +05a9 OmniVision Technologies, Inc. + 0511 OV511 Webcam + 0518 OV518 Webcam + 0519 OV519 Microphone + 1550 VEHO Filmscanner + 2640 OV2640 Webcam + 2643 Monitor Webcam + 264b Monitor Webcam + 2800 SuperCAM + 4519 Webcam Classic + 7670 OV7670 Webcam + 8519 OV519 Webcam + a511 OV511+ Webcam + a518 D-Link DSB-C310 Webcam +05aa Utilux South China, Ltd +05ab In-System Design + 0002 Parallel Port + 0030 Storage Adapter V2 (TPP) + 0031 ATA Bridge + 0060 USB 2.0 ATA Bridge + 0061 Storage Adapter V3 (TPP-I) + 0101 Storage Adapter (TPP) + 0130 Compact Flash and Microdrive Reader (TPP) + 0200 USS725 ATA Bridge + 0201 Storage Adapter (TPP) + 0202 ATA Bridge + 0300 Portable Hard Drive (TPP) + 0301 Portable Hard Drive V2 + 0350 Portable Hard Drive (TPP) + 0351 Portable Hard Drive V2 + 081a ATA Bridge + 0cda ATA Bridge for CD-R/RW + 1001 BAYI Printer Class Support + 5700 Storage Adapter V2 (TPP) + 5701 USB Storage Adapter V2 + 5901 Smart Board (TPP) + 5a01 ATI Storage Adapter (TPP) + 5d01 DataBook Adapter (TPP) +05ac Apple, Inc. + 0201 USB Keyboard [Alps or Logitech, M2452] + 0202 Keyboard [ALPS] + 0205 Extended Keyboard [Mitsumi] + 0206 Extended Keyboard [Mitsumi] + 020b Pro Keyboard [Mitsumi, A1048/US layout] + 020c Extended Keyboard [Mitsumi] + 020d Pro Keyboard [Mitsumi, A1048/JIS layout] + 020e Internal Keyboard/Trackpad (ANSI) + 020f Internal Keyboard/Trackpad (ISO) + 0214 Internal Keyboard/Trackpad (ANSI) + 0215 Internal Keyboard/Trackpad (ISO) + 0216 Internal Keyboard/Trackpad (JIS) + 0217 Internal Keyboard/Trackpad (ANSI) + 0218 Internal Keyboard/Trackpad (ISO) + 0219 Internal Keyboard/Trackpad (JIS) + 021a Internal Keyboard/Trackpad (ANSI) + 021b Internal Keyboard/Trackpad (ISO) + 021c Internal Keyboard/Trackpad (JIS) + 021d Aluminum Mini Keyboard (ANSI) + 021e Aluminum Mini Keyboard (ISO) + 021f Aluminum Mini Keyboard (JIS) + 0220 Aluminum Keyboard (ANSI) + 0221 Aluminum Keyboard (ISO) + 0222 Aluminum Keyboard (JIS) + 0223 Internal Keyboard/Trackpad (ANSI) + 0224 Internal Keyboard/Trackpad (ISO) + 0225 Internal Keyboard/Trackpad (JIS) + 0229 Internal Keyboard/Trackpad (MacBook Pro) (ANSI) + 022a Internal Keyboard/Trackpad (MacBook Pro) (ISO) + 022b Internal Keyboard/Trackpad (MacBook Pro) (JIS) + 0230 Internal Keyboard/Trackpad (MacBook Pro 4,1) (ANSI) + 0231 Internal Keyboard/Trackpad (MacBook Pro 4,1) (ISO) + 0232 Internal Keyboard/Trackpad (MacBook Pro 4,1) (JIS) + 0236 Internal Keyboard/Trackpad (ANSI) + 0237 Internal Keyboard/Trackpad (ISO) + 0238 Internal Keyboard/Trackpad (JIS) + 0301 USB Mouse [Mitsumi, M4848] + 0302 Optical Mouse [Fujitsu] + 0304 Optical USB Mouse [Mitsumi] + 0306 Optical USB Mouse [Fujitsu] + 030a Internal Trackpad + 030b Internal Trackpad + 030e Wireless Trackpad [Magic Trackpad] + 1000 Bluetooth HCI MacBookPro (HID mode) + 1001 Keyboard Hub [ALPS] + 1002 Extended Keyboard Hub [Mitsumi] + 1003 Hub in Pro Keyboard [Mitsumi, A1048] + 1006 Hub in Aluminum Keyboard + 1101 Speakers + 1201 3G iPod + 1202 iPod 2G + 1203 iPod 4.Gen Grayscale 40G + 1204 iPod [Photo] + 1205 iPod Mini 1.Gen/2.Gen + 1206 iPod '06' + 1207 iPod '07' + 1208 iPod '08' + 1209 iPod Video + 120a iPod Nano + 1223 iPod Classic/Nano 3.Gen (DFU mode) + 1224 iPod Nano 3.Gen (DFU mode) + 1225 iPod Nano 4.Gen (DFU mode) + 1227 Mobile Device (DFU Mode) + 1231 iPod Nano 5.Gen (DFU mode) + 1240 iPod Nano 2.Gen (DFU mode) + 1242 iPod Nano 3.Gen (WTF mode) + 1243 iPod Nano 4.Gen (WTF mode) + 1245 iPod Classic 3.Gen (WTF mode) + 1246 iPod Nano 5.Gen (WTF mode) + 1255 iPod Nano 4.Gen (DFU mode) + 1260 iPod Nano 2.Gen + 1261 iPod Classic + 1262 iPod Nano 3.Gen + 1263 iPod Nano 4.Gen + 1265 iPod Nano 5.Gen + 1266 iPod Nano 6.Gen + 1281 Apple Mobile Device [Recovery Mode] + 1290 iPhone + 1291 iPod Touch 1.Gen + 1292 iPhone 3G + 1293 iPod Touch 2.Gen + 1294 iPhone 3GS + 1296 iPod Touch 3.Gen (8GB) + 1297 iPhone 4 + 1299 iPod Touch 3.Gen + 129a iPad + 129e iPod Touch 4.Gen + 1300 iPod Shuffle + 1301 iPod Shuffle 2.Gen + 1302 iPod Shuffle 3.Gen + 1303 iPod Shuffle 4.Gen + 1401 Modem + 8202 HCF V.90 Data/Fax Modem + 8203 Bluetooth HCI + 8204 Bluetooth HCI [Bluetooth 2.0 + EDR, built-in] + 8205 Bluetooth HCI + 8206 Bluetooth HCI + 820f Bluetooth HCI + 8215 Bluetooth USB Host Controller + 8216 Bluetooth USB Host Controller + 8217 Bluetooth USB Host Controller + 8218 Bluetooth Host Controller + 8240 IR Receiver [built-in] + 8241 IR Receiver [built-in] + 8242 IR Receiver [built-in] + 8300 Built-in iSight (no firmware loaded) + 8403 Internal Memory Card Reader + 8501 Built-in iSight [Micron] + 8502 Built-in iSight + 8505 Built-in iSight + 8507 Built-in iSight + 912f Hub in 30" Cinema Display + 9221 30" Cinema Display + ffff Bluetooth in DFU mode - Driver +05ad Y.C. Cable U.S.A., Inc. +05ae Synopsys, Inc. +05af Jing-Mold Enterprise Co., Ltd + 0809 Wireless Keyboard and Mouse + 0821 IDE to + 3062 Cordless Keyboard + 9167 KB 9151B - 678 + 9267 KB 9251B - 678 Mouse +05b0 Fountain Technologies, Inc. +05b1 First International Computer, Inc. + 1389 Bluetooth Wireless Adapter +05b4 LG Semicon Co., Ltd + 4857 M-Any DAH-210 + 6001 Digisette DUO-MP3 AR-100 +05b5 Dialogic Corp. +05b6 Proxima Corp. +05b7 Medianix Semiconductor, Inc. +05b8 Agiler, Inc. + 3002 Scroll Mouse +05b9 Philips Research Laboratories +05ba DigitalPersona, Inc. + 0007 Fingerprint Reader + 0008 Fingerprint Reader + 000a Fingerprint Reader +05bb Grey Cell Systems +05bc 3G Green Green Globe Co., Ltd + 0004 Trackball +05bd RAFI GmbH & Co. KG +05be Tyco Electronics (Raychem) +05bf S & S Research +05c0 Keil Software +05c1 Kawasaki Microelectronics, Inc. +05c2 Media Phonics (Suisse) S.A. +05c5 Digi International, Inc. + 0002 AccelePort USB 2 + 0004 AccelePort USB 4 + 0008 AccelePort USB 8 +05c6 Qualcomm, Inc. + 0114 Select RW-200 CDMA Wireless Modem + 1000 Mass Storage Device + 3100 CDMA Wireless Modem/Phone + 3196 CDMA Wireless Modem + 3197 CDMA Wireless Modem/Phone + 6000 Siemens SG75 + 6503 AnyData APE-540H + 6613 Onda H600/N501HS ZTE MF330 + 9000 SIMCom SIM5218 modem + 9001 Gobi Wireless Modem + 9002 Gobi Wireless Modem + 9008 Gobi Wireless Modem (QDL mode) + 9201 Gobi Wireless Modem (QDL mode) + 9202 Gobi Wireless Modem + 9203 Gobi Wireless Modem + 9211 Acer Gobi Wireless Modem (QDL mode) + 9212 Acer Gobi Wireless Modem + 9214 Acer Gobi 2000 Wireless Modem (QDL mode) + 9215 Acer Gobi 2000 Wireless Modem + 9221 Gobi Wireless Modem (QDL mode) + 9222 Gobi Wireless Modem + 9224 Sony Gobi 2000 Wireless Modem (QDL mode) + 9225 Sony Gobi 2000 Wireless Modem + 9231 Gobi Wireless Modem (QDL mode) + 9234 Top Global Gobi 2000 Wireless Modem (QDL mode) + 9235 Top Global Gobi 2000 Wireless Modem + 9244 Samsung Gobi 2000 Wireless Modem (QDL mode) + 9245 Samsung Gobi 2000 Wireless Modem + 9264 Asus Gobi 2000 Wireless Modem (QDL mode) + 9265 Asus Gobi 2000 Wireless Modem + 9274 iRex Technologies Gobi 2000 Wireless Modem (QDL mode) + 9275 iRex Technologies Gobi 2000 Wireless Modem +05c7 Qtronix Corp. + 0113 PC Line Mouse + 1001 Lynx Mouse + 2001 Keyboard + 2011 SCorpius Keyboard + 6001 Ten-Keypad +05c8 Cheng Uei Precision Industry Co., Ltd (Foxlink) + 0103 FO13FF-65 PC-CAM + 0403 Webcam +05c9 Semtech Corp. +05ca Ricoh Co., Ltd + 0101 RDC-5300 Camera + 0325 Caplio GX (ptp) + 032d Caplio GX 8 (ptp) + 032f Caplio R3 (ptp) + 03a1 IS200e + 0403 Printing Support + 0405 Type 101 + 0406 Type 102 + 1803 V5 camera [R5U870] + 1810 Pavilion Webcam [R5U870] + 1812 Pavilion Webcam + 1814 HD Webcam + 1830 Visual Communication Camera VGP-VCC2 [R5U870] + 1832 Visual Communication Camera VGP-VCC3 [R5U870] + 1833 Visual Communication Camera VGP-VCC2 [R5U870] + 1834 Visual Communication Camera VGP-VCC2 [R5U870] + 1835 Visual Communication Camera VGP-VCC5 [R5U870] + 1836 Visual Communication Camera VGP-VCC4 [R5U870] + 1837 Visual Communication Camera VGP-VCC4 [R5U870] + 1839 Visual Communication Camera VGP-VCC6 [R5U870] + 183a Visual Communication Camera VGP-VCC7 [R5U870] + 183b Visual Communication Camera VGP-VCC8 [R5U870] + 183d Sony Vaio Integrated Webcam + 183e Visual Communication Camera VGP-VCC9 [R5U870] + 1841 Fujitsu F01/ Lifebook U810 [R5U870] + 1870 Webcam 1000 + 18b0 Sony Vaio Integrated Webcam + 18b1 Sony Vaio Integrated Webcam + 18b3 Sony Vaio Integrated Webcam + 2201 RDC-7 Camera + 2202 Caplio RR30 + 2203 Caplio 300G + 2204 Caplio G3 + 2205 Caplio RR30 / Medion MD 6126 Camera + 2206 Konica DG-3Z + 2207 Caplio Pro G3 + 2208 Caplio G4 + 2209 Caplio 400G wide + 220a KONICA MINOLTA DG-4Wide + 220b Caplio RX + 220c Caplio GX + 220d Caplio R1/RZ1 + 220e Sea & Sea 5000G + 220f Rollei dr5 / Rollei dr5 (PTP mode) + 2211 Caplio R1S + 2212 Caplio R1v Camera + 2213 Caplio R2 + 2214 Caplio GX 8 + 2215 DSC 725 + 2216 Caplio R3 + 2222 RDC-i500 +05cb PowerVision Technologies, Inc. + 1483 PV8630 interface (scanners, webcams) +05cc ELSA AG + 2100 MicroLink ISDN Office + 2219 MicroLink ISDN + 2265 MicroLink 56k + 2267 MicroLink 56k (V.250) + 2280 MicroLink 56k Fun + 3000 Micolink USB2Ethernet [pegasus] + 3100 AirLancer USB-11 + 3363 MicroLink ADSL Fun +05cd Silicom, Ltd +05ce sci-worx GmbH +05cf Sung Forn Co., Ltd +05d0 GE Medical Systems Lunar +05d1 Brainboxes, Ltd + 0003 Bluetooth Adapter BL-554 +05d2 Wave Systems Corp. +05d3 Tohoku Ricoh Co., Ltd +05d5 Super Gate Technology Co., Ltd +05d6 Philips Semiconductors, CICT +05d7 Thomas & Betts Corp. + 0099 10Mbps Ethernet [klsi] +05d8 Ultima Electronics Corp. + 4001 Artec Ultima 2000 + 4002 Artec Ultima 2000 (GT6801 based)/Lifetec LT9385/ScanMagic 1200 UB Plus Scanner + 4003 Artec E+ 48U + 4004 Artec E+ Pro + 4005 MEM48U + 4006 TRUST EASY WEBSCAN 19200 + 4007 TRUST 240H EASY WEBSCAN GOLD + 4008 Trust Easy Webscan 19200 + 4009 Umax Astraslim + 4013 IT Scan 1200 + 8105 Artec T1 USB TVBOX (cold) + 8106 Artec T1 USB TVBOX (warm) + 8107 Artec T1 USB TVBOX with AN2235 (cold) + 8108 Artec T1 USB TVBOX with AN2235 (warm) + 8109 Artec T1 USB2.0 TVBOX (cold +05d9 Axiohm Transaction Solutions + a225 A225 Printer + a758 A758 Printer + a794 A794 Printer +05da Microtek International, Inc. + 0091 ScanMaker X6u + 0093 ScanMaker V6USL + 0094 Phantom 336CX/C3 + 0099 ScanMaker X6/X6U + 009a Phantom C6 + 00a0 Phantom 336CX/C3 (#2) + 00a3 ScanMaker V6USL + 00ac ScanMaker V6UL + 00b6 ScanMaker V6UPL + 00ef ScanMaker V6UPL + 1006 Jenoptik JD350 entrance + 1011 NHJ Che-ez! Kiss Digital Camera + 1018 Digital Dream Enigma 1.3 + 1020 Digital Dream l'espion xtra + 1025 Take-it Still Camera Device + 1026 Take-it + 1043 Take-It 1300 DSC Bulk Driver + 1045 Take-it D1 + 1047 Take-it Camera Composite Device + 1048 Take-it Q3 + 1049 3M Still Camera Device + 1051 Camcorder Series + 1052 Mass Storage Device + 1053 Take-it DV Composite Device + 1054 Mass Storage Device + 1055 Digital Camera Series(536) + 1056 Mass Storage Device + 1057 Take-it DSC Camera Device(536) + 1058 Mass Storage Device + 1059 Camcorder DSC Series + 1060 Microtek Take-it MV500 + 2007 ArtixScan DI 1210 + 200c 1394_USB2 Scanner + 200e ArtixScan DI 810 + 2017 UF ICE Scanner + 201c 4800 Scanner + 201d ArtixScan DI 1610 + 201f 4800 Scanner-ICE + 202e ArtixScan DI 2020 + 208b ScanMaker 6800 + 208f ArtixScan DI 2010 + 209e ScanMaker 4700LP + 20a7 ScanMaker 5600 + 20b0 ScanMaker X12USL + 20b1 ScanMaker 8700 + 20b4 ScanMaker 4700 + 20bd ScanMaker 5700 + 20c9 ScanMaker 6700 + 20d2 Microtek ArtixScan 1800f + 20d6 PS4000 + 20de ScanMaker 9800XL + 20e0 ScanMaker 9700XL + 20ed ScanMaker 4700 + 20ee Micortek ScanMaker X12USL + 3008 Scanner + 300a 4800 ICE Scanner + 300b 4800 Scanner + 300f MiniScan C5 + 3020 4800dpi Scanner + 3021 1200dpi Scanner + 3022 Scanner 4800dpi + 3023 USB1200II Scanner + 30c1 USB600 Scanner + 30ce ScanMaker 3800 + 30cf ScanMaker 4800 + 30d4 USB1200 Scanner + 30d8 Scanner + 30d9 USB2400 Scanner + 30e4 ScanMaker 4100 + 30e5 USB3200 Scanner + 30e6 ScanMaker i320 + 40b3 ScanMaker 3600 + 40b8 ScanMaker 3700 + 40c7 ScanMaker 4600 + 40ca ScanMaker 3600 + 40cb ScanMaker 3700 + 40dd ScanMaker 3750i + 40ff ScanMaker 3600 + 5003 Goya + 5013 3200 Scanner + 80a3 ScanMaker V6USL (#2) + 80ac ScanMaker V6UL/SpicyU +05db Sun Corp. (Suntac?) + 0003 SUNTAC U-Cable type D2 + 0005 SUNTAC U-Cable type P1 + 0009 SUNTAC Slipper U + 000a SUNTAC Ir-Trinity + 000b SUNTAC U-Cable type A3 + 0011 SUNTAC U-Cable type A4 +05dc Lexar Media, Inc. + 0001 jumpSHOT CompactFlash Reader + 0002 JumpShot + 0003 JumpShot + 0080 Jumpdrive Secure 64MB + 0081 RBC Compact Flash Drive + 00a7 JumpDrive Impact + 0100 JumpDrive PRO + 0200 JumpDrive 2.0 Pro + 0300 Jumpdrive Geysr + 0301 JumpDrive Classic + 0302 JD Micro + 0303 JD Micro Pro + 0304 JD Secure II + 0310 JumpDrive + 0311 JumpDrive Classic + 0312 JD Micro + 0313 JD Micro Pro + 0320 JumpDrive + 0321 JD Micro + 0322 JD Micro Pro + 0323 UFC + 0330 JumpDrive Expression + 0340 JumpDrive TAD + 0350 Express Card + 0400 UFDC + 0401 UFDC + 0403 Locked B Device + 0405 Locked C Device + 0407 Locked D Device + 0409 Locked E Device + 040b Locked F Device + 040d Locked G Device + 040f Locked H Device + 0410 JumpDrive + 0411 JumpDrive + 0413 Locked J Device + 0415 Locked K Device + 0417 Locked L Device + 0419 Locked M Device + 041b Locked N Device + 041d Locked O Device + 041f Locked P Device + 0420 JumpDrive + 0421 JumpDrive + 0423 Locked R Device + 0425 Locked S Device + 0427 Locked T Device + 0429 Locked U Device + 042b Locked V Device + 042d Locked W Device + 042f Locked X Device + 0431 Locked Y Device + 0433 Locked Z Device + 4d02 MP3 Player + 4d12 MP3 Player + 4d30 MP3 Player + a300 JumpDrive2 + a400 JumpDrive trade; Pro 40-501 + a410 JumpDrive 128MB/256MB + a411 JumpDrive Traveler + a420 JumpDrive Pro + a421 JumpDrive Pro II + a422 JumpDrive Micro Pro + a430 JumpDrive Secure + a431 JumpDrive Secure II + a432 JumpDrive Classic + a440 JumpDrive Lightning + a450 JumpDrive TouchGuard + a460 JD Mercury + a501 JumpDrive Classic + a510 JumpDrive Sport + a530 JumpDrive Expression + a531 JumpDrive Secure II + a560 JumpDrive FireFly + a701 JumpDrive FireFly + a731 JumpDrive FireFly + a790 JumpDrive 2GB + b002 USB CF Reader + b018 Multi-Card Reader + b047 SDHC Reader [RW047-7000] +05dd Delta Electronics, Inc. + ff31 AWU-120 + ff32 FriendlyNET AeroLAN AL2011 + ff35 PCW 100 - Wireless 802.11b Adapter + ff91 2Wire PC Port Phoneline 10Mbps Adapter +05df Silicon Vision, Inc. +05e0 Symbol Technologies + 0700 Bar Code Scanner (CS1504) + 0800 Spectrum24 Wireless LAN Adapter + 1200 DS6608 Bar Code Scanner + 1900 SNAPI Imaging Device + 2000 MC3090 Rugged Mobile Computer + 200d MC70 Rugged Mobile Computer +05e1 Syntek Semiconductor Co., Ltd + 0100 802.11g + Bluetooth Wireless Adapter + 0408 STK1160 Video Capture Device + 0500 DC-112X Webcam + 0501 DC-1125 Webcam + 0890 STK011 Camera + 0892 STK013 Camera + 0895 STK016 Camera + 0896 STK017 Camera +05e2 ElecVision, Inc. +05e3 Genesys Logic, Inc. + 000a Keyboard with PS/2 Port + 000b Mouse + 0100 Nintendo Game Boy Advance SP + 0120 Pacific Image Electronics PrimeFilm 1800u slide/negative scanner + 0131 CF/SM Reader/Writer + 0142 Multiple Slides Scanner-3600 + 0143 Multiple Frames Film Scanner-36series + 0180 Plustek Scanner + 0182 Wize Media 1000 + 0189 ScanJet 4600 series + 018a Xerox 6400 + 0300 GLUSB98PT Parallel Port + 0301 USB2LPT Cable Release2 + 0406 Hub + 0501 GL620USB Host-Host interface + 0502 GL620USB-A GeneLink USB-USB Bridge + 0503 Webcam + 0504 HID Keyboard Filter + 0604 USB 1.1 Hub + 0605 USB 2.0 Hub [ednet] + 0606 USB 2.0 Hub / D-Link DUB-H4 USB 2.0 Hub + 0608 USB-2.0 4-Port HUB + 0660 USB 2.0 Hub + 0700 SIIG US2256 CompactFlash Card Reader + 0701 USB 2.0 IDE Adapter + 0702 USB 2.0 IDE Adapter [GL811E] + 0703 Card Reader + 0704 Card Reader + 0705 Card Reader + 0706 Card Reader + 0707 Card Reader + 0708 Card Reader + 0709 Card Reader + 070a Pen Flash + 070b DMHS1B Rev 3 DFU Adapter + 070e USB 2.0 Card Reader + 070f Pen Flash + 0710 USB 2.0 33-in-1 Card Reader + 0711 Card Reader + 0712 Delkin Mass Storage Device + 0715 USB 2.0 microSD Reader + 0716 USB 2.0 Multislot Card Reader/Writer + 0718 IDE/SATA Adapter + 0723 GL827L SD/MMC/MS Flash Card Reader + 0760 USB 2.0 Card Reader/Writer + 0761 Genesys Mass Storage Device + 0780 USBFS DFU Adapter + 07a0 Pen Flash + 0880 Wasp (SL-6612) + 0927 Card Reader + 1205 Afilias Optical Mouse H3003 + a700 Pen Flash + f102 VX7012 TV Box + f103 VX7012 TV Box + f104 VX7012 TV Box + fd21 3M TL20 Temperature Logger + fe00 Razer Mouse +05e4 Red Wing Corp. +05e5 Fuji Electric Co., Ltd +05e6 Keithley Instruments +05e8 ICC, Inc. +05e9 Kawasaki LSI + 0008 KL5KUSB101B Ethernet [klsi] + 0009 Sony 10Mbps Ethernet [pegasus] + 000c USB-to-RS-232 + 000d USB-to-RS-232 + 0014 RS-232 J104 + 0040 Ethernet Adapter + 2008 Ethernet Adapter +05eb FFC, Ltd +05ec COM21, Inc. +05ee Cytechinfo Inc. +05ef AVB, Inc. [anko?] + 020a Top Shot Pegasus Joystick + 8884 Mag Turbo Force Wheel + 8888 Top Shot Force Feedback Racing Wheel +05f0 Canopus Co., Ltd + 0101 DA-Port DAC +05f1 Compass Communications +05f2 Dexin Corp., Ltd + 0010 AQ Mouse +05f3 PI Engineering, Inc. + 0007 Kinesis Advantage PRO MPC/USB Keyboard + 0081 Kinesis Integrated Hub + 00ff VEC Footpedal + 020b PS2 Adapter + 0232 X-Keys Switch Interface, Programming Mode + 0261 X-Keys Switch Interface, SPLAT Mode + 0264 X-Keys Switch Interface, Composite Mode +05f5 Unixtar Technology, Inc. +05f6 AOC International +05f7 RFC Distribution(s) PTE, Ltd +05f9 PSC Scanning, Inc. + 2602 Datalogic Magellan 1100i Barcode Scanner +05fa Siemens Telecommunications Systems, Ltd + 3301 Keyboard with PS/2 Mouse Port + 3302 Keyboard + 3303 Keyboard with PS/2 Mouse Port +05fc Harman Multimedia + 7849 Harman/Kardon SoundSticks +05fd InterAct, Inc. + 0239 SV-239 HammerHead Digital + 0251 Raider Pro + 0253 ProPad 8 Digital + 0286 SV-286 Cyclone Digital + 107a PowerPad Pro X-Box pad + 262a 3dfx HammerHead FX + 262f HammerHead Fx + daae Game Shark +05fe Chic Technology Corp. + 0001 Mouse + 0003 Cypress USB Mouse + 0005 Viewmaster 4D Browser Mouse + 0007 Twinhead Mouse + 0009 Inland Pro 4500/5000 Mouse + 0011 Browser Mouse + 0014 Gamepad + 1010 Optical Wireless +05ff LeCroy Corp. +0600 Barco Display Systems +0601 Jazz Hipster Corp. + 0003 Internet Security Co., Ltd. SecureKey +0602 Vista Imaging, Inc. + 1001 ViCam Webcam +0603 Novatek Microelectronics Corp. + 00f1 Keyboard + 6871 Mouse +0604 Jean Co., Ltd +0605 Anchor C&C Co., Ltd +0606 Royal Information Electronics Co., Ltd +0607 Bridge Information Co., Ltd +0608 Genrad Ads +0609 SMK Manufacturing, Inc. + 031d eHome Infrared Receiver + 0322 eHome Infrared Receiver + 0334 eHome Infrared Receiver + ff12 SMK Bluetooth Device +060a Worthington Data Solutions, Inc. +060b Solid Year + 0001 MacAlly Keyboard + 1006 Japanese Keyboard - 260U + 2101 Keyboard + 2231 KSK-6001 UELX Keyboard + 5811 ACK-571U Wireless Keyboard + 5903 Japanese Keyboard - 595U + 6001 SolidTek USB 2p HUB + 6002 SolidTek USB Keyboard + 6003 Japanese Keyboard - 600HM + a001 Maxwell Compact Pc PM3 +060c EEH Datalink GmbH +060d Auctor Corp. +060e Transmonde Technologies, Inc. +060f Joinsoon Electronics Mfg. Co., Ltd +0610 Costar Electronics, Inc. +0611 Totoku Electric Co., Ltd +0613 TransAct Technologies, Inc. +0614 Bio-Rad Laboratories +0615 Quabbin Wire & Cable Co., Inc. +0616 Future Techno Designs PVT, Ltd +0617 Swiss Federal Insitute of Technology +0618 MacAlly + 0101 Mouse +0619 Seiko Instruments, Inc. + 0101 SLP-100 Driver + 0102 SLP-200 Driver + 0103 SLP-100N Driver + 0104 SLP-200N Driver + 0105 SLP-240 Driver + 0501 SLP-440 Driver + 0502 SLP-450 Driver +061a Veridicom International, Inc. + 0110 5thSense Fingerprint Sensor + 0200 FPS200 Fingerprint Sensor + 8200 VKI-A Fingerprint Sensor/Flash Storage (dumb) + 9200 VKI-B Fingerprint Sensor/Flash Storage (smart) +061b Promptus Communications, Inc. +061c Act Labs, Ltd +061d Quatech, Inc. +061e Nissei Electric Co. + 0001 nissei 128DE-USB - + 0010 nissei 128DE-PNA - +0620 Alaris, Inc. + 0004 QuickVideo weeCam + 0007 QuickVideo weeCam + 000a QuickVideo weeCam + 000b QuickVideo weeCam +0621 ODU-Steckverbindungssysteme GmbH & Co. KG +0622 Iotech, Inc. +0623 Littelfuse, Inc. +0624 Avocent Corp. + 0294 Dell 03R874 KVM dongle +0625 TiMedia Technology Co., Ltd +0626 Nippon Systems Development Co., Ltd +0627 Adomax Technology Co., Ltd +0628 Tasking Software, Inc. +0629 Zida Technologies, Ltd +062a Creative Labs + 0000 Optical mouse + 0001 Notebook Optical Mouse + 0102 Wireless Keyboard/Mouse Combo [MK1152WC] + 0201 Defender Office Keyboard (K7310) S Zodiak KM-9010 + 0252 Emerge Uni-retractable Laser Mouse + 9003 VoIP Conference Hub (A16GH) + 9004 USR9602 USB Internet Mini Phone +062b Greatlink Electronics Taiwan, Ltd +062c Institute for Information Industry +062d Taiwan Tai-Hao Enterprises Co., Ltd +062e Mainsuper Enterprises Co., Ltd +062f Sin Sheng Terminal & Machine, Inc. +0631 JUJO Electronics Corp. +0633 Cyrix Corp. +0634 Micron Technology, Inc. +0635 Methode Electronics, Inc. +0636 Sierra Imaging, Inc. + 0003 Vivicam 35Xx +0638 Avision, Inc. + 0268 iVina 1200U Scanner + 026a Minolta Dimage Scan Dual II + 0a10 iVina FB1600/UMAX Astra 4500 + 0a13 AV600U + 0a16 SC-215 + 0a30 UMAX Astra 6700 Scanner + 0a41 Avision AM3000/MF3000 Series + 0f01 fi-4010CU + 4004 Minolta Dimage Scan Elite II +0639 Chrontel, Inc. +063a Techwin Corp. +063b Taugagreining HF +063c Yamaichi Electronics Co., Ltd (Sakura) +063d Fong Kai Industrial Co., Ltd +063e RealMedia Technology, Inc. +063f New Technology Cable, Ltd +0640 Hitex Development Tools + 0026 LPC-Stick +0641 Woods Industries, Inc. +0642 VIA Medical Corp. +0644 TEAC Corp. + 0000 Floppy + 0200 All-In-One Multi-Card Reader CA200/B/S + 1000 CD-ROM Drive + 800d TASCAM Portastudio DP-01FX + 800e TASCAM US-122L + 8021 TASCAM US-122mkII + d001 CD-R/RW Unit + d002 CD-R/RW Unit + d010 CD-RW/DVD Unit +0645 Who? Vision Systems, Inc. +0646 UMAX +0647 Acton Research Corp. + 0100 ARC SpectraPro UV/VIS/IR Monochromator/Spectrograph + 0101 ARC AM-VM Mono Airpath/Vacuum Monochromator/Spectrograph + 0102 ARC Inspectrum Mono + 0103 ARC Filterwheel + 03e9 Inspectrum 128x1024 F VIS Spectrograph + 03ea Inspectrum 256x1024 F VIS Spectrograph + 03eb Inspectrum 128x1024 B VIS Spectrograph + 03ec Inspectrum 256x1024 B VIS Spectrograph +0648 Inside Out Networks +0649 Weli Science Co., Ltd +064b Analog Devices, Inc. (White Mountain DSP) + 0165 Blackfin 535 [ADZS HPUSB ICE] +064c Ji-Haw Industrial Co., Ltd +064d TriTech Microelectronics, Ltd +064e Suyin Corp. + a100 Acer OrbiCam + a101 Acer CrystalEye Webcam + a102 Acer/Lenovo Webcam [CN0316] + a103 Acer/HP Integrated Webcam [CN0314] + a110 HP Webcam + a136 Asus Integrated Webcam [CN031B] + a219 1.3M WebCam (notebook emachines E730, Acer sub-brand) + c107 HP webcam [dv6-1190en] + d101 Acer CrystalEye Webcam + e201 Lenovo Integrated Webcam + e203 Lenovo Integrated Webcam + f102 Lenovo Integrated Webcam [R5U877] + f103 Lenovo Integrated Webcam [R5U877] +064f WIBU-Systems AG + 03e9 Propellerhead Record Ignition Key + 03f2 CmStick/M (article no. 1010) + 03f3 CmStick/M (article no. 1011) + 0bd7 BOX/U + 0bd8 BOX/RU +0650 Dynapro Systems +0651 Likom Technology Sdn. Bhd. +0652 Stargate Solutions, Inc. +0653 CNF, Inc. +0654 Granite Microsystems, Inc. + 0005 Device Bay Controller + 0006 Hub + 0007 Device Bay Controller + 0016 Hub +0655 Space Shuttle Hi-Tech Co., Ltd +0656 Glory Mark Electronic, Ltd +0657 Tekcon Electronics Corp. +0658 Sigma Designs, Inc. +0659 Aethra +065a Optoelectronics Co., Ltd + 0001 Barcode scanner +065b Tracewell Systems +065e Silicon Graphics +065f Good Way Technology Co., Ltd & GWC technology Inc. +0660 TSAY-E (BVI) International, Inc. +0661 Hamamatsu Photonics K.K. +0662 Kansai Electric Co., Ltd +0663 Topmax Electronic Co., Ltd + 0103 CobraPad +0664 Groovy Technology Corp. + 0301 GTouch Touch Screen + 0302 GTouch Touch Screen + 0303 GTouch Touch Screen + 0304 GTouch Touch Screen + 0305 GTouch Touch Screen + 0306 GTouch Touch Screen + 0307 GTouch Touch Screen + 0309 GTouch Touch Screen +0665 Cypress Semiconductor + 5161 USB to Serial +0667 Aiwa Co., Ltd + 0fa1 TD-U8000 Tape Drive +0668 WordWand +0669 Oce' Printing Systems GmbH +066a Total Technologies, Ltd +066b Linksys, Inc. + 0105 SCM eUSB SmartMedia Card Reader + 010a Melco MCR-U2 SmartMedia / CompactFlash Reader + 200c USB10TX + 2202 USB10TX Ethernet [pegasus] + 2203 USB100TX Ethernet [pegasus] + 2204 USB100TX HomePNA Ethernet [pegasus] + 2206 USB Ethernet [pegasus] + 2207 HomeLink Phoneline 10M Network Adapter + 2211 WUSB11 802.11b Adapter + 2212 WUSB11v2.5 802.11b Adapter + 2213 WUSB12v1.1 802.11b Adapter + 2219 Instant Wireless Network Adapter + 400b USB10TX +066d Entrega, Inc. +066e Acer Semiconductor America, Inc. +066f SigmaTel, Inc. + 003b MP3 Player + 003e MP3 Player + 003f MP3 Player + 0040 MP3 Player + 0041 MP3 Player + 0042 MP3 Player + 0043 MP3 Player + 004b A-Max PA11 MP3 Player + 3400 STMP3400 D-Major MP3 Player + 3410 STMP3410 D-Major MP3 Player + 3500 Player Recovery Device + 4200 STIr4200 IrDA Bridge + 4210 STIr4210 IrDA Bridge + 8000 MSCN MP3 Player + 8001 SigmaTel MSCN Audio Player + 8004 MSCNMMC MP3 Player + 8008 i-Bead 100 MP3 Player + 8020 MP3 Player + 8034 MP3 Player + 8036 MP3 Player + 8038 MP3 Player + 8056 MP3 Player + 8060 MP3 Player + 8066 MP3 Player + 807e MP3 Player + 8092 MP3 Player + 8096 MP3 Player + 809a MP3 Player + 80aa MP3 Player + 80ac MP3 Player + 80b8 MP3 Player + 80ba MP3 Player + 80bc MP3 Player + 80bf MP3 Player + 80c5 MP3 Player + 80c8 MP3 Player + 80ca MP3 Player + 80cc MP3 Player + 8104 MP3 Player + 8106 MP3 Player + 8108 MP3 Player + 810a MP3 Player + 810c MP3 Player + 8122 MP3 Player + 8124 MP3 Player + 8126 MP3 Player + 8128 MP3 Player + 8134 MP3 Player + 8136 MP3 Player + 8138 MP3 Player + 813a MP3 Player + 813e MP3 Player + 8140 MP3 Player + 8142 MP3 Player + 8144 MP3 Player + 8146 MP3 Player + 8148 MP3 Player + 814c MP3 Player + 8201 MP3 Player + 8202 Jens of Sweden / I-BEAD 150M/150H MP3 player + 8203 MP3 Player + 8204 MP3 Player + 8205 MP3 Player + 8206 Digital MP3 Music Player + 8207 MP3 Player + 8208 MP3 Player + 8209 MP3 Player + 820a MP3 Player + 820b MP3 Player + 820c MP3 Player + 820d MP3 Player + 820e MP3 Player + 820f MP3 Player + 8210 MP3 Player + 8211 MP3 Player + 8212 MP3 Player + 8213 MP3 Player + 8214 MP3 Player + 8215 MP3 Player + 8216 MP3 Player + 8217 MP3 Player + 8218 MP3 Player + 8219 MP3 Player + 821a MP3 Player + 821b MP3 Player + 821c MP3 Player + 821d MP3 Player + 821e MP3 Player + 821f MP3 Player + 8220 MP3 Player + 8221 MP3 Player + 8222 MP3 Player + 8223 MP3 Player + 8224 MP3 Player + 8225 MP3 Player + 8226 MP3 Player + 8227 MP3 Player + 8228 MP3 Player + 8229 MP3 Player + 8230 MP3 Player + 829c MP3 Player + 82e0 MP3 Player + 835d MP3 Player + 9000 MP3 Player + 9001 MP3 Player + 9002 MP3 Player +0670 Sequel Imaging + 0001 Calibrator + 0005 Enable Cable +0672 Labtec, Inc. + 1041 LCS1040 Speaker System + 5000 SpaceBall 4000 FLX +0673 HCL + 5000 Keyboard +0674 Key Mouse Electronic Enterprise Co., Ltd +0675 DrayTek Corp. + 0110 Vigor 128 ISDN TA + 0530 Vigor530 IEEE 802.11G Adapter (ISL3880+NET2280) + 0550 Vigor550 + 1688 miniVigor 128 ISDN TA + 6694 USB ISDN TA +0676 Teles AG +0677 Aiwa Co., Ltd + 07d5 TM-ED1285(USB) + 0fa1 TD-U8000 Tape Drive +0678 ACard Technology Corp. +067b Prolific Technology, Inc. + 0000 PL2301 USB-USB Bridge + 0001 PL2302 USB-USB Bridge + 0307 Motorola Serial Adapter + 04bb PL2303 Serial (IODATA USB-RSAQ2) + 0610 Onext EG210U MODEM + 0611 AlDiga AL-11U Quad-band GSM/GPRS/EDGE modem + 2303 PL2303 Serial Port + 2305 PL2305 Parallel Port + 2306 Raylink Bridge Controller + 2307 PL2307 USB-ATAPI4 Bridge + 2313 FITEL PHS U Cable Adaptor + 2315 Flash Disk Embedded Hub + 2316 Flash Disk Security Device + 2317 Mass Storage Device + 2501 PL2501 USB-USB Bridge (USB 2.0) + 2507 PL2507 Hi-speed USB to IDE bridge controller + 2515 Flash Disk Embedded Hub + 2517 Flash Disk Mass Storage Device + 25a1 PL25A1 Host-Host Bridge + 3400 Hi-Speed Flash Disk with TruePrint AES3400 + 3500 Hi-Speed Flash Disk with TruePrint AES3500 + 3507 PL3507 ATAPI6 Bridge + aaa0 Prolific Pharos + aaa2 PL2303 Serial Adapter (IODATA USB-RSAQ3) +067c Efficient Networks, Inc. + 1001 Siemens SpeedStream 100MBps Ethernet + 1022 Siemens SpeedStream 1022 802.11b Adapter + 1023 SpeedStream Wireless + 4020 SpeedStream 4020 ATM/ADSL Installer + 4031 Efficient ADSL Modem + 4032 SpeedStream 4031 ATM/ADSL Installer + 4033 SpeedStream 4031 ATM/ADSL Installer + 4060 Alcatel Speedstream 4060 ADSL Modem + 4062 Efficient Networks 4060 Loader + 5667 Efficient Networks Virtual Bus for ADSL Modem + c031 SpeedStream 4031 ATM/ADSL Installer + c032 SpeedStream 4031 ATM/ADSL Installer + c033 SpeedStream 4031 ATM/ADSL Installer + c060 SpeedStream 4060 Miniport ATM/ADSL Adapter + d667 Efficient Networks Virtual Bus for ADSL Modem + e240 Speedstream Ethernet Adapter E240 + e540 Speedstream Ethernet Adapter E240 +067d Hohner Corp. +067e Intermec Technologies Corp. + 0801 HID Keyboard, Barcode scanner + 0803 VCP, Barcode scanner + 0805 VCP + UVC, Barcode scanner + 1001 Mobile Computer +067f Virata, Ltd + 4552 DSL-200 ADSL Modem + 6542 DSL Modem + 6549 DSL Modem + 7541 DSL Modem +0680 Realtek Semiconductor Corp., CPP Div. (Avance Logic) + 0002 Arowana Optical Wheel Mouse MSOP-01 +0681 Siemens Information and Communication Products + 0001 Dect Base + 0002 Gigaset 3075 Passive ISDN + 0005 ID-Mouse with Fingerprint Reader + 0012 I-Gate 802.11b Adapter + 001b WLL013 + 001d Hipath 1000 + 0022 Gigaset SX353 ISDN + 0026 DECT Data - Gigaset M34 + 002b A-100-I ADSL Modem + 002e ADSL Router_S-141 + 0034 GSM module MC35/ES75 USB Modem + 3c06 54g USB Network Adapter +0682 Victor Company of Japan, Ltd +0684 Actiontec Electronics, Inc. +0686 Minolta Co., Ltd + 2001 PagePro 4110W + 2004 PagePro 1200W + 2005 Magicolor 2300 DL + 3001 PagePro 4100 + 3005 PagePro 1250E + 3006 PagePro 1250W + 3009 Magicolor 2300W + 300b PagePro 1350W + 300c PagePro 1300W + 302e Develop D 1650iD PCL + 3034 Develop D 2050iD PCL + 4001 Dimage 2300 + 4003 Dimage 2330 Zoom Camera + 4004 Scan Elite II + 4005 Minolta DiMAGE E201 Mass Storage Device + 4006 Dimage 7 Camera + 4007 Dimage S304 Camera + 4008 Dimage 5 Camera + 4009 Dimage X Camera + 400a Dimage S404 Camera + 400b Dimage 7i Camera + 400c Dimage F100 Camera + 400d Scan Dual III + 400e Dimage 5400 + 400f Dimage 7Hi Camera + 4010 Dimage Xi Camera + 4011 Dimage F300 Camera + 4012 Dimage F200 Camera + 4014 Dimage S414 Camera + 4015 Dimage XT Camera [storage] + 4016 Dimage XT Camera [remote mode] + 4017 Dimage E223 + 4018 Dimage Z1 Camera + 4019 Dimage A1 Camera [remote mode] + 401a Dimage A1 Camera [storage] + 401c Dimage X20 Camera + 401e Dimage E323 Camera +068a Pertech, Inc. +068b Potrans International, Inc. +068e CH Products, Inc. + 00d3 OEM 3 axis 5 button joystick + 00e2 HFX OEM Joystick + 00f1 Pro Throttle + 00f2 Flight Sim Pedals + 00f3 Fighterstick + 00f4 Combatstick + 00fa Flight Sim Pedals + 00ff Flight Sim Yoke + 0500 GameStick 3D + 0501 CH Pro Pedals + 0504 F-16 Combat Stick +0690 Golden Bridge Electech, Inc. +0693 Hagiwara Sys-Com Co., Ltd + 0002 FlashGate SmartMedia Card Reader + 0003 FlashGate CompactFlash Card Reader + 0005 FlashGate + 0006 SM PCCard R/W and SPD + 0007 FlashGate ME (Authenticated) + 000a SDCard/MMC Reader/Writer +0694 Lego Group + 0001 Mindstorms Tower + 0002 Mindstorms NXT +0698 Chuntex (CTX) + 1786 1300ex Monitor + 2003 CTX M730V built in Camera + 9999 VLxxxx Monitor+Hub +0699 Tektronix, Inc. +069a Askey Computer Corp. + 0001 VC010 Webcam [pwc] + 0303 Cable Modem + 0311 ADSL Router Remote NDIS Device + 0318 Remote NDIS Device + 0319 220V Remote NDIS Device + 0320 IEEE 802.11b Wireless LAN Card + 0321 Dynalink WLL013 / Compex WLU11A 802.11b Adapter + 0402 Scientific Atlanta WebSTAR 100 & 200 series Cable Modem + 0811 BT Virtual Bus for Helium + 0821 BT Voyager 1010 802.11b Adapter + 4402 Scientific Atlanta WebSTAR 2000 series Cable Modem + 4403 Scientific Atlanta WebSTAR 300 series Cable Modem + 4501 Scientific-Atlanta WebSTAR 2000 series Cable Modem +069b Thomson, Inc. + 0704 DCM245 Cable Modem + 0705 THG540K Cable Modem + 070c MP3 Player + 070d MP3 Player + 070e MP3 Player + 070f RCA Lyra RD1071 MP3 Player + 0731 Lyra M200E256 + 0761 RCA H100A + 0778 PEARL USB Device + 2220 RCA Kazoo RD1000 MP3 Player + 300a RCA Lyra MP3 Player + 3012 MP3 Player + 3013 MP3 Player + 5557 RCA CDS6300 +069d Hughes Network Systems (HNS) + 0001 Satellite Receiver Device + 0002 Satellite Device +069e Marx + 0005 CryptoBox v1.2 +069f Allied Data Technologies BV + 0010 Tornado Speakerphone FaxModem 56.0 + 0011 Tornado Speakerphone FaxModem 56.0 + 1000 ADT VvBus for CopperJet + 1004 CopperJet 821 RouterPlus +06a2 Topro Technology, Inc. + 0033 USB Mouse +06a3 Saitek PLC + 0006 Cyborg Gold Joystick + 0109 P880 Pad + 0160 ST290 Pro + 0200 Xbox Adrenalin Hub + 0241 Xbox Adrenalin Gamepad + 0255 X52 Flight Controller + 040b P990 Dual Analog Pad + 040c P2900 Wireless Pad + 0422 ST90 Joystick + 0460 ST290 Pro Flight Stick + 0463 ST290 + 0464 Cyborg Evo + 0471 Cyborg Graphite Stick + 0501 R100 Sports Wheel + 0502 ST200 Stick + 0506 R220 Digital Wheel + 051e Cyborg Digital II Stick + 052d P750 Gamepad + 053c X45 Flight Controller + 053f X36F Flightstick + 056c P2000 Tilt Pad + 056f P2000 Tilt Pad + 05d2 PC Dash 2 + 075c X52 Flight Controller + 0762 Saitek X52 Pro Flight Control System + 0805 R440 Force Wheel + 1003 GM2 Action Pad + 1009 Action Pad + 100a SP550 Pad and Joystick Combo + 100b SP550 Pad + 1509 P3000 Wireless Pad + 1589 P3000 Wireless Pad + 2541 X45 Flight Controller + 3509 P3000 RF GamePad + 353e Cyborg Evo Wireless + 3589 P3000 Wireless Pad + 35be Cyborg Evo + 5509 P3000 Wireless Pad + 8000 Gamers' Keyboard + 801e Cyborg 3D Digital Stick II + 8020 Eclipse Keyboard + 8021 Eclipse II Keyboard + 802d P750 Pad + 803f X36 Flight Controller + 806f P2000 Tilt Pad + 80c0 Pro Gamer Command Unit + 80c1 Cyborg Command Pad Unit + a502 Gaming Mouse + f518 P3200 Rumble Force Game Pad + ff04 R440 Force Wheel + ff0c Cyborg Force Rumble Pad + ff0d P2600 Rumble Force Pad + ff12 Cyborg 3D Force Stick + ff17 ST 330 Rumble Force Stick + ff52 Cyborg 3D Rumble Force Joystick + ffb5 Cyborg Evo Force Joystick +06a4 Xiamen Doowell Electron Co., Ltd +06a5 Divio + 0000 Typhoon Webcam 100k [nw8000] + d001 ProLink DS3303u Webcam + d800 Chicony TwinkleCam + d820 Wize Media 1000 +06a7 MicroStore, Inc. +06a8 Topaz Systems, Inc. + 0042 SignatureGem 1X5 Pad + 0043 SignatureGem 1X5-HID Pad +06a9 Westell + 0005 WireSpeed Dual Connect Modem + 0006 WireSpeed Dual Connect Modem + 000a WireSpeed Dual Connect Modem + 000b WireSpeed Dual Connect Modem + 000e A90-211WG-01 802.11g Adapter [Intersil ISL3887] +06aa Sysgration, Ltd +06ac Fujitsu Laboratories of America, Inc. +06ad Greatland Electronics Taiwan, Ltd +06ae Professional Multimedia Testing Centre +06af Harting, Inc. of North America +06b8 Pixela Corp. +06b9 Alcatel Telecom + 0120 SpeedTouch 120g 802.11g Wireless Adapter [Intersil ISL3886] + 0121 SpeedTouch 121g Wireless Dongle + 2001 SPEED TOUCH Card + 4061 SpeedTouch ISDN or ADSL Modem + a5a5 DynaMiTe Modem +06ba Smooth Cord & Connector Co., Ltd +06bb EDA, Inc. +06bc Oki Data Corp. + 000b Okipage 14ex Printer + 0a91 B2500MFP (printer+scanner) + 3801 B6100 Laser Printer +06bd AGFA-Gevaert NV + 0001 SnapScan 1212U + 0002 SnapScan 1236U + 0100 SnapScan Touch + 0101 SNAPSCAN ELITE + 0200 ScanMaker 8700 + 02bf DUOSCAN f40 + 0400 CL30 + 0401 Mass Storage + 0403 ePhoto CL18 Camera + 0404 ePhoto CL20 Camera + 2061 SnapScan 1212U (?) + 208d Snapscan e40 + 208f SnapScan e50 + 2091 SnapScan e20 + 2093 SnapScan e10 + 2095 SnapScan e25 + 2097 SnapScan e26 + 20fd SnapScan e52 + 20ff SnapScan e42 +06be AME Optimedia Technology Co., Ltd + 0800 Optimedia Camera + 1005 Dazzle DPVM! (1005) + d001 P35U Camera Capture +06bf Leoco Corp. +06c2 Phidgets Inc. (formerly GLAB) + 0030 PhidgetRFID + 0038 4-Motor PhidgetServo v3.0 + 0039 1-Motor PhidgetServo v3.0 + 003a 8-Motor PhidgetAvancedServo + 0040 PhidgetInterface Kit 0-0-4 + 0044 PhidgetInterface Kit 0-16-16 + 0045 PhidgetInterface Kit 8-8-8 + 0048 PhidgetStepper (Under Development) + 0049 PhidgetTextLED Ver 1.0 + 004a PhidgetLED Ver 1.0 + 004b PhidgetEncoder Ver 1.0 + 0051 PhidgetInterface Kit 0-5-7 (Custom) + 0052 PhidgetTextLCD + 0053 PhidgetInterfaceKit 0-8-8 + 0058 PhidgetMotorControl Ver 1.0 + 0070 PhidgetTemperatureSensor Ver 1.0 + 0071 PhidgetAccelerometer Ver 1.0 + 0072 PhidgetWeightSensor Ver 1.0 + 0073 PhidgetHumiditySensor + 0074 PhidgetPHSensor + 0075 PhidgetGyroscope +06c4 Bizlink International Corp. +06c5 Hagenuk, GmbH +06c6 Infowave Software, Inc. +06c8 SIIG, Inc. +06c9 Taxan (Europe), Ltd + 0005 Monitor Control + 0007 Monitor Control + 0009 Monitor Control +06ca Newer Technology, Inc. +06cb Synaptics, Inc. + 0001 HID Device + 0002 HID Device + 0003 HID Device + 0005 Touchpad/FPS + 0006 HID Device + 0007 HID Device + 0008 HID Device + 0009 Composite TouchPad and TrackPoint + 000e HID Device + 0010 Composite Human Interface Device + 0013 Human Interface Device +06cc Terayon Communication Systems + 0101 Cable Modem + 0102 Cable Modem + 0103 Cable Modem + 0104 Cable Modem + 0304 Cable Modem +06cd Keyspan + 0101 USA-28 PDA [no firmware] + 0102 USA-28X PDA [no firmware] + 0103 USA-19 PDA [no firmware] + 0104 PDA [prerenum] + 0105 USA-18X PDA [no firmware] + 0106 USA-19W PDA [no firmware] + 0107 USA-19 PDA + 0108 USA-19W PDA + 0109 USA-49W serial adapter [no firmware] + 010a USA-49W serial adapter + 010b USA-19Qi serial adapter [no firmware] + 010c USA-19Qi serial adapter + 010d USA-19Q serial Adapter (no firmware) + 010e USA-19Q serial Adapter + 010f USA-28 PDA + 0110 USA-28Xb PDA + 0111 USA-18 serial Adapter + 0112 USA-18X PDA + 0113 USA-28Xb PDA [no firmware] + 0114 USA-28Xa PDA [no firmware] + 0115 USA-28Xa PDA + 0116 USA-18XA serial Adapter (no firmware) + 0117 USA-18XA serial Adapter + 0118 USA-19QW PDA [no firmware] + 0119 USA-19QW PDA + 011a USA-49Wlc serial adapter [no firmware] + 011b MPR Serial Preloader (MPRQI) + 011c MPR Serial (MPRQI) + 011d MPR Serial Preloader (MPRQ) + 011e MPR Serial (MPRQ) + 0121 USA-19hs serial adapter + 012a USA-49Wlc serial adapter + 0201 UIA-10 Digital Media Remote [Cypress AN2131SC] + 0202 UIA-11 Digital Media Remote +06cf SpheronVR AG + 1010 PanoCam 10 + 1012 PanoCam 12/12X +06d0 LapLink, Inc. + 0622 LapLink Gold USB-USB Bridge [net1080] +06d1 Daewoo Electronics Co., Ltd +06d3 Mitsubishi Electric Corp. + 0380 CP8000D Port + 0381 CP770D Port + 0385 CP900D Port + 0387 CP980D Port + 038b CP3020D Port + 038c CP900DW(ID) Port + 0393 CP9500D/DW Port + 0394 CP9000D/DW Port + 03a1 CP9550D/DW Port +06d4 Cisco Systems +06d5 Toshiba + 4000 Japanese Keyboard +06d6 Aashima Technology B.V. + 0025 Gamepad + 0026 Predator TH 400 Gamepad + 002d Trust PowerC@m 350FT + 002e Trust PowerC@m 350FS + 0030 Trust 710 LCD POWERC@M ZOOM - MSD + 0031 Trust 610/710 LCD POWERC@M ZOOM + 003a Trust PowerC@m 770Z (mass storage mode) + 003b Trust PowerC@m 770Z (webcam mode) + 003c Trust 910z PowerC@m + 003f Trust 735S POWERC@M ZOOM, WDM DSC Bulk Driver + 0050 Trust 738AV LCD PV Digital Camera + 0062 TRUST 782AV LCD P. V. Video Capture + 0066 TRUST Digital PCTV and Movie Editor + 0067 Trust 350FS POWERC@M FLASH + 006b TRUST AUDIO VIDEO EDITOR +06d7 Network Computing Devices (NCD) +06d8 Technical Marketing Research, Inc. +06da Phoenixtec Power Co., Ltd + 0002 UPS + 0003 1300VA UPS +06db Paradyne +06dc Foxlink Image Technology Co., Ltd + 0012 Scan 1200c Scanner + 0014 Prolink Winscan Pro 2448U +06de Heisei Electronics Co., Ltd +06e0 Multi-Tech Systems, Inc. + f101 MT5634ZBA-USB MultiModemUSB (old firmware) + f103 MT5634MU MultiMobileUSB + f104 MT5634ZBA-USB MultiModemUSB (new firmware) + f107 MT5634ZBA-USB-V92 MultiModemUSB +06e1 ADS Technologies, Inc. + 0008 UBS-10BT Ethernet [klsi] + 0009 UBS-10BT Ethernet + 0833 Mass Storage Device + a155 FM Radio Receiver/Instant FM Music (RDX-155-EF) + a160 Instant Video-To-Go RDX-160 (no firmware) + a161 Instant Video-To-Go RDX-160 + a190 Instand VCD Capture + a191 Instant VideoXpress + a337 Mini DigitalTV + a701 DVD Xpress + b337 Mini DigitalTV + b701 DVD Xpress B +06e4 Alcatel Microelectronics +06e6 Tiger Jet Network, Inc. + 0200 Internet Phone + 0201 Internet Phone + 0202 Composite Device + 0203 Internet Phone + 0210 Composite Device + 0211 Internet Phone + 0212 Internet Phone + 031c Internet Phone + 031d Internet Phone + 031e Internet Phone + 3200 Composite Device + 3201 Internet Phone + 3202 Composite Device + 3203 Composite Device + 7200 Composite Device + 7210 Composite Device + 7250 Composite Device + 825c Internet Phone + 831c Internet Phone + 831d Composite Device + 831e Composite Device + b200 Composite Device + b201 Composite Device + b202 Internet Phone + b210 Internet Phone + b211 Composite Device + b212 Composite Device + b250 Composite Device + b251 Internet Phone + b252 Internet Phone + c200 Internet Phone + c201 Internet Phone + c202 Composite Device + c203 Internet Phone + c210 Personal PhoneGateway + c211 Personal PhoneGateway + c212 Personal PhoneGateway + c213 PPG Device + c25c Composite Device + c290 PPG Device + c291 PPG Device + c292 PPG Device + c293 Personal PhoneGateway + c31c Composite Device + c39c Personal PhoneGateway + c39d PPG Device + c39e PPG Device + c39f PPG Device + c700 Internet Phone + c701 Internet Phone + c702 Composite Device + c703 Internet Phone + c710 VoIP Combo Device + c711 VoIP Combo + c712 VoIP Combo Device + c713 VoIP Combo Device + cf00 Composite Device + cf01 Internet Phone + cf02 Internet Phone + cf03 Composite Device + d210 Personal PhoneGateway + d211 PPG Device + d212 PPG Device + d213 Personal PhoneGateway + d700 Composite Device + d701 Composite Device + d702 Internet Phone + d703 Composite Device + d710 VoIP Combo + d711 VoIP Combo Device + d712 VoIP Combo + d713 VoIP Combo + df00 Composite Device + df01 Composite Device + df02 Internet Phone + df03 Internet Phone + f200 Internet Phone + f201 Internet Phone + f202 Composite Device + f203 Composite Device + f210 Internet Phone + f250 Composite Device + f252 Internet Phone + f310 Internet Phone + f350 Composite Device +06ea Sirius Technologies + 0001 NetCom Roadster II 56k + 0002 Roadster II 56k +06eb PC Expert Tech. Co., Ltd +06ef I.A.C. Geometrische Ingenieurs B.V. +06f0 T.N.C Industrial Co., Ltd + de01 DualCam Video Camera + de02 DualCam Still Camera +06f1 Opcode Systems, Inc. + a011 SonicPort + a021 SonicPort Optical +06f2 Emine Technology Co. + 0011 KVM Switch Keyboard +06f6 Wintrend Technology Co., Ltd +06f7 Wailly Technology Ltd + 0003 USB->Din 4 Adaptor +06f8 Guillemot Corp. + 3002 Hercules Blog Webcam + 3004 Hercules Classic Silver + 3005 Hercules Dualpix Exchange + 3007 Hercules Dualpix Chat and Show + a300 Dual Analog Leader GamePad + b000 Hercules DJ Console + c000 Hercules Muse Pocket + d002 Hercules DJ Console + e000 HWGUSB2-54 WLAN + e010 HWGUSB2-54-LB + e020 HWGUSB2-54V2-AP + e031 Hercules HWNUm-300 Wireless N mini [Realtek RTL8191S] + e032 HWGUm-54 [Hercules Wireless G Ultra Mini Key] +06f9 ASYST electronic d.o.o. +06fa HSD S.r.L +06fc Motorola Semiconductor Products Sector +06fd Boston Acoustics + 0101 Audio Device + 0102 Audio Device + 0201 2-piece Audio Device +06fe Gallant Computer, Inc. +0701 Supercomal Wire & Cable SDN. BHD. +0703 Bvtech Industry, Inc. +0705 NKK Corp. +0706 Ariel Corp. +0707 Standard Microsystems Corp. + 0100 2202 Ethernet [klsi] + 0200 2202 Ethernet [pegasus] + 0201 EZ Connect USB Ethernet + ee04 SMCWUSB32 802.11b Wireless LAN Card + ee06 SMC2862W-G v1 EZ Connect 802.11g Adapter [Intersil ISL3886] + ee13 SMC2862W-G v2 EZ Connect 802.11g Adapter [Intersil ISL3887] +0708 Putercom Co., Ltd + 047e USB-1284 BRIDGE +0709 Silicon Systems, Ltd (SSL) +070a Oki Electric Industry Co., Ltd + 4002 Bluetooth Device + 4003 Bluetooth Device +070d Comoss Electronic Co., Ltd +070e Excel Cell Electronic Co., Ltd +0710 Connect Tech, Inc. + 0001 WhiteHeat (fake ID) + 8001 WhiteHeat +0711 Magic Control Technology Corp. + 0100 Hub + 0180 IRXpress Infrared Device + 0181 IRXpress Infrared Device + 0200 BAY-3U1S1P Serial Port + 0210 MCT1S Serial Port + 0230 MCT-232 Serial Port + 0231 PS/2 Mouse Port + 0232 Serial On Port + 0240 PS/2 to USB Converter + 0300 BAY-3U1S1P Parallel Port + 0302 Parallel Port + 0900 SVGA Adapter + 5001 Trigger UV-002BD[Startech USBVGAE] +0713 Interval Research Corp. +0714 NewMotion, Inc. + 0003 ADB to USB convertor +0717 ZNK Corp. +0718 Imation Corp. + 0002 SuperDisk 120MB + 0003 SuperDisk 120MB (Authenticated) + 0060 Flash Drive + 0061 Flash Drive + 0062 Flash Drive + 0063 Swivel Flash Drive + 0064 Flash Drive + 0065 Flash Drive + 0066 Flash Drive + 0067 Flash Drive + 0068 Flash Drive + 0084 Flash Drive Mini + 0582 Revo Flash Drive + d000 Disc Stakka CD/DVD Manager +0719 Tremon Enterprises Co., Ltd +071b Domain Technologies, Inc. + 0002 DTI-56362-USB Digital Interface Unit + 0101 Audio4-USB DSP Data Acquisition Unit + 0201 Audio4-5410 DSP Data Acquisition Unit + 0301 SB-USB JTAG Emulator + 3203 Rockchip Media Player + 32bb Music Mediatouch +071c Xionics Document Technologies, Inc. +071d Eicon Networks Corp. + 1000 Diva ISDN TA + 1003 Diva + 2000 Teledat Surf +071e Ariston Technologies +0723 Centillium Communications Corp. + 0002 Palladia 300/400 Adsl Modem +0726 Vanguard International Semiconductor-America +0729 Amitm + 1000 USC-1000 Serial Port +072e Sunix Co., Ltd +072f Advanced Card Systems, Ltd + 0001 AC1030-based SmartCard Reader + 0008 ACR 80 Smart Card Reader + 1000 PLDT Drive + 1001 PLDT Drive + 8002 AET63 BioTRUSTKey + 8003 ACR120 + 8103 ACR120 + 9000 ACR38 AC1038-based Smart Card Reader + 90cc ACR38 SmartCard Reader + 90cf ACR38 SAM Smart Card Reader + 90d0 PertoSmart EMV - Card Reader +0731 Susteen, Inc. + 0528 SonyEricsson DCU-11 Cable +0732 Goldfull Electronics & Telecommunications Corp. +0733 ViewQuest Technologies, Inc. + 0101 Digital Video Camera + 0110 VQ110 Video Camera + 0401 CS330 Webcam + 0402 M-318B Webcam + 0430 Intel Pro Share Webcam + 0630 VQ630 Dual Mode Digital Camera(Bulk) + 0631 Hercules Dualpix + 0780 Smart Cam Deluxe(composite) + 1310 Epsilon 1.3/Jenoptik JD C1.3/UMAX AstraPix 470 + 1311 Digital Dream Epsilon 1.3 + 1314 Mercury 2.1MEG Deluxe Classic Cam + 2211 Jenoptik jdc 21 LCD Camera + 2221 Mercury Digital Pro 3.1p + 3261 Concord 3045 spca536a Camera + 3281 Cyberpix S550V +0734 Lasat Communications A/S + 0001 560V Modem + 0002 Lasat 560V Modem + 043a DVS Audio + 043b 3DeMon USB Capture +0735 Asuscom Network + 2100 ISDN Adapter + 2101 ISDN Adapter + 6694 ISDNlink 128K + c541 ISDN TA 280 +0736 Lorom Industrial Co., Ltd +0738 Mad Catz, Inc. + 4507 XBox Device + 4516 XBox Device + 4520 XBox Device + 4526 XBox Device + 4536 XBox Device + 4540 XBox Device + 4556 XBox Device + 4566 XBox Device + 4576 XBox Device + 4586 XBox Device + 4588 XBox Device + 8818 Street Fighter IV Arcade FightStick (PS3) +073a Chaplet Systems, Inc. +073b Suncom Technologies +073c Industrial Electronic Engineers, Inc. + 0305 Pole Display (PC305-3415 2 x 20 Line Display) + 0322 Pole Display (PC322-3415 2 x 20 Line Display) + 0324 Pole Display (LB324-USB 4 x 20 Line Display) + 0330 Pole Display (P330-3415 2 x 20 Line Display) + 0424 Pole Display (SP324-4415 4 x 20 Line Display) + 0450 Pole Display (L450-USB Graphic Line Display) + 0505 Pole Display (SPC505-3415 2 x 20 Line Display) + 0522 Pole Display (SPC522-3415 2 x 20 Line Display) + 0624 Pole Display (SP324-3415 4 x 20 Line Display) +073d Eutron S.p.a. + 0005 Crypto Token + 0007 CryptoIdentity CCID + 0025 SmartKey 3 + 0c00 Pocket Reader + 0d00 StarSign Bio Token 3.0 EU +073e NEC, Inc. + 0301 Game Pad +0745 Syntech Information Co., Ltd +0746 Onkyo Corp. + 5500 SE-U55 Audio Device +0747 Labway Corp. +0748 Strong Man Enterprise Co., Ltd +0749 EVer Electronics Corp. +074a Ming Fortune Industry Co., Ltd +074b Polestar Tech. Corp. +074c C-C-C Group PLC +074d Micronas GmbH + 3553 Composite USB-Device + 3554 Composite USB-Device + 3556 Composite USB-Device +074e Digital Stream Corp. + 0001 PS/2 Adapter + 0002 PS/2 Adapter +0755 Aureal Semiconductor +0757 Network Technologies, Inc. +075b Sophisticated Circuits, Inc. + 0001 Kick-off! Watchdog +0763 Midiman + 0115 O2 / KeyRig 25 + 0117 Trigger Finger + 0119 MidAir + 0150 M-Audio Uno + 0160 M-Audio 1x1 + 0192 M-Audio Keystation 88es + 0193 ProKeys 88 + 0194 ProKeys 88sx + 0195 Oxygen 8 v2 + 0196 Oxygen 49 + 0197 Oxygen 61 + 0198 Axiom 25 + 0199 Axiom 49 + 019a Axiom 61 + 019b KeyRig 49 + 019c KeyStudio + 1001 MidiSport 2x2 + 1002 MidiSport 2x2 + 1003 MidiSport 2x2 + 1010 MidiSport 1x1 + 1011 MidiSport 1x1 + 1014 M-Audio Keystation Loader + 1015 M-Audio Keystation + 1020 Midisport 4x4 + 1021 MidiSport 4x4 + 1030 Midisport 8x8 + 1031 MidiSport 8x8/s Loader + 1033 MidiSport 8x8/s + 1040 M-Audio MidiSport 2x4 Loader + 1041 M-Audio MidiSport 2x4 + 1110 MidiSport 1x1 + 2001 M Audio Quattro + 2002 M Audio Duo + 2003 M Audio AudioPhile + 2004 M-Audio MobilePre + 2006 M-Audio Transit + 2007 M-Audio Sonica Theater + 2008 M-Audio Ozone + 200d M-Audio OmniStudio + 200f M-Audio MobilePre + 2010 M-Audio Fast Track + 2012 M-Audio Fast Track Pro + 2013 M-Audio JamLab + 2015 M-Audio RunTime DFU + 2016 M-Audio RunTime DFU + 2019 M-Audio Ozone Academic + 201a M-Audio Micro + 201b M-Audio RunTime DFU + 201d M-Audio Producer + 2080 M-Audio RunTime DFU + 2081 M-Audio RunTime DFU / Fast Track Ultra 8R + 2803 M-Audio Audiophile DFU + 2804 M-Audio MobilePre DFU + 2806 M-Audio Transit DFU + 2815 M-Audio DFU + 2816 M-Audio DFU + 281b M-Audio DFU + 2880 M-Audio DFU + 2881 M-Audio DFU +0764 Cyber Power System, Inc. + 0005 Cyber Power UPS + 0501 CP1500 AVR UPS +0765 X-Rite, Inc. + d094 X-Rite DTP94 [Quato Silver Haze Pro] +0766 Jess-Link Products Co., Ltd + 0204 TopSpeed Cyberlink Remote Control +0767 Tokheim Corp. +0768 Camtel Technology Corp. + 0006 Camtel Technology USB TV Genie Pro FM Model TVB330 + 0023 eHome Infrared Receiver +0769 Surecom Technology Corp. + 11f2 EP-9001-g 802.11g 54M WLAN Adapter + 11f3 RT2570 + 11f7 802.11g 54M WLAN Adapter + 31f3 RT2573 +076a Smart Technology Enablers, Inc. +076b OmniKey AG + 0596 CardMan 2020 + 1021 CardMan 1021 + 1221 CardMan 1221 + 1784 CardMan 6020 + 3021 CardMan 3121 + 3610 CardMan 3620 + 3621 CardMan 3621 + 3821 CardMan 3821 + 4321 CardMan 4321 + 5121 CardMan 5121 + 5125 CardMan 5125 + 6622 CardMan 6121 + a011 CCID Smart Card Reader Keyboard + a021 CCID Smart Card Reader + a022 CardMan Smart@Link + c000 CardMan 3x21 CS + c001 CardMan 5121 CS +076c Partner Tech +076d Denso Corp. +076e Kuan Tech Enterprise Co., Ltd +076f Jhen Vei Electronic Co., Ltd +0770 Welch Allyn, Inc - Medical Division +0771 Observator Instruments BV + 4455 OMC45III + ae0f OMC45III +0774 AmTRAN Technology Co., Ltd +0775 Longshine Electronics Corp. +0776 Inalways Corp. +0777 Comda Enterprise Corp. +0778 Volex, Inc. +0779 Fairchild Semiconductor +077a Sankyo Seiki Mfg. Co., Ltd +077b Linksys + 08be BEFCMU10 v4 Cable Modem + 2219 WUSB11 V2.6 802.11b Adapter + 2226 USB200M 100baseTX Adapter + 2227 Network Everywhere NWU11B +077c Forward Electronics Co., Ltd + 0005 NEC Keyboard +077d Griffin Technology + 0223 IMic Audio In/Out + 0405 iMate, ADB Adapter + 0410 PowerMate + 041a PowerWave + 04aa SoundKnob + 07af iMic + 1016 AirClick + 627a Radio SHARK +077f Well Excellent & Most Corp. +0780 Sagem Monetel GmbH + 1202 ORGA 900 Smart Card Terminal Virtual Com Port + 1302 ORGA 6000 Smart Card Terminal Virtual Com Port + 1303 ORGA 6000 Smart Card Terminal USB RNDIS + df55 ORGA 900/6000 Smart Card Terminal DFU +0781 SanDisk Corp. + 0001 SDDR-05a ImageMate CompactFlash Reader + 0002 SDDR-31 ImageMate II CompactFlash Reader + 0005 SDDR-05b (CF II) ImageMate CompactFlash Reader + 0100 ImageMate SDDR-12 + 0200 SDDR-09 (SSFDC) ImageMate SmartMedia Reader [eusb] + 0400 SecureMate SD/MMC Reader + 0621 SDDR-86 Imagemate 6-in-1 Reader + 0720 Sansa C200 series in recovery mode + 0729 Sansa E200 series in recovery mode + 0810 SDDR-75 ImageMate CF-SM Reader + 0830 ImageMate CF/MMC/SD Reader + 1234 Cruzer Mini Flash Drive + 5150 SDCZ2 Cruzer Mini Flash Drive (thin) + 5151 Cruzer Micro Flash Drive + 5153 Cruzer Flash Drive + 5402 U3 Cruzer Micro + 5406 Cruzer Micro U3 + 5408 Cruzer Titanium U3 + 540e Cruzer Contour Flash Drive + 5530 Cruzer + 5567 Cruzer Blade + 5e10 Encrypted + 6100 Ultra II SD Plus 2GB + 7100 Cruzer Mini + 7101 Pen Flash + 7102 Cruzer Mini + 7103 Cruzer Mini + 7104 Cruzer Micro Mini 256MB Flash Drive + 7105 Cruzer Mini + 7106 Cruzer Mini + 7112 Cruzer Micro 128MB Flash Drive + 7113 Cruzer Micro 256MB Flash Drive + 7114 Cruzer Mini + 7115 Cruzer Mini + 7301 Sansa e100 series (mtp) + 7302 Sansa e100 series (msc) + 7400 Sansa M200 series (mtp) + 7401 Sansa M200 series (msc) + 7420 Sansa E200 series (mtp) + 7421 Sansa E200 Series (msc) + 7422 Sansa E200 series v2 (mtp) + 7423 Sansa E200 series v2 (msc) + 7430 Sansa M200 series + 7431 Sansa M200 series V4 (msc) + 7432 Sansa Clip (mtp) + 7433 Sansa Clip (msc) + 7434 Sansa Clip V2 (mtp) + 7435 Sansa Clip V2 (msc) + 7450 Sansa C250 + 7451 Sansa C240 + 7460 Sansa Express + 7480 Sansa Connect + 7481 Sansa Connect (in recovery mode) + 74b0 Sansa View (msc) + 74b1 Sansa View (mtp) + 74c0 Sansa Fuze (mtp) + 74c1 Sansa Fuze (msc) + 74c2 Sansa Fuze V2 (mtp) + 74c3 Sansa Fuze V2 (msc) + 74d0 Sansa Clip+ (mtp) + 74d1 Sansa Clip+ (msc) + 8181 Pen Flash + 8183 Hi-Speed Mass Storage Device + 8185 SDCZ2 Cruzer Mini Flash Drive (older, thick) + 8888 Card Reader + 8889 SDDR-88 Imagemate 8-in-1 Reader + 8919 Card Reader + 8989 ImageMate 12-in-1 Reader + 9191 ImageMate CF + 9219 Card Reader + 9292 ImageMate CF Reader/Writer + 9393 ImageMate SD-MMC + 9595 ImageMate xD-SM + 9797 ImageMate MS-PRO + 9919 Card Reader + 9999 SDDR-99 5-in-1 Reader + a7e8 SDDR-113 MicroMate SDHC Reader + b2b3 SDDR-103 MobileMate SD+ Reader + b4b5 SDDR-89 V4 ImageMate 12-in-1 Reader +0782 Trackerball +0783 C3PO + 0003 LTC31 SmartCard Reader + 0006 LTC31v2 + 0009 KBR36 + 0010 LTC32 +0784 Vivitar, Inc. + 0100 Vivicam 2655 + 1310 Vivicam 3305 + 1688 Vivicam 3665 + 1689 Gateway DC-M42/Labtec DC-505/Vivitar Vivicam 3705 + 2620 AOL Photocam Plus + 2888 Polaroid DC700 + 3330 Nytec ND-3200 Camera + 4300 Traveler D1 + 5260 Werlisa Sport PX 100 / JVC GC-A33 Camera + 5300 Pretec dc530 +0785 NTT-ME + 0001 MN128mini-V ISDN TA + 0003 MN128mini-J ISDN TA +0789 Logitec Corp. + 0026 LHD Device + 0033 DVD Multi-plus unit LDR-H443SU2 + 0063 LDR Device + 0064 LDR-R Device + 00b3 DVD Multi-plus unit LDR-H443U2 + 010c Realtek RTL8187 Wireless 802.11g 54Mbps Network Adapter + 0162 LAN-WN22/U2 Wireless LAN Adapter + 0163 LAN-WN12/U2 Wireless LAN Adapter + 0164 LAN-W150/U2M Wireless LAN Adapter + 0166 LAN-W300N/U2 Wireless LAN Adapter + 0168 LAN-W150N/U2 Wireless LAN Adapter +078b Happ Controls, Inc. + 0010 Driving UGCI + 0020 Flying UGCI + 0030 Fighting UGCI +078c GTCO/CalComp + 0090 Tablet Adapter + 0100 Tablet Adapter + 0200 Tablet Adapter + 0300 Tablet Adapter + 0400 Digitizer (Whiteboard) +078e Brincom, Inc. +0790 Pro-Image Manufacturing Co., Ltd +0791 Copartner Wire and Cable Mfg. Corp. +0792 Axis Communications AB +0793 Wha Yu Industrial Co., Ltd +0794 ABL Electronics Corp. +0795 RealChip, Inc. +0796 Certicom Corp. +0797 Grandtech Semiconductor Corp. + 6801 Flatbed Scanner + 6802 InkJet Color Printer + 8001 SmartCam + 801a Typhoon StyloCam + 801c Meade Binoculars/Camera + 8901 ScanHex SX-35a + 8909 ScanHex SX-35b + 8911 ScanHex SX-35c +0798 Optelec + 0001 Braille Voyager +0799 Altera + 7651 Programming Unit +079b Sagem + 0027 USB-Serial Controller + 002f Mobile + 0030 Mobile Communication Device + 0042 Mobile + 004a XG-760A 802.11bg + 004b Wi-Fi 11g adapter + 0056 Agfa AP1100 Photo Printer + 005d Mobile Mass Storage + 0062 XG-76NA 802.11bg + 0078 Laser Pro Monochrome MFP +079d Alfadata Computer Corp. + 0201 GamePort Adapter +07a1 Digicom S.p.A. + d952 Palladio USB V.92 Modem +07a2 National Technical Systems +07a3 Onnto Corp. +07a4 Be, Inc. +07a6 ADMtek, Inc. + 07c2 AN986A Ethernet + 0986 AN986 Pegasus Ethernet + 8266 Infineon WildCard-USB Wireless LAN Adapter + 8511 ADM8511 Pegasus II Ethernet + 8513 AN8513 Ethernet + 8515 AN8515 Ethernet +07aa Corega K.K. + 0001 Ether USB-T Ethernet [klsi] + 0004 FEther USB-TX Ethernet [pegasus] + 000c WirelessLAN USB-11 + 000d FEther USB-TXS + 0011 Wireless LAN USB-11 mini + 0012 Stick-11 802.11b Adapter + 0017 FEther USB2-TX + 0018 Wireless LAN USB-11 mini 2 + 001a ULUSB-11 Key + 001c CG-WLUSB2GTST 802.11g Wireless Adapter [Intersil ISL3887] + 002f CG-WLUSB2GNL + 003c CG-WLUSB2GNL + 003f CG-WLUSB300AGN + 0041 CG-WLUSB300GNS + 0042 CG-WLUSB300GNM + 0043 CG-WLUSB300N rev A2 [Realtek RTL8192U] + 0047 CG-WLUSBNM + 0051 CG-WLUSB300NM + 7613 Stick-11 V2 802.11b Adapter + 9601 FEther USB-TXC +07ab Freecom Technologies + fc01 IDE bridge + fc02 Cable II USB-2 + fc03 USB2-IDE IDE bridge + fcd6 Freecom HD Classic + fcf6 DataBar 512 MB + fcf8 Freecom Classic SL Network Drive +07af Microtech + 0004 SCSI-DB25 SCSI Bridge [shuttle] + 0005 SCSI-HD50 SCSI Bridge [shuttle] + 0006 CameraMate SmartMedia and CompactFlash Card Reader [eusb/shuttle] + fc01 Freecom USB-IDE +07b0 Trust Technologies + 0001 ISDN TA + 0002 ISDN TA128 Plus + 0003 ISDN TA128 Deluxe + 0005 ISDN TA128 SE + 0006 ISDN TA128 CE + 0007 ISDN TA + 0008 ISDN TA +07b1 IMP, Inc. +07b2 Motorola BCS, Inc. + 0100 SURFboard Voice over IP Cable Modem + 0900 SURFboard Gateway + 0950 SURFboard SBG950 Gateway + 1000 SURFboard SBG1000 Gateway + 4100 SurfBoard SB4100 Cable Modem + 4200 SurfBoard SB4200 Cable Modem + 4210 SurfBoard 4210 Cable Modem + 4220 SURFboard SB4220 Cable Modem + 4500 CG4500 Communications Gateway + 450b CG4501 Communications Gateway + 450e CG4500E Communications Gateway + 5100 SurfBoard SB5100 Cable Modem + 5101 SurfBoard SB5101 Cable Modem + 5120 SurfBoard SB5120 Cable Modem (RNDIS) + 5121 Surfboard 5121 Cable Modem + 7030 Wireless Adapter WU830G +07b3 Plustek, Inc. + 0001 OpticPro 1212U Scanner + 0003 Scanner + 0010 OpticPro U12 Scanner + 0011 OpticPro U24 Scanner + 0013 OpticPro UT12 Scanner + 0014 Scanner + 0015 OpticPro U24 Scanner + 0017 OpticPro UT12/16/24 Scanner + 0204 Scanner + 0400 OpticPro 1248U Scanner + 0401 OpticPro 1248U Scanner #2 + 0403 OpticPro U16B Scanner + 0404 Scanner + 0405 A8 Namecard-s Controller + 0406 A8 Namecard-D Controller + 0410 Scanner + 0412 Scanner + 0413 OpticSlim 1200 Scanner + 0601 OpticPro ST24 Scanner + 0800 OpticPro ST48 Scanner + 0906 OpticBook 3600 Scanner + 0a06 TVcam VD100 + 0b00 SmartPhoto F50 + 0c03 OpticPro ST64+ Scanner + 0c04 Optic Film 7200i scanner + 0c26 OpticBook 4600 Scanner + 0c2b Mobile Office D428 Scanner +07b4 Olympus Optical Co., Ltd + 0100 Camedia C-2100/C-3000 Ultra Zoom Camera + 0102 Camedia E-10/C-220/C-50 Camera + 0105 Camedia C-310Z/C-700/C-750UZ/C-755/C-765UZ/C-3040/C-4000/C-5050Z/D-560/C-3020Z Zoom Camera + 0109 C-370Z/C-500Z/D-535Z/X-450 + 010a MAUSB-10 xD and SmartMedia Card Reader + 0112 MAUSB-100 xD Card Reader + 0113 Mju 500 + 0114 C-350Z Camera + 0118 Digital Camera + 0184 P-S100 port + 0203 Digital Voice Recorder DW-90 + 0206 Digital Voice Recorder DS-330 + 0207 Digital Voice Recorder & Camera W-10 + 0209 Digital Voice Recorder DM-20 + 020d Digital Voice Recorder VN-240PC + 0280 m:robe 100 +07b5 Mega World International, Ltd + 0017 Joystick + 0213 Thrustmaster Firestorm Digital 3 Gamepad + 0312 Gamepad + 9902 GamePad +07b6 Marubun Corp. +07b7 TIME Interconnect, Ltd +07b8 AboCom Systems Inc + 110c XX1 + 1201 IEEE 802.11b Adapter + 200c XX2 + 2573 Wireless LAN Card + 2770 802.11n/b/g Mini Wireless LAN USB2.0 Adapter + 2870 802.11n/b/g Wireless LAN USB2.0 Adapter + 3070 802.11n/b/g Mini Wireless LAN USB2.0 Adapter + 3071 802.11n/b/g Mini Wireless LAN USB2.0 Adapter + 3072 802.11n/b/g Mini Wireless LAN USB2.0 Adapter + 4000 DU-E10 Ethernet [klsi] + 4002 DU-E100 Ethernet [pegasus] + 4003 1/10/100 Ethernet Adapter + 4004 XX4 + 4007 XX5 + 400b XX6 + 400c XX7 + 401a RTL8151 + 4102 USB 1.1 10/100M Fast Ethernet Adapter + 4104 XX9 + 420a UF200 Ethernet + 5301 GW-US54ZGL 802.11bg + 6001 802.11bg + a001 WUG2200 802.11g Wireless Adapter [Envara WiND512] + abc1 DU-E10 Ethernet [pegasus] + b000 BWU613 + b02a AboCom Bluetooth Device + b02b Bluetooth dongle + b02c BCM92045DG-Flash with trace filter + b02d BCM92045DG-Flash with trace filter + b02e BCM92045DG-Flash with trace filter + b030 BCM92045DG-Flash with trace filter + b031 BCM92045DG-Flash with trace filter + b032 BCM92045DG-Flash with trace filter + b033 BCM92045DG-Flash with trace filter + b21a WUG2400 802.11g Wireless Adapter [Texas Instruments TNETW1450] + b21b HWU54DM + b21c RT2573 + b21d RT2573 + b21e RT2573 + b21f WUG2700 + d011 MP3 Player + e001 Mass Storage Device + e002 Mass Storage Device + e003 Mass Storage Device + e004 Mass Storage Device + e005 Mass Storage Device + e006 Mass Storage Device + e007 Mass Storage Device + e008 Mass Storage Device + e009 Mass Storage Device + e00a Mass Storage Device + e4f0 Card Reader Driver + f101 DSB-560 Modem [atlas] +07bc Canon Computer Systems, Inc. +07bd Webgear, Inc. +07be Veridicom +07c0 Code Mercenaries Hard- und Software GmbH + 1121 The Claw + 1500 IO-Warrior 40 + 1501 IO-Warrior 24 + 1502 IO-Warrior 48 + 1503 IO-Warrior 28 + 1511 IO-Warrior 24 Power Vampire + 1512 IO-Warrior 24 Power Vampire +07c1 Keisokugiken + 0068 HKS-0200 USBDAQ +07c4 Datafab Systems, Inc. + 0102 USB to LS120 + 0103 USB to IDE + 1234 USB to ATAPI + a000 CompactFlash Card Reader + a001 CompactFlash & SmartMedia Card Reader [eusb] + a002 Disk Drive + a003 Datafab-based Reader + a004 USB to MMC Class Drive + a005 CompactFlash & SmartMedia Card Reader + a006 SmartMedia Card Reader + a007 Memory Stick Class Drive + a103 MDSM-B reader + a107 USB to Memory Stick (LC1) Drive + a109 LC1 CompactFlash & SmartMedia Card Reader + a10b USB to CF+MS(LC1) + a200 DF-UT-06 Hama MMC/SD Reader + a400 CompactFlash & Microdrive Reader + a600 Card Reader + ad01 Mass Storage Device + ae01 Mass Storage Device + af01 Mass Storage Device + b000 USB to CF(LC1) + b001 USB to CF+PCMCIA + b004 MMC/SD Reader + b006 USB to PCMCIA + b00a USB to CF+SD Drive(LC1) + b00b USB to Memory Stick(LC1) +07c5 APG Cash Drawer +07c6 ShareWave, Inc. + 0002 Bodega Wireless Access Point +07c7 Powertech Industrial Co., Ltd +07c8 B.U.G., Inc. + 0202 MN128-SOHO PAL +07c9 Allied Telesyn International + b100 AT-USB100 +07ca AVerMedia Technologies, Inc. + 0002 AVerTV PVR USB/EZMaker Pro Device + 0026 AVerTV + 0337 A867 DVB-T dongle + 1228 MPEG-2 Capture Device (M038) + 1830 AVerTV Volar Video Capture (H830) + 850a AverTV Volar Black HD (A850) + 850b AverTV Red HD+ (A850T) + a309 AVerTV DVB-T (A309) + a801 AVerTV DVB-T (A800) + a815 AVerTV DVB-T Volar X (A815) + a867 AVerTV DVB-T (A867) + b800 MR800 FM Radio + e880 MPEG-2 Capture Device (E880) + e882 MPEG-2 Capture Device (E882) +07cb Kingmax Technology, Inc. +07cc Carry Computer Eng., Co., Ltd + 0000 CF Card Reader + 0001 Reader (UICSE) + 0002 Reader (UIS) + 0003 SM Card Reader + 0004 SM/CF/PCMCIA Card Reader + 0005 Reader (UISA2SE) + 0006 SM/CF/PCMCIA Card Reader + 0007 Reader (UISA6SE) + 000c SM/CF Card Reader + 000d SM/CF Card Reader + 000e Reader (UISDA) + 000f Reader (UICLIK) + 0010 Reader (UISMA) + 0012 Reader (UISC6SE-FLASH) + 0014 Litronic Fortezza Reader + 0030 Mass Storage (UISDMC12S) + 0040 Mass Storage (UISDMC13S) + 0100 Reader (UID) + 0101 Reader (UIM) + 0102 Reader (UISDMA) + 0103 Reader (UISDMC) + 0104 Reader (UISDM) + 0200 6-in-1 Card Reader + 0201 Mass Storage (UISDMC1S & UISDMC3S) + 0202 Mass Storage (UISDMC5S) + 0203 Mass Storage (UISMC5S) + 0204 Mass Storage (UIM4/5S & UIM7S) + 0205 Mass Storage (UIS4/5S & UIS7S) + 0206 Mass Storage (UISDMC10S & UISDMC11S) + 0207 Mass Storage (UPIDMA) + 0208 Mass Storage (UCFC II) + 0210 Mass Storage (UPIXXA) + 0213 Mass Storage (UPIDA) + 0214 Mass Storage (UPIMA) + 0215 Mass Storage (UPISA) + 0217 Mass Storage (UPISDMA) + 0223 Mass Storage (UCIDA) + 0224 Mass Storage (UCIMA) + 0225 Mass Storage (UIS7S) + 0227 Mass Storage (UCIDMA) + 0234 Mass Storage (UIM7S) + 0235 Mass Storage (UIS4S-S) + 0237 Velper (UISDMC4S) + 0300 6-in-1 Card Reader + 0301 6-in-1 Card Reader + 0303 Mass Storage (UID10W) + 0304 Mass Storage (UIM10W) + 0305 Mass Storage (UIS10W) + 0308 Mass Storage (UIC10W) + 0309 Mass Storage (UISC3W) + 0310 Mass Storage (UISDMA2W) + 0311 Mass Storage (UISDMC14W) + 0320 Mass Storage (UISDMC4W) + 0321 Mass Storage (UISDMC37W) + 0330 WINTERREADER Reader + 0350 9-in-1 Card Reader + 0500 Mass Storage + 0501 Mass Storage +07cd Elektor + 0001 USBuart Serial Port +07cf Casio Computer Co., Ltd + 1001 QV-8000SX/5700/3000EX Digicam; Exilim EX-M20 + 1003 Exilim EX-S500 + 1004 Exilim EX-Z120 + 1011 USB-CASIO PC CAMERA + 1116 EXILIM EX-Z19 + 1133 Exilim EX-Z350 Digital Camera (mass storage mode) + 1233 Exilim EX-Z350 Digital Camera (PictBridge mode) + 2002 E-125 Cassiopeia Pocket PC + 3801 WMP-1 MP3-Watch + 4001 Label Printer KL-P1000 + 4007 CW50 Device + 4104 Cw75 Device + 4107 CW-L300 Device + 4500 LV-20 Digital Camera + 6801 PL-40R + 6802 MIDI Keyboard +07d0 Dazzle + 0001 Digital Video Creator I + 0002 Global Village VideoFX Grabber + 0003 Fusion Model DVC-50 Rev 1 (NTSC) + 0004 DVC-800 (PAL) Grabber + 0005 Fusion Video and Audio Ports + 0006 DVC 150 Loader Device + 0007 DVC 150 + 0327 Fusion Digital Media Reader + 1001 DM-FLEX DFU Adapter + 1002 DMHS2 DFU Adapter + 1102 CF Reader/Writer + 1103 SD Reader/Writer + 1104 SM Reader/Writer + 1105 MS Reader/Writer + 1106 xD/SM Reader/Writer + 1202 MultiSlot Reader/Writer + 2000 FX2 DFU Adapter + 2001 eUSB CompactFlash Reader + 4100 Kingsun SF-620 Infrared Adapter + 4101 Connectivity Cable (CA-42 clone) + 4959 Kingsun KS-959 Infrared Adapter +07d1 D-Link System + 13ec VvBus for Helium 2xx + 13ed VvBus for Helium 2xx + 13f1 DSL-302G Modem + 13f2 DSL-502G Router + 3300 DWA-130 802.11n Wireless N Adapter(rev.E) [Realtek RTL8192SU] + 3302 DWA-130 802.11n Wireless N Adapter(rev.C2) [Realtek RTL8192SU] + 3303 DWA-131 802.11n Wireless N Nano Adapter(rev.A1) [Realtek RTL8192SU] + 3a07 WUA-2340 RangeBooster G Adapter(rev.A) [Atheros AR5523] + 3a08 WUA-2340 RangeBooster G Adapter(rev.A) (no firmware) [Atheros AR5523] + 3a09 DWA-160 Xtreme N Dual Band USB Adapter(rev.A2) [Atheros AR9001U-(2)NG] + 3a0d DWA-120 802.11g Wireless 108G Adapter [Atheros AR5523] + 3a0f DWA-130 802.11n Wireless N Adapter(rev.D) [Atheros AR9001U-(2)NG] + 3a10 DWA-126 802.11n Wireless Adapter [Atheros AR9271] + 3b01 AirPlus G DWL-G122 Wireless Adapter(rev.D) [Marvell 88W8338+88W8010] + 3b10 RangeBooster N Adapter + 3b11 DWA-130 802.11n Wireless N Adapter(rev.A1) [Marvell W8360USB] + 3c03 AirPlus G DWL-G122 Wireless Adapter(rev.C1) [Ralink RT73] + 3c04 WUA-1340 + 3c05 EH103 Wireless G Adapter + 3c07 Wireless G DWA-110 Adapter + 3c09 DWA-140 RangeBooster N Adapter(rev.B1) [Ralink RT2870] + 3c0a DWA-140 RangeBooster N Adapter(rev.B2) [Ralink RT2870] + 3c0b DWA-110 Wireless G USB Adapter(rev.B) + 3c0d DWA-125 Wireless N 150 Adapter(rev.A1) [Ralink RT2870] + 3c0e WUA-2340 RangeBooster G Adapter(rev.B) [Ralink RT2070] + 3c0f AirPlus G DWL-G122 Wireless Adapter(rev.E) [Ralink RT2870] + 3c10 DWA-160 Xtreme N Dual Band USB Adapter(rev.A) [Atheros AR9001U-(2)NG] + 3c11 DWA-160 Xtreme N Dual Band USB Adapter(rev.B) [Ralink RT2870] + 3c13 DWA-130 802.11n Wireless N Adapter(rev.B) [Ralink RT2870] + 3c15 DWA-140 RangeBooster N Adapter(rev.B3) [Ralink RT2870] + 3c16 DWA-125 Wireless N 150 Adapter(rev.A2) [Ralink RT2870] + 3e02 DWM-156 3.75G HSUPA Adapter + 5100 Remote NDIS Device + a800 DWM-152 3.75G HSUPA Adapter + f101 DBT-122 Bluetooth + fc01 DBT-120 Bluetooth Adapter +07d2 Aptio Products, Inc. +07d3 Cyberdata Corp. +07d5 Radiant Systems +07d7 GCC Technologies, Inc. +07da Arasan Chip Systems +07de Diamond Multimedia + 2820 VC500 Video Capture Dongle +07df David Electronics Co., Ltd +07e1 Ambient Technologies, Inc. + 5201 V.90 Modem +07e2 Elmeg GmbH & Co., Ltd +07e3 Planex Communications, Inc. +07e4 Movado Enterprise Co., Ltd + 0967 SCard R/W CSR-145 + 0968 SCard R/W CSR-145 +07e5 QPS, Inc. + 05c2 IDE-to-USB2.0 PCA + 5c01 Que! CDRW +07e6 Allied Cable Corp. +07e7 Mirvo Toys, Inc. +07e8 Labsystems +07ea Iwatsu Electric Co., Ltd +07eb Double-H Technology Co., Ltd +07ec Taiyo Electric Wire & Cable Co., Ltd +07ee Torex Retail (formerly Logware) + 0002 Cash Drawer I/F +07ef STSN + 0001 Internet Access Device +07f2 Microcomputer Applications, Inc. + 0001 KEYLOK II +07f6 Circuit Assembly Corp. +07f7 Century Corp. + 0005 ScanLogic/Century Corporation uATA + 011e Century USB Disk Enclosure +07f9 Dotop Technology, Inc. +07fa DrayTek Corp. + 0778 miniVigor 128 ISDN TA + 1012 BeWAN ADSL USB ST (grey) + 1196 BWIFI-USB54AR 802.11bg + a904 BeWAN ADSL + a905 BeWAN ADSL ST +07fd Mark of the Unicorn + 0000 FastLane MIDI Interface + 0001 FastLane Quad MIDI Interface + 0002 MOTU Audio for 64 bit +07ff Unknown + 00ff Portable Hard Drive +0801 Mag-Tek + 0001 Mini Swipe Reader (Keyboard Emulation) + 0002 Mini Swipe Reader +0802 Mako Technologies, LLC +0803 Zoom Telephonics, Inc. + 1300 V92 Faxmodem + 4310 Wireless-G + 5241 Cable Modem + 5551 DSL Modem + 9700 2986L FaxModem + 9800 Cable Modem + a312 Wireless-G +0809 Genicom Technology, Inc. +080a Evermuch Technology Co., Ltd +080b Cross Match Technologies + 0002 Fingerprint Scanner (After ReNumeration) + 0010 300LC Series Fingerprint Scanner (Before ReNumeration) +080c Datalogic S.p.A. + 0300 Gryphon D120 Barcode Scanner + 0400 Gryphon D120 Barcode Scanner + 0500 Gryphon D120 Barcode Scanner + 0600 Gryphon M100 Barcode Scanner +080d Teco Image Systems Co., Ltd + 0102 Hercules Scan@home 48 + 0104 3.2Slim + 0110 UMAX AstraSlim 1200 Scanner +0810 Personal Communication Systems, Inc. + 0001 Dual PSX Adaptor + 0002 Dual PCS Adaptor +0813 Mattel, Inc. + 0001 Intel Play QX3 Microscope + 0002 Dual Mode Camera Plus +0819 eLicenser + 0101 License Management and Copy Protection +081a MG Logic + 1000 Duo Pen Tablet +081b Indigita Corp. + 0600 Storage Adapter + 0601 Storage Adapter +081c Mipsys +081e AlphaSmart, Inc. + df00 Handheld +0822 Reudo Corp. + 2001 IRXpress Infrared Device +0825 GC Protronics +0826 Data Transit +0827 BroadLogic, Inc. +0828 Sato Corp. +0829 DirecTV Broadband, Inc. (Telocity) +082d Handspring + 0100 Visor + 0200 Treo + 0300 Treo 600 + 0400 Handheld + 0500 Handheld + 0600 Handheld +0830 Palm, Inc. + 0001 m500 + 0002 m505 + 0003 m515 + 0004 Handheld + 0005 Handheld + 0006 Handheld + 0010 Handheld + 0011 Handheld + 0012 Handheld + 0013 Handheld + 0014 Handheld + 0020 i705 + 0021 Handheld + 0022 Handheld + 0023 Handheld + 0024 Handheld + 0030 Handheld + 0031 Tungsten W + 0032 Handheld + 0033 Handheld + 0034 Handheld + 0040 m125 + 0041 Handheld + 0042 Handheld + 0043 Handheld + 0044 Handheld + 0050 m130 + 0051 Handheld + 0052 Handheld + 0053 Handheld + 0054 Handheld + 0060 Tungsten C/E/T/T2/T3 / Zire 71 + 0061 Lifedrive / Treo 650/680 / Tunsten E2/T5/TX / Centro / Zire 21/31/72 / Z22 + 0062 Handheld + 0063 Handheld + 0064 Handheld + 0070 Zire + 0071 Handheld + 0072 Handheld + 0080 Serial Adapter [for Palm III] + 0081 Handheld + 0082 Handheld + 00a0 Treo 800w + 0101 Pre +0832 Kouwell Electronics Corp. + 5850 Cable +0833 Sourcenext Corp. + 012e KeikaiDenwa 8 with charger + 039f KeikaiDenwa 8 +0835 Action Star Enterprise Co., Ltd +0839 Samsung Techwin Co., Ltd + 0005 Digimax Camera + 0008 Digimax 230 Camera + 0009 Digimax 340 + 000a Digimax 410 + 000e Digimax 360 + 0010 Digimax 300 + 1003 Digimax 210SE + 1005 Digimax 220 + 1009 Digimax V4 + 1012 6500 Document Camera + 1058 S730 Camera + 1064 Digimax D830 Camera + 1542 Digimax 50 Duo + 3000 Digimax 35 MP3 +083a Accton Technology Corp. + 1046 10/100 Ethernet [pegasus] + 1060 HomeLine Adapter + 1f4d SMC8013WG Broadband Remote NDIS Device + 3046 10/100 Series Adapter + 3060 1/10/100 Adapter + 3501 2664W + 3502 WN3501D Wireless Adapter + 3503 T-Sinus 111 Wireless Adapter + 4501 T-Sinus 154data + 4502 Siemens S30853-S1016-R107 802.11g Wireless Adapter [Intersil ISL3886] + 4505 SMCWUSB-G 802.11bg + 4507 SMCWUSBT-G2 802.11g Wireless Adapter [Atheros AR5523] + 4521 Siemens S30863-S1016-R107-2 802.11g Wireless Adapter [Intersil ISL3887] + 5046 SpeedStream 10/100 Ethernet [pegasus] + 5501 Wireless Adapter 11g + 6500 Cable Modem + 6618 802.11n Wireless Adapter + 7511 Arcadyan 802.11N Wireless Adapter + 7512 Arcadyan 802.11N Wireless Adapter + 7522 Arcadyan 802.11N Wireless Adapter + 8522 Arcadyan 802.11N Wireless Adapter + 8541 WN4501F 802.11g Wireless Adapter [Intersil ISL3887] + a512 Arcadyan 802.11N Wireless Adapter + a618 SMCWUSBS-N EZ Connect N Draft 11n Wireless Adapter [Ralink RT2870] + a701 SMCWUSBS-N3 EZ Connect N Wireless Adapter [Ralink RT3070] + b004 CPWUE001 USB/Ethernet Adapter + b522 SMCWUSBS-N2 EZ Connect N Wireless Adapter [Ralink RT2870] + bb01 BlueExpert Bluetooth Device + c003 802.11b Wireless Adapter + c501 Zoom Wireless-G + c561 802.11a/g Wireless Adapter + d522 Speedport W 102 Stick IEEE 802.11n USB 2.0 Adapter + e501 ZD1211B + e503 Arcadyan WN4501 802.11b/g + e506 WUS-201 802.11bg + f501 802.11g Wireless Adapter + f502 802.11g Wireless Adapter + f522 Arcadyan WN7512 802.11n +083f Global Village + b100 TelePort V.90 Fax/Modem +0840 Argosy Research, Inc. + 0060 Storage Adapter Bridge Module +0841 Rioport.com, Inc. + 0001 Rio 500 +0844 Welland Industrial Co., Ltd +0846 NetGear, Inc. + 1001 EA101 10 Mbps 10BASE-T Ethernet [Kawasaki LSI KL5KLUSB101B] + 1002 Ethernet + 1020 FA101 Fast Ethernet USB 1.1 + 1040 FA120 Fast Ethernet USB 2.0 [Asix AX88172 / AX8817x] + 4110 MA111(v1) 802.11b Wireless [Intersil Prism 3.0] + 4200 WG121(v1) 54 Mbps Wireless [Intersil ISL3886] + 4210 WG121(v2) 54 Mbps Wireless [Intersil ISL3886] + 4220 WG111(v1) 54 Mbps Wireless [Intersil ISL3886] + 4230 MA111(v2) 802.11b Wireless [SIS SIS 162] + 4240 WG111(v1) rev 2 54 Mbps Wireless [Intersil ISL3887] + 4250 WG111T 802.11g Wireless Adapter [Atheros AR5523] + 4260 WG111v3 54 Mbps Wireless [realtek RTL8187B] + 4300 WG111U Double 108 Mbps Wireless [Atheros AR5004X / AR5005UX] + 4301 WG111U (no firmware) Double 108 Mbps Wireless [Atheros AR5004X / AR5005UX] + 5f00 WPN111 802.11g Wireless Adapter [Atheros AR5523] + 6a00 WG111v2 54 Mbps Wireless [RealTek RTL8187L] + 7100 WN121T RangeMax Next Wireless-N [Marvell TopDog] + 9000 WN111(v1) RangeMax Next Wireless [Marvell TopDog] + 9001 WN111(v2) RangeMax Next Wireless [Atheros AR9001U-(2)NG] + 9010 WNDA3100(v1) 802.11n [Atheros AR9001U-(2)NG] + 9011 WNDA3100(v2) 802.11n [Broadcom BCM4323] + 9018 WNDA3200 802.11abgn Wireless Adapter [Atheros AR7010+AR9280] + 9020 WNA3100(v1) Wireless-N 300 [Broadcom BCM43231] + 9030 WNA1100 Wireless-N 150 [Atheros AR9271] + 9040 WNA1000 Wireless-N 150 [Atheros AR9001U-(2)NG] + a001 PA101 10 Mbps HPNA Home Phoneline RJ-1 +084d Minton Optic Industry Co., Inc. + 0001 Jenoptik JD800i + 0003 S-Cam F5/D-Link DSC-350 Digital Camera + 0011 Argus DC3500 Digital Camera + 0014 Praktica DC 32 + 0019 Praktica DPix3000 + 0025 Praktica DC 60 + 1001 ScanHex SX-35d +084e KB Gear + 0001 JamCam Camera + 1001 Jam Studio Tablet + 1002 Pablo Tablet +084f Empeg + 0001 Empeg-Car Mark I/II Player +0850 Fast Point Technologies, Inc. +0851 Macronix International Co., Ltd + 1542 SiPix Blink + 1543 Maxell WS30 Slim Digital Camera, or Pandigital PI8004W01 digital photo frame + a168 MXIC +0852 CSEM +0853 Topre Corporation + 0100 HHKB Professional +0854 ActiveWire, Inc. + 0100 I/O Board + 0101 I/O Board, rev1 +0856 B&B Electronics + ac01 uLinks USOTL4 RS422/485 Adapter +0858 Hitachi Maxell, Ltd + 3102 Bluetooth Device + ffff Maxell module with BlueCore in DFU mode +0859 Minolta Systems Laboratory, Inc. +085a Xircom + 0001 Portstation Dual Serial Port + 0003 Portstation Paraller Port + 0008 Ethernet + 0009 Ethernet + 000b Portstation Dual PS/2 Port + 0021 1 port to Serial Converter + 0022 Parallel Port + 0023 2 port to Serial Converter + 0024 Parallel Port + 0027 1 port to Serial Converter + 0028 PortGear to SCSI Converter + 0032 PortStation SCSI Module + 003c Bluetooth Adapter + 0299 Colorvision, Inc. Monitor Spyder + 8021 1 port to Serial + 8023 2 port to Serial + 8027 PGSDB9 Serial Port +085c ColorVision, Inc. + 0200 Monitor Spyder +0862 Teletrol Systems, Inc. +0863 Filanet Corp. +0864 NetGear, Inc. + 4100 MA101 802.11b Adapter + 4102 MA101 802.11b Adapter +0867 Data Translation, Inc. + 9812 ECON Data acquisition unit + 9816 DT9816 ECON data acquisition module + 9836 DT9836 data acquisition card +086a Emagic Soft- und Hardware GmbH + 0001 Unitor8 + 0002 AMT8 + 0003 MT4 +086c DeTeWe - Deutsche Telephonwerke AG & Co. + 1001 Eumex 504PC ISDN TA + 1002 Eumex 504PC (FlashLoad) + 1003 TA33 ISDN TA + 1004 TA33 (FlashLoad) + 1005 Eumex 604PC HomeNet + 1006 Eumex 604PC HomeNet (FlashLoad) + 1007 Eumex 704PC DSL + 1008 Eumex 704PC DSL (FlashLoad) + 1009 Eumex 724PC DSL + 100a Eumex 724PC DSL (FlashLoad) + 100b OpenCom 30 + 100c OpenCom 30 (FlashLoad) + 100d BeeTel Home 100 + 100e BeeTel Home 100 (FlashLoad) + 1011 USB2DECT + 1012 USB2DECT (FlashLoad) + 1013 Eumex 704PC LAN + 1014 Eumex 704PC LAN (FlashLoad) + 1021 OpenCom 40 + 1022 OpenCom 40 (FlashLoad) + 1023 OpenCom 45 + 1024 OpenCom 45 (FlashLoad) + 1025 Sinus 61 data + 1029 dect BOX + 102c Eumex 604PC HomeNet [FlashLoad] + 1030 Eumex 704PC DSL [FlashLoad] + 1032 OpenCom 40 [FlashLoad] + 1033 OpenCom 30 plus + 1034 OpenCom 30 plus (FlashLoad) + 1055 Eumex 220 ISDN TA + 2000 OpenCom 1000 +086e System TALKS, Inc. + 1920 SGC-X2UL +086f MEC IMEX, Inc. +0870 Metricom + 0001 Ricochet GS +0871 SanDisk, Inc. + 0001 SDDR-01 Compact Flash Reader + 0002 SDDR-31 Compact Flash Reader + 0005 SDDR-05 Compact Flash Reader +0873 Xpeed, Inc. +0874 A-Tec Subsystem, Inc. +0879 Comtrol Corp. +087c Adesso/Kbtek America, Inc. +087d Jaton Corp. + 5704 Ethernet +087e Fujitsu Computer Products of America +087f Virtual IP Group, Inc. +0880 APT Technologies, Inc. +0883 Recording Industry Association of America (RIAA) +0885 Boca Research, Inc. +0886 XAC Automation Corp. + 0630 Intel PC Camera CS630 +0887 Hannstar Electronics Corp. +088b MassWorks, Inc. + 4944 MassWorks ID-75 TouchScreen +088c Swecoin AB + 2030 Ticket Printer TTP 2030 +088e iLok + 5036 Portable secure storage for software licenses +0892 DioGraphy, Inc. + 0101 Smartdio Reader/Writer +0897 Lauterbach + 0002 Power Debug/Power Debug II +089c United Technologies Research Cntr. +089d Icron Technologies Corp. +089e NST Co., Ltd +089f Primex Aerospace Co. +08a5 e9, Inc. +08a8 Andrea Electronics +08ae Macally (Mace Group, Inc.) +08b4 Sorenson Vision, Inc. +08b7 NATSU + 0001 Playstation adapter +08b8 J. Gordon Electronic Design, Inc. + 01f4 USBSIMM1 +08b9 RadioShack Corp. (Tandy) +08bb Texas Instruments Japan + 2702 Speakers + 2900 PCM2900 Audio Codec + 2901 PCM2901 Audio Codec + 2902 PCM2902 Audio Codec + 2904 PCM2904 Audio Codec + 2910 PCM2912 Audio Codec +08bd Citizen Watch Co., Ltd + 0208 CLP-521 Label Printer + 1100 X1-USB Floppy +08c3 Precise Biometrics + 0001 100 SC + 0002 100 A + 0003 100 SC BioKeyboard + 0006 100 A BioKeyboard + 0100 100 MC ISP + 0101 100 MC FingerPrint and SmartCard Reader + 0300 100 AX + 0400 100 SC + 0401 150 MC + 0402 200 MC FingerPrint and SmartCard Reader + 0404 100 SC Upgrade + 0405 150 MC Upgrade + 0406 100 MC Upgrade +08c4 Proxim, Inc. + 0100 Skyline 802.11b Wireless Adapter + 02f2 Farallon Home Phoneline Adapter +08c7 Key Nice Enterprise Co., Ltd +08c8 2Wire, Inc. +08c9 Nippon Telegraph and Telephone Corp. +08ca Aiptek International, Inc. + 0001 Tablet + 0010 Tablet + 0020 APT-6000U Tablet + 0021 APT-2 Tablet + 0022 Tablet + 0023 Tablet + 0024 Tablet + 0100 Pen Drive + 0102 DualCam + 0103 Pocket DV Digital Camera + 0104 Pocket DVII + 0105 Mega DV(Disk) + 0106 Pocket DV3100+ + 0107 Pocket DV3100 + 0109 Nisis DV4 Digital Camera + 010a Trust 738AV LCD PV Mass Storage + 0111 PenCam VGA Plus + 2008 Mini PenCam 2 + 2010 Pocket CAM 3 Mega (webcam) + 2011 Pocket CAM 3 Mega (storage) + 2016 PocketCam 2 Mega + 2018 Pencam SD 2M + 2020 Slim 3000F + 2022 Slim 3200 + 2024 Pocket DV3500 + 2028 Pocket Cam4M + 2040 Pocket DV4100M + 2042 Pocket DV5100M Composite Device + 2043 Pocket DV5100M (Disk) + 2060 Pocket DV5300 +08cd Jue Hsun Ind. Corp. +08ce Long Well Electronics Corp. +08cf Productivity Enhancement Products +08d1 smartBridges, Inc. + 0001 smartNIC Ethernet [catc] + 0003 smartNIC 2 PnP Ethernet +08d3 Virtual Ink +08d4 Fujitsu Siemens Computers + 0009 SCR SmartCard Reader +08d8 IXXAT Automation GmbH + 0002 USB-to-CAN compact + 0003 USB-to-CAN II + 0100 USB-to-CAN +08d9 Increment P Corp. +08dd Billionton Systems, Inc. + 0112 Wireless LAN Adapter + 0113 Wireless LAN Adapter + 0986 USB-100N Ethernet [pegasus] + 0987 USBLP-100 HomePNA Ethernet [pegasus] + 0988 USBEL-100 Ethernet [pegasus] + 1986 10/100 LAN Adapter + 2103 DVB-T TV-Tuner Card-R + 8511 USBE-100 Ethernet [pegasus2] + 90ff USB2AR Ethernet +08de ??? + 7a01 802.11b Adapter +08df Spyrus, Inc. + 0001 Rosetta Token V1 + 0002 Rosetta Token V2 + 0003 Rosetta Token V3 + 0a00 Lynks Interface +08e3 Olitec, Inc. + 0002 USB-RS232 Bridge + 0100 Interface ADSL + 0101 Interface ADSL + 0102 ADSL + 0301 RNIS +08e4 Pioneer Corp. +08e5 Litronic +08e6 Gemplus + 0001 GemPC-Touch 430 + 0430 GemPC430 SmartCard Reader + 0432 GemPC432 SmartCard Reader + 0435 GemPC435 SmartCard Reader + 0437 GemPC433 SL SmartCard Reader + 1359 UA SECURE STORAGE TOKEN + 2202 Gem e-Seal Pro Token + 3437 GemPC Twin SmartCard Reader + 3438 GemPC Key SmartCard Reader + 3478 PinPad Smart Card Reader + 4433 GemPC433-Swap + 5501 GemProx-PU Contactless Smart Card Reader + ace0 UA HYBRID TOKEN +08e7 Pan-International Wire & Cable +08e8 Integrated Memory Logic +08e9 Extended Systems, Inc. + 0100 XTNDAccess IrDA Dongle +08ea Ericsson, Inc., Blue Ridge Labs + 00c9 ADSL Modem HM120dp Loader + 00ca ADSL WAN Modem HM120dp + 00ce HM230d Virtual Bus for Helium + abba USB Driver for Bluetooth Wireless Technology + abbb Bluetooth Device in DFU State +08ec M-Systems Flash Disk Pioneers + 0001 TravelDrive 2C + 0002 TravelDrive 2C + 0005 TravelDrive 2C + 0008 TravelDrive 2C + 0010 DiskOnKey + 0011 DiskOnKey + 0012 TravelDrive 2C + 0014 TravelDrive 2C + 0015 Kingston DataTraveler ELITE + 0016 Kingston DataTraveler U3 + 0020 TravelDrive + 0021 TravelDrive + 0022 TravelDrive + 0023 TravelDrive + 0024 TravelDrive + 0025 TravelDrive + 0026 TravelDrive + 0027 TravelDrive + 0028 TravelDrive + 0029 TravelDrive + 0030 TravelDrive + 0822 TravelDrive 2C + 0832 Hi-Speed Mass Storage Device + 0834 M-Disk 220 + 0998 Kingston Data Traveler2.0 Disk Driver + 0999 Kingston Data Traveler2.0 Disk Driver + 1000 TravelDrive 2C + 2000 TravelDrive 2C + 2038 TravelDrive + 2039 TravelDrive + 204a TravelDrive + 204b TravelDrive +08ed MediaTek Inc. + 0002 CECT M800 memory card +08ee CCSI/Hesso +08f0 Corex Technologies +08f1 CTI Electronics Corp. +08f2 Gotop Information Inc. + 007f Super Q2 Tablet +08f5 SysTec Co., Ltd +08f6 Logic 3 International, Ltd +08f7 Vernier + 0001 LabPro + 0002 EasyTemp/Go!Temp + 0003 Go!Link + 0004 Go!Motion +08f8 Keen Top International Enterprise Co., Ltd +08f9 Wipro Technologies +08fa Caere +08fb Socket Communications +08fc Sicon Cable Technology Co., Ltd +08fd Digianswer A/S + 0001 Bluetooth Device +08ff AuthenTec, Inc. + 1600 AES1600 + 1610 AES1600 + 2500 AES2501 + 2501 AES2501 + 2502 AES2501 + 2503 AES2501 + 2504 AES2501 + 2505 AES2501 + 2506 AES2501 + 2507 AES2501 + 2508 AES2501 + 2509 AES2501 + 250a AES2501 + 250b AES2501 + 250c AES2501 + 250d AES2501 + 250e AES2501 + 250f AES2501 + 2510 AES2510 + 2580 AES2501 Fingerprint Sensor + 2588 AES2501 + 2589 AES2501 + 258a AES2501 + 258b AES2501 + 258c AES2501 + 258d AES2501 + 258e AES2501 + 258f AES2501 + 2810 AES2810 + 3400 AES3400 TruePrint Sensor + 3401 AES3400 Sensor + 3402 AES3400 Sensor + 3403 AES3400 Sensor + 3404 AES3400 TruePrint Sensor + 3405 AES3400 TruePrint Sensor + 3406 AES3400 TruePrint Sensor + 3407 AES3400 TruePrint Sensor + 4902 BioMV with TruePrint AES3500 + 4903 BioMV with TruePrint AES3400 + 5500 AES4000 + 5501 AES4000 TruePrint Sensor + 5503 AES4000 TruePrint Sensor + 5505 AES4000 TruePrint Sensor + 5507 AES4000 TruePrint Sensor + 55ff AES4000 TruePrint Sensor. + 5700 AES3500 Fingerprint Reader + 5701 AES3500 TruePrint Sensor + 5702 AES3500 TruePrint Sensor + 5703 AES3500 TruePrint Sensor + 5704 AES3500-BZ TruePrint Sensor + 5705 AES3500-BZ TruePrint Sensor + 5706 AES3500-BZ TruePrint Sensor + 5707 AES3500-BZ TruePrint Sensor + 5710 AES3500 TruePrint Sensor + 5711 AES3500 TruePrint Sensor + 5712 AES3500 TruePrint Sensor + 5713 AES3500 TruePrint Sensor + 5714 AES3500-BZ TruePrint Sensor + 5715 AES3500-BZ TruePrint Sensor + 5716 AES3500-BZ TruePrint Sensor + 5717 AES3500-BZ TruePrint Sensor + 5730 AES3500 TruePrint Sensor + 5731 AES3500 TruePrint Sensor + 5732 AES3500 TruePrint Sensor + 5733 AES3500 TruePrint Sensor + 5734 AES3500-BZ TruePrint Sensor + 5735 AES3500-BZ TruePrint Sensor + 5736 AES3500-BZ TruePrint Sensor + 5737 AES3500-BZ TruePrint Sensor + afe3 FingerLoc Sensor Module (Anchor) + afe4 FingerLoc Sensor Module (Anchor) + afe5 FingerLoc Sensor Module (Anchor) + afe6 FingerLoc Sensor Module (Anchor) + fffd AES2510 Sensor (USB Emulator) + ffff Sensor (Emulator) +0900 Pinnacle Systems, Inc. +0901 VST Technologies + 0001 Hard Drive Adapter (TPP) + 0002 SigmaDrive Adapter (TPP) +0906 Faraday Technology Corp. +0908 ShenZhen SANZHAI Technology Co.,Ltd + 2701 Spy Pen VGA +0909 Audio-Technica Corp. +090a Trumpion Microelectronics, Inc. + 1001 T33520 Flash Card Controller + 1100 Comotron C3310 MP3 player + 1200 MP3 player + 1540 Digitex Container Flash Disk +090b Neurosmith +090c Silicon Motion, Inc. - Taiwan (formerly Feiya Technology Corp.) + 0371 Silicon Motion SM371 Camera + 0373 Silicon Motion Camera + 037a Silicon Motion Camera + 037b Silicon Motion Camera + 1000 Flash Drive + 1132 5-in-1 Card Reader + 337b Silicon Motion Camera + 3710 Silicon Motion Camera + 3720 Silicon Motion Camera + 37c0 Silicon Motion Camera + 6000 SD/SDHC Card Reader (SG365 / FlexiDrive XC+) + 6200 microSD card reader + 837b Silicon Motion Camera + 937b Silicon Motion Camera + b370 Silicon Motion SM370 Camera + b371 Silicon Motion SM371 Camera +090d Multiport Computer Vertriebs GmbH +090e Shining Technology, Inc. +090f Fujitsu Devices, Inc. +0910 Alation Systems, Inc. +0911 Philips Speech Processing + 2512 SpeechMike Pro +0912 Voquette, Inc. +0915 GlobeSpan, Inc. + 0001 DSL Modem + 0002 ADSL ATM Modem + 0005 LAN Modem + 2000 802.11 Adapter + 2002 802.11 Adapter + 8000 ADSL LAN Modem + 8005 DSL-302G Modem + 8101 ADSL WAN Modem + 8102 DSL-200 ADSL Modem + 8103 DSL-200 ADSL Modem + 8104 DSL-200 Modem + 8400 DSL Modem + 8401 DSL Modem + 8402 DSL Modem + 8500 DSL Modem + 8501 DSL Modem +0917 SmartDisk Corp. + 0001 eFilm Reader-11 SM/CF + 0002 eFilm Reader-11 SM + 0003 eFilm Reader-11 CF + 0200 FireFly + 0201 FireLite + 0202 STORAGE ADAPTER (FirePower) + 0204 FlashTrax Storage + 0205 STORAGE ADAPTER (CrossFire) + 0206 FireFly 20G HDD + 0207 FireLite + 020f STORAGE ADAPTER (FireLite) + da01 eFilm Reader-11 Test + ffff eFilm Reader-11 (Class/PDR) +0919 Tiger Electronics + 0100 Fast Flicks Digital Camera +091e Garmin International + 0003 GPS (various models) + 0004 iQue 3600 + 0200 Data Card Programmer (install) + 1200 Data Card Programmer + 21a5 etrex Cx (msc) + 2271 Edge 605/705 + 2295 Colorado 300 + 22b6 eTrex Vista HCx (Mass Storage mode) + 2353 Nüvi 205T + 2535 Edge 800 +0920 Echelon Co. + 7500 Network Interface +0921 GoHubs, Inc. + 1001 GoCOM232 Serial +0922 Dymo-CoStar Corp. + 0007 LabelWriter 330 + 0009 LabelWriter 310 +0923 IC Media Corp. + 010f SIIG MobileCam +0924 Xerox + 23dd DocuPrint M760 (X760_USB) + 3ce8 Phaser 3428 Printer + 3d5b Phaser 6115MFP TWAIN Scanner + 420f WorkCentre PE220 Series + 421f M20 Scanner + 423b Printing Support + ffef WorkCenter M15 + fffb DocuPrint M750 (X750_USB) +0925 Lakeview Research + 0005 Gamtec.,Ltd SmartJoy PLUS Adapter + 8101 Phidgets, Inc., 1-Motor PhidgetServo v2.0 + 8104 Phidgets, Inc., 4-Motor PhidgetServo v2.0 + 8800 WiseGroup Ltd, MP-8800 Quad Joypad + 8866 WiseGroup Ltd, MP-8866 Dual Joypad +0927 Summus, Ltd +0928 Oxford Semiconductor, Ltd +0929 American Biometric Co. +092a Toshiba Information & Industrial Sys. And Services +092b Sena Technologies, Inc. +092f Northern Embedded Science/CAVNEX + 0004 JTAG-4 + 0005 JTAG-5 +0930 Toshiba Corp. + 0009 Gigabeat F/X (HDD audio player) + 000c Gigabeat F (mtp) + 0010 Gigabeat S (mtp) + 0301 PCX1100U Cable Modem (WDM) + 0302 PCX2000 Cable Modem (WDM) + 0305 Cable Modem PCX3000 + 0307 Cable Modem PCX2500 + 0308 PCX2200 Cable Modem (WDM) + 0309 PCX5000 Cable Modem (WDM) + 030b Cable Modem PCX2600 + 0501 Bluetooth Controller + 0502 Integrated Bluetooth + 0503 Bluetooth Controller + 0505 Integrated Bluetooth + 0506 Integrated Bluetooth + 0507 Bluetooth Adapter + 0508 Integrated Bluetooth HCI + 0509 BT EDR Dongle + 0706 PocketPC e740 + 0707 Pocket PC e330 Series + 0708 Pocket PC e350 Series + 0709 Pocket PC e750 Series + 070a Pocket PC e400 Series + 070b Pocket PC e800 Series + 0a07 WLM-10U1 802.11abgn Wireless Adapter [Ralink RT3572] + 0b05 PX1220E-1G25 External hard drive + 0b09 PX1396E-3T01 External hard drive + 1300 Wireless Broadband (CDMA EV-DO) SM-Bus Minicard Status Port + 1301 Wireless Broadband (CDMA EV-DO) Minicard Status Port + 1302 Wireless Broadband (3G HSDPA) SM-Bus Minicard Status Port + 1303 Wireless Broadband (3G HSDPA) Minicard Status Port + 1308 Broadband (3G HSDPA) SM-Bus Minicard Diagnostics Port + 130b F3507g Mobile Broadband Module + 130c F3607gw Mobile Broadband Module + 1311 F3607gw v2 Mobile Broadband Module + 642f TravelDrive + 6506 TravelDrive 2C + 6507 TravelDrive 2C + 6508 TravelDrive 2C + 6509 TravelDrive 2C + 6510 TravelDrive 2C + 6517 TravelDrive 2C + 6518 TravelDrive 2C + 6519 Kingston DataTraveler 2.0 USB Stick + 651a TravelDrive 2C + 651b TravelDrive 2C + 651c TravelDrive 2C + 651d TravelDrive 2C + 651e TravelDrive 2C + 651f TravelDrive 2C + 6520 TravelDrive 2C + 6521 TravelDrive 2C + 6522 TravelDrive 2C + 6523 TravelDrive + 6524 TravelDrive + 6525 TravelDrive + 6526 TravelDrive + 6527 TravelDrive + 6528 TravelDrive + 6529 TravelDrive + 652a TravelDrive + 652b TravelDrive + 652c TravelDrive + 652d TravelDrive + 652f TravelDrive + 6530 TravelDrive + 6531 TravelDrive + 6532 256M Stick + 6533 512M Stick + 6534 TravelDrive + 653c Kingston DataTraveler 2.0 Stick (512M) + 653d Kingston DataTraveler 2.0 Stick (1GB) + 653e Flash Memory + 6540 TransMemory Flash Memory + 6544 Kingston DataTraveler 2.0 Stick (2GB) + 6545 Kingston DataTraveler 102 Flash Drive / HEMA Flash Drive 2 GB / PNY Attache 4GB Stick +0931 Harmonic Data Systems, Ltd +0932 Crescentec Corp. + 0300 VideoAdvantage + 0302 Syntek DC-112X + 0320 VideoAdvantage + 0482 USB2.0 TVBOX + 1100 DC-1100 Video Enhamcement Device + 1112 Veo Web Camera + a311 Video Enhancement Device +0933 Quantum Corp. +0934 Netcom Systems +0936 NuTesla + 0030 Composite Device, Mass Storage Device (Flash Drive) amd HID + 003c Rhythmedics HID Bootloader +0939 Lumberg, Inc. +093a Pixart Imaging, Inc. + 0007 CMOS 100K-R Rev. 1.90 + 010e Digital camera, CD302N/Elta Medi@ digi-cam/HE-501A + 010f Argus DC-1610/DC-1620/Emprex PCD3600/Philips P44417B keychain camera/Precision Mini,Model HA513A/Vivitar Vivicam 55 + 020f Bullet Line Photo Viewer + 050f Mars-Semi Pc-Camera + 2460 Q-TEC WEBCAM 100 + 2468 SoC PC-Camera + 2470 SoC PC-Camera + 2471 SoC PC-Camera + 2500 USB Optical Mouse + 2510 Optical Mouse + 2600 Typhoon Easycam USB 330K (newer)/Typhoon Easycam USB 2.0 VGA 1.3M/Sansun SN-508 + 2601 SPC 610NC Laptop Camera + 2603 PAC7312 Camera + 2608 PAC7311 Trust WB-3300p + 260e PAC7311 Gigaware VGA PC Camera:Trust WB-3350p:SIGMA cam 2350 + 260f PAC7311 SnakeCam + 2621 PAC731x Trust Webcam + 2624 Webcam +093b Plextor Corp. + 0010 Storage Adapter + 0011 PlexWriter 40/12/40U + 0041 PX-708A DVD RW + 0042 PX-712UF DVD RW + a002 ConvertX M402U XLOADER + a003 ConvertX AV100U A/V Capture Audio + a004 ConvertX TV402U XLOADER + a005 ConvertX TV100U A/V Capture + a102 ConvertX M402U A/V Capture + a104 ConvertX PX-TV402U/NA +093c Intrepid Control Systems, Inc. + 0601 ValueCAN + 0701 NeoVI Blue vehicle bus interface +093d InnoSync, Inc. +093e J.S.T. Mfg. Co., Ltd +093f Olympia Telecom Vertriebs GmbH +0940 Japan Storage Battery Co., Ltd +0941 Photobit Corp. +0942 i2Go.com, LLC +0943 HCL Technologies India Private, Ltd +0944 KORG, Inc. + 0001 PXR4 4-Track Digital Recorder + 0020 KAOSS Pad KP3 Dynamic Effect/Sampler + 010d nanoKEY MIDI keyboard + 010e nanoPAD pad controller + 010f nanoKONTROL studio controller + 0f03 K-Series K61P MIDI studio controller +0945 Pasco Scientific +0948 Kronauer music in digital + 0301 USB Pro (24/48) + 0302 USB Pro (24/96 playback) + 0303 USB Pro (24/96 record) + 0304 USB Pro (16/48) + 1105 USB One +094b Linkup Systems Corp. + 0001 neonode N2 +094d Cable Television Laboratories +094f Yano + 0101 U640MO-03 + 05fc METALWEAR-HDD +0951 Kingston Technology + 0008 Ethernet + 000a KNU101TX 100baseTX Ethernet + 1600 DataTraveler II Pen Drive + 1601 DataTraveler II+ Pen Drive + 1602 DataTraveler Mini + 1603 DataTraveler 1GB/2GB Pen Drive + 1607 DataTraveler 100 + 1613 DataTraveler DT101C Flash Drive + 1616 Kingston DataTraveler Locker (4GB) + 1624 DataTraveler G2 + 1625 DataTraveler 101 II + 162a DataTraveler 112 4GB Pen Drive + 1643 DataTraveler G3 4GB +0954 RPM Systems Corp. +0955 NVidia Corp. +0956 BSquare Corp. +0957 Agilent Technologies, Inc. + 0200 E-Video DC-350 Camera + 0202 E-Video DC-350 Camera +0958 CompuLink Research, Inc. +0959 Cologne Chip AG + 2bd0 Intelligent ISDN (Ver. 3.60.04) +095a Portsmith + 3003 Express Ethernet +095b Medialogic Corp. +095c K-Tec Electronics +095d Polycom, Inc. + 0001 Polycom ViaVideo +0967 Acer (??) + 0204 WarpLink 802.11b Adapter +0968 Catalyst Enterprises, Inc. +096e Feitian Technologies, Inc. + 0802 ePass2000 (G&D STARCOS SPK 2.4) +0971 Gretag-Macbeth AG + 2003 Eye-One display + 2005 Huey + 2007 ColorMunki +0973 Schlumberger + 0001 e-gate Smart Card +0974 Datagraphix, a business unit of Anacomp +0975 OL'E Communications, Inc. +0976 Adirondack Wire & Cable +0977 Lightsurf Technologies +0978 Beckhoff GmbH +0979 Jeilin Technology Corp., Ltd + 0224 JL2005A Toy Camera + 0226 JL2005A Toy Camera +097a Minds At Work LLC + 0001 Digital Wallet +097b Knudsen Engineering, Ltd +097c Marunix Co., Ltd +097d Rosun Technologies, Inc. +097f Barun Electronics Co., Ltd +0981 Oak Technology, Ltd +0984 Apricorn + 0200 Hard Drive Storage (TPP) +0985 cab Produkttechnik GmbH & Co KG + 0045 Mach4/200 Label Printer + 00a3 A3/200 or A3/300 Label Printer +0986 Matsushita Electric Works, Ltd. +098c Vitana Corp. +098d INDesign +098e Integrated Intellectual Property, Inc. +098f Kenwood TMI Corp. +0993 Gemstar eBook Group, Ltd + 0001 REB1100 eBook Reader + 0002 eBook +0996 Integrated Telecom Express, Inc. +099a Zippy Technology Corp. + 0638 Sanwa Supply Inc. Small Keyboard + 610c EL-610 Super Mini Electron luminescent Keyboard + 7160 Hyper Slim Keyboard +09a3 PairGain Technologies +09a4 Contech Research, Inc. +09a5 VCON Telecommunications +09a6 Poinchips + 8001 Mass Storage Device +09a7 Data Transmission Network Corp. +09a8 Lin Shiung Enterprise Co., Ltd +09a9 Smart Card Technologies Co., Ltd +09aa Intersil Corp. + 1000 Prism GT 802.11b/g Adapter + 3642 Prism 2.x 802.11b Adapter +09ab Japan Cash Machine Co., Ltd. +09ae Tripp Lite +09b2 Franklin Electronic Publishers, Inc. + 0001 eBookman Palm Computer +09b3 Altius Solutions, Inc. +09b4 MDS Telephone Systems +09b5 Celltrix Technology Co., Ltd +09bc Grundig + 0002 MPaxx MP150 MP3 Player +09be MySmart.Com + 0001 MySmartPad +09bf Auerswald GmbH & Co. KG + 00c0 COMpact 2104 ISDN PBX + 00db COMpact 4410/2206 ISDN ISDN + 00f1 COMfort System Telephones +09c0 Genpix Electronics, LLC + 0202 8PSK DVB-S tuner + 0203 Skywalker-1 DVB-S tuner + 0204 Skywalker-CW3K DVB-S tuner + 0205 Skywalker-CW3K DVB-S tuner + 0206 Skywalker-2 DVB-S tuner +09c1 Arris Interactive LLC + 1337 TOUCHSTONE DEVICE +09c2 Nisca Corp. +09c3 ActivCard, Inc. + 0007 Reader V2 + 0008 ZFG-9800-AC SmartCard Reader +09c4 ACTiSYS Corp. + 0011 ACT-IR2000U IrDA Dongle +09c5 Memory Corp. +09cc Workbit Corp. + 0404 BAFO USB-ATA/ATAPI Bridge Controller +09cd Psion Dacom Home Networks, Ltd + 2001 Psion WaveFinder DAB radio receiver +09ce City Electronics, Ltd +09cf Electronics Testing Center, Taiwan +09d1 NeoMagic, Inc. +09d2 Vreelin Engineering, Inc. +09d3 Com One + 0001 ISDN TA +09d7 Novatel Wireless + 0100 NovAtel FlexPack GPS receiver +09d9 KRF Tech, Ltd +09da A4 Tech Co., Ltd + 0006 Optical Mouse WOP-35 / Trust 450L Optical Mouse + 000a Port Mouse + 0018 Trust Human Interface Device + 001a Wireless Mouse & RXM-15 Receiver + 002a Wireless Optical Mouse NB-30 + 022b Wireless Mouse (Battery Free) + 024f RF Receiver and G6-20D Wireless Optical Mouse + 032b Wireless Mouse (Battery Free) + 9090 XL-750BK Laser Mouse +09db Measurement Computing Corp. + 0075 MiniLab 1008 + 0076 PMD-1024 + 007a PMD-1208LS + 0081 USB-1616FS + 0082 USB-1208FS + 0088 USB-1616FS internal hub +09dc Aimex Corp. +09dd Fellowes, Inc. +09df Addonics Technologies Corp. +09e1 Intellon Corp. + 5121 MicroLink dLAN +09e5 Jo-Dan International, Inc. +09e6 Silutia, Inc. +09e7 Real 3D, Inc. +09e8 AKAI Professional M.I. Corp. + 0062 MPD16 MIDI Pad Controller Unit + 006d EWI electronic wind instrument + 0071 MPK25 MIDI Keyboard + 0076 LPK25 MIDI Keyboard +09e9 Chen-Source, Inc. +09eb IM Networks, Inc. + 4331 iRhythm Tuner Remote +09ef Xitel + 0101 MD-Port DG2 MiniDisc Interface +09f3 GoFlight, Inc. + 0018 GF-46 Multi-Mode Display Module + 0028 RP-48 Combination Pushbutton-Rotary Module + 0048 LGTII - Landing Gear and Trim Control Module + 0064 MCPPro - Airliner Mode Control Panel (Autopilot) + 0300 EFIS - Electronic Flight Information System +09f5 AresCom + 0168 Network Adapter + 0188 LAN Adapter + 0850 Adapter +09f6 RocketChips, Inc. +09f7 Edu-Science (H.K.), Ltd +09f8 SoftConnex Technologies, Inc. +09f9 Bay Associates +09fa Mtek Vision +09fb Altera + 6001 Blaster +09ff Gain Technology Corp. +0a00 Liquid Audio +0a01 ViA, Inc. +0a07 Ontrak Control Systems Inc. + 0064 ADU100 Data Acquisition Interface + 0078 ADU120 Data Acquisition Interface + 0082 ADU130 Data Acquisition Interface + 00c8 ADU200 Relay I/O Interface + 00d0 ADU208 Relay I/O Interface + 00da ADU218 Solid-State Relay I/O Interface +0a0b Cybex Computer Products Co. +0a11 Xentec, Inc. +0a12 Cambridge Silicon Radio, Ltd + 0001 Bluetooth Dongle (HCI mode) + 0002 Frontline Test Equipment Bluetooth Device + 0003 Nanosira + 0004 Nanosira WHQL Reference Radio + 0005 Nanosira-Multimedia + 0006 Nanosira-Multimedia WHQL Reference Radio + 0007 Nanosira3-ROM + 0008 Nanosira3-ROM + 0009 Nanosira4-EDR WHQL Reference Radio + 000a Nanosira4-EDR-ROM + 000b Nanosira5-ROM + 0043 Bluetooth Device + 0100 Casira with BlueCore2-External Module + 0101 Casira with BlueCore2-Flash Module + 0102 Casira with BlueCore3-Multimedia Module + 0103 Casira with BlueCore3-Flash Module + 0104 Casira with BlueCore4-External Module + 0105 Casira with BlueCore4-Multimedia Module + 1000 Bluetooth Dongle (HID proxy mode) + 1010 Bluetooth Device + 1011 Bluetooth Device + 1012 Bluetooth Device + ffff USB Bluetooth Device in DFU State +0a13 Telebyte, Inc. +0a14 Spacelabs Medical, Inc. +0a15 Scalar Corp. +0a16 Trek Technology (S) PTE, Ltd + 1111 ThumbDrive + 8888 IBM USB Memory Key + 9988 Trek2000 TD-G2 +0a17 Pentax Corp. + 0004 Optio 330 + 0006 Optio S + 0007 Optio 550 + 0009 Optio 33WR + 000a Optio 555 + 000c Optio 43WR (mass storage mode) + 000d Optio 43WR + 0015 Optio S40/S5i + 003b Optio 50 (mass storage mode) + 003d Optio S55 + 0043 *ist DL + 0047 Optio S60 + 0052 Optio 60 Digital Camera + 006e K10D + 0070 K100D + 0093 K200D + 00a7 Optio E50 + 1001 EI2000 Camera powered by Digita! +0a18 Heidelberger Druckmaschinen AG +0a19 Hua Geng Technologies, Inc. +0a21 Medtronic Physio Control Corp. + 8001 MMT-7305WW [Medtronic Minimed CareLink] +0a22 Century Semiconductor USA, Inc. +0a27 Datacard Group + 0102 SP35 +0a2c AK-Modul-Bus Computer GmbH + 0008 GPIO Ports +0a34 TG3 Electronics, Inc. + 0101 TG82tp + 0110 Deck 82-key backlit keyboard +0a35 Radikal Technologies + 002a SAC - Software Assigned Controller + 008a SAC Hub +0a39 Gilat Satellite Networks, Ltd +0a3a PentaMedia Co., Ltd + 0163 KN-W510U 1.0 Wireless LAN Adapter +0a3c NTT DoCoMo, Inc. +0a3d Varo Vision +0a3f Swissonic AG +0a43 Boca Systems, Inc. +0a46 Davicom Semiconductor, Inc. + 0268 ST268 + 6688 ZT6688 Fast Ethernet Adapter + 8515 ADMtek ADM8515 NIC + 9000 DM9000E Fast Ethernet Adapter + 9601 DM9601 Fast Ethernet Adapter +0a47 Hirose Electric +0a48 I/O Interconnect + 3233 Multimedia Card Reader + 3239 Multimedia Card Reader + 3258 Dane Elec zMate SD Reader + 3259 Dane Elec zMate CF Reader + 5000 MediaGear xD-SM + 500a Mass Storage Device + 500f Mass Storage Device + 5010 Mass Storage Device + 5011 Mass Storage Device + 5014 Mass Storage Device + 5020 Mass Storage Device + 5021 Mass Storage Device + 5022 Mass Storage Device + 5023 Mass Storage Device + 5024 Mass Storage Device + 5025 Mass Storage Device +0a4b Fujitsu Media Devices, Ltd +0a4c Computex Co., Ltd +0a4d Evolution Electronics, Ltd + 0064 MK-225 Driver + 0065 MK-225C Driver + 0066 MK-225C Driver + 0067 MK-425C Driver + 0078 MK-37 Driver + 0079 MK-37C Driver + 007a MK-37C Driver + 008c TerraTec MIDI MASTER + 008d MK-249C Driver + 008e MK-249C MIDI Keyboard + 008f MK-449C Driver + 0090 Keystation 49e Driver + 0091 Keystation 61es Driver + 00a0 MK-361 Driver + 00a1 MK-361C Driver + 00a2 MK-361C Driver + 00a3 MK-461C MIDI Keyboard + 00b5 Keystation Pro 88 Driver + 00d2 E-Keys Driver + 00f0 UC-16 Driver + 00f1 X-Session Driver + 00f5 UC-33e MIDI Controller +0a4e Steinberg Soft-und Hardware GmbH +0a4f Litton Systems, Inc. +0a50 Mimaki Engineering Co., Ltd +0a51 Sony Electronics, Inc. +0a52 Jebsee Electronics Co., Ltd +0a53 Portable Peripheral Co., Ltd + 1000 Scanner + 2000 Q-Scan A6 Scanner + 2001 Q-Scan A6 Scanner + 2013 Media Drive A6 Scanner + 2014 Media Drive A6 Scanner + 2015 BizCardReader 600C + 2016 BizCardReader 600C + 202a Scanshell-CSSN + 3000 Q-Scan A8 Scanner + 3002 Q-Scan A8 Reader + 3015 BizCardReader 300G + 302a LM9832 - PA570 Mini Business Card Scanner [Targus] + 5001 BizCardReader 900C +0a5a Electronics For Imaging, Inc. +0a5b EAsics NV +0a5c Broadcom Corp. + 0201 iLine10(tm) Network Adapter + 2000 Bluetooth Device + 2001 Bluetooth Device + 2009 Bluetooth Controller + 200a BCM2035 Bluetooth dongle + 200f Bluetooth Controller + 201d Bluetooth Device + 201e IBM Integrated Bluetooth IV + 2020 Bluetooth dongle + 2033 BCM2033 Bluetooth + 2035 BCM2035 Bluetooth + 2038 Blutonium Device + 2039 Bluetooth Device + 2045 Bluetooth Controller + 2046 Bluetooth Device + 2047 Bluetooth Device + 205e Bluetooth Device + 2100 Bluetooth 2.0+eDR dongle + 2101 Bluetooth Controller + 2102 ANYCOM Blue USB-200/250 + 2110 Bluetooth Controller + 2111 ANYCOM Blue USB-UHE 200/250 + 2120 2045 Bluetooth 2.0 USB-UHE Device with trace filter + 2121 BCM2210 Bluetooth + 2122 Bluetooth 2.0+EDR dongle + 2123 Bluetooth dongle + 2130 2045 Bluetooth 2.0 USB-UHE Device with trace filter + 2131 2045 Bluetooth 2.0 Device with trace filter + 2145 Bluetooth with Enhanced Data Rate II + 2148 BCM92046DG-CL1ROM Bluetooth 2.1 Adapter + 2150 BCM2046 Bluetooth Device + 2151 Bluetooth + 217f Bluetooth Controller + 219b Bluetooth 2.1 Device + 21b1 HP Bluetooth Module + 21b4 BCM2070 Bluetooth 2.1 + EDR + 21b9 BCM2070 Bluetooth 2.1 + EDR + 21ba BCM2070 Bluetooth 2.1 + EDR + 21bb BCM2070 Bluetooth 2.1 + EDR + 21bc BCM2070 Bluetooth 2.1 + EDR + 21bd BCM2070 Bluetooth 2.1 + EDR + 22be BCM2070 Bluetooth 3.0 + HS + 4500 BCM2046B1 USB 2.0 Hub (part of BCM2046 Bluetooth) + 4502 Keyboard (Boot Interface Subclass) + 4503 Mouse (Boot Interface Subclass) + 5800 BCM5880 Secure Applications Processor + 5801 BCM5880 Secure Applications Processor with fingerprint swipe sensor + 5802 BCM5880 Secure Applications Processor with fingerprint touch sensor + 5803 BCM5880 Secure Applications Processor with secure keyboard + 6300 Pirelli Remote NDIS Device + bd13 Arcadyan WN8522B [Broadcom BCM4323] + d11b Eminent EM4045 [Broadcom 4320 USB] +0a5d Diatrend Corp. +0a5f Zebra + 0009 LP2844 Printer + 0081 GK420t Label Printer + 008b HC100 wristbands Printer + 930a Printer +0a62 MPMan + 0010 MPMan MP-F40 MP3 Player +0a66 ClearCube Technology +0a67 Medeli Electronics Co., Ltd +0a68 Comaide Corp. +0a69 Chroma ate, Inc. +0a6b Green House Co., Ltd + 0001 Compact Flash R/W with MP3 player + 000f FlashDisk +0a6c Integrated Circuit Systems, Inc. +0a6d UPS Manufacturing +0a6e Benwin +0a6f Core Technology, Inc. + 0400 Xanboo +0a70 International Game Technology +0a71 VIPColor Technologies USA, Inc. + 0001 VP485 Printer +0a72 Sanwa Denshi +0a7d NSTL, Inc. +0a7e Octagon Systems Corp. +0a80 Rexon Technology Corp., Ltd +0a81 Chesen Electronics Corp. + 0101 Keyboard + 0103 Keyboard + 0203 Mouse + 0205 PS/2 Keyboard+Mouse Adapter + 0701 USB Missile Launcher +0a82 Syscan + 4600 TravelScan 460/464 +0a83 NextComm, Inc. +0a84 Maui Innovative Peripherals +0a85 Idexx Labs +0a86 NITGen Co., Ltd +0a8d Picturetel +0a8e Japan Aviation Electronics Industry, Ltd + 2011 Filter Driver For JAE XMC R/W +0a90 Candy Technology Co., Ltd +0a91 Globlink Technology, Inc. + 3801 Targus PAKP003 Mouse +0a92 EGO SYStems, Inc. + 0011 SYS WaveTerminal U2A + 0021 GIGAPort + 0031 GIGAPortAG + 0053 AudioTrak Optoplay + 0061 Waveterminal U24 + 0071 MAYA EX7 + 0091 Maya 44 + 00b1 MAYA EX5 + 1000 MIDI Mate + 1010 RoMI/O + 1020 M4U + 1030 M8U + 1090 KeyControl49 + 10a0 KeyControl25 +0a93 C Technologies AB + 0002 C-Pen 10 + 0005 MyPen Light + 000d Input Pen + 0010 C-Pen 20 + 0a93 PayPen +0a94 Intersense +0aa3 Lava Computer Mfg., Inc. +0aa4 Develco Elektronik +0aa5 First International Digital + 0002 irock! 500 Series + 0801 MP3 Player +0aa6 Perception Digital, Ltd + 0101 Hercules Jukebox + 1501 Store 'n' Go HD Drive +0aa7 Wincor Nixdorf International GmbH + 0100 POS Keyboard, TA58P-USB + 0101 POS Keyboard, TA85P-USB + 0102 POS Keyboard, TA59-USB + 0103 POS Keyboard, TA60-USB + 0104 SNIkey Keyboard, SNIKey-KB-USB + 0200 Operator Display, BA63-USB + 0201 Operator Display, BA66-USB + 0202 Operator Display & Scanner, XiCheck-BA63 + 0203 Operator Display & Scanner, XiCheck-BA66 + 0204 Graphics Operator Display, BA63GV + 0300 POS Printer (printer class mode), TH210 + 0301 POS Printer (native mode), TH210 + 0302 POS Printer (printer class mode), TH220 + 0303 POS Printer (native mode), TH220 + 0304 POS Printer, TH230 + 0305 Lottery Printer, XiPrintPlus + 0306 POS Printer (printer class mode), TH320 + 0307 POS Printer (native mode), TH320 + 0308 POS Printer (printer class mode), TH420 + 0309 POS Printer (native mode), TH420 + 030a POS Printer, TH200B + 0400 Lottery Scanner, Xiscan S + 0401 Lottery Scanner, Xiscan 3 + 0402 Programmable Magnetic Swipe Card Reader, MSRP-USB + 0500 IDE Adapter + 0501 Hub Printer Interface + 0502 Hub SNIKey Keyboard + 4304 Banking Printer TP07 + 4305 Banking Printer TP07c + 4500 WN Central Special Electronics +0aa8 TriGem Computer, Inc. + 0060 TG 11Mbps WLAN Mini Adapter + 1001 DreamComboM4100 + 3002 InkJet Color Printer + 8001 TG_iMON + 8002 TG_KLOSS + a001 TG_X2 + a002 TGVFD_KLOSS + ffda iMON_VFD +0aa9 Baromtec Co. + f01b Medion MD 6242 MP3 Player +0aaa Japan CBM Corp. +0aab Vision Shape Europe SA +0aac iCompression, Inc. +0aad Rohde & Schwarz GmbH & Co. KG +0aae NEC infrontia Corp. (Nitsuko) +0aaf Digitalway Co., Ltd +0ab0 Arrow Strong Electronics Co., Ltd +0ab1 FEIG ELECTRONIC GmbH + 0002 OBID RFID-Reader +0aba Ellisys + 8001 Tracker 110 Protocol Analyzer + 8002 Explorer 200 Protocol Analyzer +0abe Stereo-Link + 0101 SL1200 DAC +0abf Diolan + 3370 I2C/SPI Adapter - U2C-12 +0ac3 Sanyo Semiconductor Company Micro +0ac4 Leco Corp. +0ac5 I & C Corp. +0ac6 Singing Electrons, Inc. +0ac7 Panwest Corp. +0ac8 Z-Star Microelectronics Corp. + 0301 Web Camera + 0302 ZC0302 Webcam + 0321 Vimicro generic vc0321 Camera + 0323 Luxya WC-1200 USB 2.0 Webcam + 0328 A4Tech PK-130MG + 0336 Elecom UCAM-DLQ30 + 301b ZC0301 Webcam + 303b ZC0303 Webcam + 305b ZC0305 Webcam + 307b USB 1.1 Webcam + 332d Vega USB 2.0 Camera + 3343 Sirius USB 2.0 Camera + 3420 Venus USB2.0 Camera + c001 Sony embedded vimicro Camera + c002 Visual Communication Camera VGP-VCC1 + c302 Vega USB 2.0 Camera + c303 Saturn USB 2.0 Camera + c326 Namuga 1.3M Webcam + c33f Webcam +0ac9 Micro Solutions, Inc. + 0000 Backpack CD-ReWriter + 0001 BACKPACK 2 Cable + 0010 BACKPACK + 0011 Backpack 40GB Hard Drive + 0110 BACKPACK + 0111 BackPack + 1234 BACKPACK +0aca OPEN Networks Ltd + 1060 OPEN NT1 Plus II +0acc Koga Electronics Co. +0acd ID Tech + 0401 ID TECH Spectrum III Hybrid Smartcard Reader + 0630 ID TECH Spectrum III Mag-Only Insert Reader (SPT3-355 Series) USB-CDC +0ace ZyDAS + 1201 ZD1201 802.11b + 1211 ZEW 2501 802.11bg Wireless Adapter + 1215 ZD1211B 802.11g + 1221 ZD1221 802.11n + 1602 ZyXEL Omni FaxModem 56K + 1608 ZyXEL Omni FaxModem 56K UNO + 1611 ZyXEL Omni FaxModem 56K Plus + 2011 Virtual media for 802.11bg + 20ff Virtual media for 802.11bg + a211 ZD1211 802.11b/g Wireless Adapter + b215 802.11bg +0acf Intoto, Inc. +0ad0 Intellix Corp. +0ad1 Remotec Technology, Ltd +0ad2 Service & Quality Technology Co., Ltd +0ada Data Encryption Systems Ltd. + 0005 DK2 +0ae3 Allion Computer, Inc. +0ae4 Taito Corp. +0ae7 Neodym Systems, Inc. +0ae8 System Support Co., Ltd +0ae9 North Shore Circuit Design L.L.P. +0aea SciEssence, LLC +0aeb TTP Communications, Ltd +0aec Neodio Technologies Corp. + 2101 SmartMedia Card Reader + 2102 CompactFlash Card Reader + 2103 MMC/SD Card Reader + 2104 MemoryStick Card Reader + 2201 SmartMedia+CompactFlash Card Reader + 2202 SmartMedia+MMC/SD Card Reader + 2203 SmartMedia+MemoryStick Card Reader + 2204 CompactFlash+MMC/SD Card Reader + 2205 CompactFlash+MemoryStick Card Reader + 2206 MMC/SD+MemoryStick Card Reader + 2301 SmartMedia+CompactFlash+MMC/SD Card Reader + 2302 SmartMedia+CompactFlash+MemoryStick Card Reader + 2303 SmartMedia+MMC/SD+MemoryStick Card Reader + 2304 CompactFlash+MMC/SD+MemoryStick Card Reader + 3016 MMC/SD+Memory Stick Card Reader + 3050 ND3050 8-in-1 Card Reader + 3060 1.1 FS Card Reader + 3101 MMC/SD Card Reader + 3102 MemoryStick Card Reader + 3201 MMC/SD+MemoryStick Card Reader + 3216 HS Card Reader + 3260 7-in-1 Card Reader + 5010 ND5010 Card Reader +0af0 Option + 5000 UMTS Card + 6000 GlobeTrotter 3G datacard + 6300 GT 3G Quad UMTS/GPRS Card + 6600 GlobeTrotter 3G+ datacard + 6711 GlobeTrotter Express 7.2 v2 + 6971 Globetrotter HSDPA Modem + 7251 Globetrotter HSUPA Modem (aka iCON HSUPA E) + 7501 Globetrotter HSUPA Modem (icon 411 aka "Vodafone K3760") + 7601 Globetrotter MO40x 3G Modem (GTM 382) + 7701 Globetrotter HSUPA Modem (aka icon 451) +0af6 Silver I Co., Ltd +0af7 B2C2, Inc. + 0101 Digital TV USB Receiver (DVB-S/T/C / ATSC) +0af9 Hama, Inc. + 0010 USB SightCam 100 + 0011 Micro Innovations IC50C Webcam +0afc Zaptronix Ltd +0afd Tateno Dennou, Inc. +0afe Cummins Engine Co. +0aff Jump Zone Network Products, Inc. +0b00 INGENICO +0b05 ASUSTek Computer, Inc. + 1101 Mass Storage (UISDMC4S) + 1706 WL-167G v1 802.11g Adapter [Ralink RT2500USB] + 1707 WL-167G v1 802.11g Adapter [Ralink RT2500USB] + 1708 Mass Storage Device + 170b Mass Storage Device + 170c WL-159g 802.11bg + 170d 802.11b/g Wireless Network Adapter + 1712 BT-183 Bluetooth 2.0+EDR adapter + 1715 2045 Bluetooth 2.0 Device with trace filter + 1716 Bluetooth Device + 1717 WL169gE 802.11g Adapter [Broadcom 4320 USB] + 171b A9T wireless 802.11bg + 171c 802.11b/g Wireless Network Adapter + 171f My Cinema U3000 Mini [DiBcom DiB7700P] + 1723 WL-167G v2 802.11g Adapter [Ralink RT73] + 1724 RT2573 + 1726 Laptop OLED Display + 172a ASUS 802.11n Network Adapter + 172b 802.11n Network Adapter + 1731 802.11n Network Adapter + 1732 802.11n Network Adapter + 1734 ASUS AF-200 + 173c BT-183 Bluetooth 2.0 + 173f My Cinema U3100 Mini + 1742 802.11n Network Adapter + 1743 Xonar U1 Audio Station + 1751 BT-253 Bluetooth Adapter + 175b Laptop OLED Display + 1760 802.11n Network Adapter + 1761 802.11n Network Adapter + 1774 Gobi Wireless Modem (QDL mode) + 1776 Gobi Wireless Modem + 1779 My Cinema U3100 Mini Plus [AF9035A] + 1784 USB-N13 802.11n Network Adapter [Ralink RT2870] + 6101 Cable Modem + 620a Remote NDIS Device + b700 Broadcom Bluetooth 2.1 +0b0b Datamax-O'Neil + 106e Datamax E-4304 +0b0c Todos AB + 0009 Todos Argos Mini II Smart Card Reader + 001e e.dentifier2 (ABN AMRO electronic banking card reader NL) + 002e C200 smartcard controller (Nordea card reader) + 003f Todos C400 smartcard controller (Handelsbanken card reader) + 0050 Argos Mini II Smart Card Reader (CCID) +0b0d ProjectLab + 0000 CenturyCD +0b0e GN Netcom +0b0f AVID Technology +0b10 Pcally +0b11 I Tech Solutions Co., Ltd +0b1e Electronic Warfare Assoc., Inc. (EWA) +0b1f Insyde Software Corp. +0b20 TransDimension, Inc. +0b21 Yokogawa Electric Corp. +0b22 Japan System Development Co., Ltd +0b23 Pan-Asia Electronics Co., Ltd +0b24 Link Evolution Corp. +0b27 Ritek Corp. +0b28 Kenwood Corp. +0b2c Village Center, Inc. +0b30 PNY Technologies, Inc. + 0006 SM Media-Shuttle Card Reader +0b33 Contour Design, Inc. + 0020 ShuttleXpress +0b37 Hitachi ULSI Systems Co., Ltd +0b38 Gear Head + 0010 107-Key Keyboard +0b39 Omnidirectional Control Technology, Inc. + 0001 Composite USB PS2 Converter + 0109 USB TO Ethernet + 0421 Serial + 0801 USB-Parallel Bridge + 0901 OCT To Fast Ethernet Converter + 0c03 LAN DOCK Serial Converter +0b3a IPaxess +0b3b Tekram Technology Co., Ltd + 0163 TL-WN320G 1.0 WLAN Adapter + 1601 Allnet 0193 802.11b Adapter + 1602 ZyXEL ZyAIR B200 802.11b Adapter + 1612 AIR.Mate 2@net 802.11b Adapter + 1613 802.11b Wireless LAN Adapter + 1620 Allnet USB 2.0 Wireless Network Adapter + 1630 QuickWLAN 802.11bg + 5630 802.11bg + 6630 ZD1211 +0b3c Olivetti Techcenter + a010 Simple_Way Printer/Scanner/Copier + c000 Olicard 100 + c700 Olicard 100 (Mass Storage mode) +0b3e Kikusui Electronics Corp. +0b41 Hal Corp. + 0011 Crossam2+USB IR commander +0b43 Play.com, Inc. + 0003 PS2 Controller Converter +0b47 Sportbug.com, Inc. +0b48 TechnoTrend AG + 1003 Technotrend/Hauppauge USB-Nova + 1004 TT-PCline + 1005 Technotrend/Hauppauge USB-Nova + 1006 Technotrend/Hauppauge DEC3000-s + 1007 TT-micro plus Device + 1008 Technotrend/Hauppauge DEC2000-t + 1009 Technotrend/Hauppauge DEC2540-t + 3001 DVB-S receiver + 3002 DVB-C receiver + 3003 DVB-T receiver + 3004 TT TV-Stick + 3005 TT TV-Stick (8kB EEPROM) + 3006 TT-connect S-2400 DVB-S receiver + 3007 TT-connect S2-3600 + 3008 TT-connect + 3009 TT-connect S-2400 DVB-S receiver (8kB EEPROM) + 300a TT-connect S2-3650 CI + 300b TT-connect C-3650 CI + 300c TT-connect T-3650 CI + 300d TT-connect CT-3650 CI + 300e TT-connect C-2400 +0b49 ASCII Corp. + 064f Trance Vibrator +0b4b Pine Corp. Ltd. + 0100 D'music MP3 Player +0b4d Graphtec America, Inc. + 110a Graphtec CC200-20 +0b4e Musical Electronics, Ltd + 6500 MP3 Player + 8028 MP3 Player + 8920 MP3 Player +0b50 Dumpries Co., Ltd +0b51 Comfort Keyboard Co. + 0020 Comfort Keyboard +0b52 Colorado MicroDisplay, Inc. +0b54 Sinbon Electronics Co., Ltd +0b56 TYI Systems, Ltd +0b57 Beijing HanwangTechnology Co., Ltd +0b59 Lake Communications, Ltd +0b5a Corel Corp. +0b5f Green Electronics Co., Ltd +0b60 Nsine, Ltd +0b61 NEC Viewtechnology, Ltd +0b62 Orange Micro, Inc. + 000b Bluetooth Device + 0059 iBOT2 Webcam +0b63 ADLink Technology, Inc. +0b64 Wonderful Wire Cable Co., Ltd +0b65 Expert Magnetics Corp. +0b69 CacheVision +0b6a Maxim Integrated Products +0b6f Nagano Japan Radio Co., Ltd +0b70 PortalPlayer, Inc. + 00ba iRiver H10 20GB +0b71 SHIN-EI Sangyo Co., Ltd +0b72 Embedded Wireless Technology Co., Ltd +0b73 Computone Corp. +0b75 Roland DG Corp. +0b79 Sunrise Telecom, Inc. +0b7a Zeevo, Inc. + 07d0 Bluetooth Dongle +0b7b Taiko Denki Co., Ltd +0b7c ITRAN Communications, Ltd +0b7d Astrodesign, Inc. +0b81 id3 Semiconductors + 0001 Biothentic II smartcard reader with fingerprint sensor + 0002 DFU-Enabled Devices (DFU) + 0012 BioPAD biometric module (DFU + CDC) + 0102 Certis V1 fingerprint reader + 0103 Certis V2 fingerprint reader + 0200 CL1356T / CL1356T5 / CL1356A smartcard readers (CCID) + 0201 CL1356T / CL1356T5 / CL1356A smartcard readers (DFU + CCID) + 0220 CL1356A FFPJP smartcard reader (CCID + HID) + 0221 CL1356A smartcard reader (DFU + CCID + HID) +0b84 Rextron Technology, Inc. +0b85 Elkat Electronics, Sdn., Bhd. +0b86 Exputer Systems, Inc. + 5100 XMC5100 Zippy Drive + 5110 XMC5110 Flash Drive + 5200 XMC5200 Zippy Drive + 5201 XMC5200 Zippy Drive + 5202 XMC5200 Zippy Drive + 5280 XMC5280 Storage Drive + fff0 ISP5200 Debugger +0b87 Plus-One I & T, Inc. +0b88 Sigma Koki Co., Ltd, Technology Center +0b89 Advanced Digital Broadcast, Ltd +0b8c SMART Technologies Inc. + 00c3 Sympodium ID350 +0b95 ASIX Electronics Corp. + 1720 10/100 Ethernet + 1780 AX88178 + 7720 AX88772 +0b96 Sewon Telecom +0b97 O2 Micro, Inc. + 7732 Smart Card Reader + 7761 Oz776 1.1 Hub + 7762 Oz776 SmartCard Reader + 7772 OZ776 CCID Smartcard Reader +0b98 Playmates Toys, Inc. +0b99 Audio International, Inc. +0b9b Dipl.-Ing. Stefan Kunde + 4012 Reflex RC-controller Interface +0b9d Softprotec Co. +0b9f Chippo Technologies +0baf U.S. Robotics + 00e5 USR6000 + 00eb USR1120 802.11b Adapter + 00ec 56K Faxmodem + 00f1 SureConnect ADSL ATM Adapter + 00f2 SureConnect ADSL Loader + 00f5 SureConnect ADSL ATM Adapter + 00f6 SureConnect ADSL Loader + 00f7 SureConnect ADSL ATM Adapter + 00f8 SureConnect ADSL Loader + 00f9 SureConnect ADSL ATM Adapter + 00fa SureConnect ADSL Loader + 00fb SureConnect ADSL Ethernet/USB Router + 0111 USR5420 802.11g Adapter [Broadcom 4320 USB] + 0118 U5 802.11g Adapter + 011b Wireless MAXg Adapter [Broadcom 4320] + 0121 USR5423 802.11bg + 6112 FaxModem Model 5633 +0bb0 Concord Camera Corp. + 0100 Sound Vision Stream + 5007 3340z/Rollei DC3100 +0bb1 Infinilink Corp. +0bb2 Ambit Microsystems Corp. + 0302 U10H010 802.11b Wireless Adapter [Intersil PRISM 3] + 6098 USB Cable Modem +0bb3 Ofuji Technology +0bb4 High Tech Computer Corp. + 00ce mmO2 XDA GSM/GPRS Pocket PC + 00cf SPV C500 Smart Phone + 0a01 PocketPC Sync + 0a02 Himalaya GSM/GPRS Pocket PC + 0a03 PocketPC Sync + 0a04 PocketPC Sync + 0a05 PocketPC Sync + 0a06 PocketPC Sync + 0a07 Magician PocketPC SmartPhone / O2 XDA + 0a08 PocketPC Sync + 0a09 PocketPC Sync + 0a0a PocketPC Sync + 0a0b PocketPC Sync + 0a0c PocketPC Sync + 0a0d PocketPC Sync + 0a0e PocketPC Sync + 0a0f PocketPC Sync + 0a10 PocketPC Sync + 0a11 PocketPC Sync + 0a12 PocketPC Sync + 0a13 PocketPC Sync + 0a14 PocketPC Sync + 0a15 PocketPC Sync + 0a16 PocketPC Sync + 0a17 PocketPC Sync + 0a18 PocketPC Sync + 0a19 PocketPC Sync + 0a1a PocketPC Sync + 0a1b PocketPC Sync + 0a1c PocketPC Sync + 0a1d PocketPC Sync + 0a1e PocketPC Sync + 0a1f PocketPC Sync + 0a20 PocketPC Sync + 0a21 PocketPC Sync + 0a22 PocketPC Sync + 0a23 PocketPC Sync + 0a24 PocketPC Sync + 0a25 PocketPC Sync + 0a26 PocketPC Sync + 0a27 PocketPC Sync + 0a28 PocketPC Sync + 0a29 PocketPC Sync + 0a2a PocketPC Sync + 0a2b PocketPC Sync + 0a2c PocketPC Sync + 0a2d PocketPC Sync + 0a2e PocketPC Sync + 0a2f PocketPC Sync + 0a30 PocketPC Sync + 0a31 PocketPC Sync + 0a32 PocketPC Sync + 0a33 PocketPC Sync + 0a34 PocketPC Sync + 0a35 PocketPC Sync + 0a36 PocketPC Sync + 0a37 PocketPC Sync + 0a38 PocketPC Sync + 0a39 PocketPC Sync + 0a3a PocketPC Sync + 0a3b PocketPC Sync + 0a3c PocketPC Sync + 0a3d PocketPC Sync + 0a3e PocketPC Sync + 0a3f PocketPC Sync + 0a40 PocketPC Sync + 0a41 PocketPC Sync + 0a42 PocketPC Sync + 0a43 PocketPC Sync + 0a44 PocketPC Sync + 0a45 PocketPC Sync + 0a46 PocketPC Sync + 0a47 PocketPC Sync + 0a48 PocketPC Sync + 0a49 PocketPC Sync + 0a4a PocketPC Sync + 0a4b PocketPC Sync + 0a4c PocketPC Sync + 0a4d PocketPC Sync + 0a4e PocketPC Sync + 0a4f PocketPC Sync + 0a50 HTC SmartPhone Sync + 0a51 SPV C400 / T-Mobile SDA GSM/GPRS Pocket PC + 0a52 SmartPhone Sync + 0a53 SmartPhone Sync + 0a54 SmartPhone Sync + 0a55 SmartPhone Sync + 0a56 SmartPhone Sync + 0a57 SmartPhone Sync + 0a58 SmartPhone Sync + 0a59 SmartPhone Sync + 0a5a SmartPhone Sync + 0a5b SmartPhone Sync + 0a5c SmartPhone Sync + 0a5d SmartPhone Sync + 0a5e SmartPhone Sync + 0a5f SmartPhone Sync + 0a60 SmartPhone Sync + 0a61 SmartPhone Sync + 0a62 SmartPhone Sync + 0a63 SmartPhone Sync + 0a64 SmartPhone Sync + 0a65 SmartPhone Sync + 0a66 SmartPhone Sync + 0a67 SmartPhone Sync + 0a68 SmartPhone Sync + 0a69 SmartPhone Sync + 0a6a SmartPhone Sync + 0a6b SmartPhone Sync + 0a6c SmartPhone Sync + 0a6d SmartPhone Sync + 0a6e SmartPhone Sync + 0a6f SmartPhone Sync + 0a70 SmartPhone Sync + 0a71 SmartPhone Sync + 0a72 SmartPhone Sync + 0a73 SmartPhone Sync + 0a74 SmartPhone Sync + 0a75 SmartPhone Sync + 0a76 SmartPhone Sync + 0a77 SmartPhone Sync + 0a78 SmartPhone Sync + 0a79 SmartPhone Sync + 0a7a SmartPhone Sync + 0a7b SmartPhone Sync + 0a7c SmartPhone Sync + 0a7d SmartPhone Sync + 0a7e SmartPhone Sync + 0a7f SmartPhone Sync + 0a80 SmartPhone Sync + 0a81 SmartPhone Sync + 0a82 SmartPhone Sync + 0a83 SmartPhone Sync + 0a84 SmartPhone Sync + 0a85 SmartPhone Sync + 0a86 SmartPhone Sync + 0a87 SmartPhone Sync + 0a88 SmartPhone Sync + 0a89 SmartPhone Sync + 0a8a SmartPhone Sync + 0a8b SmartPhone Sync + 0a8c SmartPhone Sync + 0a8d SmartPhone Sync + 0a8e SmartPhone Sync + 0a8f SmartPhone Sync + 0a90 SmartPhone Sync + 0a91 SmartPhone Sync + 0a92 SmartPhone Sync + 0a93 SmartPhone Sync + 0a94 SmartPhone Sync + 0a95 SmartPhone Sync + 0a96 SmartPhone Sync + 0a97 SmartPhone Sync + 0a98 SmartPhone Sync + 0a99 SmartPhone Sync + 0a9a SmartPhone Sync + 0a9b SmartPhone Sync + 0a9c SmartPhone Sync + 0a9d SmartPhone Sync + 0a9e SmartPhone Sync + 0a9f SmartPhone Sync + 0b03 Ozone Mobile Broadband + 0b04 Hermes / TyTN / T-Mobile MDA Vario II / O2 Xda Trion + 0b05 P3600 + 0b06 Athena / Advantage x7500 / Dopod U1000 / T-Mobile AMEO + 0b0c Elf / Touch / P3450 / T-Mobile MDA Touch / O2 Xda Nova / Dopod S1 + 0b1f Sony Ericsson XPERIA X1 + 0b2f Rhodium + 0b51 Qtek 8310 mobile phone [Tornado Noble] + 0bce Vario MDA + 0c01 Dream / ADP1 / G1 / Magic / Tattoo + 0c02 Dream / ADP1 / G1 / Magic / Tattoo (Debug) + 0c13 Diamond + 0c1f Sony Ericsson XPERIA X1 + 0c5f Snap + 0c87 Desire (debug) + 0c8d EVO 4G (debug) + 0c91 Vision + 0c94 Vision + 0c97 Legend + 0c99 Desire (debug) + 0c9e Incredible + 0ca2 Desire HD (debug mode) + 0ff9 Desire / Desire HD / Hero + 0ffe Desire HD (modem mode) + 0fff Android Fastboot Bootloader +0bb5 Murata Manufacturing Co., Ltd +0bb6 Network Alchemy +0bb7 Joytech Computer Co., Ltd +0bb8 Hitachi Semiconductor and Devices Sales Co., Ltd +0bb9 Eiger M&C Co., Ltd +0bba ZAccess Systems +0bbb General Meters Corp. +0bbc Assistive Technology, Inc. +0bbd System Connection, Inc. +0bc0 Knilink Technology, Inc. +0bc1 Fuw Yng Electronics Co., Ltd +0bc2 Seagate RSS LLC + 2000 Storage Adapter V3 (TPP) + 2200 FreeAgent Go FW + 5021 FreeAgent GoFlex USB 2.0 + 5031 FreeAgent GoFlex USB 3.0 +0bc3 IPWireless, Inc. + 0001 UMTS-TDD (TD-CDMA) modem +0bc4 Microcube Corp. +0bc5 JCN Co., Ltd +0bc6 ExWAY, Inc. +0bc7 X10 Wireless Technology, Inc. + 0001 ActiveHome (ACPI-compliant) + 0002 Firecracker Interface (ACPI-compliant) + 0003 VGA Video Sender (ACPI-compliant) + 0004 X10 Receiver + 0005 Wireless Transceiver (ACPI-compliant) + 0006 Wireless Transceiver (ACPI-compliant) + 0007 Wireless Transceiver (ACPI-compliant) + 0008 Wireless Transceiver (ACPI-compliant) + 0009 Wireless Transceiver (ACPI-compliant) + 000a Wireless Transceiver (ACPI-compliant) + 000b Transceiver (ACPI-compliant) + 000c Transceiver (ACPI-compliant) + 000d Transceiver (ACPI-compliant) + 000e Transceiver (ACPI-compliant) + 000f Transceiver (ACPI-compliant) +0bc8 Telmax Communications +0bc9 ECI Telecom, Ltd +0bca Startek Engineering, Inc. +0bcb Perfect Technic Enterprise Co., Ltd +0bd7 Andrew Pargeter & Associates + a021 Amptek DP4 multichannel signal analyzer +0bda Realtek Semiconductor Corp. + 0103 USB 2.0 Card Reader + 0104 Mass Storage Device + 0106 Mass Storage Device + 0107 Mass Storage Device + 0108 Mass Storage Device + 0111 Card Reader + 0113 Mass Storage Device + 0115 Mass Storage Device (Multicard Reader) + 0116 Mass Storage Device + 0117 Mass Storage Device + 0118 Mass Storage Device + 0151 Mass Storage Device (Multicard Reader) + 0152 Mass Storage Device + 0153 Mass Storage Device + 0156 Mass Storage Device + 0157 Mass Storage Device + 0158 USB 2.0 multicard reader + 0159 Digital Media Card Reader + 0161 Mass Storage Device + 0168 Mass Storage Device + 0169 Mass Storage Device + 0171 Mass Storage Device + 0176 Mass Storage Device + 0178 Mass Storage Device + 2831 RTL2831U DVB-T + 2832 RTL2832U DVB-T + 8150 RTL8150 Fast Ethernet Adapter + 8151 RTL8151 Adapteon Business Mobile Networks BV + 8171 RTL8188SU 802.11n WLAN Adapter + 8172 RTL8191S WLAN Adapter + 8176 RTL8188CUS 802.11n WLAN + 8187 RTL8187 Wireless Adapter + 8189 RTL8187B Wireless 802.11g 54Mbps Network Adapter + 8192 RTL8192U 802.11n Wireless Adapter + 8197 RTL8187B Wireless Adapter + 8198 RTL8187B Wireless Adapter +0bdb Ericsson Business Mobile Networks BV + 1000 BV Bluetooth Device + 1002 Bluetooth Device 1.2 + 1049 C3607w Mobile Broadband Module + 1900 F3507g Mobile Broadband Module + 1902 F3507g v2 Mobile Broadband Module + 1904 F3607gw Mobile Broadband Module + 1905 F3607gw v2 Mobile Broadband Module + 1906 F3607gw v3 Mobile Broadband Module + 1909 F3307 v2 Mobile Broadband Module + 190a F3307 Mobile Broadband Module + 190b C3607w v2 Mobile Broadband Module +0bdc Y Media Corp. +0bdd Orange PCS +0be2 Kanda Tsushin Kogyo Co., Ltd +0be3 TOYO Corp. +0be4 Elka International, Ltd +0be5 DOME imaging systems, Inc. +0be6 Dong Guan Humen Wonderful Wire Cable Factory +0bed Silicon Labs + 1100 MEI (TM) Cashflow-SC Bill/Voucher Acceptor +0bee LTK Industries, Ltd +0bef Way2Call Communications +0bf0 Pace Micro Technology PLC +0bf1 Intracom S.A. + 0001 netMod Driver Ver 2.4.17 (CAPI) + 0002 netMod Driver Ver 2.4 (CAPI) + 0003 netMod Driver Ver 2.4 (CAPI) +0bf2 Konexx +0bf6 Addonics Technologies, Inc. + 0103 Storage Device + 1234 Storage Device + a000 Cable 205 (TPP) + a001 Cable 205 + a002 IDE Bridge +0bf7 Sunny Giken, Inc. +0bf8 Fujitsu Siemens Computers + 1001 Fujitsu Pocket Loox 600 PDA + 1006 SmartCard Reader 2A + 1007 Connect2Air E-5400 802.11g Wireless Adapter + 1009 Name: Connect2Air E-5400 D1700 802.11g Wireless Adapter [Intersil ISL3887] + 100f miniCard D2301 802.11bg Wireless Module [SiS 163U] +0c04 MOTO Development Group, Inc. +0c05 Appian Graphics +0c06 Hasbro Games, Inc. +0c07 Infinite Data Storage, Ltd +0c08 Agate + 0378 Q 16MB Storage Device +0c09 Comjet Information System + a5a5 Litto Version USB2.0 +0c0a Highpoint Technologies, Inc. +0c0b Dura Micro, Inc. (Acomdata) + 27cb 6-in-1 Flash Reader and Writer + 27d7 Multi Memory reader/writer MD-005 + 27da Multi Memory reader/writer MD-005 + 27dc Multi Memory reader/writer MD-005 + 27e7 3,5'' HDD case MD-231 + 27ee 3,5'' HDD case MD-231 + 2814 3,5'' HDD case MD-231 + 2815 3,5'' HDD case MD-231 + 281d 3,5'' HDD case MD-231 + 5fab Storage Adaptor + a109 CF/SM Reader and Writer + a10c SD/MS Reader and Writer + b001 USB 2.0 Mass Storage IDE adapter + b004 MMC/SD Reader and Writer +0c12 Zeroplus + 0005 PSX Vibration Feedback Converter + 0030 PSX Vibration Feedback Converter + 700e Logic Analyzer (LAP-C-16032) + 8801 Xbox Controller + 8802 Xbox Controller + 8809 Red Octane Ignition Xbox DDR Pad + 880a Pelican Eclipse PL-2023 + 8810 Xbox Controller + 9902 VibraX +0c15 Iris Graphics +0c16 Gyration, Inc. + 0002 RF Technology Receiver + 0003 RF Technology Receiver + 0008 RF Technology Receiver + 0080 eHome Infrared Receiver + 0081 eHome Infrared Receiver +0c17 Cyberboard A/S +0c18 SynerTek Korea, Inc. +0c19 cyberPIXIE, Inc. +0c1a Silicon Motion, Inc. +0c1b MIPS Technologies +0c1c Hang Zhou Silan Electronics Co., Ltd +0c22 Tally Printer Corp. +0c23 Lernout + Hauspie +0c24 Taiyo Yuden + 0001 Bluetooth Adaptor + 0002 Bluetooth Device2 + 0005 Bluetooth Device(BC04-External) + 000b Bluetooth Device(BC04-External) + 000c Bluetooth Adaptor + 000e Bluetooth Device(BC04-External) + 000f Bluetooth Device (V2.0+EDR) + 0010 Bluetooth Device(BC04-External) + 0012 Bluetooth Device(BC04-External) + 0018 Bluetooth Device(BC04-External) + 0019 Bluetooth Device + 0c24 Bluetooth Device(SAMPLE) + ffff Bluetooth module with BlueCore in DFU mode +0c25 Sampo Corp. + 0310 Scream Cam +0c26 Prolific Technology Inc. + 0018 USB-Serial Controller [Icom Inc. OPC-478UC] +0c27 RFIDeas, Inc + 3bfa pcProx Card Reader +0c2e Metro + 0007 Metrologic MS7120 Barcode Scanner (IBM SurePOS mode) + 0200 Metrologic Scanner + 0204 Metrologic MS7120 Barcode Scanner (keyboard mode) + 0700 Metrologic MS7120 Barcode Scanner (uni-directional serial mode) + 0720 Metrologic MS7120 Barcode Scanner (bi-directional serial mode) +0c35 Eagletron, Inc. +0c36 E Ink Corp. +0c37 e.Digital +0c38 Der An Electric Wire & Cable Co., Ltd +0c39 IFR +0c3a Furui Precise Component (Kunshan) Co., Ltd +0c3b Komatsu, Ltd +0c3c Radius Co., Ltd +0c3d Innocom, Inc. +0c3e Nextcell, Inc. +0c44 Motorola iDEN + 0021 iDEN P2k0 Device + 0022 iDEN P2k1 Device + 03a2 iDEN Smartphone + 41d9 i1 phone +0c45 Microdia + 0011 EBUDDY + 1020 Mass Storage Reader + 1028 Mass Storage Reader + 1030 Mass Storage Reader + 1031 Sonix Mass Storage Device + 1032 Mass Storage Reader + 1033 Sonix Mass Storage Device + 1034 Mass Storage Reader + 1035 Mass Storage Reader + 1036 Mass Storage Reader + 1037 Sonix Mass Storage Device + 1050 CF Card Reader + 1058 HDD Reader + 1060 iFlash SM-Direct Card Reader + 1061 Mass Storage Reader + 1062 Mass Storage Reader + 1063 Sonix Mass Storage Device + 1064 Mass Storage Reader + 1065 Mass Storage Reader + 1066 Mass Storage Reader + 1067 Mass Storage Reader + 1158 A56AK + 184c VoIP Phone + 6001 Genius VideoCAM NB + 6005 Sweex Mini Webcam + 6007 VideoCAM Eye + 6009 VideoCAM ExpressII + 600d TwinkleCam USB camera + 6011 PC Camera (SN9C102) + 6019 PC Camera (SN9C102) + 6024 VideoCAM ExpressII + 6025 VideoCAM ExpressII + 6028 Typhoon Easycam USB 330K (older) + 6029 Triplex i-mini PC Camera + 602a Meade ETX-105EC Camera + 602b VideoCAM NB 300 + 602c Clas Ohlson TWC-30XOP Webcam + 602d VideoCAM ExpressII + 602e VideoCAM Messenger + 6030 VideoCAM ExpressII + 603f VideoCAM ExpressII + 6040 CCD PC Camera (PC390A) + 606a CCD PC Camera (PC390A) + 607a CCD PC Camera (PC390A) + 607b Win2 PC Camera + 607c CCD PC Camera (PC390A) + 607e CCD PC Camera (PC390A) + 6080 Audio (Microphone) + 6082 VideoCAM Look + 6083 VideoCAM Look + 608c VideoCAM Look + 608e VideoCAM Look + 608f PC Camera (SN9C103 + OV7630) + 60a8 VideoCAM Look + 60aa VideoCAM Look + 60ab PC Camera + 60af VideoCAM Look + 60b0 Genius VideoCam Look + 60c0 PC Camera with Mic (SN9C105) + 60c8 Win2 PC Camera + 60cc PC Camera with Mic (SN9C105) + 60ec PC Camera with Mic (SN9C105) + 60ef Win2 PC Camera + 60fa PC Camera with Mic (SN9C105) + 60fb Composite Device + 60fc PC Camera with Mic (SN9C105) + 60fe Audio (Microphone) + 6108 Win2 PC Camera + 6122 PC Camera (SN9C110) + 6123 PC Camera (SN9C110) + 6128 PC Camera (SN9C325 + OM6802) + 612a PC Camera (SN9C325) + 612c PC Camera (SN9C110) + 612e PC Camera (SN9C110) + 612f PC Camera (SN9C110) + 6130 PC Camera (SN9C120) + 6138 Win2 PC Camera + 613a PC Camera (SN9C120) + 613b Win2 PC Camera + 613c PC Camera (SN9C120) + 613e PC Camera (SN9C120) + 6143 PC Camera (SN9C120 + SP80708) + 6240 PC Camera (SN9C201 + MI1300) + 6242 PC Camera (SN9C201 + MI1310) + 6243 PC Camera (SN9C201 + S5K4AAFX) + 6248 PC Camera (SN9C201 + OV9655) + 624b PC Camera (SN9C201 + CX1332) + 624c PC Camera (SN9C201 + MI1320) + 624e PC Camera (SN9C201 + SOI968) + 624f PC Camera (SN9C201 + OV9650) + 6251 PC Camera (SN9C201 + OV9650) + 6253 PC Camera (SN9C201 + OV9650) + 6260 PC Camera (SN9C201 + OV7670ISP) + 6262 PC Camera (SN9C201 + OM6802) + 6270 PC Camera (SN9C201 + MI0360/MT9V011 or MI0360SOC/MT9V111) U-CAM PC Camera NE878, Whitcom WHC017, ... + 627a PC Camera (SN9C201 + S5K53BEB) + 627b PC Camera (SN9C201 + OV7660) + 627c PC Camera (SN9C201 + HV7131R) + 627f PC Camera (SN9C201 + OV965x + EEPROM) + 6280 PC Camera with Microphone (SN9C202 + MI1300) + 6282 PC Camera with Microphone (SN9C202 + MI1310) + 6283 PC Camera with Microphone (SN9C202 + S5K4AAFX) + 6288 PC Camera with Microphone (SN9C202 + OV9655) + 628a PC Camera with Microphone (SN9C202 + ICM107) + 628b PC Camera with Microphone (SN9C202 + CX1332) + 628c PC Camera with Microphone (SN9C202 + MI1320) + 628e PC Camera with Microphone (SN9C202 + SOI968) + 628f PC Camera with Microphone (SN9C202 + OV9650) + 62a0 PC Camera with Microphone (SN9C202 + OV7670ISP) + 62a2 PC Camera with Microphone (SN9C202 + OM6802) + 62b0 PC Camera with Microphone (SN9C202 + MI0360/MT9V011 or MI0360SOC/MT9V111) + 62b3 PC Camera with Microphone (SN9C202 + OV9655) + 62ba PC Camera with Microphone (SN9C202 + S5K53BEB) + 62bb PC Camera with Microphone (SN9C202 + OV7660) + 62bc PC Camera with Microphone (SN9C202 + HV7131R) + 62be PC Camera with Microphone (SN9C202 + OV7663) + 62c0 Sonix USB 2.0 Camera + 62e0 MSI Starcam Racer + 6310 Sonix USB 2.0 Camera + 63e0 Sonix Integrated Webcam + 63f1 Integrated Webcam + 63f8 Sonix Integrated Webcam + 6409 Webcam + 6417 Integrated Webcam + 8000 DC31VC + 8006 Dual Mode Camera (8006 VGA) + 800a Vivitar Vivicam3350B +0c46 WaveRider Communications, Inc. +0c4b Reiner SCT Kartensysteme GmbH + 0100 cyberJack e-com/pinpad + 0300 cyberJack pinpad(a) + 9102 cyberJack RFID basis contactless smartcard reader +0c52 Sealevel Systems, Inc. + 2101 Serial Converter +0c53 ViewPLUS, Inc. +0c54 Glory, Ltd +0c55 Spectrum Digital, Inc. + 0510 Spectrum Digital XDS510 JTAG Debugger + 0540 SPI540 + 5416 TMS320C5416 DSK + 6416 TMS320C6416 DDB +0c56 Billion Bright, Ltd +0c57 Imaginative Design Operation Co., Ltd +0c58 Vidar Systems Corp. +0c59 Dong Guan Shinko Wire Co., Ltd +0c5a TRS International Mfg., Inc. +0c5e Xytronix Research & Design +0c60 Apogee Electronics Corp. +0c62 Chant Sincere Co., Ltd +0c63 Toko, Inc. +0c64 Signality System Engineering Co., Ltd +0c65 Eminence Enterprise Co., Ltd +0c66 Rexon Electronics Corp. +0c67 Concept Telecom, Ltd +0c70 MCT Elektronikladen + 0000 USB08 Development board +0c74 Optronic Laboratories Inc. + 0002 OL 700-30 Goniometer +0c76 JMTek, LLC. + 0001 Mass Storage Controller + 0002 Mass Storage Controller + 0003 USBdisk + 0004 Mass Storage Controller + 0005 Transcend Flash disk + 0006 Transcend JetFlash + 0007 Mass Storage Device + 1605 SSS Headphone Set + 1607 audio controller +0c77 Sipix Group, Ltd + 1001 SiPix Web2 + 1002 SiPix SC2100 + 1010 SiPix Snap + 1011 SiPix Blink 2 + 1015 SiPix CAMeleon +0c78 Detto Corp. +0c79 NuConnex Technologies Pte., Ltd +0c7a Wing-Span Enterprise Co., Ltd +0c86 NDA Technologies, Inc. +0c88 Kyocera Wireless Corp. + 0021 Handheld + 17da Qualcomm Kyocera CDMA Technologies MSM +0c89 Honda Tsushin Kogyo Co., Ltd +0c8a Pathway Connectivity, Inc. +0c8b Wavefly Corp. +0c8c Coactive Networks +0c8d Tempo +0c8e Cesscom Co., Ltd + 6000 Luxian Series +0c8f Applied Microsystems +0c98 Berkshire Products, Inc. + 1140 USB PC Watchdog +0c99 Innochips Co., Ltd +0c9a Hanwool Robotics Corp. +0c9b Jobin Yvon, Inc. +0c9d SemTek + 0170 3873 Manual Insert card reader +0ca2 Zyfer +0ca3 Sega Corp. +0ca4 ST&T Instrument Corp. +0ca5 BAE Systems Canada, Inc. +0ca6 Castles Technology Co., Ltd + 0010 EZUSB PC/SC Smart Card Reader + 0050 EZ220PU Reader Controller + 1077 Bludrive Family Smart Card Reader + 107e Reader Controller + 2010 myPad110 PC/SC Smart Card Reader + 3050 EZ710 Smart Card Reader +0ca7 Information Systems Laboratories +0cad Motorola CGISS + 9001 PowerPad Pocket PC Device +0cae Ascom Business Systems, Ltd +0caf Buslink + 2507 Hi-Speed USB-to-IDE Bridge Controller + 2515 Flash Disk Embedded Hub + 2516 Flash Disk Security Device + 2517 Flash Disk Mass Storage Device + 25c7 Hi-Speed USB-to-IDE Bridge Controller + 3a00 Hard Drive + 3a20 Mass Storage Device + 3acd Mass Storage Device +0cb0 Flying Pig Systems +0cb1 Innovonics, Inc. +0cb6 Celestix Networks, Pte., Ltd +0cb7 Singatron Enterprise Co., Ltd +0cb8 Opticis Co., Ltd +0cba Trust Electronic (Shanghai) Co., Ltd +0cbb Shanghai Darong Electronics Co., Ltd +0cbc Palmax Technology Co., Ltd + 0101 Pocket PC P6C + 0201 Personal Digital Assistant + 0301 Personal Digital Assistant P6M+ + 0401 Pocket PC +0cbd Pentel Co., Ltd (Electronics Equipment Div.) +0cbe Keryx Technologies, Inc. +0cbf Union Genius Computer Co., Ltd +0cc0 Kuon Yi Industrial Corp. +0cc1 Given Imaging, Ltd +0cc2 Timex Corp. +0cc3 Rimage Corp. +0cc4 emsys GmbH +0cc5 Sendo +0cc6 Intermagic Corp. +0cc7 Kontron Medical AG +0cc8 Technotools Corp. +0cc9 BroadMAX Technologies, Inc. +0cca Amphenol +0ccb SKNet Co., Ltd +0ccc Domex Technology Corp. +0ccd TerraTec Electronic GmbH + 0012 PHASE 26 + 0013 PHASE 26 + 0014 PHASE 26 + 0015 Flash Update for TerraTec PHASE 26 + 0021 Cameo Grabster 200 + 0023 Mystify Claw + 0028 Aureon 5.1 MkII + 0032 MIDI HUBBLE + 0035 Miditech Play'n Roll + 0036 Cinergy 250 Audio + 0037 Cinergy 250 Audio + 0038 Cinergy T² DVB-T Receiver + 0039 Grabster AV 400 + 003b Cinergy 400 + 003c Grabster AV 250 + 0042 Cinergy Hybrid T XS + 0043 Cinergy T XS + 004e Cinergy T XS + 004f Cinergy Analog XS + 0055 Cinergy T XE (Version 1, AF9005) + 005c Cinergy T² + 0069 Cinergy T XE (Version 2, AF9015) + 0072 Cinergy Hybrid T + 0077 Aureon Dual USB + 0086 Cinergy Hybrid XE + 0097 Cinergy T RC MKII + 00a5 Cinergy Hybrid Stick + 00a9 RTL2838 DVB-T COFDM Demodulator [TerraTec Cinergy T Stick Black] +0cd4 Bang Olufsen + 0101 BeolinkPC2 +0cd5 LabJack Corporation + 0003 U3 + 0009 UE9 +0cd7 NewChip S.r.l. +0cd8 JS Digitech, Inc. + 2007 Smart Card Reader/JSTU-9700 +0cd9 Hitachi Shin Din Cable, Ltd +0cde Z-Com + 0001 XI-750 802.11b Wireless Adapter [Atmel AT76C503A] + 0002 XI-725/726 Prism2.5 802.11b Adapter + 0003 Sagem 802.11b Dongle + 0004 Sagem 802.11b Dongle + 0005 XI-735 Prism3 802.11b Adapter + 0006 XG-300 802.11b Adapter + 0008 XG-703A 802.11g Wireless Adapter [Intersil ISL3887] + 0009 (ZD1211)IEEE 802.11b+g Adapter + 0011 ZD1211 + 0012 AR5523 + 0013 AR5523 driver (no firmware) + 0014 NB 802.11g Wireless LAN Adapter(3887A) + 0015 XG-705A 802.11g Wireless Adapter [Intersil ISL3887] + 0016 NB 802.11g Wireless LAN Adapter(3887A) + 0018 NB 802.11a/b/g Wireless LAN Adapter(3887A) + 001a 802.11bg + 001c 802.11b/g Wireless Network Adapter + 0020 AG-760A 802.11abg Wireless Adapter [ZyDAS ZD1211B] + 0022 802.11b/g/n Wireless Network Adapter + 0023 UB81 802.11bgn + 0025 802.11b/g/n USB Wireless Network Adapter + 0026 UB82 802.11abgn +0ce5 Validation Technologies International + 0003 Matrix +0ce9 pico Technology + 1001 PicoScope3204 +0cf1 e-Conn Electronic Co., Ltd +0cf2 ENE Technology, Inc. + 6220 SD Card Reader (SG361) + 6225 SD card reader (UB6225) + 6250 SD card reader (UB6250) +0cf3 Atheros Communications, Inc. + 0001 AR5523 + 0002 AR5523 (no firmware) + 0003 AR5523 + 0004 AR5523 (no firmware) + 0005 AR5523 + 0006 AR5523 (no firmware) + 1001 Thomson TG121N [Atheros AR9001U-(2)NG] + 1002 TP-Link TL-WN821N v2 [Atheros AR9001U-(2)NG] + 1006 TP-Link TL-WN322G v3 / TL-WN422G v2 802.11g [Atheros AR9271] + 1010 3Com 3CRUSBN275 802.11abgn Wireless Adapter [Atheros AR9170] + 3000 AR3011 + 7015 TP-Link TL-WN821N + 9170 AR9170 802.11n + 9271 AR9271 802.11n + b002 Ubiquiti WiFiStation 802.11n [Atheros AR9271] + b003 Ubiquiti WiFiStationEXT 802.11n [Atheros AR9271] +0cf4 Fomtex Corp. +0cf5 Cellink Co., Ltd +0cf6 Compucable Corp. +0cf7 ishoni Networks +0cf8 Clarisys, Inc. + 0750 Claritel-i750 - vp +0cf9 Central System Research Co., Ltd +0cfa Inviso, Inc. +0cfc Minolta-QMS, Inc. + 2301 Magicolor 2300 DL + 2350 Magicolor 2350EN/3300 + 3100 Magicolor 3100 + 7300 Magicolor 5450/5550 +0cff SAFA MEDIA Co., Ltd. + 0320 SR-380N +0d06 telos EDV Systementwicklung GmbH +0d08 UTStarcom + 0602 DV007 [serial] + 0603 DV007 [storage] +0d0b Contemporary Controls +0d0c Astron Electronics Co., Ltd +0d0d MKNet Corp. +0d0e Hybrid Networks, Inc. +0d0f Feng Shin Cable Co., Ltd +0d10 Elastic Networks + 0001 StormPort (WDM) +0d11 Maspro Denkoh Corp. +0d12 Hansol Electronics, Inc. +0d13 BMF Corp. +0d14 Array Comm, Inc. +0d15 OnStream b.v. +0d16 Hi-Touch Imaging Technologies Co., Ltd + 0001 PhotoShuttle + 0002 Photo Printer 730 series + 0004 Photo Printer 63xPL/PS + 0100 Photo Printer 63xPL/PS + 0102 Photo Printer 64xPS + 0103 Photo Printer 730 series + 0104 Photo Printer 63xPL/PS + 0105 Photo Printer 64xPS + 0200 Photo Printer 64xDL +0d17 NALTEC, Inc. +0d18 coaXmedia +0d19 Hank Connection Industrial Co., Ltd +0d28 NXP + 0204 LPC1768 +0d32 Leo Hui Electric Wire & Cable Co., Ltd +0d33 AirSpeak, Inc. +0d34 Rearden Steel Technologies +0d35 Dah Kun Co., Ltd +0d3a Posiflex Technologies, Inc. +0d3c Sri Cable Technology, Ltd +0d3d Tangtop Technology Co., Ltd + 0001 HID Keyboard +0d3e Fitcom, inc. +0d3f MTS Systems Corp. +0d40 Ascor, Inc. +0d41 Ta Yun Terminals Industrial Co., Ltd +0d42 Full Der Co., Ltd +0d46 Kobil Systems GmbH + 2012 KAAN Standard Plus (Smartcard reader) + 3003 mIDentity Light / KAAN SIM III + 4000 mIDentity (mass storage) + 4001 mIDentity Basic/Classic (composite device) + 4081 mIDentity Basic/Classic (installationless) +0d49 Maxtor + 3000 Drive + 3010 3000LE Drive + 3100 Hi-Speed USB-IDE Bridge Controller + 3200 Personal Storage 3200 + 5000 5000XT Drive + 5010 5000LE Drive + 5020 Mobile Hard Disk Drive + 7000 OneTouch + 7010 OneTouch + 7410 Mobile Hard Disk Drive (1TB) + 7450 Basics Portable USB Device +0d4a NF Corp. +0d4b Grape Systems, Inc. +0d4c Tedas AG +0d4d Coherent, Inc. +0d4e Agere Systems Netherland BV + 047a WLAN Card + 1000 Wireless Card Model 0801 + 1001 Wireless Card Model 0802 +0d4f EADS Airbus France +0d50 Cleware GmbH + 0011 USB-Temp2 Thermometer +0d51 Volex (Asia) Pte., Ltd +0d53 HMI Co., Ltd +0d54 Holon Corp. +0d55 ASKA Technologies, Inc. +0d56 AVLAB Technology, Inc. +0d57 Solomon Microtech, Ltd +0d5c SMC Networks, Inc. + a001 SMC2662W (v1) EZ Connect 802.11b Wireless Adapter [Atmel AT76C503A] + a002 SMC2662W v2 / SMC2662W-AR / Belkin F5D6050 [Atmel at76c503a] +0d5e Myacom, Ltd + 2346 BT Digital Access adapter +0d5f CSI, Inc. +0d60 IVL Technologies, Ltd +0d61 Meilu Electronics (Shenzhen) Co., Ltd +0d62 Darfon Electronics Corp. + 0003 Smartcard Reader + 0004 Filter Driver + 001c Benq X120 Internet Keyboard Pro + 0306 M530 Mouse + 0800 Magic Wheel + 2021 AM805 Keyboard + 2026 TECOM Bluetooth Device + 2050 Mouse + 2106 Dell L20U Multimedia Keyboard + a100 Optical Mouse +0d63 Fritz Gegauf AG +0d64 DXG Technology Corp. + 0105 Dual Mode Digital Camera 1.3M + 0107 Horus MT-409 Camera + 0108 Dual Mode Digital Camera + 0202 Dual Mode Video Camera Device + 0303 DXG-305V Camera + 1001 SiPix Stylecam/UMAX AstraPix 320s + 1002 Fashion Cam 01 Dual-Mode DSC (Video Camera) + 1003 Fashion Cam Dual-Mode DSC (Controller) + 1021 D-Link DSC 350F + 1208 Dual Mode Still Camera Device + 2208 Mass Storage + 3105 Dual Mode Digital Camera Disk + 3108 Digicam Mass Storage Device +0d65 KMJP Co., Ltd +0d66 TMT +0d67 Advanet, Inc. +0d68 Super Link Electronics Co., Ltd +0d69 NSI +0d6a Megapower International Corp. +0d6b And-Or Logic +0d70 Try Computer Co., Ltd +0d71 Hirakawa Hewtech Corp. +0d72 Winmate Communication, Inc. +0d73 Hit's Communications, Inc. +0d76 MFP Korea, Inc. +0d77 Power Sentry/Newpoint +0d78 Japan Distributor Corp. +0d7a MARX Datentechnik GmbH +0d7b Wellco Technology Co., Ltd +0d7c Taiwan Line Tek Electronic Co., Ltd +0d7d Phison Electronics Corp. + 0100 PS1001/1011/1006/1026 Flash Disk + 0110 Gigabyte FlexDrive + 0120 Disk Pro 64MB + 0124 GIGABYTE Disk + 0240 I/O-Magic/Transcend 6-in-1 Card Reader + 110e NEC uPD720121/130 USB-ATA/ATAPI Bridge + 1240 Apacer 6-in-1 Card Reader 2.0 + 1270 Wolverine SixPac 6000 + 1300 Flash Disk + 1320 PS2031 Flash Disk + 1400 Attache 256MB USB 2.0 Flash Drive + 1420 PS2044 Pen Drive + 1470 Vosonic X's-Drive II+ VP2160 + 1620 USB Disk Pro + 1900 USB Thumb Drive +0d7e American Computer & Digital Components + 2507 Hi-Speed USB-to-IDE Bridge Controller + 2517 Hi-Speed Mass Storage Device + 25c7 Hi-Speed USB-to-IDE Bridge Controller +0d7f Essential Reality LLC + 0100 P5 Glove glove controller +0d80 H.R. Silvine Electronics, Inc. +0d81 TechnoVision +0d83 Think Outside, Inc. +0d87 Dolby Laboratories Inc. +0d89 Oz Software +0d8a King Jim Co., Ltd + 0101 TEPRA PRO +0d8b Ascom Telecommunications, Ltd +0d8c C-Media Electronics, Inc. + 0001 Audio Device + 0002 Composite Device + 0003 Sound Device + 0006 Storm HP-USB500 5.1 Headset + 000c Audio Adapter + 000d Composite Device + 000e Audio Adapter (Planet UP-100, Genius G-Talk) + 001f CM108 Audio Controller + 0102 CM106 Like Sound Device + 0103 CM102-A+/102S+ Audio Controller + 0104 CM103+ Audio Controller + 0105 CM108 Audio Controller + 0107 CM108 Audio Controller + 010f CM108 Audio Controller + 0115 CM108 Audio Controller + 0201 CM6501 + 5000 Mass Storage Controller + 5200 Mass Storage Controller(0D8C,5200) + b213 USB Phone CM109 (aka CT2000,VPT1000) +0d8d Promotion & Display Technology, Ltd + 0234 V-234 Composite Device + 0550 V-550 Composite Device + 0551 V-551 Composite Device + 0552 V-552 Composite Device + 0651 V-651 Composite Device + 0652 V-652 Composite Device + 0653 V-653 Composite Device + 0654 V-654 Composite Device + 0655 V-655 Composite Device + 0656 V-656 Composite Device + 0657 V-657 Composite Device + 0658 V-658 Composite Device + 0659 V-659 Composite Device + 0660 V-660 Composite Device + 0661 V-661 Composite Device + 0662 V-662 Composite Device + 0850 V-850 Composite Device + 0851 V-851 Composite Device + 0852 V-852 Composite Device + 0901 V-901 Composite Device + 0902 V-902 Composite Device + 0903 V-903 Composite Device + 4754 Voyager DMP Composite Device + bb00 Bloomberg Composite Device + bb01 Bloomberg Composite Device + bb02 Bloomberg Composite Device + bb03 Bloomberg Composite Device + bb04 Bloomberg Composite Device + bb05 Bloomberg Composite Device + fffe Global Tuner Composite Device + ffff Voyager DMP Composite Device +0d8e Global Sun Technology, Inc. + 0163 802.11g 54 Mbps Wireless Dongle + 1621 802.11b Wireless Adapter + 3762 Cohiba 802.11g Wireless Mini adapter [Intersil ISL3887] + 3763 802.11g Wireless dongle + 7100 802.11b Adapter + 7110 WL-210 / WU210P 802.11b Wireless Adapter [Atmel AT76C503A] + 7605 TRENDnet TEW-224UB 802.11b Wireless Adapter [Atmel AT76C503A] + 7801 AR5523 + 7802 AR5523 (no firmware) + 7811 AR5523 + 7812 AR5523 (no firmware) + 7a01 PRISM25 802.11b Adapter +0d8f Pitney Bowes +0d90 Sure-Fire Electrical Corp. +0d96 Skanhex Technology, Inc. + 0000 Jenoptik JD350 video + 3300 SX330z Camera + 4100 SX410z Camera + 4102 MD 9700 Camera + 4104 Jenoptik JD-4100z3s + 410a Medion 9801/Novatech SX-410z + 5200 SX-520z Camera +0d97 Santa Barbara Instrument Group + 0001 SBIG Astronomy Camera (without firmware) + 0101 SBIG Astronomy Camera (with firmware) +0d98 Mars Semiconductor Corp. + 0300 Avaya Wireless Card +0d99 Trazer Technologies, Inc. +0d9a RTX Telecom AS + 0001 Bluetooth Device +0d9b Tat Shing Electrical Co. +0d9c Chee Chen Hi-Technology Co., Ltd +0d9d Sanwa Supply, Inc. +0d9e Avaya + 0300 Wireless Card +0d9f Powercom Co., Ltd + 0001 Uninterruptible Power Supply + 0002 Black Knight PRO / WOW Uninterruptible Power Supply (Cypress HID->COM RS232) + 00a2 Imperial Uninterruptible Power Supply (HID PDC) + 00a3 Smart King PRO Uninterruptible Power Supply (HID PDC) + 00a4 WOW Uninterruptible Power Supply (HID PDC) + 00a5 Vanguard Uninterruptible Power Supply (HID PDC) + 00a6 Black Knight PRO Uninterruptible Power Supply (HID PDC) +0da0 Danger Research +0da1 Suzhou Peter's Precise Industrial Co., Ltd +0da2 Land Instruments International, Ltd +0da3 Nippon Electro-Sensory Devices Corp. +0da4 Polar Electro OY + 0001 Interface +0da7 IOGear, Inc. +0da8 softDSP Co., Ltd + 0001 SDS 200A Oscilloscope +0dab Cubig Group + 0100 DVR/CVR-M140 MP3 Player +0dad Westover Scientific +0db0 Micro Star International + 1020 PC2PC WLAN Card + 1967 Bluetooth Dongle + 3801 Motorola Bluetooth 2.1+EDR Device + 4011 Medion Flash XL V2.0 Card Reader + 4600 802.11b/g Turbo Wireless Adapter + 5501 Mass Storage Device + 5502 Mass Storage Device + 5513 MP3 Player + 5515 MP3 Player + 5516 MP3 Player + 5580 Mega Sky 580 DVB-T Tuner [M902x] + 5581 Mega Sky 580 DVB-T Tuner [GL861] + 6823 UB11B/MS-6823 802.11b Wi-Fi adapter + 6826 IEEE 802.11g Wireless Network Adapter + 6855 Bluetooth Device + 6861 MSI-6861 802.11g WiFi adapter + 6865 RT2570 + 6869 RT2570 + 6874 RT2573 + 6877 RT2573 + 6881 Bluetooth Class I EDR Device + 688a Bluetooth Class I EDR Device + 6899 802.11bgn 1T1R Mini Card Wireless Adapter + 6970 MS-6970 BToes Bluetooth adapter + 697a Bluetooth Dongle + 6982 Medion Flash XL Card Reader + a861 RT2573 + a874 RT2573 + a970 Bluetooth dongle + a97a Bluetooth EDR Device + b970 Bluetooth EDR Device + b97a Bluetooth EDR Device +0db1 Wen Te Electronics Co., Ltd +0db2 Shian Hwi Plug Parts, Plastic Factory +0db3 Tekram Technology Co., Ltd +0db4 Chung Fu Chen Yeh Enterprise Corp. +0db7 ELCON Systemtechnik + 0002 Goldpfeil P-LAN +0dbc A&D Medical + 0003 AND Serial Cable [AND Smart Cable] +0dbe Jiuh Shiuh Precision Industry Co., Ltd +0dbf Quik Tech Solutions + 0002 SmartDongle Security Key + 0200 HDD Storage Solution + 021b USB-2.0 IDE Adapter + 0300 Storage Adapter + 0333 Storage Adapter + 0707 ZIV Drive +0dc0 G7 Solutions (formerly Great Notions) +0dc1 Tamagawa Seiki Co., Ltd +0dc3 Athena Smartcard Solutions, Inc. + 0801 ASEDrive III + 0802 ASEDrive IIIe + 1104 ASEDrive IIIe KB + 1701 ASEKey + 1702 ASEKey +0dc4 Macpower Peripherals, Ltd + 0040 Mass Storage Device + 0041 Mass Storage Device + 0042 Mass Storage Device + 0101 Hi-Speed Mass Storage Device +0dc5 SDK Co., Ltd +0dc6 Precision Squared Technology Corp. + 2301 Wireless Touchpad Keyboard +0dc7 First Cable Line, Inc. +0dcd NetworkFab Corp. + 0001 Remote Interface Adapter + 0002 High Bandwidth Codec +0dd0 Access Solutions + 1002 Triple Talk Speech Synthesizer +0dd1 Contek Electronics Co., Ltd +0dd2 Power Quotient International Co., Ltd + 0003 Mass Storage (P) +0dd3 MediaQ +0dd4 Custom Engineering SPA +0dd5 California Micro Devices +0dd7 Kocom Co., Ltd +0dd8 Netac Technology Co., Ltd + 1060 USB-CF-Card + e007 OnlyDisk U222 Pendrive + f607 OnlyDisk U208 1G flash drive [U-SAFE] +0dd9 HighSpeed Surfing +0dda Integrated Circuit Solution, Inc. + 0001 Multi-Card Reader 6in1 + 0002 Multi-Card Reader 7in1 + 0003 Flash Disk + 0005 Internal Multi-Card Reader 6in1 + 0008 SD single card reader + 0009 MS single card reader + 000a MS+SD Dual Card Reader + 000b SM single card reader + 0101 All-In-One Card Reader + 0102 All-In-One Card Reader + 0301 MP3 Player + 0302 Multi-Card MP3 Player + 1001 Multi-Flash Disk + 2001 Multi-Card Reader + 2002 Q018 default PID + 2003 Multi-Card Reader + 2005 Datalux DLX-1611 16in1 Card Reader + 2006 All-In-One Card Reader + 2007 USB to ATAPI bridge + 2008 All-In-One Card Reader + 2013 SD/MS Combo Card Reader + 2014 SD/MS Single Card Reader + 2023 card reader SD/MS DEMO board with ICSI brand name (MaskROM version) + 2024 card reader SD/MS DEMO board with Generic brand name (MaskROM version) + 2026 USB2.0 Card Reader + 2027 USB 2.0 Card Reader + 2315 UFD MP3 player (model 2) + 2318 UFD MP3 player (model 1) + 2321 UFD MP3 player +0ddb Tamarack, Inc. +0ddd Datelink Technology Co., Ltd +0dde Ubicom, Inc. +0de0 BD Consumer Healthcare +0dea UTECH Electronic (D.G.) Co., Ltd. +0ded Novasonics +0dee Lifetime Memory Products + 4010 Storage Adapter +0def Full Rise Electronic Co., Ltd +0df4 NET&SYS + 0201 MNG-2005 +0df6 Sitecom Europe B.V. + 0001 C-Media VOIP Device + 0004 Bluetooth 2.0 Adapter 100m + 0007 Bluetooth 2.0 Adapter 10m + 000b Bluetooth 2.0 Adapter DFU + 000d WL-168 Wireless Network Adapter 54g + 0017 WL-182 Wireless-N Network USB Card + 0019 Bluetooth 2.0 adapter 10m CN-512v2 001 + 001a Bluetooth 2.0 adapter 100m CN-521v2 001 + 002b WL-188 Wireless Network 300N USB Adapter + 002c WL-301 Wireless Network 300N USB Adapter + 002d WL-302 Wireless Network 300N USB dongle + 0036 WL-603 Wireless Adapter + 0039 WL-315 Wireless-N USB Adapter + 003b WL-321 Wireless USB Gaming Adapter 300N + 003c WL-323 Wireless-N USB Adapter + 003d WL-324 Wireless USB Adapter 300N + 003e WL-343 Wireless USB Adapter 150N X1 + 003f WL-608 Wireless USB Adapter 54g + 0040 WL-344 Wireless USB Adapter 300N X2 + 0041 WL-329 Wireless Dualband USB adapter 300N + 0042 WL-345 Wireless USB adapter 300N X3 + 0045 WL-353 Wireless USB Adapter 150N Nano + 0047 WL-352v1 Wireless USB Adapter 300N 002 + 0048 WL-349v1 Wireless USB Adapter 150N 002 + 004a WL-358v1 Wireless Micro USB Adapter 300N X3 002 + 004b WL-349v3 Wireless Micro Adapter 150N X1 [Realtek RTL8192SU] + 004c WL-352 802.11n Adapter [realtek rtl8191s] + 0050 WL-349v4 Wireless Micro Adapter 150N X1 [Ralink RT3370] + 061c LN-028 Network USB 2.0 Adapter + 21f4 44 St Bluetooth Device + 2200 Sitecom bluetooth2.0 class 2 dongle CN-512 + 2208 Sitecom bluetooth2.0 class 2 dongle CN-520 + 2209 Sitecom bluetooth2.0 class 1 dongle CN-521 + 9071 WL-113 rev 1 Wireless Network USB Adapter + 9075 WL-117 Hi-Speed USB Adapter + 90ac WL-172 Wireless Network USB Adapter 54g Turbo + 9712 WL-113 rev 2 Wireless Network USB Adapter +0df7 Mobile Action Technology, Inc. + 0620 MA-620 Infrared Adapter + 0700 MA-700 Bluetooth Adapter + 0720 MA-720 Bluetooth Adapter + 0722 Bluetooth Dongle + 0730 MA-730/MA-730G Bluetooth Adapter + 0800 Data Cable + 0820 Data Cable + 0900 MA i-gotU Travel Logger GPS + 1800 Generic Card Reader + 1802 Card Reader +0dfa Toyo Communication Equipment Co., Ltd +0dfc GeneralTouch Technology Co., Ltd + 0001 Touchscreen +0e03 Nippon Systemware Co., Ltd +0e08 Winbest Technology Co., Ltd +0e0b Amigo Technology Inc. + 9031 802.11n Wireless USB Card + 9041 802.11n Wireless USB Card +0e0c Gesytec + 0101 LonUSB LonTalk Network Adapter +0e0f VMware, Inc. + 0001 Device + 0002 Virtual USB Hub + 0003 Virtual Mouse + 0004 Virtual CCID + 0005 Virtual Mass Storage + 0006 Virtual Keyboard + f80a Smoker FX2 +0e16 JMTek, LLC +0e17 Walex Electronic, Ltd +0e1b Crewave +0e20 Pegasus Technologies Ltd. + 0101 NoteTaker +0e21 Cowon Systems, Inc. + 0300 iAudio CW200 + 0400 MP3 Player + 0500 iAudio M3 + 0510 iAudio X5, subpack USB port + 0513 iAudio X5, side USB port + 0520 iAudio M5, side USB port + 0601 iAudio G3 + 0700 iAudio U3 + 0751 iAudio 7 + 0760 iAUDIO U5 / iAUDIO G2 + 0800 Cowon D2 (UMS mode) + 0801 Cowon D2 (MTP mode) + 0910 iAUDIO 9 + 0920 J3 +0e22 Symbian Ltd. +0e23 Liou Yuane Enterprise Co., Ltd +0e25 VinChip Systems, Inc. +0e26 J-Phone East Co., Ltd +0e30 HeartMath LLC +0e34 Micro Computer Control Corp. +0e35 3Pea Technologies, Inc. +0e36 TiePie engineering + 0008 Handyscope HS3 + 0009 Handyscope HS3 (br) + 000a Handyscope HS4 + 000b Handyscope HS4 (br) + 000e Handyscope HS4-DIFF + 000f Handyscope HS4-DIFF (br) + 0010 Handyscope HS2 + 0011 TiePieSCOPE HS805 (br) + 0012 TiePieSCOPE HS805 + 0018 Handyprobe HP2 + 0042 TiePieSCOPE HS801 + 00fd USB To Parallel adapter + 00fe USB To Parallel adapter +0e38 Stratitec, Inc. +0e39 Smart Modular Technologies, Inc. + 0137 Bluetooth Device +0e3a Neostar Technology Co., Ltd + 1100 CW-1100 Wireless Network Adapter +0e3b Mansella, Ltd +0e41 Line6, Inc. + 4147 TonePort GX + 4250 BassPODxt + 4252 BassPODxt Pro + 4642 BassPODxt Live + 4650 PODxt Live + 4750 GuitarPort + 5044 PODxt + 5050 PODxt Pro + 534d SeaMonkey +0e44 Sun-Riseful Technology Co., Ltd. +0e48 Julia Corp., Ltd + 0100 CardPro SmartCard Reader +0e4a Shenzhen Bao Hing Electric Wire & Cable Mfr. Co. +0e4c Radica Games, Ltd + 1097 Gamester Controller + 2390 Games Jtech Controller + 7288 funkey reader +0e55 Speed Dragon Multimedia, Ltd + 110a Tanic S110-SG1 + ISSC IS1002N [Slow Infra-Red (SIR) & Bluetooth 1.2 (Class 2) Adapter] + 110b MS3303H USB-to-Serial Bridge +0e56 Kingston Technology Company, Inc. + 6021 K-PEX 100 +0e5a Active Co., Ltd +0e5b Union Power Information Industrial Co., Ltd +0e5c Bitland Information Technology Co., Ltd + 6118 LCD Device + 6119 remote receive and control device + 6441 C-Media Sound Device +0e5d Neltron Industrial Co., Ltd +0e5e Conwise Technology Co., Ltd. + 6622 CW6622 +0e66 Hawking Technologies + 0001 HWUN1 Hi-Gain Wireless-300N Adapter w/ Upgradable Antenna [Ralink RT2870] + 0003 HWDN1 Hi-Gain Wireless-300N Dish Adapter [Ralink RT2870] + 0009 HWUN2 Hi-Gain Wireless-150N Adapter w/ Upgradable Antenna [Ralink RT2770] + 000b HWDN2 Hi-Gain Wireless-150N Dish Adapter [Ralink RT2770] + 0013 HWUN3 Hi-Gain Wireless-N Adapter [Ralink RT3070] + 0017 HAWNU1 Hi-Gain Wireless-150N Network Adapter with Range Amplifier [Ralink RT3070] + 0018 Wireless-N Network Adapter [Ralink RT2870] + 400b UF100 10/100 Network Adapter + 400c UF100 Ethernet [pegasus2] +0e67 Fossil, Inc. + 0002 Wrist PDA +0e6a Megawin Technology Co., Ltd + 0101 MA100 [USB-UART Bridge IC] + 6001 GEMBIRD Flexible keyboard KB-109F-B-DE +0e6f Logic3 + 0003 Freebird wireless Controller + 0005 Eclipse wireless Controller + 0006 Edge wireless Controller +0e70 Tokyo Electronic Industry Co., Ltd +0e72 Hsi-Chin Electronics Co., Ltd +0e75 TVS Electronics, Ltd +0e79 Archos, Inc. + 1106 Pocket Media Assistant - PMA400 + 1204 Gmini XS 200 + 1306 504 Portable Multimedia Player + 1330 5 Tablet + 1332 5 IMT + 1416 32 IT +0e7b On-Tech Industry Co., Ltd +0e7e Gmate, Inc. + 0001 Yopy 3000 PDA + 1001 YP3X00 PDA +0e82 Ching Tai Electric Wire & Cable Co., Ltd +0e83 Shin An Wire & Cable Co. +0e8c Well Force Electronic Co., Ltd +0e8d MediaTek Inc. + 0003 MT6227 phone + 0004 MT6227 phone +0e8f GreenAsia Inc. + 0003 MaxFire Blaze2 + 0012 USB Wireless 2.4GHz Gamepad + 0016 4 port USB 1.1 hub UH-174 + 0020 USB to PS/2 Adapter + 0021 Multimedia Keyboard Controller + 0201 SmartJoy Frag Xpad/PS2 adaptor +0e90 WiebeTech, LLC + 0100 Storage Adapter V1 +0e91 VTech Engineering Canada, Ltd +0e92 C's Glory Enterprise Co., Ltd +0e93 eM Technics Co., Ltd +0e95 Future Technology Co., Ltd +0e96 Aplux Communications, Ltd + c001 TRUST 380 USB2 SPACEC@M +0e97 Fingerworks, Inc. + 0908 Composite HID (Keyboard and Mouse) +0e98 Advanced Analogic Technologies, Inc. +0e99 Parallel Dice Co., Ltd +0e9a TA HSING Industries, Ltd +0e9b ADTEC Corp. +0e9c Streamzap, Inc. + 0000 Streamzap Remote Control +0e9f Tamura Corp. +0ea0 Ours Technology, Inc. + 2126 7-in-1 Card Reader + 2153 SD Card Reader Key + 2168 Transcend JetFlash 2.0 / Astone USB Drive + 6803 OTI-6803 Flash Disk + 6808 OTI-6808 Flash Disk + 6828 OTI-6828 Flash Disk +0ea6 Nihon Computer Co., Ltd +0ea7 MSL Enterprises Corp. +0ea8 CenDyne, Inc. +0ead Humax Co., Ltd +0eb0 NovaTech + 9020 NovaTech NV-902W + 9021 RT2573 +0eb1 WIS Technologies, Inc. + 6666 WinFast WalkieTV TV Loader + 6668 WinFast WalkieTV TV Loader + 7007 WinFast WalkieTV WDM Capture +0eb2 Y-S Electronic Co., Ltd +0eb3 Saint Technology Corp. +0eb7 Endor AG +0ebe VWeb Corp. +0ebf Omega Technology of Taiwan, Inc. +0ec0 LHI Technology (China) Co., Ltd +0ec1 Abit Computer Corp. +0ec2 Sweetray Industrial, Ltd +0ec3 Axell Co., Ltd +0ec4 Ballracing Developments, Ltd +0ec5 GT Information System Co., Ltd +0ec6 InnoVISION Multimedia, Ltd +0ec7 Theta Link Corp. + 1008 So., Show 301 Digital Camera +0ecd Lite-On IT Corp. + 1400 CD\RW 40X + a100 LDW-411SX DVD/CD Rewritable Drive +0ece TaiSol Electronics Co., Ltd +0ecf Phogenix Imaging, LLC +0ed1 WinMaxGroup + 6660 Flash Disk 64M-C + 6680 Flash Disk 64M-B + 7634 MP3 Player +0ed2 Kyoto Micro Computer Co., Ltd +0ed3 Wing-Tech Enterprise Co., Ltd +0ed5 Fiberbyte + e000 USB-inSync Device + f000 Fiberbyte USB-inSync Device + f201 Fiberbyte USB-inSync DAQ-2500X +0eda Noriake Itron Corp. +0edf e-MDT Co., Ltd + 2060 FID irock! 100 Series +0ee0 Shima Seiki Mfg., Ltd +0ee1 Sarotech Co., Ltd +0ee2 AMI Semiconductor, Inc. +0ee3 ComTrue Technology Corp. + 1000 Image Tank 1.5 +0ee4 Sunrich Technology, Ltd +0eee Digital Stream Technology, Inc. + 8810 Mass Storage Drive +0eef D-WAV Scientific Co., Ltd + 0001 eGalax TouchScreen + 0002 Touchscreen Controller(Professional) +0ef0 Hitachi Cable, Ltd +0ef1 Aichi Micro Intelligent Corp. +0ef2 I/O Magic Corp. +0ef3 Lynn Products, Inc. +0ef4 DSI Datotech +0ef5 PointChips + 2202 Flash Disk + 2366 Flash Disk +0ef6 Yield Microelectronics Corp. +0ef7 SM Tech Co., Ltd (Tulip) +0efd Oasis Semiconductor +0efe Wem Technology, Inc. +0f06 Visual Frontier Enterprise Co., Ltd +0f08 CSL Wire & Plug (Shen Zhen) Co. +0f0c CAS Corp. +0f0d Hori Co., Ltd + 0011 Real Arcade Pro 3 +0f0e Energy Full Corp. +0f11 LD Didactic GmbH + 1000 CASSY-S + 1010 Pocket-CASSY + 1020 Mobile-CASSY + 1080 Joule and Wattmeter + 1081 Digital Multimeter P + 1090 UMI P + 1100 X-Ray Apparatus + 1101 X-Ray Apparatus + 1200 VideoCom + 2000 COM3LAB + 2010 Terminal Adapter + 2020 Network Analyser + 2030 Converter Control Unit + 2040 Machine Test System +0f12 Mars Engineering Corp. +0f13 Acetek Technology Co., Ltd +0f18 Finger Lakes Instrumentation + 0002 CCD + 0006 Focuser + 0007 Filter Wheel + 000a ProLine CCD + 000b Color Filter Wheel 4 + 000c PDF2 + 000d Guider +0f19 Oracom Co., Ltd +0f1b Onset Computer Corp. +0f1c Funai Electric Co., Ltd +0f1d Iwill Corp. +0f21 IOI Technology Corp. +0f22 Senior Industries, Inc. +0f23 Leader Tech Manufacturer Co., Ltd +0f24 Flex-P Industries, Snd., Bhd. +0f2d ViPower, Inc. +0f2e Geniality Maple Technology Co., Ltd +0f2f Priva Design Services +0f30 Jess Technology Co., Ltd + 001c PS3 Guitar Controller Dongle + 0110 Dual Analog Rumble Pad + 0111 Colour Rumble Pad + 0208 Xbox & PC Gamepad +0f31 Chrysalis Development +0f32 YFC-BonEagle Electric Co., Ltd +0f37 Kokuyo Co., Ltd +0f38 Nien-Yi Industrial Corp. +0f3d Airprime, Incorporated + 0112 CDMA 1xEVDO PC Card, PC 5220 +0f41 RDC Semiconductor Co., Ltd +0f42 Nital Consulting Services, Inc. +0f44 Polhemus + ef11 Patriot (firmware not loaded) + ef12 Patriot + ff11 Liberty (firmware not loaded) + ff12 Liberty +0f4b St. John Technology Co., Ltd +0f4c WorldWide Cable Opto Corp. +0f4d Microtune, Inc. + 1000 Bluetooth Dongle +0f4e Freedom Scientific +0f52 Wing Key Electrical Co., Ltd +0f53 Dongguan White Horse Cable Factory, Ltd +0f54 Kawai Musical Instruments Mfg. Co., Ltd +0f55 AmbiCom, Inc. +0f5c Prairiecomm, Inc. +0f5d NewAge International, LLC + 9455 Compact Drive +0f5f Key Technology Corp. +0f60 NTK, Ltd +0f61 Varian, Inc. +0f62 Acrox Technologies Co., Ltd + 1001 Targus Mini Trackball Optical Mouse +0f63 LeapFrog Enterprises + 0010 Leapster Explorer + 0500 Fly Fusion + 0600 Leap Port Turbo + 0700 POGO + 0800 Didj + 0900 TAGSchool + 0a00 Leapster 2 + 0b00 Crammer + 0c00 Tag Jr + 0d00 My Pal Scout + 0e00 Tag32 + 0f00 Tag64 + 1000 Kiwi16 + 1100 Leapster L2x + 1111 Fly Fusion + 1300 Didj UK/France (Leapster Advance) +0f68 Kobe Steel, Ltd +0f69 Dionex Corp. +0f6a Vibren Technologies, Inc. +0f6e INTELLIGENT SYSTEMS + 0100 GameBoy Color Emulator + 0201 GameBoy Advance Flash Gang Writer + 0202 GameBoy Advance Capture + 0300 Gamecube DOL Viewer + 0400 NDS Emulator + 0401 NDS UIC + 0402 NDS Writer + 0403 NDS Capture + 0404 NDS Emulator (Lite) +0f73 DFI +0f7c DQ Technology, Inc. +0f7d NetBotz, Inc. +0f7e Fluke Corp. +0f88 VTech Holdings, Ltd + 3012 RT2570 + 3014 ZD1211B +0f8b Yazaki Corp. +0f8c Young Generation International Corp. +0f8d Uniwill Computer Corp. +0f8e Kingnet Technology Co., Ltd +0f8f Soma Networks +0f97 CviLux Corp. +0f98 CyberBank Corp. +0f9c Hyun Won, Inc. + 0301 M-Any Premium DAH-610 MP3/WMA Player + 0332 mobiBLU DAH-1200 MP3/Ogg Player +0f9e Lucent Technologies +0fa3 Starconn Electronic Co., Ltd +0fa4 ATL Technology +0fa5 Sotec Co., Ltd +0fa7 Epox Computer Co., Ltd +0fa8 Logic Controls, Inc. +0faf Winpoint Electronic Corp. +0fb0 Haurtian Wire & Cable Co., Ltd +0fb1 Inclose Design, Inc. +0fb2 Juan-Chern Industrial Co., Ltd +0fb8 Wistron Corp. + 0002 eHome Infrared Receiver +0fb9 AACom Corp. +0fba San Shing Electronics Co., Ltd +0fbb Bitwise Systems, Inc. +0fc1 Mitac Internatinal Corp. +0fc2 Plug and Jack Industrial, Inc. +0fc5 Delcom Engineering + 1222 I/O Development Board +0fc6 Dataplus Supplies, Inc. +0fca Research In Motion, Ltd. + 0001 Blackberry Handheld + 0004 Blackberry Handheld + 0006 Blackberry Pearl + 0008 Blackberry Pearl + 8001 Blackberry Handheld + 8004 Blackberry Handheld + 8007 Blackberry Handheld +0fce Sony Ericsson Mobile Communications AB + 0076 W910i (Multimedia mode) + 00af V640i Phone [PTP Camera] + 00d4 C902 [MTP] + 00d9 C702 Phone + 0112 W995 Walkman Phone + 1010 WMC Modem + 10af V640i Phone [PictBridge] + 10d4 C902 Phone [PictBridge] + 2105 W715 Phone + 2137 Xperia X10 mini (USB debug) + 2138 Xperia X10 mini pro (Debug) + 2149 Xperia X8 (debug) + 3137 Xperia X10 mini + 3138 Xperia X10 mini pro + 3149 Xperia X8 + 8004 9000 Phone [Mass Storage] + d008 V800-Vodafone 802SE Phone + d016 K750i Phone + d017 K608i Phone + d019 VDC EGPRS Modem + d025 520 WMC Data Modem + d028 W800i + d038 W850i Phone + d039 K800i (phone mode) + d041 K510i Phone + d042 W810i Phone + d043 V630i Phone + d046 K610i Phone + d065 W960i Phone (PC Suite) + d076 W910i (Phone mode) + d089 W580i Phone (mass storage) + d0af V640i Phone + d0cf MD300 Mobile Broadband Modem + d0d4 C902 Phone [Modem] + d0e1 MD400 Mobile Broadband Modem + d12e Xperia X10 + e039 K800i (msc mode) + e042 W810i Phone + e043 V630i Phone [Mass Storage] + e075 K850i + e076 W910i (Mass storage) + e089 W580i Phone + e090 W200 Phone (Mass Storage) + e0a3 W660i + e0af V640i Phone [Mass Storage] + e0d4 C902 Phone [Mass Storage] + e0ef C905 Phone [Mass Storage] + e0f3 W595 + e112 W995 Phone (Mass Storage) + e12e X10i Phone +0fcf Dynastream Innovations, Inc. +0fd0 Tulip Computers B.V. +0fd1 Giant Electronics Ltd. +0fd4 Tenovis GmbH & Co., KG +0fd5 Direct Access Technology, Inc. +0fdc Micro Plus +0fe4 IN-Tech Electronics, Ltd +0fe5 Greenconn (U.S.A.), Inc. +0fe6 Kontron (Industrial Computer Source / ICS Advent) + 8101 DM9601 Fast Ethernet Adapter + 811e Parallel Adapter + 9700 DM9601 Fast Ethernet Adapter +0fe9 DVICO + 4020 TViX M-6500 + db00 FusionHDTV DVB-T (MT352+LgZ201) (uninitialized) + db01 FusionHDTV DVB-T (MT352+LgZ201) (initialized) + db10 FusionHDTV DVB-T (MT352+Thomson7579) (uninitialized) + db11 FusionHDTV DVB-T (MT352+Thomson7579) (initialized) + db78 FusionHDTV DVB-T Dual Digital 4 (ZL10353+xc2028/xc3028) (initialized) +0fea United Computer Accessories +0feb CRS Electronic Co., Ltd +0fec UMC Electronics Co., Ltd +0fed Access Co., Ltd +0fee Xsido Corp. +0fef MJ Research, Inc. +0ff6 Core Valley Co., Ltd +0ff7 CHI SHING Computer Accessories Co., Ltd +0fff Aopen, Inc. +1000 Speed Tech Corp. +1001 Ritronics Components (S) Pte., Ltd +1003 Sigma Corp. + 0100 Sigma SD10 +1004 LG Electronics, Inc. + 1fae U8120 3G Cellphone + 6000 KU330/KU990/VX4400/VX6000 + 6005 T5100 + 6018 GM360/GD510/GW520/KP501 + 618e Ally/Optimus One/Vortex (debug mode) + 618f Ally/Optimus One + 61c6 Vortex (msc) + 6800 CDMA Modem + 7000 LG LDP-7024D(LD)USB + a400 Renoir (KC910) +1005 Apacer Technology, Inc. + 1001 MP3 Player + 1004 MP3 Player + 1006 MP3 Player + b113 Handy Steno 2.0/HT203 + b223 CD-RW + 6in1 Card Reader Digital Storage / Converter +1006 iRiver, Ltd. + 3001 iHP-100 + 3002 iHP-120/140 MP3 Player + 3003 H320/H340 + 3004 H340 (mtp) +1009 Emuzed, Inc. + 000e eHome Infrared Receiver + 0013 Angel MPEG Device + 0015 Lumanate Wave PAL SECAM DVBT Device + 0016 Lumanate Wave NTSC/ATSC Combo Device +100a AV Chaseway, Ltd + 2402 MP3 Player + 2404 MP3 Player + 2405 MP3 Player + 2406 MP3 Player + a0c0 MP3 Player +100b Chou Chin Industrial Co., Ltd +100d Netopia, Inc. + 3342 Cayman 3352 DSL Modem + 3382 3380 Series Network Interface + 6072 DSL Modem + 9031 Motorola 802.11n Dualband USB Wireless Adapter + 9032 Motorola 802.11n 5G USB Wireless Adapter + cb01 Cayman 3341 Ethernet DSL Router +1010 Fukuda Denshi Co., Ltd +1011 Mobile Media Tech. + 0001 AccFast Mp3 +1012 SDKM Fibres, Wires & Cables Berhad +1013 TST-Touchless Sensor Technology AG +1014 Densitron Technologies PLC +1015 Softronics Pty., Ltd +1016 Xiamen Hung's Enterprise Co., Ltd +1017 Speedy Industrial Supplies, Pte., Ltd +1019 Elitegroup Computer Systems (ECS) + 0c55 Flash Reader, Desknote UCR-61S2B + 0f38 Infrared Receiver +1020 Labtec + 0006 Wireless Keyboard + 000a Wireless Optical Mouse + 0106 Wireless Optical Mouse +1022 Shinko Shoji Co., Ltd +1025 Hyper-Paltek + 005e USB DVB-T device + 005f USB DVB-T device + 0300 MP3 Player + 0350 MP3 Player +1026 Newly Corp. +1027 Time Domain +1028 Inovys Corp. +1029 Atlantic Coast Telesys +102a Ramos Technology Co., Ltd +102b Infotronic America, Inc. +102c Etoms Electronics Corp. + 6151 Q-Cam Sangha CIF + 6251 Q-Cam VGA +102d Winic Corp. +1031 Comax Technology, Inc. +1032 C-One Technology Corp. +1033 Nucam Corp. + 0068 3,5'' HDD case MD-231 +1038 Ideazon, Inc. + 0100 Zboard +1039 devolo AG + 2140 dsl+ 1100 duo +103d Stanton + 0100 ScratchAmp + 0101 ScratchAmp +1043 iCreate Technologies Corp. + 160f Wireless Network Adapter + 4901 AV-836 Video Capture Device + 8006 Flash Disk 32-256 MB + 8012 Flash Disk 256 MB +1044 Chu Yuen Enterprise Co., Ltd + 7001 Gigabyte U7000 DVB-T tuner + 7002 Gigabyte U8000 DVB-T tuner + 7004 Gigabyte U7100 DVB-T tuner + 7005 Gigabyte U7200 DVB-T tuner [AF9035] + 7006 Gigabyte U6000 DVB-T tuner [em2863] + 8001 GN-54G + 8002 GN-BR402W + 8003 GN-WLBM101 + 8004 GN-WLBZ101 802.11b Adapter + 8005 GN-WLBZ201 802.11b Adapter + 8006 GN-WBZB-M 802.11b Adapter + 8007 GN-WBKG + 8008 GN-WB01GS + 800a GN-WI05GS + 800b GN-WB30N 802.11n WLAN Card + 800c GN-WB31N 802.11n USB WLAN Card + 800d GN-WB32L 802.11n USB WLAN Card +1046 Winbond Electronics Corp. [hex] + 6694 Generic W6694 USB + 8901 Bluetooth Device + 9967 W9967CF/W9968CF Webcam IC +1048 Targus Group International +104b Mylex / Buslogic +104c AMCO TEC International, Inc. +104d Newport Corporation + 1003 Model-52 LED Light Source Power Supply and Driver +104f WB Electronics + 0001 Infinity Phoenix + 0002 Smartmouse + 0003 FunProgrammer + 0004 Infinity Unlimited + 0006 Infinity Smart + 0007 Infinity Smart module + 0008 Infinity CryptoKey + 0009 RE-BL PlayStation 3 IR-to-Bluetooth converter +1050 Yubico.com + 0010 Yubikey +1053 Immanuel Electronics Co., Ltd +1054 BMS International Beheer N.V. + 5004 DSL 7420 Loader + 5005 DSL 7420 LAN Modem +1055 Complex Micro Interconnection Co., Ltd +1056 Hsin Chen Ent Co., Ltd +1057 ON Semiconductor +1058 Western Digital Technologies, Inc. + 0200 Firewire USB Combo + 0400 External HDD + 0500 hub + 0702 Passport External HDD + 0704 Passport External HDD + 070a My Passport Essential SE + 071a My Passport 1TB + 0900 MyBook Essential External HDD + 0901 MyBook External HDD + 0910 MyBook Essential External HDD + 1001 External Hard Disk [Elements] + 1021 Elements 2TB + 1104 MyBook Mirror Edition External HDD + 1123 My Book 3.0 +1059 Giesecke & Devrient GmbH + 000b StarSign Bio Token 3.0 +105c Hong Ji Electric Wire & Cable (Dongguan) Co., Ltd +105d Delkin Devices, Inc. +105e Valence Semiconductor Design, Ltd +105f Chin Shong Enterprise Co., Ltd +1060 Easthome Industrial Co., Ltd +1063 Motorola Electronics Taiwan, Ltd [hex] + 1555 MC141555 Hub + 4100 SB4100 USB Cable Modem +1065 CCYU Technology + 0020 USB-DVR2 Dev Board + 2136 EasyDisk ED1064 +106a Loyal Legend, Ltd +106c Curitel Communications, Inc. + 1101 CDMA 2000 1xRTT USB modem (HX-550C) + 1102 Packet Service + 1103 Packet Service Diagnostic Serial Port (WDM) + 1104 Packet Service Diagnostic Serial Port (WDM) + 1105 Composite Device + 1106 Packet Service Diagnostic Serial Port (WDM) + 1301 Composite Device + 1302 Packet Service Diagnostic Serial Port (WDM) + 1303 Packet Service + 1304 Packet Service + 1401 Composite Device + 1402 Packet Service + 1403 Packet Service Diagnostic Serial Port (WDM) + 1501 Packet Service + 1502 Packet Service Diagnostic Serial Port (WDM) + 1503 Packet Service + 1601 Packet Service + 1602 Packet Service Diagnostic Serial Port (WDM) + 1603 Packet Service + 2101 AudioVox 8900 Cell Phone + 2102 Packet Service + 2103 Packet Service Diagnostic Serial Port (WDM) + 2301 Packet Service + 2302 Packet Service Diagnostic Serial Port (WDM) + 2303 Packet Service + 2401 Packet Service Diagnostic Serial Port (WDM) + 2402 Packet Service + 2403 Packet Service Diagnostic Serial Port (WDM) + 2501 Packet Service + 2502 Packet Service Diagnostic Serial Port (WDM) + 2503 Packet Service + 2601 Packet Service + 2602 Packet Service Diagnostic Serial Port (WDM) + 2603 Packet Service + 3701 Broadband Wireless modem + 3702 Pantech PX-500 + 3714 PANTECH USB MODEM [UM175] + 3eb4 Packet Service Diagnostic Serial Port (WDM) + 4101 Packet Service Diagnostic Serial Port (WDM) + 4102 Packet Service + 4301 Composite Device + 4302 Packet Service Diagnostic Serial Port (WDM) + 4401 Composite Device + 4402 Packet Service + 4501 Packet Service + 4502 Packet Service Diagnostic Serial Port (WDM) + 4601 Composite Device + 4602 Packet Service Diagnostic Serial Port (WDM) + 5101 Packet Service + 5102 Packet Service Diagnostic Serial Port (WDM) + 5301 Packet Service Diagnostic Serial Port (WDM) + 5302 Packet Service + 5401 Packet Service + 5402 Packet Service Diagnostic Serial Port (WDM) + 5501 Packet Service Diagnostic Serial Port (WDM) + 5502 Packet Service + 5601 Packet Service Diagnostic Serial Port (WDM) + 5602 Packet Service + 7101 Composite Device + 7102 Packet Service + a000 Packet Service + a001 Packet Service Diagnostic Serial Port (WDM) + c100 Packet Service + c200 Packet Service + c500 Packet Service Diagnostic Serial Port (WDM) + e200 Packet Service +106d San Chieh Manufacturing, Ltd +106e ConectL +106f Money Controls +1076 GCT Semiconductor, Inc. + 0031 Bluetooth Device + 0032 Bluetooth Device +107b Gateway, Inc. + 3009 eHome Infrared Transceiver + 55b2 WBU-110 802.11b Wireless Adapter [Intersil PRISM 3] + 55f2 WGU-210 802.11g Adapter [Intersil ISL3886] +107d Arlec Australia, Ltd +107e Midoriya Electric Co., Ltd +107f KidzMouse, Inc. +1082 Shin-Etsukaken Co., Ltd +1083 Canon Electronics, Inc. + 162c P-150 Scanner +1084 Pantech Co., Ltd +108a Chloride Power Protection +108b Grand-tek Technology Co., Ltd +108c Robert Bosch GmbH +108e Lotes Co., Ltd. +1099 Surface Optics Corp. +109a DATASOFT Systems GmbH +109f eSOL Co., Ltd + 3163 Trigem Mobile SmartDisplay84 + 3164 Trigem Mobile SmartDisplay121 +10a0 Hirotech, Inc. +10a3 Mitsubishi Materials Corp. +10a9 SK Teletech Co., Ltd + 1102 Sky Love Actually IM-U460K + 1104 Sky Vega IM-A650S + 6021 SIRIUS alpha +10aa Cables To Go +10ab USI Co., Ltd + 1002 Bluetooth Device + 1003 BC02-EXT in DFU + 1005 Bluetooth Adptr + 1006 BC04-EXT in DFU + 10c5 Sony-Ericsson / Samsung DataCable +10ac Honeywell, Inc. +10ae Princeton Technology Corp. +10af Liebert Corp. + 0000 UPS + 0001 PowerSure PSA UPS + 0002 PowerSure PST UPS + 0003 PowerSure PSP UPS + 0004 PowerSure PSI UPS + 0005 UPStation GXT 2U UPS + 0006 UPStation GXT UPS + 0007 Nfinity Power Systems UPS + 0008 PowerSure Interactive UPS +10b5 Comodo (PLX?) + 9060 Test Board +10b8 DiBcom + 0bb8 DiBcom USB DVB-T reference design (MOD300) (cold) + 0bb9 DiBcom USB DVB-T reference design (MOD300) (warm) + 0bc6 DiBcom USB2.0 DVB-T reference design (MOD3000P) (cold) + 0bc7 DiBcom USB2.0 DVB-T reference design (MOD3000P) (warm) +10bb TM Technology, Inc. +10bc Dinging Technology Co., Ltd +10bd TMT Technology, Inc. + 1427 Ethernet +10bf SmartHome + 0001 SmartHome PowerLinc +10c4 Cygnal Integrated Products, Inc. + 0002 F32x USBXpress Device + 0003 CommandIR + 8044 USB Debug Adapter + 804e Software Bisque Paramount ME + 80a9 CP210x to UART Bridge Controller + 80ca ATM2400 Sensor Device + 818a Silicon Labs FM Radio Reference Design + 8461 Sangoma U100 + ea60 CP210x Composite Device +10c5 Sanei Electric, Inc. + 819a FM Radio +10c6 Intec, Inc. +10cb Eratech +10cc GBM Connector Co., Ltd + 1101 MP3 Player +10cd Kycon, Inc. +10ce Silicon Labs + ea6a MobiData EDGE USB Modem +10cf Velleman Components, Inc. + 2011 R-Engine MPEG2 encoder/decoder + 5500 8055 Experiment Interface Board (address=0) + 5501 8055 Experiment Interface Board (address=1) + 5502 8055 Experiment Interface Board (address=2) + 5503 8055 Experiment Interface Board (address=3) +10d1 Hottinger Baldwin Measurement + 0101 USB-Module for Spider8, CP32 + 0202 CP22 - Communication Processor + 0301 CP42 - Communication Processor +10d4 Man Boon Manufactory, Ltd +10d5 Uni Class Technology Co., Ltd + 5552 KVM Human Interface Composite Device (Keyboard/Mouse ports) + 55a2 2Port KVMSwitcher +10d6 Actions Semiconductor Co., Ltd + 1000 MP3 Player + 1100 MPMan MP-Ki 128 MP3 Player/Recorder + 1101 D-Wave 2GB MP4 Player / AK1025 MP3/MP4 Player + 2200 Acer MP-120 MP3 player + 8888 ADFU Device + ff51 ADFU Device + ff61 MP4 Player + ff66 Craig 2GB MP3/Video Player +10de Authenex, Inc. +10df In-Win Development, Inc. + 0500 iAPP CR-e500 Card reader +10e0 Post-Op Video, Inc. +10e1 CablePlus, Ltd +10e2 Nada Electronics, Ltd +10ec Vast Technologies, Inc. +10f0 Nexio Co., Ltd + 2002 iNexio Touchscreen controller +10f1 Importek + 1a08 Internal Webcam + 1a1e Laptop Integrated Webcam 1.3M +10f5 Turtle Beach + 0200 Audio Advantage Roadie +10fb Pictos Technologies, Inc. +10fd Anubis Electronics, Ltd + 7e50 FlyCam Usb 100 + 804d Typhoon Webshot II Webcam [zc0301] + 8050 FlyCAM-USB 300 XP2 + de00 WinFast WalkieTV WDM Capture Driver. +1100 VirTouch, Ltd + 0001 VTPlayer VTP-1 Braille Mouse +1101 EasyPass Industrial Co., Ltd + 0001 FSK Electronics Super GSM Reader +1108 Brightcom Technologies, Ltd +110a Moxa Technologies Co., Ltd. + 1250 UPort 1250 2-Port RS-232/422/485 + 1251 UPort 1250I 2-Port RS-232/422/485 with Isolation + 1410 UPort 1410 4-Port RS-232 + 1450 UPort 1450 4-Port RS-232/422/485 + 1451 UPort 1450I 4-Port RS-232/422/485 with Isolation + 1613 UPort 1610-16 16-Port RS-232 + 1618 UPort 1610-8 8-Port RS-232 + 1653 UPort 1650-16 16-Port RS-232/422/485 + 1658 UPort 1650-8 8-Port RS-232/422/485 +1110 Analog Devices Canada, Ltd (Allied Telesyn) + 5c01 Huawei MT-882 Remote NDIS Network Device + 6489 ADSL ETH/USB RTR + 9000 ADSL LAN Adapter + 9001 ADSL Loader + 900f AT-AR215 DSL Modem + 9010 AT-AR215 DSL Modem + 9021 ADSL WAN Adapter + 9022 ADSL Loader + 9023 ADSL WAN Adapter + 9024 ADSL Loader + 9031 ADSL LAN Adapter + 9032 ADSL Loader +1111 Pandora International Ltd. + 8888 Evolution Device +1112 YM ELECTRIC CO., Ltd +1113 Medion AG + a0a2 Active Sync device +111e VSO Electric Co., Ltd +112a RedRat + 0001 RedRat3 IR Transceiver + 0005 RedRat3II IR Transceiver +112e Master Hill Electric Wire and Cable Co., Ltd +112f Cellon International, Inc. +1130 Tenx Technology, Inc. + 0002 iBuddy + 6604 MCE IR-Receiver + 660c Foot Pedal/Thermometer + 6806 Keychain photo frame + f211 TP6911 Audio Headset +1131 Integrated System Solution Corp. + 1001 KY-BT100 Bluetooth Adapter + 1002 Bluetooth Device + 1003 Bluetooth Device + 1004 Bluetooth Device +1132 Toshiba Corp., Digital Media Equipment [hex] + 4331 PDR-M4/M5/M70 Digital Camera + 4332 PDR-M60 Digital Camera + 4333 PDR-M2300/PDR-M700 + 4334 PDR-M65 + 4335 PDR-M61 + 4337 PDR-M11 + 4338 PDR-M25 +1136 CTS Electronincs + 3131 CTS LS515 +113c Arin Tech Co., Ltd +113d Mapower Electronics Co., Ltd +1141 V One Multimedia, Pte., Ltd +1142 CyberScan Technologies, Inc. +1145 Japan Radio Company + 0001 AirH PHONE AH-J3001V/J3002V +1146 Shimane SANYO Electric Co., Ltd. +1147 Ever Great Electric Wire and Cable Co., Ltd +114b Sphairon Access Systems GmbH + 0110 Turbolink UB801R WLAN Adapter + 0150 Turbolink UB801RE Wireless 802.11g 54Mbps Network Adapter [RTL8187] +114c Tinius Olsen Testing Machine Co., Inc. +114d Alpha Imaging Technology Corp. +114f Wavecom +115b Salix Technology Co., Ltd. +1162 Secugen Corp. +1163 DeLorme Publishing, Inc. + 0100 Earthmate GPS (orig) + 0200 Earthmate GPS (LT-20, LT-40) + 2020 Earthmate GPS (PN-40) +1164 YUAN High-Tech Development Co., Ltd + 0300 ELSAVISION 460D + 0601 Analog TV Tuner + 0900 TigerBird BMP837 USB2.0 WDM Encoder + 0bc7 Digital TV Tuner + 521b MC521A mini Card ATSC Tuner + 6601 Digital TV Tuner Card [RTL2832U] +1165 Telson Electronics Co., Ltd +1166 Bantam Interactive Technologies +1167 Salient Systems Corp. +1168 BizConn International Corp. +116e Gigastorage Corp. +116f Silicon 10 Technology Corp. + 0005 Flash Card Reader + c108 Flash Card Reader + c109 Flash Card Reader +1175 Shengyih Steel Mold Co., Ltd +117d Santa Electronic, Inc. +117e JNC, Inc. +1182 Venture Corp., Ltd +1183 Compaq Computer Corp. [hex] (Digital Dream ??) + 0001 DigitalDream l'espion XS + 19c7 ISDN TA + 4008 56k FaxModem + 504a PJB-100 Personal Jukebox +1184 Kyocera Elco Corp. +1188 Bloomberg L.P. +1189 Acer Communications & Multimedia + 0893 EP-1427X-2 Ethernet Adapter +118f You Yang Technology Co., Ltd +1190 Tripace +1191 Loyalty Founder Enterprise Co., Ltd +1196 Yankee Robotics, LLC + 0010 Trifid Camera without code + 0011 Trifid Camera +1197 Technoimagia Co., Ltd +1198 StarShine Technology Corp. +1199 Sierra Wireless, Inc. + 0019 AC595U + 0021 AC597E + 0024 MC5727 CDMA modem + 0110 Composite Device + 0112 CDMA 1xEVDO PC Card, AirCard 580 + 0120 AC595U + 0218 MC5720 Wireless Modem + 6467 MP Series Network Adapter + 6468 MP Series Network Adapter + 6469 MP Series Network Adapter + 6802 MC8755 Device + 6803 MC8765 Device + 6804 MC8755 Device + 6805 MC8765 Device + 6812 MC8775 Device + 6820 AC875 Device + 6832 MC8780 Device + 6833 MC8781 Device + 683a MC8785 Device + 6850 AirCard 880 Device + 6851 AirCard 881 Device + 6852 AirCard 880E Device + 6853 AirCard 881E Device + 6854 AirCard 885 Device + 6856 ATT "USB Connect 881" + 6870 MC8780 Device + 6871 MC8781 Device + 6893 MC8777 Device + 9000 Gobi 2000 Wireless Modem (QDL mode) + 9001 Gobi 2000 Wireless Modem + 9002 Gobi 2000 Wireless Modem + 9003 Gobi 2000 Wireless Modem + 9004 Gobi 2000 Wireless Modem + 9005 Gobi 2000 Wireless Modem + 9006 Gobi 2000 Wireless Modem + 9007 Gobi 2000 Wireless Modem + 9008 Gobi 2000 Wireless Modem + 9009 Gobi 2000 Wireless Modem + 900a Gobi 2000 Wireless Modem +119a ZHAN QI Technology Co., Ltd +119b ruwido austria GmbH + 0400 Infrared Keyboard V2.01 +11a0 Chipcon AS + eb11 CC2400EB 2.0 ZigBee Sniffer +11a3 Technovas Co., Ltd + 8031 MP3 Player + 8032 MP3 Player +11aa GlobalMedia Group, LLC + 1518 iREZ K2 +11ab Exito Electronics Co., Ltd +11b0 ATECH FLASH TECHNOLOGY +11c5 Inmax + 0521 IMT-0521 Smartcard Reader +11db Topfield Co., Ltd. + 1000 PVR + 1100 PVR +11e6 K.I. Technology Co. Ltd. +11f5 Siemens AG + 0001 SX1 + 0003 Mobile phone USB cable + 0004 X75 + 0005 SXG75/EF81 + 0008 UMTS/HSDPA Data Card +11f6 Prolific + 2001 Willcom WSIM +11f7 Alcatel (?) + 02df TD10 Mobile phone USB cable +1203 TSC Auto ID Technology Co., Ltd + 0140 TTP-245C +1209 InterBiometrics + 1001 USB Hub + 1002 USB Relais + 1003 IBSecureCam-P + 1004 IBSecureCam-O + 1005 IBSecureCam-N +120e Hudson Soft Co., Ltd +120f Magellan + 5260 Triton Handheld GPS Receiver (300/400/500/1500/2000) +1210 DigiTech + 001b RP155 Guitar Multi-Effects Processor + 001c RP255 Guitar Multi-Effects Processor +121e Jungsoft Co., Ltd + 3403 Muzio JM250 Audio Player +1223 SKYCABLE ENTERPRISE. CO., LTD. +1230 Chipidea-Microelectronica, S.A. +1233 Denver Electronics + 5677 FUSB200 mp3 player +1234 Unknown + ed02 Emotiv EPOC Developer Headset Wireless Dongle +1235 Novation EMS + 0001 ReMOTE Audio/XStation + 0002 Speedio + 0003 ReMOTE ZeRO SL + 4661 ReMOTE25 +1241 Belkin + 1111 Mouse + 1122 Typhoon Stream Optical Mouse USB+PS/2 + 1155 PS2/USB Browser Combo Mouse + 1166 MI-2150 Trust Mouse + 1177 F8E842-DL Mouse + 1503 Keyboard + 1603 Keyboard +124a AirVast + 168b PRISM3 WLAN Adapter + 4017 PC-Chips 802.11b Adapter +124b Nyko (Honey Bee) + 4d01 Airflo EX Joystick +124c MXI - Memory Experts International, Inc. + 3200 Stealth MXP 1GB +125c Apogee Inc. + 0010 Alta series CCD +125f A-DATA Technology Co., Ltd. + c81a Flash drive +1260 Standard Microsystems Corp. + ee22 SMC2862W-G v3 EZ Connect 802.11g Adapter [Intersil ISL3887] +1264 Covidien Energy-based Devices +1266 Pirelli Broadband Solutions + 6302 Fastweb DRG A226M ADSL Router +1267 Logic3 / SpectraVideo plc + 0103 G-720 Keyboard + 0201 A4Tech SWOP-3 Mouse + a001 JP260 PC Game Pad + c002 Wireless Optical Mouse +126c Aristocrat Technologies +126d Bel Stewart +126e Strobe Data, Inc. +126f TwinMOS + 1325 Mobile Disk + 2168 Mobile Disk III + a006 G240 802.11bg +1274 Ensoniq +1275 Xaxero Marine Software Engineering, Ltd. + 0002 WeatherFax 2000 Demodulator + 0080 SkyEye Weather Satellite Receiver +1283 zebris Medical GmbH + 0100 USB-RS232 Adaptor + 0110 CMS20 + 0111 CMS 10 + 0112 CMS 05 + 0114 ARCUS digma PC-Interface + 0115 SAM Axioquick recorder + 0116 SAM Axioquick recorder + 0120 emed-X + 0121 emed-AT + 0130 PDM + 0150 CMS10GI (Golf) +1286 Marvell Semiconductor, Inc. + 1fab 88W8338 [Libertas] 802.11g + 2001 88W8388 802.11a/b/g WLAN + 2006 88W8360 802.11n WLAN + 8001 BLOB boot loader firmware +1291 Qualcomm Flarion Technologies, Inc. / Leadtek Research, Inc. + 0010 FDM 2xxx Flash-OFDM modem + 0011 LR7F06/LR7F14 Flash-OFDM modem +1292 Innomedia + 0258 Creative Labs VoIP Blaster +1293 Belkin Components [hex] + 0002 F5U002 Parallel Port [uss720] + 2101 104-key keyboard +1294 RISO KAGAKU CORP. +129b CyberTAN Technology + 160b Siemens S30853-S1031-R351 802.11g Wireless Adapter [Atheros AR5523] + 160c Siemens S30853-S1038-R351 802.11g Wireless Adapter [Atheros AR5523] + 1666 TG54USB 802.11bg + 1667 802.11bg + 1828 Gigaset USB Adapter 300 +12a7 Trendchip Technologies Corp. +12ab Honey Bee Electronic International Ltd. +12b8 Zhejiang Xinya Electronic Technology Co., Ltd. +12ba Licensed by Sony Computer Entertainment America + 0100 RedOctane Guitar for PlayStation(R)3 + 0120 RedOctane Drum Kit for PlayStation(R)3 + 0200 Harmonix Guitar for PlayStation(R)3 + 0210 Harmonix Drum Kit for PlayStation(R)3 +12c4 Autocue Group Ltd + 0006 Teleprompter Two-button Hand Control (v1) + 0008 Teleprompter Foot Control (v1) +12d1 Huawei Technologies Co., Ltd. + 1001 E620 USB Modem + 1003 E220 HSDPA Modem / E230/E270 HSDPA/HSUPA Modem + 1009 U120 + 1010 ETS2252+ CDMA Fixed Wireless Terminal + 1037 Ideos + 1038 Ideos (debug mode) + 1406 E1750 + 140b EC1260 Wireless Data Modem HSD USB Card + 1446 E1552 (HSPA modem) + 1501 Pulse + 380b WiMAX USB modem(s) +12d2 LINE TECH INDUSTRIAL CO., LTD. +12d6 EMS Dr. Thomas Wuensche + 0444 CPC-USB/ARM7 + 0888 CPC-USB/M16C +12d7 BETTER WIRE FACTORY CO., LTD. +12e6 Waldorf Music GmbH + 0013 Blofeld +12ef Tapwave, Inc. + 0100 Tapwave Handheld [Tapwave Zodiac] +12f5 Dynamic System Electronics Corp. +12f7 Memorex Products, Inc. + 1a00 TD Classic 003B + 1e23 TravelDrive 2007 Flash Drive +12fd AIN Comm. Technology Co., Ltd + 1001 AWU2000b 802.11b Stick +12ff Fascinating Electronics, Inc. + 0101 Advanced RC Servo Controller +1307 Transcend Information, Inc. + 0163 256MB/512MB/1GB Flash Drive + 0165 2GB/4GB Flash Drive + 0361 CR-75: 51-in-1 Card Reader/Writer + 1169 TS2GJF210 JetFlash 210 2GB + 1171 Fingerprint Reader +1308 Shuttle, Inc. + 0003 VFD Module + c001 eHome Infrared Transceiver +1310 Roper + 0001 Class 1 Bluetooth Dongle +1312 ICS Electronics +131d Natural Point + 0155 TrackIR 3 Pro Head Tracker + 0156 TrackIR 4 Pro Head Tracker +132a Envara Inc. + 1502 WiND 802.11abg / 802.11bg WLAN +132b Konica Minolta + 0000 Dimage A2 Camera + 0001 Minolta DiMAGE A2 (ptp) + 0003 Dimage Xg Camera + 0006 Dimage Z2 Camera + 0007 Minolta DiMAGE Z2 (PictBridge mode) + 0008 Dimage X21 Camera + 000a Dimage Scan Dual IV + 000b Dimage Z10 Camera + 000d Dimage X50 Camera [storage?] + 000f Dimage X50 Camera [p2p?] + 0010 Dimage G600 Camera + 0012 Dimage Scan Elite5400 2 + 0013 Dimage X31 Camera + 0015 Dimage G530 Camera + 0017 Dimage Z3 Camera + 0018 Minolta DiMAGE Z3 (PictBridge mode) + 0019 Dimage A200 Camera + 0021 Dimage Z5 Camera + 0022 Minolta DiMAGE Z5 (PictBridge mode) + 002c Dynax 5D camera + 2001 Magicolor 2400w + 2004 Magicolor 5430DL + 2005 Magicolor 2430 DL + 2029 Magicolor 5440DL + 2030 PagePro 1350E(N) + 2033 PagePro 1400W + 2043 Magicolor 2530DL + 2045 Magicolor 2500W + 2049 Magicolor 2490MF +1342 Mobility + 0200 EasiDock 200 Hub + 0201 EasiDock 200 Keyboard and Mouse Port + 0202 EasiDock 200 Serial Port + 0203 EasiDock 200 Printer Port + 0204 Ethernet + 0304 EasiDock Ethernet +1345 Sino Lite Technology Corp. + 001c Xbox Controller Hub +1347 Moravian Instruments + 0400 G2CCD USB 1.1 obsolete + 0401 G2CCD-S with Sony ICX285 CCD + 0402 G2CCD2 + 0403 G2/G3CCD-I KAI CCD + 0404 G2/G3CCD-F KAF CCD + 0410 G1-0400 CCD + 0411 G1-0800 CCD + 0412 G1-0300 CCD + 0413 G1-2000 CCD + 0414 G1-1400 CCD +1348 Katsuragawa Electric Co., Ltd. +134c PanJit International Inc. + 0001 Touch Panel Controller + 0002 Touch Panel Controller + 0003 Touch Panel Controller + 0004 Touch Panel Controller +134e Digby's Bitpile, Inc. DBA D Bit +1357 P&E Microcomputer Systems + 0503 USB-ML-12 HCS08/HCS12 Multilink + 0504 DEMOJM +1366 SEGGER + 0101 J-Link ARM +136b STEC +1370 Swissbit + 0323 Swissmemory cirrusWHITE + 6828 Victorinox Flash Drive +1371 CNet Technology Inc. + 0001 CNUSB-611AR Wireless Adapter-G [AT76C503] + 0002 CNUSB-611AR Wireless Adapter-G [AT76C503] (FiberLine WL-240U) + 0013 CNUSB-611 Wireless Adapter [AT76C505] + 0014 CNUSB-611 Wireless Adapter [AT76C505] (FiberLine WL-240U) + 5743 CNUSB-611 (D) Wireless Adapter [AT76C503] + 9022 CWD-854 [RT2573] + 9032 CWD-854 rev F + 9401 CWD-854 Wireless 802.11g 54Mbps Network Adapter [RTL8187] +1376 Vimtron Electronics Co., Ltd. +137b SCAPS GmbH + 0002 SCAPS USC-2 Scanner Controller +1385 Netgear, Inc + 4250 WG111T + 4251 WG111T (no firmware) + 5f00 WPN111 RangeMax(TM) Wireless USB 2.0 Adapter + 5f01 WPN111 (no firmware) + 6e00 WPNT121 802.11g 240Mbps Wireless Adapter [Airgo AGN300] +138a Validity Sensors, Inc. + 0001 VFS101 Fingeprint Reader + 0005 VFS301 Fingerprint Reader + 0007 VFS451 Fingeprint Reader + 0008 VFS300 Fingeprint Reader +138e Jungo LTD + 9000 Raisonance S.A. STM32 ARM evaluation board +1390 TOMTOM B.V. + 0001 GO 520 T +1391 IdealTEK, Inc. + 1000 URTC-1000 +1395 Sennheiser Communications + 3556 USB Headset +1397 BEHRINGER International GmbH + 00bc BCF2000 +1398 Q-tec + 2103 USB 2.0 Storage Device +13ad Baltech + 9999 Card reader +13b0 PerkinElmer Optoelectronics + 000a Alesis Photon X25 MIDI Controller +13b1 Linksys + 000a WUSB54G v2 802.11g Adapter [Intersil ISL3887] + 000b WUSB11 v4.0 802.11b Adapter [ALi M4301] + 000c WUSB54AG 802.11a/g Adapter [Intersil ISL3887] + 000d WUSB54G v4 802.11g Adapter [Ralink RT2500USB] + 000e WUSB54GS v1 802.11g Adapter [Broadcom 4320 USB] + 0011 WUSB54GP v4.0 802.11g Adapter [Ralink RT2500USB] + 0014 WUSB54GS v2 802.11g Adapter [Broadcom 4320 USB] + 0018 USB200M 10/100 Ethernet Adapter + 001a HU200TS Wireless Adapter + 001e WUSBF54G 802.11bg + 0020 WUSB54GC v1 802.11g Adapter [Ralink RT73] + 0022 WUSB54GX4 802.11g 240Mbps Wireless Adapter [Airgo AGN300] + 0023 WUSB54GR + 0024 WUSBF54G v1.1 802.11bg + 0026 WUSB54GSC v1 802.11g Adapter [Broadcom 4320 USB] + 002f AE1000 v1 802.11n [Ralink RT2870] + 0031 AM10 v1 802.11n [Ralink RT2870] + 13b1 WUSB200: Wireless-G Business Network Adapter with Rangebooster +13b2 Alesis + 0030 Multimix 8 +13b3 Nippon Dics Co., Ltd. +13ba Unknown + 0017 PS/2 Keyboard+Mouse Adapter +13be Ricoh Printing Systems, Ltd. +13ca JyeTai Precision Industrial Co., Ltd. +13cf Wisair Ltd. + 1200 Olidata Wireless Multimedia Adapter +13d0 Techsan Electronics Co., Ltd. + 2282 TechniSat DVB-PC TV Star 2 +13d1 A-Max Technology Macao Commercial Offshore Co. Ltd. + 7019 MD 82288 + abe6 Wireless 802.11g 54Mbps Network Adapter [RTL8187] +13d2 Shark Multimedia + 0400 Pocket Ethernet [klsi] +13d3 IMC Networks + 3201 VisionDTV USB-Ter/HAMA USB DVB-T device cold + 3202 VisionDTV USB-Ter/HAMA USB DVB-T device warm + 3203 DTV-DVB UDST7020BDA DVB-S Box(DVBS for MCE2005) + 3204 DTV-DVB UDST7020BDA DVB-S Box(DVBS for MCE2005) + 3205 DNTV Live! Tiny USB2 BDA (No Remote) + 3206 DNTV Live! Tiny USB2 BDA (No Remote) + 3207 DTV-DVB UDST7020BDA DVB-S Box(DVBS for MCE2005) + 3208 DTV-DVB UDST7020BDA DVB-S Box(DVBS for MCE2005) + 3209 DTV-DVB UDST7022BDA DVB-S Box(Without HID) + 3211 DTV-DVB Hybrid Analog/Capture / Pinnacle PCTV 310e + 3212 DTV-DVB UDTT704C - DVBT/NTSC/PAL Driver(PCM4) + 3213 DTV-DVB UDTT704D - DVBT/NTSC/PAL Driver (PCM4) + 3214 DTV-DVB UDTT704F -(MiniCard) DVBT/NTSC/PAL Driver(Without HID) + 3215 DTV-DVB UDAT7240 - ATSC/NTSC/PAL Driver(PCM4) + 3216 DTV-DVB UDTT 7047-USB 2.0 DVB-T Driver + 3217 Digital-TV Receiver. + 3219 DTV-DVB UDTT7049 - DVB-T Driver(Without HID) + 3220 DTV-DVB UDTT 7047M-USB 2.0 DVB-T Driver + 3223 DNTV Live! Tiny USB2 BDA (No Remote) + 3224 DNTV Live! Tiny USB2 BDA (No Remote) + 3226 DigitalNow TinyTwin DVB-T Receiver + 3234 DVB-T FTA Half Minicard [RTL2832U] + 3236 DTV-DVB UDTT 7047A-USB 2.0 DVB-T Driver + 3237 DTV-DVB UDTT 704J - dual DVB-T Driver + 3239 DTV-DVB UDTT704D - DVBT/NTSC/PAL Driver(Without HID) + 3240 DTV-DVB UDXTTM6010 - A/D Driver(Without HID) + 3241 DTV-DVB UDXTTM6010 - A/D Driver(Without HID) + 3242 DTV-DVB UDAT7240LP - ATSC/NTSC/PAL Driver(Without HID) + 3243 DTV-DVB UDXTTM6010 - A/D Driver(Without HID) + 3244 DTV-DVB UDTT 7047Z-USB 2.0 DVB-T Driver + 3247 802.11 n/g/b Wireless LAN Adapter + 3249 Internal Bluetooth + 3262 802.11 n/g/b Wireless LAN USB Adapter + 3273 802.11 n/g/b Wireless LAN USB Mini-Card + 3274 DVB-T Dongle [RTL2832U] + 3282 DVB-T + GPS Minicard [RTL2832U] + 3284 Wireless LAN USB Mini-Card + 3306 WLAN [RTL8191S] + 5070 Webcam + 5111 Integrated Webcam + 5115 Integrated Webcam + 5116 Integrated Webcam + 7020 DTV-DVB UDST7020BDA DVB-S Box(DVBS for MCE2005) + 7022 DTV-DVB UDST7022BDA DVB-S Box(Without HID) +13dc ALEREON, INC. +13dd i.Tech Dynamic Limited +13e1 Kaibo Wire & Cable (Shenzhen) Co., Ltd. +13e5 Rane + 0001 SL-1 +13e6 TechnoScope Co., Ltd. +13ec Zydacron + 0006 HID Remote Control +13ee MosArt + 0003 Optical Mouse +13fd Initio Corporation + 0841 Samsung SE-T084M DVD-RW + 1340 Hi-Speed USB to SATA Bridge + 160f RocketFish SATA Bridge [INIC-1611] + 1640 ASUS SDRW-08D1S-U DVD-RW + 1840 Shintaro SH23SDOCK Hard Drive Docker [INIC-1608L] +13fe Kingston Technology Company Inc. + 1a00 512MB/1GB Flash Drive + 1a23 512MB Flash Drive + 1d00 DataTraveler 2.0 1GB/4GB Flash Drive / Patriot Xporter 4GB Flash Drive + 1e00 Flash Drive 2 GB [ICIDU 2 GB] + 1f00 DataTraveler 2.0 4GB Flash Drive / Patriot Xporter 32GB (PEF32GUSB) Flash Drive + 2240 microSD card reader + 3100 2/4 GB stick +1400 Axxion Group Corp. +1402 Bowe Bell & Howell +1403 Sitronix + 0001 Digital Photo Frame +140e Telechips, Inc. + b011 TCC780X-based player (USB Boot mode) + b021 TCC77X-based players (USB Boot mode) +1410 Novatel Wireless + 1110 Merlin S620 + 1120 Merlin EX720 + 1130 Merlin S720 + 1400 Merlin U730/U740 (Vodafone) + 1410 Merlin U740 (non-Vodafone) + 1430 Merlin XU870 + 1450 Merlin X950D + 2110 Ovation U720/MCD3000 + 2410 Expedite EU740 + 2420 Expedite EU850D/EU860D/EU870D + 4100 U727 + 4400 Ovation MC930D/MC950D + a001 Gobi Wireless Modem + a008 Gobi Wireless Modem (QDL mode) +1415 Nam Tai E&E Products Ltd. or OmniVision Technologies, Inc. + 0000 Sony SingStar USBMIC + 0020 Sony Wireless SingStar + 2000 Sony Playstation Eye +1419 ABILITY ENTERPRISE CO., LTD. +1429 Vega Technologies Industrial (Austria) Co. +142a Thales E-Transactions + 0003 Artema Hybrid + 0005 Artema Modular + 0043 medCompact +142b Arbiter Systems, Inc. + 03a5 933A Portable Power Sentinel +1430 RedOctane + 4734 Guitar Hero4 hub + 474b Guitar Hero MIDI interface +1431 Pertech Resources, Inc. +1435 Wistron NeWeb + 0427 UR054g 802.11g Wireless Adapter [Intersil ISL3887] + 0711 UR055G 802.11bg + 0804 AR9170+AR9104 802.11abgn Wireless Adapter + 0826 AR5523 + 0827 AR5523 (no firmware) + 0828 AR5523 + 0829 AR5523 (no firmware) +1436 Denali Software, Inc. +143c Altek Corporation +1443 Digilent + 0007 CoolRunner-II CPLD Starter Kit +1453 Radio Shack + 4026 26-183 Serial Cable +1456 Extending Wire & Cable Co., Ltd. +1457 First International Computer, Inc. + 5117 OpenMoko Neo1973 kernel usbnet (g_ether, CDC Ethernet) mode + 5118 OpenMoko Neo1973 Debug board (V2+) + 5119 OpenMoko Neo1973 u-boot cdc_acm serial port + 5120 OpenMoko Neo1973 u-boot usbtty generic serial + 5121 OpenMoko Neo1973 kernel mass storage (g_storage) mode + 5122 OpenMoko Neo1973 / Neo Freerunner kernel cdc_ether USB network + 5123 OpenMoko Neo1973 internal USB CSR4 module + 5124 OpenMoko Neo1973 Bluetooth Device ID service +145f Trust + 0106 Trust K56 V92 USB Modem + 013d PC Camera (SN9C201 + OV7660) + 013f Megapixel Auto Focus Webcam + 0142 WB-6250X Webcam + 015a WB-8300X 2MP Webcam +1460 Tatung Co. + 9150 eHome Infrared Transceiver +1461 Staccato Communications +1462 Micro Star International + 5512 MegaStick-1 Flash Stick + 8807 DIGIVOX mini III [af9015] +1472 Huawei-3Com + 0007 Aolynk WUB300g [ZyDAS ZD1211] + 0009 Aolynk WUB320g +147a Formosa Industrial Computing, Inc. + e015 eHome Infrared Receiver + e016 eHome Infrared Receiver + e017 eHome Infrared Receiver + e018 eHome Infrared Receiver + e03a eHome Infrared Receiver + e03c eHome Infrared Receiver + e03e Infrared Receiver [IR605A/Q] +147e Upek + 1000 Biometric Touchchip/Touchstrip Fingerprint Sensor + 2016 Biometric Touchchip/Touchstrip Fingerprint Sensor +147f Hama GmbH & Co., KG +1482 Vaillant + 1005 VRD PC-Interface +1484 Elsa AG [hex] + 1746 Ecomo 19H99 Monitor + 7616 Elsa Hub +1485 Silicom + 0001 U2E + 0002 Psion Gold Port Ethernet +1487 DSP Group, Ltd. +148e EVATRONIX SA +148f Ralink Technology, Corp. + 1706 RT2500USB Wireless Adapter + 2070 RT2070 Wireless Adapter + 2570 RT2570 Wireless Adapter + 2573 RT2501/RT2573 Wireless Adapter + 2671 RT2601/RT2671 Wireless Adapter + 2770 RT2770 Wireless Adapter + 2870 RT2870 Wireless Adapter + 3070 RT2870/RT3070 Wireless Adapter + 3071 RT3071 Wireless Adapter + 3072 RT3072 Wireless Adapter + 3572 RT3572 Wireless Adapter + 9020 RT2500USB Wireless Adapter + 9021 RT2501USB Wireless Adapter +1497 Panstrong Company Ltd. +1498 Microtek International Inc. + a090 DVB-T Tuner +149a Imagination Technologies + 2107 DBX1 DSP core +14aa WideView Technology Inc. + 0001 Avermedia AverTV DVBT USB1.1 (cold) + 0002 Avermedia AverTV DVBT USB1.1 (warm) + 0201 AVermedia/Yakumo/Hama/Typhoon DVB-T USB2.0 (cold) + 0221 WT-220U DVB-T dongle + 022b WT-220U DVB-T dongle + 0301 AVermedia/Yakumo/Hama/Typhoon DVB-T USB2.0 (warm) +14ad CTK Corporation +14ae Printronix Inc. +14af ATP Electronics Inc. +14b0 StarTech.com Ltd. +14b2 Ralink Technology, Corp. + 3a95 Toshiba WUS-G06G-JT 802.11bg Wireless Adapter + 3a98 Airlink101 AWLL4130 802.11bg Wireless Adapter [Atheros AR5523] + 3c02 rt2500 802.11g WLAN + 3c05 rt2570 802.11g WLAN + 3c06 Conceptronic C300RU v1 802.11bgn Wireless Adapter [Ralink RT2870] + 3c07 802.11n adapter + 3c09 802.11n adapter + 3c22 Conceptronic C54RU 802.11bg Wireless Adapter [Ralink RT73] + 3c23 Airlink101 AWLL6080 802.11bgn Wireless Adapter [Ralink RT2870] + 3c25 DrayTek Vigor N61 802.11bgn Wireless Adapter [Ralink RT2870] + 3c27 Airlink101 AWLL6070 802.11bgn Wireless Adapter [Ralink RT2770] + 3c28 Conceptronic C300RU v2 802.11bgn Wireless Adapter [Ralink RT2770] + 3c2c Keebox W150NU 802.11bgn Wireless Adapter [Ralink RT3070] +14c0 Rockwell Automation, Inc. +14c2 Gemlight Computer, Ltd + 0250 Storage Adapter V2 + 0350 Storage Adapter V2 +14cd Super Top + 121c microSD card reader + 123a SD/MMC/RS-MMC Card Reader + 127b SDXC Reader + 6600 USB 2.0 IDE DEVICE + 6700 Card Reader + 6900 Card Reader + 8123 SD MMC Reader + 8125 SD MMC Reader +14d8 JAMER INDUSTRIES CO., LTD. +14dd Raritan Computer, Inc. +14e1 Dialogue Technology Corp. + 5000 PenMount 5000 Touch Controller +14e5 SAIN Information & Communications Co., Ltd. +14ea Planex Communications + ab10 GW-US54GZ + ab11 GU-1000T + ab13 GW-US54Mini 802.11bg +14ed Shure Inc. +14f7 TechniSat Digital GmbH + 0001 SkyStar 2 HD CI + 0002 SkyStar 2 HD CI + 0003 CableStar Combo HD CI + 0004 AirStar TeleStick 2 + 0500 DVB-PC TV Star HD +1500 Ellisys +1501 Pine-Tum Enterprise Co., Ltd. +1509 First International Computer, Inc. + 9242 eHome Infrared Transceiver +1513 medMobile + 0444 medMobile +1514 Actel + 2003 FlashPro3 Programmer + 2004 FlashPro3 Programmer + 2005 FlashPro3 Programmer +1516 CompUSA + 1603 Flash Drive + 8628 Pen Drive +1518 Cheshire Engineering Corp. + 0001 HDReye High Dynamic Range Camera + 0002 HDReye (before firmware loads) +1520 Bitwire Corp. +1524 ENE Technology Inc + 6680 UTS 6680 +1527 Silicon Portals + 0200 YAP Phone (no firmware) + 0201 YAP Phone +1529 UBIQUAM Co., Ltd. + 3100 CDMA 1xRTT USB Modem (U-100/105/200/300/520) +152d JMicron Technology Corp. / JMicron USA Technology Corp. + 2329 JM20329 SATA Bridge + 2335 ATA/ATAPI Bridge + 2336 Hard Disk Drive + 2337 ATA/ATAPI Bridge + 2338 JM20337 Hi-Speed USB to SATA & PATA Combo Bridge + 2352 ATA/ATAPI Bridge + 2509 JMS539 SuperSpeed SATA II 3.0G Bridge +152e LG (HLDS) + 2507 PL-2507 IDE Controller + e001 GSA-5120D DVD-RW +1532 Razer USA, Ltd + 0001 RZ01-020300 Optical Mouse [Diamondback] + 0003 Krait Mouse + 0007 DeathAdder Mouse + 001c RZ01-0036 Optical Gaming Mouse [Abyssus] + 0101 Copperhead Mouse + 0102 Tarantula Keyboard + 0109 Lycosa Keyboard +1546 U-Blox AG +154a Celectronic GmbH + 8180 CARD STAR/medic2 +154b PNY + 0010 USB 2.0 Flash Drive + 6545 FD Device +154d ConnectCounty Holdings Berhad +154e D&M Holdings, Inc. (Denon/Marantz) + 3000 Marantz RC9001 Remote Control +1554 Prolink Microsystems Corp. +1557 OQO + 0002 model 01 WiFi interface + 0003 model 01 Bluetooth interface + 0a80 Gobi Wireless Modem (QDL mode) + 7720 model 01+ Ethernet + 8150 model 01 Ethernet interface +1568 Sunf Pu Technology Co., Ltd +156f Quantum Corporation +1570 ALLTOP TECHNOLOGY CO., LTD. +157b Ketron SRL +157e TRENDnet + 3006 TEW-444UB EU + 3007 TEW-444UB EU (no firmware) + 300a TEW-429UB 802.11bg + 300b TEW-429UB 802.11bg + 300d TEW-429UB C1 802.11bg + 3204 Allnet ALL0298 v2 802.11bg + 3205 Allnet ALL0283 [AR5523] + 3206 Allnet ALL0283 [AR5523](no firmware) +1582 Fiberline + 6003 WL-430U 802.11bg +1587 SMA Technologie AG +158d Oakley Inc. +158e JDS Uniphase Corporation (JDSU) + 0820 SmartPocket Class Device +1598 Kunshan Guoji Electronics Co., Ltd. +15a2 Freescale Semiconductor, Inc. +15a4 Afatech Technologies, Inc. + 1000 AF9015/AF9035 DVB-T stick + 1001 AF9015/AF9035 DVB-T stick + 1336 SDHC/MicroSD/MMC/MS/M2/CF/XD Flash Card Reader + 9015 AF9015 DVB-T USB2.0 stick + 9016 AF9015 DVB-T USB2.0 stick +15a8 Teams Power Limited +15a9 Gemtek + 0004 WUBR177G + 0006 Wireless 11n USB Adapter + 0010 802.11n USB Wireless Card + 0012 WUBR-208N 802.11abgn Wireless Adapter [Ralink RT2870] +15aa Gearway Electronics (Dong Guan) Co., Ltd. +15ad VMware Inc. +15ba Olimex Ltd. + 0003 OpenOCD JTAG + 0004 OpenOCD JTAG TINY +15c0 XL Imaging + 0001 2M pixel Microscope Camera + 0002 3M pixel Microscope Camera + 0003 1.3M pixel Microscope Camera (mono) + 0004 1.3M pixel Microscope Camera (colour) + 0005 3M pixel Microscope Camera (Mk 2) + 0006 2M pixel Microscope Camera (with capture button) + 0007 3M pixel Microscope Camera (with capture button) + 0008 1.3M pixel Microscope Camera (colour, with capture button) + 0009 1.3M pixel Microscope Camera (colour, with capture button) + 000a 2M pixel Microscope Camera (Mk 2) + 0010 1.3M pixel "Tinycam" + 0101 3M pixel Microscope Camera +15c2 SoundGraph Inc. + 0036 LC16M VFD Display/IR Receiver + 0038 GD01 MX VFD Display/IR Receiver + ffda iMON PAD Remote Controller + ffdc iMON PAD Remote Controller +15c5 Advance Multimedia Internet Technology Inc. (AMIT) + 0008 WL532U 802.11g Adapter +15c6 Laboratoires MXM + 1000 DigistimSP (cold) + 1001 DigistimSP (warm) + 1002 DigimapSP USB (cold) + 1003 DigimapSP USB (warm) +15c8 KTF Technologies + 3201 EVER EV-W100/EV-W250 +15c9 D-Box Technologies +15ca Textech International Ltd. + 00c3 Mini Optical Mouse + 0101 MIDI Interface cable + 1806 MIDI Interface cable +15d5 Coulomb Electronics Ltd. +15d9 Trust International B.V. + 0a33 Optical Mouse + 0a37 Mouse + 0a41 MI-2540D [Optical mouse] + 0a4c USB+PS/2 Optical Mouse +15dc Hynix Semiconductor Inc. +15e0 Seong Ji Industrial Co., Ltd. +15e1 RSA + 2007 RSA SecurID (R) Authenticator +15e8 SohoWare + 9100 NUB100 Ethernet [pegasus] + 9110 10/100 USB Ethernet +15e9 Pacific Digital Corp. + 04ce MemoryFrame MF-570 + 1968 MemoryFrame MF-570 + 1969 Digital Frame +15ec Belcarra Technologies Corp. +15f4 HanfTek + 0001 HanfTek UMT-010 USB2.0 DVB-T (cold) + 0025 HanfTek UMT-010 USB2.0 DVB-T (warm) +1604 Tascam + 8000 US-428 Audio/Midi Controller (without fw) + 8001 US-428 Audio/Midi Controller + 8004 US-224 Audio/Midi Controller (without fw) + 8005 US-224 Audio/Midi Controller + 8006 US-122 Audio/Midi Interface (without fw) + 8007 US-122 Audio/Midi Interface +1606 Umax + 0002 Astra 1236U Scanner + 0010 Astra 1220U + 0030 Astra 1600U/2000U + 0050 Scanner + 0060 Astra 3400/3450 + 0070 Astra 4400/4450 + 0130 Astra 2100U + 0160 Astra 5400U + 0170 Uniscan D50 + 0230 Astra 2200/2200SU + 0350 Astra 4800/4850 Scanner + 1030 Astra 4000U + 1220 Genesys Logic Scanner Controller NT5.0 + 2010 AstraCam Digital Camera + 2020 AstraCam 1000 + 2030 AstraCam 1800 Digital Camera +1608 Inside Out Networks [hex] + 0001 EdgePort/4 Serial Port + 0002 Edgeport/8 + 0003 Rapidport/4 + 0004 Edgeport/4 + 0005 Edgeport/2 + 0006 Edgeport/4i + 0007 Edgeport/2i + 0008 Edgeport/8 + 000c Edgeport/421 + 000d Edgeport/21 + 000e Edgeport/4 + 000f Edgeport/8 + 0010 Edgeport/2 + 0011 Edgeport/4 + 0012 Edgeport/416 + 0014 Edgeport/8i + 0018 Edgeport/412 + 0019 Edgeport/412 + 001a Edgeport/2+2i + 0101 Edgeport/4 + 0105 Edgeport/2 + 0106 Edgeport/4i + 0107 Edgeport/2i + 010c Edgeport/421 + 010d Edgeport/21 + 0110 Edgeport/2 + 0111 Edgeport/4 + 0112 Edgeport/416 + 0114 Edgeport/8i + 0201 Edgeport/4 + 0203 Rapidport/4 + 0204 Edgeport/4 + 0205 Edgeport/2 + 0206 Edgeport/4i + 0207 Edgeport/2i + 020c Edgeport/421 + 020d Edgeport/21 + 020e Edgeport/4 + 020f Edgeport/8 + 0210 Edgeport/2 + 0211 Edgeport/4 + 0212 Edgeport/416 + 0214 Edgeport/8i + 0215 Edgeport/1 + 0216 EPOS/44 + 0217 Edgeport/42 + 021a Edgeport/2+2i + 021b Edgeport/2c + 021c Edgeport/221c + 021d Edgeport/22c + 021e Edgeport/21c + 021f Edgeport/62 + 0240 Edgeport/1 + 0241 Edgeport/1i + 0242 Edgeport/4s + 0243 Edgeport/8s + 0244 Edgeport/8 + 0245 Edgeport/22c + 0301 Watchport/P + 0302 Watchport/M + 0303 Watchport/W + 0304 Watchport/T + 0305 Watchport/H + 0306 Watchport/E + 0307 Watchport/L + 0308 Watchport/R + 0309 Watchport/A + 030a Watchport/D + 030b Watchport/D + 030c Power Management Port + 030e Power Management Port + 030f Watchport/G + 0310 Watchport/Tc + 0311 Watchport/Hc + 1403 MultiTech Systems MT4X56 Modem + 1a17 Agilent Technologies (E6473) +160a VIA Technologies, Inc. + 3184 VIA VNT-6656 [WiFi 802.11b/g USB Dongle] +1614 Amoi Electronics + 0404 WMA9109 UMTS Phone + 0600 Vodafone VDA GPS / Toschiba Protege G710 + 0804 WP-S1 Phone +1619 L & K Precision Technology Co., Ltd. +1621 Wionics Research +1628 Stonestreet One, Inc. +162a Airgo Networks Inc. +162f WiQuest Communications, Inc. +1630 2Wire, Inc. + 0005 802.11g Wireless Adapter [Intersil ISL3886] + ff81 802.11b Wireless Adapter [Lucent/Agere Hermes I] +1631 Good Way Technology + 6200 GWUSB2E + c019 RT2573 +1645 Cross Match Technologies GmbH + 0001 1S Serial Port + 0002 2S Serial Port + 0003 1S25 Serial Port + 0004 4S Serial Port + 0005 E45 Ethernet [klsi] + 0006 Parallel Port + 0007 U1-SC25 SCSI + 0008 Ethernet + 0016 Bi-directional to Parallel Printer Converter + 0080 1 port to Serial Converter + 0081 1 port to Serial Converter + 0093 1S9 Serial Port + 8000 EZ-USB + 8001 1 port to Serial + 8002 2x Serial Port + 8003 1 port to Serial + 8004 2U4S serial/usb hub + 8005 Ethernet + 8080 1 port to Serial + 8081 1 port to Serial + 8093 PortGear Serial Port +1649 SofTec Microsystems + 0102 uDART In-Circuit Debugger + 0200 SpYder USBSPYDER08 +164a ChipX +164c Matrix Vision GmbH + 0101 mvBlueFOX camera (no firmware) + 0103 mvBlueFOX camera +1657 Struck Innovative Systeme GmbH + 3150 SIS3150 USB2.0 to VME interface +165b Frontier Design Group + 8101 Tranzport Control Surface + fad1 Alphatrack Control Surface +1660 Creatix Polymedia GmbH +1668 Actiontec Electronics, Inc. [hex] + 0009 Gateway + 0333 Modem + 0358 InternetPhoneWizard + 0405 Gateway + 0408 Prism2.5 802.11b Adapter + 0413 Gateway + 0421 Prism2.5 802.11b Adapter + 0441 IBM Integrated Bluetooth II + 0500 BTM200B BlueTooth Adapter + 1050 802UIG-1 802.11g Wireless Mini Adapter [Intersil ISL3887] + 1200 802AIN Wireless N Network Adapter [Atheros AR9001U] + 1441 IBM Integrated Bluetooth II + 2441 BMDC-2 IBM Bluetooth III w.56k + 3441 IBM Integrated Bluetooth III + 6010 Gateway + 6097 802.11b Wireless Adapter + 6106 ROPEX FreeLan 802.11b + 7605 UAT1 Wireless Ethernet Adapter +1669 PiKRON Ltd. [hex] + 1001 uLan2USB Converter - PS1 protocol +1677 China Huada Integrated Circuit Design (Group) Co., Ltd. (CIDC Group) + 0103 Token +1679 Total Phase + 2001 Beagle Protocol Analyzer + 2002 Cheetah SPI Host Adapter +1680 Golden Bridge Electech Inc. + a332 DVB-T Dongle [RTL2832U] +1681 Prevo Technologies, Inc. + 0001 Tuner's Dashboard +1682 Maxwise Production Enterprise Ltd. +1684 Godspeed Computer Corp. +1685 Delock + 0200 Infrared adapter +1686 ZOOM Corporation + 0045 H4 Digital Recorder +1687 Kingmax Digital Inc. + 5289 FlashDisk + 6211 FlashDisk +1688 Saab AB +168c Atheros Communications + 0001 AR5523 + 0002 AR5523 (no firmware) +1690 Askey Computer Corp. [hex] + 0101 Creative Modem Blaster DE5670 + 0102 V1456 VQE-R2 Modem [conexant] + 0103 1456 VQE-R3 Modem [conexant] + 0104 HCF V90 Data Fax RTAD Modem + 0107 HCF V.90 Data,Fax,RTAD Modem + 0109 MagicXpress V.90 Pocket Modem [conexant] + 0203 Voyager ADSL Modem Loader + 0204 Voyager ADSL Modem + 0205 DSL Modem + 0206 GlobeSpan ADSL WAN Modem + 0208 DSL Modem + 0209 Voyager 100 ADSL Modem + 0211 Globespan Virata ADSL LAN Modem + 0212 DSL Modem + 0213 HM121d DSL Modem + 0214 HM121d DSL Modem + 0215 Voyager 105 ADSL Modem + 0701 WLAN + 0710 SMCWUSBT-G + 0711 SMCWUSBT-G (no firmware) + 0712 AR5523 + 0713 AR5523 (no firmware) + 0715 Name: Voyager 1055 Laptop 802.11g Adapter [Broadcom 4320] + 0722 RT2573 + 0726 Wi-Fi Wireless LAN Adapter + 0740 802.11n Wireless LAN Card + 0901 Voyager 205 ADSL Router +1696 Hitachi Video and Information System, Inc. +1697 VTec Test, Inc. +16a5 Shenzhen Zhengerya Cable Co., Ltd. +16a6 Unigraf + 3000 VTG-3xxx Video Test Generator family + 4000 VTG-4xxx Video Test Generator family + 5000 VTG-5xxx Video Test Generator family + 5001 VTG-5xxx Special (update) mode of VTG-5xxx family +16ab Global Sun Technology + 7801 AR5523 + 7802 AR5523 (no firmware) + 7811 AR5523 + 7812 AR5523 (no firmware) +16ac Dongguan ChingLung Wire & Cable Co., Ltd. +16b4 iStation + 0801 U43 +16b5 Persentec, Inc. + 0002 Otto driving companion +16c0 VOTI + 03e8 free for internal lab use 1000 + 03e9 free for internal lab use 1001 + 03ea free for internal lab use 1002 + 03eb free for internal lab use 1003 + 03ec free for internal lab use 1004 + 03ed free for internal lab use 1005 + 03ee free for internal lab use 1006 + 03ef free for internal lab use 1007 + 03f0 free for internal lab use 1008 + 03f1 free for internal lab use 1009 + 05dc shared ID for use with libusb + 05dd BlackcatUSB2 + 05e1 CDC-ACM class devices (modems) + 05e4 MIDI class devices + 076b OpenPCD 13.56MHz RFID Reader + 076c OpenPICC 13.56MHz RFID Simulator (native) + 08ac OpenBeacon USB stick + 08ca Alpermann+Velte Universal Display + 08cb Alpermann+Velte Studio Clock + 08cc Alpermann+Velte SAM7S MT Boot Loader + 08cd Alpermann+Velte SAM7X MT Boot Loader + 27da Mouse + 27db Keyboard + 27dc Joystick + 27dd CDC-ACM class devices (modems) + 27de MIDI class devices +16ca Wireless Cables, Inc. + 1502 Bluetooth Dongle +16cc silex technology, Inc. +16d0 GrauTec + 054b ReelBox OLED Display (external) +16d3 Frontline Test Equipment, Inc. +16d5 AnyDATA Corporation + 6202 CDMA/UMTS/GPRS modem + 6501 CDMA 2000 1xRTT/EV-DO Modem + 6502 CDMA/UMTS/GPRS modem +16d6 JABLOCOM s.r.o. + 8000 GDP-04 desktop phone + 8001 EYE-02 + 8003 GDP-04 modem + 8004 Bootloader + 8005 GDP-04i + 8007 BTP-06 modem +16d8 CMOTECH Co., Ltd. + 5141 CMOTECH CDMA Technologies modem + 5533 CCU-550 CDMA EV-DO modem + 5543 CDMA 2000 1xRTT/1xEVDO modem + 6280 CMOTECH CDMA Technologies modem + 6803 CNU-680 CDMA EV-DO modem + 8001 Gobi 2000 Wireless Modem (QDL mode) + 8002 Gobi 2000 Wireless Modem +16dc Wiener, Plein & Baus + 0001 CC + 000b VM +16df King Billion Electronics Co., Ltd. +16f0 GN ReSound A/S + 0003 Airlink Wireless Programming Interface +16f5 Futurelogic Inc. +1706 BlueView Technologies, Inc. +1707 ARTIMI +170b Swissonic + 0011 MIDI-USB 1x1 +170d Avnera +1725 Vitesse Semiconductor +1726 Axesstel, Inc. + 1000 wireless modem + 2000 wireless modem + 3000 wireless modem +172f Waltop International Corp. + 0022 Tablet + 0024 Tablet + 0025 Tablet + 0026 Tablet + 0031 Slim Tablet 12.1" + 0032 Slim Tablet 5.8" + 0034 Slim Tablet 12.1" + 0038 Genius G-Pen F509 + 0500 Media Tablet 14.1" + 0501 Media Tablet 10.6" + 0502 Sirius Battery Free Tablet +1733 Cellink Technology Co., Ltd + 0101 RF Wireless Optical Mouse OP-701 +1736 CANON IMAGING SYSTEM TECHNOLOGIES INC. +1737 Linksys + 0039 USB1000 + 0070 WUSB100 v1 RangePlus Wireless Network Adapter [Ralink RT2870] + 0071 WUSB600N v1 Dual-Band Wireless-N Network Adapter [Ralink RT2870] + 0073 WUSB54GC v2 802.11g Adapter [Realtek RTL8187B] + 0075 WUSB54GSC v2 802.11g Adapter + 0077 WUSB54GC v3 802.11g Adapter [Ralink RT2070L] + 0078 WUSB100 v2 RangePlus Wireless Network Adapter [Ralink RT3070] + 0079 WUSB600N v2 Dual-Band Wireless-N Network Adapter [Ralink RT3572] +1740 Senao + 0605 LevelOne WUA-0605 N_Max Wireless USB Adapter + 0615 LevelOne WUA-0615 N_Max Wireless USB Adapter + 2000 NUB-8301 802.11bg + 3701 EUB-3701 EXT 802.11g Wireless Adapter [Ralink RT2571W] + 9701 EnGenius 802.11n Wireless USB Adapter + 9702 EnGenius 802.11n Wireless USB Adapter + 9703 EnGenius 802.11n Wireless USB Adapter + 9705 EnGenius 802.11n Wireless USB Adapter + 9706 EUB9706 802.11n Wireless Adapter [Ralink RT3072] + 9801 EUB9801 802.11abgn Wireless Adapter [Ralink RT3572] +1743 General Atomics +174c ASMedia Technology Inc. +174f Syntek + 1105 SM-MS/Pro-MMC-XD Card Reader + 1403 Integrated Webcam + 1404 USB Camera device, 1.3 MPixel Web Cam + 5212 USB 2.0 UVC PC Camera + 5a11 PC Camera + 5a31 Sonix USB 2.0 Camera + 5a35 Sonix 1.3MPixel USB 2.0 Camera + 6a31 Web Cam - Asus A8J, F3S, F5R, VX2S, V1S + 6a33 Web Cam - Asus F3SA, F9J, F9S + 6a51 2.0MPixel Web Cam - Asus Z96J, Z96S, S96S + 6a54 Web Cam + 6d51 2.0Mpixel Web Cam - Eurocom D900C + 8a12 Syntek 0.3MPixel USB 2.0 UVC PC Camera + 8a33 Syntek USB 2.0 UVC PC Camera + a311 1.3MPixel Web Cam - Asus A3A, A6J, A6K, A6M, A6R, A6T, A6V, A7T, A7sv, A7U + a312 1.3MPixel Web Cam + a821 Web Cam - Packard Bell BU45, PB Easynote MX66-208W + aa11 Web Cam +1753 GERTEC Telecomunicacoes Ltda. + c901 PPC900 Pinpad Terminal +1759 LucidPort Technology, Inc. +1761 ASUSTek Computer, Inc. (wrong ID) + 0b05 802.11n Network Adapter (wrong ID - swapped vendor and device) +1772 System Level Solutions, Inc. +1776 Arowana + 501c 300K CMOS Camera +177f Sweex + 0153 LW153 802.11n Adapter [ralink rt3070] + 0313 LW313 802.11n Adapter [ralink rt2770 + rt2720] +1781 Multiple Vendors + 083e MetaGeek Wi-Spy + 083f MetaGeek Wi-Spy 2.4x + 0938 Iguanaworks USB IR Transceiver + 0c9f USBtiny +1782 Spreadtrum Communications Inc. +1784 TopSeed Technology Corp. + 0001 eHome Infrared Transceiver + 0004 RF Combo Device + 0006 eHome Infrared Transceiver + 0007 eHome Infrared Transceiver + 0008 eHome Infrared Transceiver + 000a eHome Infrared Transceiver +1787 ATI AIB +1788 ShenZhen Litkconn Technology Co., Ltd. +1796 Printrex, Inc. +1797 JALCO CO., LTD. +1799 Belkin Components + 7051 F5D7051 802.11g Adapter v1000 [Broadcom 4320] +179d Ricavision International, Inc. + 0010 Internal Infrared Transceiver +17a0 Samson Technologies Corp. + 0001 C01U condenser microphone + 0002 Q1U dynamic microphone + 0100 C03U multi-pattern microphone + 0101 UB1 boundary microphone + 0200 StudioDock monitors (internal hub) + 0201 StudioDock monitors (audio) + 0301 Q2U handheld microphone with XLR + 0302 GoMic compact condenser microphone +17a4 Concept2 + 0001 Performance Monitor 3 + 0002 Performance Monitor 4 +17a5 Advanced Connection Technology Inc. +17a7 MICOMSOFT CO., LTD. +17b3 Grey Innovation + 0004 Linux-USB Midi Gadget +17c3 Singim International Corp. +17cc Native Instruments + 041c Audio 2 DJ + 0808 Maschine Controller + 0815 Audio Kontrol 1 + 0839 Audio 4 DJ + 0d8d Guitarrig Mobile + 1915 Session I/O + 1940 RigKontrol3 + 1969 RigKontrol2 + 1978 Audio 8 DJ + 2305 Traktor Kontrol X1 + 4711 Kore Controller + 4712 Kore Controller 2 + baff Traktor Kontrol S4 +17cf Hip Hing Cable & Plug Mfy. Ltd. +17d0 Sanford L.P. +17d3 Korea Techtron Co., Ltd. +17e9 Newnham Research + 0051 USB VGA Adaptor +17eb Cornice, Inc. +17ef Lenovo + 1003 Integrated Smart Card Reader + 1004 Integrated Webcam + 100a ThinkPad Mini Dock Plus Series 3 + 3815 ChipsBnk 2GB USB Stick + 4802 Lenovo Vc0323+MI1310_SOC Camera + 4807 UVC Camera + 480c Integrated Webcam + 480d Integrated Webcam [R5U877] + 480e Integrated Webcam [R5U877] + 480f Integrated Webcam [R5U877] + 4810 Integrated Webcam [R5U877] + 4811 Integrated Webcam [R5U877] + 4812 Integrated Webcam [R5U877] + 4813 Integrated Webcam [R5U877] + 4814 Integrated Webcam [R5U877] + 4815 Integrated Webcam [R5U877] + 481c Integrated Webcam + 6009 ThinkPad Keyboard with TrackPoint +17f5 K.K. Rocky +17f6 Unicomp, Inc + 0709 Model M Keyboard +1809 Advantech + 4761 USB-4761 Portable Data Acquisition Module +1822 Twinhan + 3201 VisionDTV USB-Ter/HAMA USB DVB-T device cold + 3202 VisionDTV USB-Ter/HAMA USB DVB-T device warm +1831 Gwo Jinn Industries Co., Ltd. +1832 Huizhou Shenghua Industrial Co., Ltd. +183d VIVOphone + 0010 VoiceKey +1843 Vaisala +1849 ASRock Incorporation +1852 GYROCOM C&C Co., LTD + 7922 Audiotrak DR.DAC2 DX +1854 Memory Devices Ltd. +185b Compro + 3020 K100 Infrared Receiver + 3082 K100 Infrared Receiver v2 + d000 Compro Videomate DVB-U2000 - DVB-T USB cold + d001 Compro Videomate DVB-U2000 - DVB-T USB warm +1861 Tech Technology Industrial Company +1862 Teridian Semiconductor Corp. +1870 Nexio Co., Ltd + 0001 iNexio Touchscreen controller +1871 Aveo Technology Corp. + 0d01 USB2.0 Camera +187c Alienware Corporation + 0600 Dual Compatible Game Pad +187f Siano Mobile Silicon + 0010 Stallar Board + 0100 Stallar Board + 0200 Nova A + 0201 Nova B + 0202 Nice + 0300 Vega + 0301 VeNice +1892 Vast Technologies, Inc. +1894 Topseed + 5632 Atek Tote Remote + 5641 TSAM-004 Presentation Remote +1897 Evertop Wire Cable Co. +18a5 Verbatim, Ltd + 0214 Portable Hard Drive + 0216 External Hard Drive + 0218 External Hard Drive +18b1 Petalynx + 0037 Maxter Remote Control +18b4 e3C Technologies + 1001 DUTV007 + 1002 EC168 (v5) based USB DVB-T receiver + 1689 DUTV009 + fffa EC168 (v2) based USB DVB-T receiver + fffb EC168 (v3) based USB DVB-T receiver +18b6 Mikkon Technology Limited +18b7 Zotek Electronic Co., Ltd. +18c5 AMIT Technology, Inc. + 0002 CG-WLUSB2GO + 0008 CG-WLUSB2GNR Corega Wireless USB Adapter + 0012 CG-WLUSB10 Corega Wireless USB Adapter +18cd Ecamm + cafe Pico iMage +18d1 Google Inc. + 4e11 Nexus One + 4e12 Nexus One (debug) + 4e13 Nexus One (tether) + 4e21 Nexus S + 4e22 Nexus S (debug) +18d5 Starline International Group Limited +18d9 Kaba + 01a0 B-Net 91 07 +18dd Planon System Solutions Inc. + 1000 DocuPen RC800 +18e3 Fitipower Integrated Technology Inc + 7102 Multi Card Reader (Internal) + 9101 All-in-1 Card Reader + 9102 Multi Card Reader + 9512 Webcam +18e8 Qcom + 6196 RT2573 + 6229 RT2573 + 6232 Wireless 802.11g 54Mbps Network Adapter [RTL8187] +18ea Matrox Graphics, Inc. + 0002 DualHead2Go [Analog Edition] + 0004 TripleHead2Go [Digital Edition] +18ec Arkmicro Technologies Inc. + 3118 USB to IrDA adapter [ARK3116T] + 3188 ARK3188 UVC Webcam +18fd FineArch Inc. +1908 GEMBIRD + 1320 PhotoFrame PF-15-1 +190d Motorola GSG +1914 Alco Digital Devices Limited +1915 Nordic Semiconductor ASA + 2233 Linksys WUSB11 v2.8 802.11b Adapter [Atmel AT76C505] + 2234 Linksys WUSB54G v1 OEM 802.11g Adapter [Intersil ISL3886] + 2235 Linksys WUSB54GP v1 OEM 802.11g Adapter [Intersil ISL3886] + 2236 Linksys WUSB11 v3.0 802.11b Adapter [Intersil PRISM 3] +1926 NextWindow + 0003 1900 HID Touchscreen + 0006 1950 HID Touchscreen + 0064 1950 HID Touchscreen + 0065 1950 HID Touchscreen + 0066 1950 HID Touchscreen + 0067 1950 HID Touchscreen + 0068 1950 HID Touchscreen + 0069 1950 HID Touchscreen + 0071 1950 HID Touchscreen + 0072 1950 HID Touchscreen + 0073 1950 HID Touchscreen + 0074 1950 HID Touchscreen + 0075 1950 HID Touchscreen + 0076 1950 HID Touchscreen + 0077 1950 HID Touchscreen + 0078 1950 HID Touchscreen + 0079 1950 HID Touchscreen + 007a 1950 HID Touchscreen + 007e 1950 HID Touchscreen + 007f 1950 HID Touchscreen + 0080 1950 HID Touchscreen + 0081 1950 HID Touchscreen + 0082 1950 HID Touchscreen + 0083 1950 HID Touchscreen + 0084 1950 HID Touchscreen + 0085 1950 HID Touchscreen + 0086 1950 HID Touchscreen + 0087 1950 HID Touchscreen +192f Avago Technologies, Pte. + 0000 Mouse +1930 Shenzhen Xianhe Technology Co., Ltd. +1931 Ningbo Broad Telecommunication Co., Ltd. +1934 Feature Integration Technology Inc. (Fintek) + 0602 F71610 or F71612 Consumer Infrared Receiver/Transceiver + 0702 Integrated Consumer Infrared Receiver/Transceiver + 5168 F71610A or F71612A Consumer Infrared Receiver/Transceiver +1941 Dream Link + 8021 WH1080 Weather Station / USB Missile Launcher +1943 Sensoray Co., Inc. + 2250 Model 2250 MPEG and JPEG Capture Card + 2253 Model 2253 Audio/Video Codec Card + 2255 Model 2255 4 Channel Capture Card + 2257 Model 2257 4 Channel Capture Card + a250 Model 2250 MPEG and JPEG Capture Card (cold) + a253 Model 2253 Audio/Video Codec Card (cold) +1949 Lab126 + 0002 Amazon Kindle + 0004 Amazon Kindle 3 +1951 Hyperstone AG +1953 Ironkey Inc. +1954 Radiient Technologies +195d Itron Technology iONE + 7002 Libra-Q11 IR remote + 7006 Libra-Q26 / 1.0 Remote + 7777 Scorpius wireless keyboard + 7779 Scorpius-P20MT +1967 CASIO HITACHI Mobile Communications Co., Ltd. +196b Wispro Technology Inc. +1970 Dane-Elec Corp. USA +1975 Dongguan Guneetal Wire & Cable Co., Ltd. +1976 Chipsbrand Microelectronics (HK) Co., Ltd. +1977 T-Logic + 0111 TL203 MP3 Player and Voice Recorder +1989 Nuconn Technology Corp. +198f Beceem Communications Inc. + 0210 BCS200 WiMAX Adapter +1990 Acron Precision Industrial Co., Ltd. +1995 Trillium Technology Pty. Ltd. + 3202 REC-ADPT-USB (recorder) + 3203 REC-A-ADPT-USB (recorder) +199e The Imaging Source Europe GmbH + 8101 DFx 21BU04 Camera +199f Benica Corporation +19a8 Biforst Technology Inc. +19ab Bodelin + 1000 ProScope HR +19af S Life + 6611 Celestia VoIP Phone +19b2 Batronix + 0010 BX32 Batupo + 0011 BX32P Barlino + 0012 BX40 Bagero + 0013 BX48 Batego +19b4 Celestron + 0002 SkyScout Personal Planetarium + 0101 Handheld Digital Microscope 44302 +19b5 B & W Group +19b6 Infotech Logistic, LLC +19b9 Data Robotics + 8d20 Drobo Elite +19ca Mindtribe + 0001 Sandio 3D HID Mouse +19cf Parrot SA +19d2 ONDA Communication S.p.A. + 0002 ET502HS/MT505UP ZTE MF632 + 0007 ZTE TU25 WiMAX Adapter [Beceem BCS200] + 0031 ZTE MF110/MF636 + 0063 ZTE K3565-Z HSDPA + 0064 ZTE MF627 AU + 0083 ZTE MF190 + 0103 ZTE MF112 + 2000 ZTE MF627/MF628/MF628+/MF636+ HSDPA/HSUPA + fff2 Gobi Wireless Modem (QDL mode) + fff3 Gobi Wireless Modem +19e1 WeiDuan Electronic Accessory (S.Z.) Co., Ltd. +19e8 Industrial Technology Research Institute +19ef Pak Heng Technology (Shenzhen) Co., Ltd. +19f7 RODE Microphones + 0001 Podcaster +19fa Gampaq Co.Ltd + 0703 Steering Wheel +19ff Dynex + 0102 1.3MP Webcam + 0201 Rocketfish Wireless 2.4G Laser Mouse +1a08 Bellwood International, Inc. +1a0a USB-IF non-workshop + badd USB OTG Compliance test device +1a12 KES Co., Ltd. +1a25 Amphenol East Asia Ltd. +1a2a Seagate Branded Solutions +1a32 Quanta Microsystems, Inc. + 0304 802.11n Wireless LAN Card +1a36 Biwin Technology Ltd. +1a40 TERMINUS TECHNOLOGY INC. + 0101 USB-2.0 4-Port HUB +1a41 Action Electronics Co., Ltd. +1a44 VASCO Data Security International + 0001 Digipass 905 SmartCard Reader +1a4a Silicon Image +1a4b SafeBoot International B.V. +1a61 Abbott Diabetes Care +1a6a Spansion Inc. +1a6d SamYoung Electronics Co., Ltd +1a6e Global Unichip Corp. +1a6f Sagem Orga GmbH +1a79 Bayer Health Care LLC +1a7b Lumberg Connect GmbH & Co. KG +1a7c Evoluent + 0068 VerticalMouse 3 + 0168 VerticalMouse 3 Wireless + 0191 VerticalMouse 4 +1a86 QinHeng Electronics + 5523 CH341 in serial mode, usb to serial port converter + 5584 CH341 in parallel mode, usb to printer port converter + 7523 HL-340 USB-Serial adapter + 752d CH345 MIDI adapter + 7584 CH340S + e008 HID-based USB-serial converter, full-speed, similar to HE2325U +1a89 Dynalith Systems Co., Ltd. +1a8b SGS Taiwan Ltd. +1a8d BandRich, Inc. + 1002 BandLuxe 3.5G HSDPA Adapter + 1009 BandLuxe 3.5G HSPA Adapter +1a90 Corsair Voyager GT 16GB +1a98 Leica Camera AG +1aa4 Data Drive Thru, Inc. +1aa5 UBeacon Technologies, Inc. +1aa6 eFortune Technology Corp. +1acb Salcomp Plc +1ad1 Desay Wire Co., Ltd. +1ae4 ic-design Reinhard Gottinger GmbH +1ae7 X-TENSIONS + 0381 VS-DVB-T 380U (af9015 based) + 2001 SpeedLink SL-6825 +1aed High Top Precision Electronic Co., Ltd. +1aef Conntech Electronic (Suzhou) Corporation +1b04 Meilhaus Electronic GmBH + 0630 ME-630 + 0940 ME-94 + 0950 ME-95 + 0960 ME-96 + 1000 ME-1000 + 100a ME-1000 + 100b ME-1000 + 1400 ME-1400 + 140a ME-1400A + 140b ME-1400B + 140c ME-1400C + 140d ME-1400D + 140e ME-1400E + 14ea ME-1400EA + 14eb ME-1400EB + 1604 ME-1600/4U + 1608 ME-1600/8U + 160c ME-1600/12U + 160f ME-1600/16U + 168f ME-1600/16U8I + 4610 ME-4610 + 4650 ME-4650 + 4660 ME-4660 + 4661 ME-4660I + 4662 ME-4660 + 4663 ME-4660I + 4670 ME-4670 + 4671 ME-4670I + 4672 ME-4670S + 4673 ME-4670IS + 4680 ME-4680 + 4681 ME-4680I + 4682 ME-4680S + 4683 ME-4680IS + 6004 ME-6000/4 + 6008 ME-6000/8 + 600f ME-6000/16 + 6014 ME-6000I/4 + 6018 ME-6000I/8 + 601f ME-6000I/16 + 6034 ME-6000ISLE/4 + 6038 ME-6000ISLE/8 + 603f ME-6000ISLE/16 + 6044 ME-6000/4/DIO + 6048 ME-6000/8/DIO + 604f ME-6000/16/DIO + 6054 ME-6000I/4/DIO + 6058 ME-6000I/8/DIO + 605f ME-6000I/16/DIO + 6074 ME-6000ISLE/4/DIO + 6078 ME-6000ISLE/8/DIO + 607f ME-6000ISLE/16/DIO + 6104 ME-6100/4 + 6108 ME-6100/8 + 610f ME-6100/16 + 6114 ME-6100I/4 + 6118 ME-6100I/8 + 611f ME-6100I/16 + 6134 ME-6100ISLE/4 + 6138 ME-6100ISLE/8 + 613f ME-6100ISLE/16 + 6144 ME-6100/4/DIO + 6148 ME-6100/8/DIO + 614f ME-6100/16/DIO + 6154 ME-6100I/4/DIO + 6158 ME-6100I/8/DIO + 615f ME-6100I/16/DIO + 6174 ME-6100ISLE/4/DIO + 6178 ME-6100ISLE/8/DIO + 617f ME-6100ISLE/16/DIO + 6259 ME-6200I/9/DIO + 6359 ME-6300I/9/DIO + 810a ME-8100A + 810b ME-8100B + 820a ME-8200A + 820b ME-8200B +1b20 MStar Semiconductor, Inc. +1b22 WiLinx Corp. +1b26 Cellex Power Products, Inc. +1b27 Current Electronics Inc. +1b28 NAVIsis Inc. +1b32 Ugobe Life Forms, Inc. + 0064 Pleo robotic dinosaur +1b36 ViXS Systems, Inc. +1b3b iPassion Technology Inc. + 2933 PC Camera/Webcam controller + 2935 PC Camera/Webcam controller + 2936 PC Camera/Webcam controller + 2937 PC Camera/Webcam controller + 2938 PC Camera/Webcam controller + 2939 PC Camera/Webcam controller + 2950 PC Camera/Webcam controller + 2951 PC Camera/Webcam controller + 2952 PC Camera/Webcam controller + 2953 PC Camera/Webcam controller + 2955 PC Camera/Webcam controller + 2956 PC Camera/Webcam controller + 2957 PC Camera/Webcam controller + 2958 PC Camera/Webcam controller + 2959 PC Camera/Webcam controller + 2960 PC Camera/Webcam controller + 2961 PC Camera/Webcam controller + 2962 PC Camera/Webcam controller + 2963 PC Camera/Webcam controller + 2965 PC Camera/Webcam controller + 2966 PC Camera/Webcam controller + 2967 PC Camera/Webcam controller + 2968 PC Camera/Webcam controller + 2969 PC Camera/Webcam controller +1b3f Generalplus Technology Inc. +1b47 Energizer Holdings, Inc. + 0001 CHUSB Duo Charger (NiMH AA/AAA USB smart charger) +1b48 Plastron Precision Co., Ltd. +1b59 K.S. Terminals Inc. +1b5a Chao Zhou Kai Yuan Electric Co., Ltd. +1b65 The Hong Kong Standards and Testing Centre Ltd. +1b72 ATERGI TECHNOLOGY CO., LTD. +1b73 Fresco Logic + 1000 xHC1 Controller +1b75 Ovislink Corp. + 3072 AirLive WN-360USB adapter +1b76 Legend Silicon Corp. +1b80 Afatech + c810 MC810 [af9015] + d393 DVB-T receiver [RTL2832U] + d396 UB396-T [RTL2832U] + d397 DVB-T receiver [RTL2832U] + d398 DVB-T receiver [RTL2832U] + d700 FM Radio SnapMusic Mobile 700 (FM700) + e383 DVB-T UB383-T [af9015] + e385 DVB-T UB385-T [af9015] + e386 DVB-T UB385-T [af9015] + e39a DVB-T395U [af9015] + e39b DVB-T395U [af9015] + e409 IT9137FN Dual DVB-T [KWorld UB499-2T] +1b86 Dongguan Guanshang Electronics Co., Ltd. +1b88 ShenMing Electron (Dong Guan) Co., Ltd. +1b8c Altium Limited +1b8d e-MOVE Technology Co., Ltd. +1b8e Amlogic, Inc. +1b8f MA LABS, Inc. +1b96 N-Trig + 0001 Duosense Transparent Electromagnetic Digitizer +1b98 YMax Communications Corp. +1b99 Shenzhen Yuanchuan Electronic +1ba1 JINQ CHERN ENTERPRISE CO., LTD. +1ba2 Lite Metals & Plastic (Shenzhen) Co., Ltd. +1ba4 Ember Corporation + 0001 InSight USB Link +1ba6 Abilis Systems +1ba8 China Telecommunication Technology Labs +1bad Harmonix Music + 0002 Guitar for Xbox 360 + 0003 Drum Kit for Xbox 360 +1bae Vuzix Corporation + 0002 VR920 Immersive Eyewear +1bbb T & A Mobile Phones +1bc4 Ford Motor Co. +1bc5 AVIXE Technology (China) Ltd. +1bce Contac Cable Industrial Limited +1bcf Sunplus Innovation Technology Inc. + 0007 Optical Mouse + 05c5 SPRF2413A [2.4GHz Wireless Keyboard/Mouse Receiver] + 05cf Micro keyboard & mouse receiver +1bd0 Hangzhou Riyue Electronic Co., Ltd. +1bde P-TWO INDUSTRIES, INC. +1bef Shenzhen Tongyuan Network-Communication Cables Co., Ltd +1bf0 RealVision Inc. +1bf5 Extranet Systems Inc. +1bf6 Orient Semiconductor Electronics, Ltd. +1bfd TouchPack + 1268 Touch Screen + 1368 Touch Screen + 1568 Capacitive Touch Screen + 1668 IR Touch Screen + 1688 Resistive Touch Screen + 2968 Touch Screen + 5968 Touch Screen + 6968 Touch Screen +1c02 Kreton Corporation +1c04 QNAP System Inc. +1c0d Relm Wireless +1c10 Lanterra Industrial Co., Ltd. +1c13 ALECTRONIC LIMITED +1c1a Datel Electronics Ltd. +1c1b Volkswagen of America, Inc. +1c1f Goldvish S.A. +1c20 Fuji Electric Device Technology Co., Ltd. +1c21 ADDMM LLC +1c22 ZHONGSHAN CHIANG YU ELECTRIC CO., LTD. +1c26 Shanghai Haiying Electronics Co., Ltd. +1c27 HuiYang D & S Cable Co., Ltd. +1c31 LS Cable Ltd. +1c34 SpringCard + 7241 Prox'N'Roll RFID Scanner +1c37 Authorizer Technologies, Inc. +1c3d NONIN MEDICAL INC. +1c3e Wep Peripherals +1c49 Cherng Weei Technology Corp. +1c4f SiGma Micro + 0003 HID controller + 3000 Micro USB Web Camera +1c6b Philips & Lite-ON Digital Solutions Corporation +1c6c Skydigital Inc. +1c73 AMT + 861f Anysee E30 USB 2.0 DVB-T Receiver +1c77 Kaetat Industrial Co., Ltd. +1c78 Datascope Corp. +1c79 Unigen Corporation +1c7a LighTuning Technology Inc. +1c7b LUXSHARE PRECISION INDUSTRY (SHENZHEN) CO., LTD. +1c87 2N TELEKOMUNIKACE a.s. +1c88 Somagic, Inc. +1c89 HONGKONG WEIDIDA ELECTRON LIMITED +1c8e ASTRON INTERNATIONAL CORP. +1c98 ALPINE ELECTRONICS, INC. +1ca0 ACCARIO Inc. +1cac Kinstone + a332 C8 Webcam + b288 C18 Webcam +1cb3 Aces Electronic Co., Ltd. +1cb4 OPEX CORPORATION +1cbe Luminary Micro Inc. +1cbf FORTAT SKYMARK INDUSTRIAL COMPANY +1cc0 PlantSense +1cca NextWave Broadband Inc. +1ccd Bodatong Technology (Shenzhen) Co., Ltd. +1cd4 adp corporation +1cd5 Firecomms Ltd. +1cd6 Antonio Precise Products Manufactory Ltd. +1cde Telecommunications Technology Association (TTA) +1cdf WonTen Technology Co., Ltd. +1ce0 EDIMAX TECHNOLOGY CO., LTD. +1ce1 Amphenol KAE +1cfc ANDES TECHNOLOGY CORPORATION +1cfd Flextronics Digital Design Japan, LTD. +1d07 Solid-Motion +1d08 NINGBO HENTEK DRAGON ELECTRONICS CO., LTD. +1d09 TechFaith Wireless Technology Limited + 1026 HSUPA Modem FLYING-LARK46-VER0.07 [Flying Angel] +1d0a Johnson Controls, Inc. The Automotive Business Unit +1d0b HAN HUA CABLE & WIRE TECHNOLOGY (J.X.) CO., LTD. +1d14 ALPHA-SAT TECHNOLOGY LIMITED +1d17 C-Thru Music Ltd. + 0001 AXiS-49 Harmonic Table MIDI Keyboard +1d19 Dexatek Technology Ltd. + 1101 DK DVB-T Dongle + 1102 DK mini DVB-T Dongle + 1103 DK 5217 DVB-T Dongle + 6105 Video grabber + 8202 DK DVBC/T DONGLE +1d1f Diostech Co., Ltd. +1d20 SAMTACK INC. +1d4d PEGATRON CORPORATION + 0002 Ralink RT2770/2720 802.11b/g/n Wireless LAN Mini-USB Device + 000c Ralink RT3070 802.11b/g/n Wireless Lan USB Device + 000e Ralink RT3070 802.11b/g/n Wireless Lan USB Device +1d50 OpenMoko, Inc. + 5119 GTA01/GTA02 U-Boot Bootloader +1d5b Smartronix, Inc. +1d6b Linux Foundation + 0001 1.1 root hub + 0002 2.0 root hub + 0003 3.0 root hub + 0100 PTP Gadget + 0101 Audio Gadget + 0102 EEM Gadget + 0103 NCM (Ethernet) Gadget + 0104 Multifunction Composite Gadget + 0105 FunctionFS Gadget + 0200 Qemu Audio Device +1e0e Qualcomm / Option +1e10 Point Grey Research, Inc. + 2004 Sony 1.3MP 1/3" ICX445 IIDC video camera [Chameleon] +1e1d Lumension Security + 0165 Secure Pen drive +1e1f INVIA +1e29 Festo AG & Co. KG + 0101 CPX Adapter + 0102 CPX Adapter >=HW10.09 [CP2102] + 0401 iL3-TP [AT90USB646] + 0402 FTDI232 [EasyPort] + 0403 FTDI232 [EasyPort Mini] + 0404 FTDI232 [Netzteil-GL] + 0405 FTDI232 [MotorPrüfstand] + 0406 STM32F103 [EasyKit] + 0407 LPC2378 [Robotino] + 0408 LPC2378 [Robotino-Arm] + 0409 LPC2378 [Robotino-Arm Bootloader] + 040a LPC2378 [Robotino Bootloader] + 0501 CP2102 [CMSP] + 0601 CMMP-AS +1e41 Cleverscope + 0001 CS328A PC Oscilloscope +1e54 TypeMatrix + 2030 2030 USB Keyboard +1e68 TrekStor GmbH & Co. KG + 001b DataStation maxi g.u +1e71 NZXT + 0001 Avatar Optical Mouse +1e74 Coby Electronics Corporation + 6511 MP705-8G MP3 player + 6512 MP705-4G +1e7d ROCCAT + 2c24 Pyra Mouse (wired) + 2ced Kone Mouse + 2d51 Kone+ Mouse + 30d4 Arvo Keyboard +1ebb NuCORE Technology, Inc. +1eda AirTies Wireless Networks + 2310 802.11n USB Wireless LAN Card +1ef6 EADS Deutschland GmbH +1f28 Cal-Comp + 0020 CDMA USB Modem A600 + 0021 CD INSTALLER USB Device +1f4d G-Tek Electronics Group + b803 Lifeview LV5TDLX DVB-T [RTL2832U] +1f82 TANDBERG + 0001 PrecisionHD Camera +1f84 Alere, Inc. +1f87 Stantum + 0002 Multi-touch HID Controller +1fbd Delphin Technology AG + 0001 Expert Key - Data aquisition system +1fc9 NXP Semiconductors +1fe7 Vertex Wireless Co., Ltd. + 1000 VW100 series CDMA EV-DO Rev.A modem +2001 D-Link Corp. + 0001 DWL-120 WIRELESS ADAPTER + 0201 DHN-120 10Mb Home Phoneline Adapter + 1a00 10/100 Ethernet + 200c 10/100 Ethernet + 3200 DWL-120 802.11b Wireless Adapter(rev.E1) [Atmel at76c503a] + 3301 DWA-130 802.11n Wireless N Adapter(rev.C1) [Realtek RTL8192U] + 3500 Elitegroup Computer Systems WLAN card WL-162 + 3700 DWL-122 802.11b [Intersil Prism 3] + 3701 DWL-G120 Spinnaker 802.11g [Intersil ISL3886] + 3702 DWL-120 802.11b Wireless Adapter(rev.F) [Intersil ISL3871] + 3703 AirPlus G DWL-G122 Wireless Adapter [Intersil ISL3886] + 3704 AirPlus G DWL-G122 Wireless Adapter(rev.A2) [Intersil ISL3887] + 3705 AirPlus G DWL-G120 Wireless Adapter(rev.C) [Intersil ISL3887] + 3761 IEEE 802.11g USB2.0 Wireless Network Adapter-PN + 3a00 DWL-AG132 [Atheros AR5523] + 3a01 DWL-AG132 (no firmware) [Atheros AR5523] + 3a02 DWL-G132 [Atheros AR5523] + 3a03 DWL-G132 (no firmware) [Atheros AR5523] + 3a04 DWL-AG122 [Atheros AR5523] + 3a05 DWL-AG122 (no firmware) [Atheros AR5523] + 3a80 AirPlus Xtreme G DWL-G132 Wireless Adapter + 3a81 predator Bootloader Download + 3a82 AirPremier AG DWL-AG132 Wireless Adapter + 3a83 predator Bootloader Download + 3b00 AirPlus DWL-120+ Wireless Adapter [Texas Instruments ACX100USB] + 3b01 WLAN Boot Device + 3c00 AirPlus G DWL-G122 Wireless Adapter(rev.B1) [Ralink RT2500USB] + 3c01 AirPlus AG DWL-AG122 Wireless Adapter + 3c02 AirPlus G DWL-G122 Wireless Adapter + 3c05 DUB-E100 Fast Ethernet [asix] + 4000 DSB-650C Ethernet [klsi] + 4001 DSB-650TX Ethernet [pegasus] + 4002 DSB-650TX Ethernet [pegasus] + 4003 DSB-650TX-PNA Ethernet [pegasus] + 400b 10/100 Ethernet + 4102 10/100 Ethernet + 5100 DSL-200 ADSL ATM Modem + 5102 DSL-200 ADSL Loader + 5b00 Remote NDIS Network Device + 9414 Cable Modem + 9b00 Broadband Cable Modem Remote NDIS Device + abc1 DSB-650 Ethernet [pegasus] + f013 DLink 7 port USB2.0 Hub + f103 DUB-H7 7-port USB 2.0 hub + f10d Accent Communications Modem + f110 DUB-AV300 A/V Capture + f111 DBT-122 Bluetooth adapter + f112 DUB-T210 Audio Device + f116 Formosa 2 + f117 Formosa 3 + f118 Formosa 4 +2013 Unknown (Pinnacle?) + 0245 PCTV 73ESE + 0246 PCTV 74E + 0248 PCTV 282E +2019 PLANEX + 3220 GW-US11S WLAN [Atmel AT76C503A] + 5303 GW-US54GXS 802.11bg + 5304 GWUS300 802.11n + ab01 GW-US54HP + ab24 GW-US300MiniS + ab25 GW-USMini2N 802.11n Wireless Adapter [Ralink RT2870] + ab28 GW-USNano + ab29 GW-USMicro300 + ab50 GW-US54Mini2 + c002 GW-US54SG + c007 GW-US54GZL + ed02 GW-USMM + ed06 802.11n Wireless LAN Adapter + ed10 GW-US300Mini2 + ed14 GW-USMicroN + ed17 GW-USValue-EZ +2040 Hauppauge + 0c80 Windham + 0c90 Windham + 1700 CataMount + 1800 Okemo A + 1801 Okemo B + 2000 Tiger Minicard + 2009 Tiger Minicard R2 + 200a Tiger Minicard + 2010 Tiger Minicard + 2011 WinTV MiniCard [Dell Digital TV Receiver] + 2019 Tiger Minicard + 2400 WinTV PVR USB2 (Model 24019) + 4700 WinTV Nova-S-USB2 + 4902 HD PVR + 4982 HD PVR + 5500 Windham + 5510 Windham + 5520 Windham + 5530 Windham + 5580 Windham + 5590 Windham + 6500 WinTV HVR-900 + 6502 WinTV HVR-900 + 6503 WinTV HVR-930 + 6513 WinTV HVR-980 + 7050 Nova-T Stick + 7060 Nova-T Stick 2 + 7070 Nova-T Stick 3 + 7240 WinTV HVR-850 + 8400 WinTV Nova-T-500 + 9300 WinTV NOVA-T USB2 (cold) + 9301 WinTV NOVA-T USB2 (warm) + 9941 WinTV Nova-T-500 + 9950 WinTV Nova-T-500 + b910 Windham + b980 Windham + b990 Windham + c000 Windham + c010 Windham +2047 Texas Instruments + 0200 MSP430 USB HID Bootstrap Loader +2080 Barnes & Noble + 0001 nook + 0002 NOOKcolor +2087 Cando + 0a01 Multi Touch Panel + 0a02 Multi Touch Panel + 0b03 Multi Touch Panel +20a0 Clay Logic + 414a MDE SPI Interface +20b1 XMOS Ltd + 10ad XUSB Loader + f7d1 XTAG2 - JTAG Adapter +20b3 Hanvon + 0a18 10.1 Touch screen overlay +20b7 Qi Hardware + 0713 Milkymist JTAG/serial + 1540 ben-wpan, AT86RF230-based + 1db5 IDBG in DFU mode + 1db6 IDBG in normal mode + c25b C2 Dongle + cb72 ben-wpan, cntr +20df Simtec Electronics + 0001 Entropy Key [UDEKEY01] +2101 ActionStar + 0201 SIIG 4-to-2 Printer Switch +2162 Creative (?) + 2031 Network Blaster Wireless Adapter + 500c DE5771 Modem Blaster + 8001 Broadxent BritePort DSL Bridge 8010U +2184 GW Instek + 0005 GDS-3000 Oscilloscope + 0006 GDS-3000 Oscilloscope + 0011 AFG Function Generator (CDC) +21a1 Emotiv Systems Pty. Ltd. + 0001 EPOC Consumer Headset Wireless Dongle +21d6 Agecodagis SARL + 0002 Seismic recorder [Tellus] +2222 MacAlly + 0004 iWebKey Keyboard + 2520 Mini Tablet + 4050 AirStick joystick +2227 SAMWOO Enterprise + 3105 SKYDATA SKD-U100 +2233 RadioShack Corporation + 6323 USB Electronic Scale +2237 Kobo Inc. + 4161 eReader White +22a6 Pie Digital, Inc. + ffff PieKey "beta" 4GB model 4E4F41482E4F5247 (SM3251Q BB) +22b8 Motorola PCS + 0001 Wally 2.2 chipset + 0002 Wally 2.4 chipset + 0005 V.60c/V.60i GSM Phone + 0830 2386C-HT820 + 0833 2386C-HT820 [Flash Mode] + 0850 Bluetooth Device + 1001 Patriot 1.0 (GSM) chipset + 1002 Patriot 2.0 chipset + 1005 T280e GSM/GPRS Phone + 1101 Patriot 1.0 (TDMA) chipset + 1801 Rainbow chipset flash + 2035 Bluetooth Device + 2805 GSM Modem + 2821 T720 GSM Phone + 2822 V.120e GSM Phone + 2823 Flash Interface + 2a01 MSM6050 chipset + 2a02 CDMA modem + 2a03 MSM6050 chipset flash + 2a21 V710 GSM Phone (P2K) + 2a22 V710 GSM Phone (AT) + 2a23 MSM6100 chipset flash + 2a41 MSM6300 chipset + 2a42 Usb Modem + 2a43 MSM6300 chipset flash + 2a61 E815 GSM Phone (P2K) + 2a62 E815 GSM Phone (AT) + 2a63 MSM6500 chipset flash + 2a81 MSM6025 chipset + 2a83 MSM6025 chipset flash + 2ac1 MSM6100 chipset + 2ac3 MSM6100 chipset flash + 2d78 XT300[SPICE] + 3001 A835/E1000 GSM Phone (P2K) + 3002 A835/E1000 GSM Phone (AT) + 3801 C350L/C450 (P2K) + 3802 C330/C350L/C450/EZX GSM Phone (AT) + 3803 Neptune LT chipset flash + 4001 OMAP 1.0 chipset + 4002 A920/A925 UMTS Phone + 4003 OMAP 1.0 chipset flash + 4008 OMAP 1.0 chipset RDL + 41d6 Droid X (Windows media mode) + 41d9 Droid/Milestone + 41db Droid/Milestone (Debug mode) + 41de Droid X (PC mode) + 4204 MPx200 Smartphone + 4214 MPc GSM + 4224 MPx220 Smartphone + 4234 MPc CDMA + 4244 MPx100 Smartphone + 4285 Droid X (Mass storage) + 4801 Neptune LTS chipset + 4803 Neptune LTS chipset flash + 4810 Triplet GSM Phone (storage) + 4901 Triplet GSM Phone (P2K) + 4902 Triplet GSM Phone (AT) + 4903 Neptune LTE chipset flash + 4a01 Neptune LTX chipset + 4a03 Neptune LTX chipset flash + 4a32 L6-imode Phone + 5801 Neptune ULS chipset + 5803 Neptune ULS chipset flash + 5901 Neptune VLT chipset + 5903 Neptune VLT chipset flash + 6001 Dalhart EZX + 6003 Dalhart flash + 6004 EZX GSM Phone (CDC Net) + 6006 MOTOROKR E6 + 6008 Dalhart RDL + 6009 EZX GSM Phone (P2K) + 600a Dalhart EZX config 17 + 600b Dalhart EZX config 18 + 600c EZX GSM Phone (USBLAN) + 6021 JUIX chipset + 6023 JUIX chipset flash + 6026 Flash RAM Downloader/miniOS + 6027 USBLAN + 604c EZX GSM Phone (Storage) + 6101 Talon integrated chipset + 6401 Argon chipset + 6403 Argon chipset flash + 6415 ROKR Z6 (MTP mode) + 6604 Washington CDMA Phone + 6631 CDC Modem + 7001 Q Smartphone + fe01 StarTAC III MS900 +22b9 eTurboTouch Technology, Inc. + 0006 Touch Screen +22ba Technology Innovation Holdings, Ltd +2304 Pinnacle Systems, Inc. + 0109 Studio PCTV USB (SECAM) + 0110 Studio PCTV USB (PAL) + 0111 Miro PCTV USB + 0112 Studio PCTV USB (NTSC) with FM radio + 0201 Systems MovieBox Device + 0204 MovieBox USB_B + 0205 DVC 150B + 0206 Systems MovieBox Deluxe Device + 0207 Dazzle DVC90 Video Device + 0208 Studio PCTV USB2 + 020e PCTV 200e + 020f PCTV 400e BDA Device + 0210 Studio PCTV USB (PAL) with FM radio + 0212 Studio PCTV USB (NTSC) + 0213 500-USB Device + 0214 Studio PCTV USB (PAL) with FM radio + 0216 PCTV 60e + 0219 PCTV 260e + 021a Dazzle DVC100 Audio Device + 021b Dazzle DVC130/DVC170 + 021d Dazzle DVC130 + 021e Dazzle DVC170 + 021f PCTV Sat HDTV Pro BDA Device + 0222 PCTV Sat Pro BDA Device + 0223 DazzleTV Sat BDA Device + 0225 Remote Kit Infrared Transceiver + 0226 PCTV 330e + 0227 PCTV for Mac, HD Stick + 0228 PCTV DVB-T Flash Stick + 0229 PCTV Dual DVB-T 2001e + 022a PCTV 160e + 022b PCTV 71e [Afatech AF9015] + 0232 PCTV 170e + 0236 PCTV 72e [DiBcom DiB7000PC] + 0237 PCTV 73e [DiBcom DiB7000PC] + 023a PCTV 801e + 023b PCTV 801e SE + 023d PCTV 340e + 023e PCTV 340e SE + 0300 Studio Linx Video input cable (NTSC) + 0301 Studio Linx Video input cable (PAL) + 0302 Dazzle DVC120 + 0419 PCTV Bungee USB (PAL) with FM radio + 061d PCTV Deluxe (NTSC) Device + 061e PCTV Deluxe (PAL) Device +2318 Shining Technologies, Inc. [hex] + 0011 CitiDISK Jr. IDE Enclosure +2373 Pumatronix Ltda + 0001 5 MegaPixel Digital Still Camera [DSC5M] +2375 Digit@lway, Inc. + 0001 Digital Audio Player +2406 SANHO Digital Electronics Co., Ltd. + 6688 PD7X Portable Storage +2478 Tripp-Lite + 2008 U209-000-R Serial Port +2632 TwinMOS + 3209 7-in-1 Card Reader +2650 Electronics For Imaging, Inc. [hex] +2730 Citizen + 200f CT-S310 Label printer +2735 DigitalWay + 0003 MPIO HS100 + 1001 MPIO FY200 + 1002 MPIO FL100 + 1003 MPIO FD100 + 1004 MPIO HD200 + 1005 MPIO HD300 + 1006 MPIO FG100 + 1007 MPIO FG130 + 1008 MPIO FY300 + 1009 MPIO FY400 + 100a MPIO FL300 + 100b MPIO HS200 + 100c MPIO FL350 + 100d MPIO FY500 + 100e MPIO FY500 + 100f MPIO FY600 + 1012 MPIO FL400 + 1013 MPIO HD400 + 1014 MPIO HD400 + 1016 MPIO FY700 + 1017 MPIO FY700 + 1018 MPIO FY800 + 1019 MPIO FY800 + 101a MPIO FY900 + 101b MPIO FY900 + 102b MPIO FL500 + 102c MPIO FL500 + 103f MPIO FY570 + 1040 MPIO FY570 + 1041 MPIO FY670 + 1042 MPIO FY670 + 1043 HCT HMD-180A + 1044 HCT HMD-180A +2770 NHJ, Ltd + 0a01 ScanJet 4600 series + 905c Che-Ez Snap SNAP-U/Digigr8/Soundstar TDC-35 + 9060 A130 + 9120 Che-ez! Snap / iClick Tiny VGA Digital Camera + 9130 TCG 501 + 913c Argus DC-1730 + 9150 Mini Cam + 9153 iClick 5X + 915d Cyberpix S-210S / Little Tikes My Real Digital Camera + 930b CCD Webcam(PC370R) + 930c CCD Webcam(PC370R) +2821 ASUSTek Computer Inc. + 0161 WL-161 802.11b Wireless Adapter [SiS 162U] + 160f WL-160g 802.11g Wireless Adapter [Envara WiND512] + 3300 WL-140 / Hawking HWU36D 802.11b Wireless Adapter [Intersil PRISM 3] +2899 Toptronic Industrial Co., Ltd + 012c Camera Device +2c02 Planex Communications + 14ea GW-US11H WLAN +2c1a Dolphin Peripherals + 0000 Wireless Optical Mouse +2fb2 Fujitsu, Ltd +3125 Eagletron + 0001 TrackerPod Camera Stand +3176 Whanam Electronics Co., Ltd +3275 VidzMedia Pte Ltd + 4fb1 MonsterTV P2H +3334 AEI + 1701 Fast Ethernet +3340 Yakumo + 043a Mio A701 DigiWalker PPCPhone + 0e3a Pocket PC 300 GPS SL / Typhoon MyGuide 3500 + a0a3 deltaX 5 BT (D) PDA +3504 Micro Star + f110 Security Key +3538 Power Quotient International Co., Ltd + 0001 Travel Flash + 0015 Mass Storge Device + 0022 Hi-Speed Mass Storage Device + 0042 Cool Drive U339 Flash Disk + 0054 Flash Drive (2GB) +3579 DIVA + 6901 Media Reader +3636 InVibro +3838 WEM + 0001 5-in-1 Card Reader +3923 National Instruments Corp. + 12c0 DAQPad-6020E + 12d0 DAQPad-6507 + 12e0 NI 4350 + 12f0 NI 5102 + 1750 DAQPad-6508 + 17b0 USB-ISA-Bridge + 1820 DAQPad-6020E (68 pin I/O) + 1830 DAQPad-6020E (BNC) + 1f00 DAQPad-6024E + 1f10 DAQPad-6024E + 1f20 DAQPad-6025E + 1f30 DAQPad-6025E + 1f40 DAQPad-6036E + 1f50 DAQPad-6036E + 2f80 DAQPad-6052E + 2f90 DAQPad-6052E + 702b GPIB-USB-B + 703c USB-485 RS485 Cable + 709b GPIB-USB-HS + 7254 NI MIO (data acquisition card) firmware updater + 729e USB-6251 (OEM) data acquisition card +40bb I-O Data + 0a09 USB2.0-SCSI Bridge USB2-SC +4101 i-rocks + 1301 IR-2510 usb phone +4102 iRiver, Ltd. + 1001 iFP-100 series mp3 player + 1003 iFP-300 series mp3 player + 1005 iFP-500 series mp3 player + 1007 iFP-700 series mp3/ogg vorbis player + 1008 iFP-800 series mp3/ogg vorbis player + 100a iFP-1000 series mp3/ogg vorbis player + 1014 T20 series mp3/ogg vorbis player (ums firmware) + 1019 T30 + 1034 T60 + 1040 M1Player + 1041 E100 (ums) + 1101 iFP-100 series mp3 player (ums firmware) + 1103 iFP-300 series mp3 player (ums firmware) + 1105 iFP-500 series mp3 player (ums firmware) + 1113 T10 (alternate) + 1117 T10 + 1119 T30 series mp3/ogg/wma player + 1141 E100 (mtp) + 2002 H10 6GB + 2101 H10 20GB (mtp) + 2102 H10 5GB (mtp) + 2105 H10 5/6GB (mtp) +413c Dell Computer Corp. + 0000 DRAC 5 Virtual Keyboard and Mouse + 0001 DRAC 5 Virtual Media + 0058 Port Replicator + 1001 Keyboard Hub + 1002 Keyboard Hub + 1003 Keyboard Hub + 1005 Multimedia Pro Keyboard Hub + 2001 Keyboard HID Support + 2002 SK-8125 Keyboard + 2003 Keyboard + 2005 RT7D50 Keyboard + 2010 Keyboard + 2011 Multimedia Pro Keyboard + 2100 SK-3106 Keyboard + 2101 SmartCard Reader Keyboard + 2105 Model L100 Keyboard + 2106 Dell QuietKey Keyboard + 2500 DRAC4 Remote Access Card + 2513 internal USB Hub of E-Port Replicator + 3010 Optical Wheel Mouse + 3012 Optical Wheel Mouse + 3016 Optical 5-Button Wheel Mouse + 3200 Mouse + 4001 Axim X5 + 4002 Axim X3 + 4003 Axim X30 + 4004 Axim Sync + 4005 Axim Sync + 4006 Axim Sync + 4007 Axim Sync + 4008 Axim Sync + 4009 Axim Sync + 4011 Axim X51v + 5103 AIO Printer A940 + 5105 AIO Printer A920 + 5107 AIO Printer A960 + 5109 Photo AIO Printer 922 + 5110 Photo AIO Printer 962 + 5111 Photo AIO Printer 942 + 5112 Photo AIO Printer 924 + 5113 Photo AIO Printer 944 + 5114 Photo AIO Printer 964 + 5115 Photo AIO Printer 926 + 5116 AIO Printer 946 + 5117 Photo AIO Printer 966 + 5118 AIO 810 + 5124 Laser MFP 1815 + 5128 Photo AIO 928 + 5200 Laser Printer + 5202 Printing Support + 5203 Printing Support + 5210 Printing Support + 5211 1110 Laser Printer + 5220 Laser MFP 1600n + 5225 Printing Support + 5226 Printing Support + 5300 Laser Printer + 5400 Laser Printer + 5401 Laser Printer + 5513 WLA3310 Wireless Adapter [Intersil ISL3887] + 5601 Laser Printer 3100cn + 5602 Laser Printer 3000cn + 5631 Laser Printer 5100cn + 5905 Printing Support + 8000 BC02 Bluetooth Adapter + 8010 TrueMobile Bluetooth Module in + 8100 TrueMobile 1180 802.11b Adapter [Intersil PRISM 3] + 8102 TrueMobile 1300 802.11g Wireless Adapter [Intersil ISL3880] + 8103 Wireless 350 Bluetooth + 8104 Wireless 1450 Dual-band (802.11a/b/g) Adapter [Intersil ISL3887] + 8105 U2 in HID - Driver + 8106 Wireless 350 Bluetooth Internal Card in + 8110 Wireless 3xx Bluetooth Internal Card + 8111 Wireless 3xx Bluetooth Internal Card in + 8114 Wireless 5700 Mobile Broadband (CDMA EV-DO) Minicard Modem + 8115 Wireless 5500 Mobile Broadband (3G HSDPA) Minicard Modem + 8116 Wireless 5505 Mobile Broadband (3G HSDPA) Minicard Modem + 8117 Wireless 5700 Mobile Broadband (CDMA EV-DO) Expresscard Modem + 8118 Wireless 5510 Mobile Broadband (3G HSDPA) Expresscard Status Port + 8120 Bluetooth adapter + 8121 Eastfold in HID + 8122 Eastfold in DFU + 8123 eHome Infrared Receiver + 8124 eHome Infrared Receiver + 8126 Wireless 355 Bluetooth + 8127 Wireless 355 Module with Bluetooth 2.0 + EDR Technology. + 8128 Wireless 5700-Sprint Mobile Broadband (CDMA EV-DO) Mini-Card Status Port + 8129 Wireless 5700-Telus Mobile Broadband (CDMA EV-DO) Mini-Card Status Port + 8131 Wireless 360 Bluetooth 2.0 + EDR module. + 8133 Wireless 5720 VZW Mobile Broadband (EVDO Rev-A) Minicard GPS Port + 8134 Wireless 5720 Sprint Mobile Broadband (EVDO Rev-A) Minicard Status Port + 8135 Wireless 5720 TELUS Mobile Broadband (EVDO Rev-A) Minicard Diagnostics Port + 8136 Wireless 5520 Cingular Mobile Broadband (3G HSDPA) Minicard Diagnostics Port + 8137 Wireless 5520 Voda L Mobile Broadband (3G HSDPA) Minicard Status Port + 8138 Wireless 5520 Voda I Mobile Broadband (3G HSDPA) Minicard EAP-SIM Port + 8140 Wireless 360 Bluetooth + 8142 Mobile 360 in DFU + 8147 F3507g Mobile Broadband Module + 8156 Wireless 370 Bluetooth Mini-card + 8157 Integrated Keyboard + 8158 Integrated Touchpad / Trackstick + 8160 Wireless 365 Bluetooth + 8161 Integrated Keyboard + 8162 Integrated Touchpad [Synaptics] + 8171 Gobi Wireless Modem (QDL mode) + 8172 Gobi Wireless Modem + 8183 F3607gw Mobile Broadband Module + 8184 F3607gw v2 Mobile Broadband Module + 8185 Gobi 2000 Wireless Modem (QDL mode) + 8186 Gobi 2000 Wireless Modem + 8187 DW375 Bluetooth Module + 8501 Bluetooth Adapter + 9500 USB CP210x UART Bridge Controller [DW700] + a001 Hub + a005 Internal 2.0 Hub + a700 Hub (in 1905FP LCD Monitor) +4146 USBest Technology + 9281 Iomega Micro Mini 128MB Flash Drive + ba01 Intuix Flash Drive +4242 USB Design by Example + 4201 Buttons and Lights HID device + 4220 Echo 1 Camera +4317 Broadcom Corp. + 0700 U.S. Robotics USR5426 802.11g Adapter + 0701 U.S. Robotics USR5425 Wireless MAXg Adapter + 0711 Belkin F5D7051 v3000 802.11g + 0720 Dynex DX-BUSB +4348 WinChipHead + 5523 USB->RS 232 adapter with Prolifec PL 2303 chipset + 5537 13.56Mhz RFID Card Reader and Writer + 5584 CH34x printer adapter cable +4572 Shuttle, Inc. + 4572 Shuttle PN31 Remote +4586 Panram + 1026 Crystal Bar Flash Drive +4670 EMS Production + 9394 Game Cube USB Memory Adaptor 64M +4752 Miditech + 0011 Midistart-2 +4757 GW Instek + 2009 PEL-2000 Series Electronic Load (CDC) + 2010 PEL-2000 Series Electronic Load (CDC) +4766 Aceeca + 0001 MEZ1000 RDA +4855 Memorex + 7288 Ultra Traveldrive 160G 2.5" HDD +4971 SimpleTech + cb01 SP-U25/120G + ce17 1TB SimpleDrive II USB External Hard Drive +5032 Grandtec + 0bb8 Grandtec USB1.1 DVB-T (cold) + 0bb9 Grandtec USB1.1 DVB-T (warm) + 0fa0 Grandtec USB1.1 DVB-T (cold) + 0fa1 Grandtec USB1.1 DVB-T (warm) +5041 Linksys (?) + 2234 WUSB54G v1 802.11g Adapter [Intersil ISL3886] + 2235 WUSB54GP v1 802.11g Adapter [Intersil ISL3886] +50c2 Averatec (?) + 4013 WLAN Adapter +5173 Sweex + 1809 ZD1211 +5219 I-Tetra + 1001 Cetus CDC Device +5345 Owon + 1234 PDS6062T Oscilloscope +544d Transmeta Corp. +5543 UC-Logic Technology Corp. + 0002 SuperPen WP3325U Tablet + 0003 Tablet WP4030U + 0004 Tablet WP5540U + 0005 Tablet WP8060U + 0041 Genius PenSketch 6x8 Tablet + 0042 Tablet PF1209 + 0064 Aiptek HyperPen 10000U +5555 Epiphan Systems Inc. + 1110 VGA2USB + 1120 KVM2USB + 2222 DVI2USB + 3333 VGA2USB Pro + 3337 KVM2USB Pro + 3340 VGA2USB LR + 3344 KVM2USB LR + 3411 DVI2USB Solo + 3422 DVI2USB Duo +55aa OnSpec Electronic, Inc. + 0015 Hard Drive + 0102 SuperDisk + 0103 IDE Hard Drive + 0201 DDI to Reader-19 + 1234 ATAPI Bridge + a103 Sandisk SDDR-55 SmartMedia Card Reader + b000 USB to CompactFlash Card Reader + b004 OnSpec MMC/SD Reader/Writer + b00b USB to Memory Stick Card Reader + b00c USB to SmartMedia Card Reader + b012 Mitsumi FA402M 8-in-2 Card Reader + b200 Compact Flash Reader + b204 MMC/ SD Reader + b207 Memory Stick Reader +5656 Uni-Trend Group Limited + 0832 UT2000/UT3000 Digital Storage Oscilloscope +595a IRTOUCHSYSTEMS Co. Ltd. + 0001 Touchscreen +5986 Acer, Inc + 0100 Orbicam + 0101 USB2.0 Camera + 0102 Crystal Eye Webcam + 01a6 Lenovo Integrated Webcam + 01a7 Lenovo Integrated Webcam + 01a9 Lenovo Integrated Webcam + 0200 OrbiCam + 0203 BisonCam NB Pro 1300 + 0241 BisonCam, NB Pro + 02d0 Lenovo Integrated Webcam [R5U877] + 03d0 Lenovo Integrated Webcam [R5U877] +5a57 Zinwell + 0260 RT2570 + 0280 802.11a/b/g/n USB Wireless LAN Card + 0282 802.11b/g/n USB Wireless LAN Card + 0283 802.11b/g/n USB Wireless LAN Card + 0284 802.11a/b/g/n USB Wireless LAN Card + 0290 ZW-N290 802.11n [Realtek RTL8192SU] + 5257 Metronic 495257 wifi 802.11ng +6000 Beholder International Ltd. + dec0 TV Wander + dec1 TV Voyage +601a Ingenic Semiconductor Ltd. + 4740 XBurst Jz4740 boot mode +6189 Sitecom + 182d USB 2.0 Ethernet + 2068 USB to serial cable (v2) +6253 TwinHan Technology Co., Ltd + 0100 Ir reciver f. remote control +636c CoreLogic, Inc. +6472 Unknown (Sony?) + 01c8 PlayStation Portable [Mass Storage] +6547 Arkmicro Technologies Inc. + 0232 ARK3116 Serial +6615 IRTOUCHSYSTEMS Co. Ltd. + 0001 Touchscreen +6666 Prototype product Vendor ID + 0667 WiseGroup Smart Joy PSX, PS-PC Smart JoyPad + 2667 JCOP BlueZ Smartcard reader + 8802 SmartJoy Dual Plus PS2 converter + 8804 WiseGroup SuperJoy Box 5 +6677 WiseGroup, Ltd. + 8802 SmartJoy Dual Plus PS2 converter + 8811 Deluxe Dance Mat +6891 3Com + a727 3CRUSB10075 802.11bg [ZyDAS ZD1211] +695c Opera1 + 3829 Opera1 DVB-S (warm state) +6993 Yealink Network Technology Co., Ltd. + b001 VoIP Phone +6a75 Shanghai Jujo Electronics Co., Ltd +7104 CME (Central Music Co.) + 2202 UF5/UF6/UF7/UF8 MIDI Master Keyboard +726c StackFoundry LLC + 2149 EntropyKing Random Number Generator +734c TBS Technologies China + 5920 Q-Box II DVB-S2 HD + 5928 Q-Box II DVB-S2 HD +7392 Edimax Technology Co., Ltd + 7711 EW-7711UTn nLite Wireless Adapter [Ralink RT2870] + 7717 EW-7717UN 802.11n Wireless Adapter [Ralink RT2870] + 7718 EW-7718UN 802.11n Wireless Adapter [Ralink RT2870] + 7722 EW-7722UTn 802.11n Wireless Adapter [Ralink RT307x] + 7811 EW-7811Un 802.11n Wireless Adapter [Realtek RTL8188CUS] +8086 Intel Corp. + 0001 AnyPoint (TM) Home Network 1.6 Mbps Wireless Adapter + 0044 CPU DRAM Controller + 0046 HD Graphics + 0100 Personal Audio Player 3000 + 0101 Personal Audio Player 3000 + 0110 Easy PC Camera + 0120 PC Camera CS120 + 0180 WiMAX Connection 2400m + 0181 WiMAX Connection 2400m + 0182 WiMAX Connection 2400m + 0186 WiMAX Connection 2400m + 0188 WiMAX Connection 2400m + 0200 AnyPoint(TM) Wireless II Network 11Mbps Adapter [Atmel AT76C503A] + 0431 Intel Pro Video PC Camera + 0510 Digital Movie Creator + 0630 Pocket PC Camera + 0780 CS780 Microphone Input + 07d3 BLOB boot loader firmware + 0dad Cherry MiniatureCard Keyboard + 1010 AnyPoint(TM) Home Network 10 Mbps Phoneline Adapter + 110a Bluetooth Controller from (Ericsson P4A) + 110b Bluetooth Controller from (Intel/CSR) + 1110 PRO/Wireless LAN Module + 1111 PRO/Wireless 2011B 802.11b Adapter [Intersil PRISM 2.5] + 1134 Hollister Mobile Monitor + 1139 In-Target Probe (ITP) + 1234 Prototype Reader/Writer + 1403 WiMAX Connection 2400m + 1405 WiMAX Connection 2400m + 1406 WiMAX Connection 2400m + 2448 82801 PCI Bridge + 3100 PRO/DSL 3220 Modem - WAN + 3101 PRO/DSL 3220 Modem + 3240 AnyPoint® 3240 Modem - WAN + 3241 AnyPoint® 3240 Modem + 8602 Miniature Card Slot + 9303 Intel 8x930Hx Hub + 9500 CE 9500 DVB-T + 9890 82930 Test Board + beef SCM Miniature Card Reader/Writer + c013 Wireless HID Station + f001 XScale PXA27x Bulverde flash + f1a5 Z-U130 [Value Solid State Drive] +8087 Intel Corp. + 0020 Integrated Rate Matching Hub + 0024 Integrated Rate Matching Hub +80ee VirtualBox + 0021 USB Tablet +8282 Keio + 3201 Retro Adapter + 3301 Retro Adapter Mouse +8341 EGO Systems, Inc. + 2000 Flashdisk +9016 Sitecom + 182d WL-022 802.11b Adapter +9022 TeVii Technology Ltd. + d630 DVB-S S630 + d650 DVB-S2 S650 + d660 DVB-S2 S660 +9148 GeoLab, Ltd +# All of GeoLab's devices share the same ID 0004. + 0004 R3 Compatible Device +9710 MosChip Semiconductor + 7703 MCS7703 Serial Port Adapter + 7705 MCS7705 Parallel port adapter + 7715 MCS7715 Parallel and serial port adapter + 7717 MCS7717 3-port hub with serial and parallel adapter + 7720 MCS7720 Dual serial port adapter + 7730 MCS7730 10/100 Mbps Ethernet adapter + 7780 MCS7780 4Mbps Fast IrDA Adapter + 7830 MCS7830 10/100 Mbps Ethernet adapter + 7832 MCS7832 10/100 Mbps Ethernet adapter + 7840 MCS7820/MCS7840 2/4 port serial adapter +99fa Grandtec + 8988 V.cap Camera Device +9ac4 J. Westhues + 4b8f ProxMark-3 RFID Instrument +a128 AnMo Electronics Corp. / Dino-Lite (?) + 0610 Dino-Lite Digital Microscope (SN9C201 + HV7131R) + 0611 Dino-Lite Digital Microscope (SN9C201 + HV7131R) + 0612 Dino-Lite Digital Microscope (SN9C120 + HV7131R) + 0613 Dino-Lite Digital Microscope (SN9C201 + HV7131R) + 0614 Dino-Lite Digital Microscope (SN9C201 + MI1310/MT9M111) + 0615 Dino-Lite Digital Microscope (SN9C201 + MI1310/MT9M111) + 0616 Dino-Lite Digital Microscope (SN9C120 + HV7131R) + 0617 Dino-Lite Digital Microscope (SN9C201 + MI1310/MT9M111) + 0618 Dino-Lite Digital Microscope (SN9C201 + HV7131R) +a168 AnMo Electronics Corporation + 0610 Dino-Lite Digital Microscope + 0611 Dino-Lite Digital Microscope + 0613 Dino-Lite Digital Microscope + 0614 Dino-Lite Pro Digital Microscope + 0615 Dino-Lite Pro Digital Microscope + 0617 Dino-Lite Pro Digital Microscope + 0618 Dino-Lite Digital Microscope +a600 Asix + e110 OK1ZIA Davac 4.x +a727 3Com + 6893 3CRUSB20075 OfficeConnect Wireless 108Mbps 11g Adapter [Atheros AR5523] + 6895 AR5523 + 6897 AR5523 +abcd Unknown + cdee Petcam +c251 Keil Software, Inc. + 2710 ULink +cace CACE Technologies Inc. + 0002 AirPCAP Classic 802.11 packet capture adapter + 0300 AirPcap NX [Atheros AR9001U-(2)NG] +d209 Ultimarc + 0301 I-PAC Arcade Control Interface + 0501 Ultra-Stik Ultimarc Ultra-Stik Player 1 +e4e4 Xorcom Ltd. + 1130 Astribank series + 1131 Astribank series + 1132 Astribank series + 1140 Astribank series + 1141 Astribank series + 1142 Astribank series + 1150 Astribank series + 1151 Astribank series + 1152 Astribank series + 1160 Astribank 2 series + 1161 Astribank 2 series + 1162 Astribank 2 series +eb03 MakingThings + 0920 Make Controller Kit +eb1a eMPIA Technology, Inc. + 17de KWorld V-Stream XPERT DTV - DVB-T USB cold + 17df KWorld V-Stream XPERT DTV - DVB-T USB warm + 2571 M035 Compact Web Cam + 2710 SilverCrest Webcam + 2750 ECS Elitegroup G220 integrated Webcam + 2761 EeePC 701 integrated Webcam + 2776 Combined audio and video input device + 2800 Terratec Cinergy 200 + 2801 GrabBeeX+ Video Encoder + 2863 Video Grabber + 2870 Pinnacle PCTV Stick + 2881 EM2881 Video Controller + 50a3 Gadmei UTV380 TV Box + 50a6 Gadmei UTV330 TV Box + e355 KWorld DVB-T 355U Digital TV Dongle +eb2a KWorld +f003 Hewlett Packard + 6002 PhotoSmart C500 +f4ec Atten Electronics / Siglent Technologies + ee38 Digital Storage Oscilloscope + +# List of known device classes, subclasses and protocols + +# Syntax: +# C class class_name +# subclass subclass_name <-- single tab +# protocol protocol_name <-- two tabs + +C 00 (Defined at Interface level) +C 01 Audio + 01 Control Device + 02 Streaming + 03 MIDI Streaming +C 02 Communications + 01 Direct Line + 02 Abstract (modem) + 00 None + 01 AT-commands (v.25ter) + 02 AT-commands (PCCA101) + 03 AT-commands (PCCA101 + wakeup) + 04 AT-commands (GSM) + 05 AT-commands (3G) + 06 AT-commands (CDMA) + fe Defined by command set descriptor + ff Vendor Specific (MSFT RNDIS?) + 03 Telephone + 04 Multi-Channel + 05 CAPI Control + 06 Ethernet Networking + 07 ATM Networking + 08 Wireless Handset Control + 09 Device Management + 0a Mobile Direct Line + 0b OBEX + 0c Ethernet Emulation + 07 Ethernet Emulation (EEM) +C 03 Human Interface Device + 00 No Subclass + 00 None + 01 Keyboard + 02 Mouse + 01 Boot Interface Subclass + 00 None + 01 Keyboard + 02 Mouse +C 05 Physical Interface Device +C 06 Imaging + 01 Still Image Capture + 01 Picture Transfer Protocol (PIMA 15470) +C 07 Printer + 01 Printer + 00 Reserved/Undefined + 01 Unidirectional + 02 Bidirectional + 03 IEEE 1284.4 compatible bidirectional + ff Vendor Specific +C 08 Mass Storage + 01 RBC (typically Flash) + 00 Control/Bulk/Interrupt + 01 Control/Bulk + 50 Bulk (Zip) + 02 SFF-8020i, MMC-2 (ATAPI) + 03 QIC-157 + 04 Floppy (UFI) + 00 Control/Bulk/Interrupt + 01 Control/Bulk + 50 Bulk (Zip) + 05 SFF-8070i + 06 SCSI + 00 Control/Bulk/Interrupt + 01 Control/Bulk + 50 Bulk (Zip) +C 09 Hub + 00 Unused + 00 Full speed (or root) hub + 01 Single TT + 02 TT per port +C 0a CDC Data + 00 Unused + 30 I.430 ISDN BRI + 31 HDLC + 32 Transparent + 50 Q.921M + 51 Q.921 + 52 Q.921TM + 90 V.42bis + 91 Q.932 EuroISDN + 92 V.120 V.24 rate ISDN + 93 CAPI 2.0 + fd Host Based Driver + fe CDC PUF + ff Vendor specific +C 0b Chip/SmartCard +C 0d Content Security +C 0e Video + 00 Undefined + 01 Video Control + 02 Video Streaming + 03 Video Interface Collection +C 58 Xbox + 42 Controller +C dc Diagnostic + 01 Reprogrammable Diagnostics + 01 USB2 Compliance +C e0 Wireless + 01 Radio Frequency + 01 Bluetooth + 02 Ultra WideBand Radio Control + 03 RNDIS + 02 Wireless USB Wire Adapter + 01 Host Wire Adapter Control/Data Streaming + 02 Device Wire Adapter Control/Data Streaming + 03 Device Wire Adapter Isochronous Streaming +C ef Miscellaneous Device + 01 ? + 01 Microsoft ActiveSync + 02 Palm Sync + 02 ? + 01 Interface Association + 02 Wire Adapter Multifunction Peripheral + 03 ? + 01 Cable Based Association +C fe Application Specific Interface + 01 Device Firmware Update + 02 IRDA Bridge + 03 Test and Measurement + 01 TMC + 02 USB488 +C ff Vendor Specific Class + ff Vendor Specific Subclass + ff Vendor Specific Protocol + +# List of Audio Class Terminal Types + +# Syntax: +# AT terminal_type terminal_type_name + +AT 0100 USB Undefined +AT 0101 USB Streaming +AT 01ff USB Vendor Specific +AT 0200 Input Undefined +AT 0201 Microphone +AT 0202 Desktop Microphone +AT 0203 Personal Microphone +AT 0204 Omni-directional Microphone +AT 0205 Microphone Array +AT 0206 Processing Microphone Array +AT 0300 Output Undefined +AT 0301 Speaker +AT 0302 Headphones +AT 0303 Head Mounted Display Audio +AT 0304 Desktop Speaker +AT 0305 Room Speaker +AT 0306 Communication Speaker +AT 0307 Low Frequency Effects Speaker +AT 0400 Bidirectional Undefined +AT 0401 Handset +AT 0402 Headset +AT 0403 Speakerphone, no echo reduction +AT 0404 Echo-suppressing speakerphone +AT 0405 Echo-canceling speakerphone +AT 0500 Telephony Undefined +AT 0501 Phone line +AT 0502 Telephone +AT 0503 Down Line Phone +AT 0600 External Undefined +AT 0601 Analog Connector +AT 0602 Digital Audio Interface +AT 0603 Line Connector +AT 0604 Legacy Audio Connector +AT 0605 SPDIF interface +AT 0606 1394 DA stream +AT 0607 1394 DV stream soundtrack +AT 0700 Embedded Undefined +AT 0701 Level Calibration Noise Source +AT 0702 Equalization Noise +AT 0703 CD Player +AT 0704 DAT +AT 0705 DCC +AT 0706 MiniDisc +AT 0707 Analog Tape +AT 0708 Phonograph +AT 0709 VCR Audio +AT 070a Video Disc Audio +AT 070b DVD Audio +AT 070c TV Tuner Audio +AT 070d Satellite Receiver Audio +AT 070e Cable Tuner Audio +AT 070f DSS Audio +AT 0710 Radio Receiver +AT 0711 Radio Transmitter +AT 0712 Multitrack Recorder +AT 0713 Synthesizer + +# List of HID Descriptor Types + +# Syntax: +# HID descriptor_type descriptor_type_name + +HID 21 HID +HID 22 Report +HID 23 Physical + +# List of HID Descriptor Item Types +# Note: 2 bits LSB encode data length following + +# Syntax: +# R item_type item_type_name + +R 04 Usage Page +R 08 Usage +R 14 Logical Minimum +R 18 Usage Minimum +R 24 Logical Maximum +R 28 Usage Maximum +R 34 Physical Minimum +R 38 Designator Index +R 44 Physical Maximum +R 48 Designator Minimum +R 54 Unit Exponent +R 58 Designator Maximum +R 64 Unit +R 74 Report Size +R 78 String Index +R 80 Input +R 84 Report ID +R 88 String Minimum +R 90 Output +R 94 Report Count +R 98 String Maximum +R a0 Collection +R a4 Push +R a8 Delimiter +R b0 Feature +R b4 Pop +R c0 End Collection + +# List of Physical Descriptor Bias Types + +# Syntax: +# BIAS item_type item_type_name + +BIAS 0 Not Applicable +BIAS 1 Right Hand +BIAS 2 Left Hand +BIAS 3 Both Hands +BIAS 4 Either Hand + +# List of Physical Descriptor Item Types + +# Syntax: +# PHY item_type item_type_name + +PHY 00 None +PHY 01 Hand +PHY 02 Eyeball +PHY 03 Eyebrow +PHY 04 Eyelid +PHY 05 Ear +PHY 06 Nose +PHY 07 Mouth +PHY 08 Upper Lip +PHY 09 Lower Lip +PHY 0a Jaw +PHY 0b Neck +PHY 0c Upper Arm +PHY 0d Elbow +PHY 0e Forearm +PHY 0f Wrist +PHY 10 Palm +PHY 11 Thumb +PHY 12 Index Finger +PHY 13 Middle Finger +PHY 14 Ring Finger +PHY 15 Little Finger +PHY 16 Head +PHY 17 Shoulder +PHY 18 Hip +PHY 19 Waist +PHY 1a Thigh +PHY 1b Knee +PHY 1c calf +PHY 1d Ankle +PHY 1e Foot +PHY 1f Heel +PHY 20 Ball of Foot +PHY 21 Big Toe +PHY 22 Second Toe +PHY 23 Third Toe +PHY 24 Fourth Toe +PHY 25 Fifth Toe +PHY 26 Brow +PHY 27 Cheek + +# List of HID Usages + +# Syntax: +# HUT hi _usage_page hid_usage_page_name +# hid_usage hid_usage_name + +HUT 00 Undefined +HUT 01 Generic Desktop Controls + 000 Undefined + 001 Pointer + 002 Mouse + 004 Joystick + 005 Gamepad + 006 Keyboard + 007 Keypad + 008 Multi-Axis Controller + 030 Direction-X + 031 Direction-Y + 032 Direction-Z + 033 Rotate-X + 034 Rotate-Y + 035 Rotate-Z + 036 Slider + 037 Dial + 038 Wheel + 039 Hat Switch + 03a Counted Buffer + 03b Byte Count + 03c Motion Wakeup + 03d Start + 03e Select + 040 Vector-X + 041 Vector-Y + 042 Vector-Z + 043 Vector-X relative Body + 044 Vector-Y relative Body + 045 Vector-Z relative Body + 046 Vector + 080 System Control + 081 System Power Down + 082 System Sleep + 083 System Wake Up + 084 System Context Menu + 085 System Main Menu + 086 System App Menu + 087 System Menu Help + 088 System Menu Exit + 089 System Menu Select + 08a System Menu Right + 08b System Menu Left + 08c System Menu Up + 08d System Menu Down + 090 Direction Pad Up + 091 Direction Pad Down + 092 Direction Pad Right + 093 Direction Pad Left +HUT 02 Simulation Controls + 000 Undefined + 001 Flight Simulation Device + 002 Automobile Simulation Device + 003 Tank Simulation Device + 004 Spaceship Simulation Device + 005 Submarine Simulation Device + 006 Sailing Simulation Device + 007 Motorcycle Simulation Device + 008 Sports Simulation Device + 009 Airplane Simualtion Device + 00a Helicopter Simulation Device + 00b Magic Carpet Simulation Device + 00c Bicycle Simulation Device + 020 Flight Control Stick + 021 Flight Stick + 022 Cyclic Control + 023 Cyclic Trim + 024 Flight Yoke + 025 Track Control + 0b0 Aileron + 0b1 Aileron Trim + 0b2 Anti-Torque Control + 0b3 Autopilot Enable + 0b4 Chaff Release + 0b5 Collective Control + 0b6 Dive Break + 0b7 Electronic Countermeasures + 0b8 Elevator + 0b9 Elevator Trim + 0ba Rudder + 0bb Throttle + 0bc Flight COmmunications + 0bd Flare Release + 0be Landing Gear + 0bf Toe Break + 0c0 Trigger + 0c1 Weapon Arm + 0c2 Weapons Select + 0c3 Wing Flaps + 0c4 Accelerator + 0c5 Brake + 0c6 Clutch + 0c7 Shifter + 0c8 Steering + 0c9 Turret Direction + 0ca Barrel Elevation + 0cb Drive Plane + 0cc Ballast + 0cd Bicylce Crank + 0ce Handle Bars + 0cf Front Brake + 0d0 Rear Brake +HUT 03 VR Controls + 000 Unidentified + 001 Belt + 002 Body Suit + 003 Flexor + 004 Glove + 005 Head Tracker + 006 Head Mounted Display + 007 Hand Tracker + 008 Oculometer + 009 Vest + 00a Animatronic Device + 020 Stereo Enable + 021 Display Enable +HUT 04 Sport Controls + 000 Unidentified + 001 Baseball Bat + 002 Golf Club + 003 Rowing Machine + 004 Treadmill + 030 Oar + 031 Slope + 032 Rate + 033 Stick Speed + 034 Stick Face Angle + 035 Stick Heel/Toe + 036 Stick Follow Through + 038 Stick Type + 039 Stick Height + 047 Stick Temp + 050 Putter + 051 1 Iron + 052 2 Iron + 053 3 Iron + 054 4 Iron + 055 5 Iron + 056 6 Iron + 057 7 Iron + 058 8 Iron + 059 9 Iron + 05a 10 Iron + 05b 11 Iron + 05c Sand Wedge + 05d Loft Wedge + 05e Power Wedge + 05f 1 Wood + 060 3 Wood + 061 5 Wood + 062 7 Wood + 063 9 Wood +HUT 05 Game Controls + 000 Undefined + 001 3D Game Controller + 002 Pinball Device + 003 Gun Device + 020 Point Of View + 021 Turn Right/Left + 022 Pitch Right/Left + 023 Roll Forward/Backward + 024 Move Right/Left + 025 Move Forward/Backward + 026 Move Up/Down + 027 Lean Right/Left + 028 Lean Forward/Backward + 029 Height of POV + 02a Flipper + 02b Secondary Flipper + 02c Bump + 02d New Game + 02e Shoot Ball + 02f Player + 030 Gun Bolt + 031 Gun Clip + 032 Gun Selector + 033 Gun Single Shot + 034 Gun Burst + 035 Gun Automatic + 036 Gun Safety + 037 Gamepad Fire/Jump + 038 Gamepad Fun + 039 Gamepad Trigger +HUT 07 Keyboard + 000 No Event + 001 Keyboard ErrorRollOver + 002 Keyboard POSTfail + 003 Keyboard Error Undefined + 004 A + 005 B + 006 C + 007 D + 008 E + 009 F + 00a G + 00b H + 00c I + 00d J + 00e K + 00f L + 010 M + 011 N + 012 O + 013 P + 014 Q + 015 R + 016 S + 017 T + 018 U + 019 V + 01a W + 01b X + 01c Y + 01d Z + 01e 1 and ! (One and Exclamation) + 01f 2 and @ (2 and at) + 020 3 and # (3 and Hash) + 021 4 and $ (4 and Dollar Sign) + 022 5 and % (5 and Percent Sign) + 023 6 and ^ (6 and circumflex) + 024 7 and & (Seven and Ampersand) + 025 8 and * (Eight and asterisk) + 026 9 and ( (Nine and Parenthesis Left) + 027 0 and ) (Zero and Parenthesis Right) + 028 Return (Enter) + 029 Escape + 02a Delete (Backspace) + 02b Tab + 02c Space Bar + 02d - and _ (Minus and underscore) + 02e = and + (Equal and Plus) + 02f [ and { (Bracket and Braces Left) + 030 ] and } (Bracket and Braces Right) + 031 \ and | (Backslash and Bar) + 032 # and ~ (Hash and Tilde, Non-US Keyboard near right shift) + 033 ; and : (Semicolon and Colon) + 034 ´ and " (Accent Acute and Double Quotes) + 035 ` and ~ (Accent Grace and Tilde) + 036 , and < (Comma and Less) + 037 . and > (Period and Greater) + 038 / and ? (Slash and Question Mark) + 039 Caps Lock + 03a F1 + 03b F2 + 03c F3 + 03d F4 + 03e F5 + 03f F6 + 040 F7 + 041 F8 + 042 F9 + 043 F10 + 044 F11 + 045 F12 + 046 Print Screen + 047 Scroll Lock + 048 Pause + 049 Insert + 04a Home + 04b Page Up + 04c Delete Forward (without Changing Position) + 04d End + 04e Page Down + 04f Right Arrow + 050 Left Arrow + 051 Down Arrow + 052 Up Arrow + 053 Num Lock and Clear + 054 Keypad / (Division Sign) + 055 Keypad * (Multiplication Sign) + 056 Keypad - (Subtraction Sign) + 057 Keypad + (Addition Sign) + 058 Keypad Enter + 059 Keypad 1 and END + 05a Keypad 2 and Down Arrow + 05b Keypad 3 and Page Down + 05c Keypad 4 and Left Arrow + 05d Keypad 5 (Tactilei Raised) + 05f Keypad 6 and Right Arrow + 060 Keypad 7 and Home + 061 Keypad 8 and Up Arrow + 062 Keypad 8 and Page Up + 063 Keypad . (decimal delimiter) and Delete + 064 \ and | (Backslash and Bar, UK and Non-US Keyboard near left shift) + 065 Keyboard Application (Windows Key for Win95 or Compose) + 066 Power (not a key) + 067 Keypad = (Equal Sign) + 068 F13 + 069 F14 + 06a F15 + 06b F16 + 06c F17 + 06d F18 + 06e F19 + 06f F20 + 070 F21 + 071 F22 + 072 F23 + 073 F24 + 074 Execute + 075 Help + 076 Menu + 077 Select + 078 Stop + 079 Again + 07a Undo + 07b Cut + 07c Copy + 07d Paste + 07e Find + 07f Mute + 080 Volume Up + 081 Volume Down + 082 Locking Caps Lock + 083 Locking Num Lock + 084 Locking Scroll Lock + 085 Keypad Comma + 086 Keypad Equal Sign (AS/400) + 087 International 1 (PC98) + 088 International 2 (PC98) + 089 International 3 (PC98) + 08a International 4 (PC98) + 08b International 5 (PC98) + 08c International 6 (PC98) + 08d International 7 (Toggle Single/Double Byte Mode) + 08e International 8 + 08f International 9 + 090 LANG 1 (Hangul/English Toggle, Korea) + 091 LANG 2 (Hanja Conversion, Korea) + 092 LANG 3 (Katakana, Japan) + 093 LANG 4 (Hiragana, Japan) + 094 LANG 5 (Zenkaku/Hankaku, Japan) + 095 LANG 6 + 096 LANG 7 + 097 LANG 8 + 098 LANG 9 + 099 Alternate Erase + 09a SysReq/Attention + 09b Cancel + 09c Clear + 09d Prior + 09e Return + 09f Separator + 0a0 Out + 0a1 Open + 0a2 Clear/Again + 0a3 CrSel/Props + 0a4 ExSel + 0e0 Control Left + 0e1 Shift Left + 0e2 Alt Left + 0e3 GUI Left + 0e4 Control Right + 0e5 Shift Right + 0e6 Alt Rigth + 0e7 GUI Right +HUT 08 LEDs + 000 Undefined + 001 NumLock + 002 CapsLock + 003 Scroll Lock + 004 Compose + 005 Kana + 006 Power + 007 Shift + 008 Do not disturb + 009 Mute + 00a Tone Enabke + 00b High Cut Filter + 00c Low Cut Filter + 00d Equalizer Enable + 00e Sound Field ON + 00f Surround On + 010 Repeat + 011 Stereo + 012 Sampling Rate Detect + 013 Spinning + 014 CAV + 015 CLV + 016 Recording Format Detect + 017 Off-Hook + 018 Ring + 019 Message Waiting + 01a Data Mode + 01b Battery Operation + 01c Battery OK + 01d Battery Low + 01e Speaker + 01f Head Set + 020 Hold + 021 Microphone + 022 Coverage + 023 Night Mode + 024 Send Calls + 025 Call Pickup + 026 Conference + 027 Stand-by + 028 Camera On + 029 Camera Off + 02a On-Line + 02b Off-Line + 02c Busy + 02d Ready + 02e Paper-Out + 02f Paper-Jam + 030 Remote + 031 Forward + 032 Reverse + 033 Stop + 034 Rewind + 035 Fast Forward + 036 Play + 037 Pause + 038 Record + 039 Error + 03a Usage Selected Indicator + 03b Usage In Use Indicator + 03c Usage Multi Indicator + 03d Indicator On + 03e Indicator Flash + 03f Indicator Slow Blink + 040 Indicator Fast Blink + 041 Indicator Off + 042 Flash On Time + 043 Slow Blink On Time + 044 Slow Blink Off Time + 045 Fast Blink On Time + 046 Fast Blink Off Time + 047 Usage Color Indicator + 048 Indicator Red + 049 Indicator Green + 04a Indicator Amber + 04b Generic Indicator + 04c System Suspend + 04d External Power Connected +HUT 09 Buttons + 000 No Button Pressed + 001 Button 1 (Primary) + 002 Button 2 (Secondary) + 003 Button 3 (Tertiary) + 004 Button 4 + 005 Button 5 +HUT 0a Ordinal + 001 Instance 1 + 002 Instance 2 + 003 Instance 3 +HUT 0b Telephony + 000 Unassigned + 001 Phone + 002 Answering Machine + 003 Message Controls + 004 Handset + 005 Headset + 006 Telephony Key Pad + 007 Programmable Button + 020 Hook Switch + 021 Flash + 022 Feature + 023 Hold + 024 Redial + 025 Transfer + 026 Drop + 027 Park + 028 Forward Calls + 029 Alternate Function + 02a Line + 02b Speaker Phone + 02c Conference + 02d Ring Enable + 02e Ring Select + 02f Phone Mute + 030 Caller ID + 050 Speed Dial + 051 Store Number + 052 Recall Number + 053 Phone Directory + 070 Voice Mail + 071 Screen Calls + 072 Do Not Disturb + 073 Message + 074 Answer On/Offf + 090 Inside Dial Tone + 091 Outside Dial Tone + 092 Inside Ring Tone + 093 Outside Ring Tone + 094 Priority Ring Tone + 095 Inside Ringback + 096 Priority Ringback + 097 Line Busy Tone + 098 Recorder Tone + 099 Call Waiting Tone + 09a Confirmation Tone 1 + 09b Confirmation Tone 2 + 09c Tones Off + 09d Outside Ringback + 0b0 Key 1 + 0b1 Key 2 + 0b3 Key 3 + 0b4 Key 4 + 0b5 Key 5 + 0b6 Key 6 + 0b7 Key 7 + 0b8 Key 8 + 0b9 Key 9 + 0ba Key Star + 0bb Key Pound + 0bc Key A + 0bd Key B + 0be Key C + 0bf Key D +HUT 0c Consumer + 000 Unassigned + 001 Consumer Control + 002 Numeric Key Pad + 003 Programmable Buttons + 020 +10 + 021 +100 + 022 AM/PM + 030 Power + 031 Reset + 032 Sleep + 033 Sleep After + 034 Sleep Mode + 035 Illumination + 036 Function Buttons + 040 Menu + 041 Menu Pick + 042 Menu Up + 043 Menu Down + 044 Menu Left + 045 Menu Right + 046 Menu Escape + 047 Menu Value Increase + 048 Menu Value Decrease + 060 Data on Screen + 061 Closed Caption + 062 Closed Caption Select + 063 VCR/TV + 064 Broadcast Mode + 065 Snapshot + 066 Still + 080 Selection + 081 Assign Selection + 082 Mode Step + 083 Recall Last + 084 Enter Channel + 085 Order Movie + 086 Channel + 087 Media Selection + 088 Media Select Computer + 089 Media Select TV + 08a Media Select WWW + 08b Media Select DVD + 08c Media Select Telephone + 08d Media Select Program Guide + 08e Media Select Video Phone + 08f Media Select Games + 090 Media Select Messages + 091 Media Select CD + 092 Media Select VCR + 093 Media Select Tuner + 094 Quit + 095 Help + 096 Media Select Tape + 097 Media Select Cable + 098 Media Select Satellite + 099 Media Select Security + 09a Media Select Home + 09b Media Select Call + 09c Channel Increment + 09d Channel Decrement + 09e Media Select SAP + 0a0 VCR Plus + 0a1 Once + 0a2 Daily + 0a3 Weekly + 0a4 Monthly + 0b0 Play + 0b1 Pause + 0b2 Record + 0b3 Fast Forward + 0b4 Rewind + 0b5 Scan Next Track + 0b6 Scan Previous Track + 0b7 Stop + 0b8 Eject + 0b9 Random Play + 0ba Select Disc + 0bb Enter Disc + 0bc Repeat + 0bd Tracking + 0be Track Normal + 0bf Slow Tracking + 0c0 Frame Forward + 0c1 Frame Back + 0c2 Mark + 0c3 Clear Mark + 0c4 Repeat from Mark + 0c5 Return to Mark + 0c6 Search Mark Forward + 0c7 Search Mark Backward + 0c8 Counter Reset + 0c9 Show Counter + 0ca Tracking Increment + 0cb Tracking Decrement + 0cc Stop/Eject + 0cd Play/Pause + 0ce Play/Skip + 0e0 Volume + 0e1 Balance + 0e2 Mute + 0e3 Bass + 0e4 Treble + 0e5 Bass Boost + 0e6 Surround Mode + 0e7 Loudness + 0e8 MPX + 0e9 Volume Increment + 0ea Volume Decrement + 0f0 Speed Select + 0f1 Playback Speed + 0f2 Standard Play + 0f3 Long Play + 0f4 Extended Play + 0f5 Slow + 100 Fan Enable + 101 Fan Speed + 102 Light Enable + 103 Light Illumination Level + 104 Climate Control Enable + 105 Room Temperature + 106 Security Enable + 107 Fire Alarm + 108 Police Alarm + 150 Balance Right + 151 Balance Left + 152 Bass Increment + 153 Bass Decrement + 154 Treble Increment + 155 Treble Decrement + 160 Speaker System + 161 Channel Left + 162 Channel Right + 163 Channel Center + 164 Channel Front + 165 Channel Center Front + 166 Channel Side + 167 Channel Surround + 168 Channel Low Frequency Enhancement + 169 Channel Top + 16a Channel Unknown + 170 Sub-Channel + 171 Sub-Channel Increment + 172 Sub-Channel Decrement + 173 Alternative Audio Increment + 174 Alternative Audio Decrement + 180 Application Launch Buttons + 181 AL Launch Button Configuration Tool + 182 AL Launch Button Configuration + 183 AL Consumer Control Configuration + 184 AL Word Processor + 185 AL Text Editor + 186 AL Spreadsheet + 187 AL Graphics Editor + 188 AL Presentation App + 189 AL Database App + 18a AL Email Reader + 18b AL Newsreader + 18c AL Voicemail + 18d AL Contacts/Address Book + 18e AL Calendar/Schedule + 18f AL Task/Project Manager + 190 AL Log/Jounal/Timecard + 191 AL Checkbook/Finance + 192 AL Calculator + 193 AL A/V Capture/Playback + 194 AL Local Machine Browser + 195 AL LAN/Wan Browser + 196 AL Internet Browser + 197 AL Remote Networking/ISP Connect + 198 AL Network Conference + 199 AL Network Chat + 19a AL Telephony/Dialer + 19b AL Logon + 19c AL Logoff + 19d AL Logon/Logoff + 19e AL Terminal Local/Screensaver + 19f AL Control Panel + 1a0 AL Command Line Processor/Run + 1a1 AL Process/Task Manager + 1a2 AL Select Task/Application + 1a3 AL Next Task/Application + 1a4 AL Previous Task/Application + 1a5 AL Preemptive Halt Task/Application + 200 Generic GUI Application Controls + 201 AC New + 202 AC Open + 203 AC CLose + 204 AC Exit + 205 AC Maximize + 206 AC Minimize + 207 AC Save + 208 AC Print + 209 AC Properties + 21a AC Undo + 21b AC Copy + 21c AC Cut + 21d AC Paste + 21e AC Select All + 21f AC Find + 220 AC Find and Replace + 221 AC Search + 222 AC Go To + 223 AC Home + 224 AC Back + 225 AC Forward + 226 AC Stop + 227 AC Refresh + 228 AC Previous Link + 229 AC Next Link + 22b AC History + 22c AC Subscriptions + 22d AC Zoom In + 22e AC Zoom Out + 22f AC Zoom + 230 AC Full Screen View + 231 AC Normal View + 232 AC View Toggle + 233 AC Scroll Up + 234 AC Scroll Down + 235 AC Scroll + 236 AC Pan Left + 237 AC Pan Right + 238 AC Pan + 239 AC New Window + 23a AC Tile Horizontally + 23b AC Tile Vertically + 23c AC Format +HUT 0d Digitizer + 000 Undefined + 001 Digitizer + 002 Pen + 003 Light Pen + 004 Touch Screen + 005 Touch Pad + 006 White Board + 007 Coordinate Measuring Machine + 008 3D Digitizer + 009 Stereo Plotter + 00a Articulated Arm + 00b Armature + 00c Multiple Point Digitizer + 00d Free Space Wand + 020 Stylus + 021 Puck + 022 Finger + 030 Tip Pressure + 031 Barrel Pressure + 032 In Range + 033 Touch + 034 Untouch + 035 Tap + 036 Quality + 037 Data Valid + 038 Transducer Index + 039 Tablet Function Keys + 03a Program Change Keys + 03b Battery Strength + 03c Invert + 03d X Tilt + 03e Y Tilt + 03f Azimuth + 040 Altitude + 041 Twist + 042 Tip Switch + 043 Secondary Tip Switch + 044 Barrel Switch + 045 Eraser + 046 Tablet Pick + 047 Confidence + 048 Width + 049 Height + 051 Contact ID + 052 Input Mode + 053 Device Index + 054 Contact Count + 055 Maximum Contact Number +HUT 0f PID Page + 000 Undefined + 001 Physical Interface Device + 020 Normal + 021 Set Effect Report + 022 Effect Block Index + 023 Parameter Block Offset + 024 ROM Flag + 025 Effect Type + 026 ET Constant Force + 027 ET Ramp + 028 ET Custom Force Data + 030 ET Square + 031 ET Sine + 032 ET Triangle + 033 ET Sawtooth Up + 034 ET Sawtooth Down + 040 ET Spring + 041 ET Damper + 042 ET Inertia + 043 ET Friction + 050 Duration + 051 Sample Period + 052 Gain + 053 Trigger Button + 054 Trigger Repeat Interval + 055 Axes Enable + 056 Direction Enable + 057 Direction + 058 Type Specific Block Offset + 059 Block Type + 05A Set Envelope Report + 05B Attack Level + 05C Attack Time + 05D Fade Level + 05E Fade Time + 05F Set Condition Report + 060 CP Offset + 061 Positive Coefficient + 062 Negative Coefficient + 063 Positive Saturation + 064 Negative Saturation + 065 Dead Band + 066 Download Force Sample + 067 Isoch Custom Force Enable + 068 Custom Force Data Report + 069 Custom Force Data + 06A Custom Force Vendor Defined Data + 06B Set Custom Force Report + 06C Custom Force Data Offset + 06D Sample Count + 06E Set Periodic Report + 06F Offset + 070 Magnitude + 071 Phase + 072 Period + 073 Set Constant Force Report + 074 Set Ramp Force Report + 075 Ramp Start + 076 Ramp End + 077 Effect Operation Report + 078 Effect Operation + 079 Op Effect Start + 07A Op Effect Start Solo + 07B Op Effect Stop + 07C Loop Count + 07D Device Gain Report + 07E Device Gain + 07F PID Pool Report + 080 RAM Pool Size + 081 ROM Pool Size + 082 ROM Effect Block Count + 083 Simultaneous Effects Max + 084 Pool Alignment + 085 PID Pool Move Report + 086 Move Source + 087 Move Destination + 088 Move Length + 089 PID Block Load Report + 08B Block Load Status + 08C Block Load Success + 08D Block Load Full + 08E Block Load Error + 08F Block Handle + 090 PID Block Free Report + 091 Type Specific Block Handle + 092 PID State Report + 094 Effect Playing + 095 PID Device Control Report + 096 PID Device Control + 097 DC Enable Actuators + 098 DC Disable Actuators + 099 DC Stop All Effects + 09A DC Device Reset + 09B DC Device Pause + 09C DC Device Continue + 09F Device Paused + 0A0 Actuators Enabled + 0A4 Safety Switch + 0A5 Actuator Override Switch + 0A6 Actuator Power + 0A7 Start Delay + 0A8 Parameter Block Size + 0A9 Device Managed Pool + 0AA Shared Parameter Blocks + 0AB Create New Effect Report + 0AC RAM Pool Available +HUT 10 Unicode +HUT 14 Alphanumeric Display + 000 Undefined + 001 Alphanumeric Display + 020 Display Attributes Report + 021 ASCII Character Set + 022 Data Read Back + 023 Font Read Back + 024 Display Control Report + 025 Clear Display + 026 Display Enable + 027 Screen Saver Delay + 028 Screen Saver Enable + 029 Vertical Scroll + 02a Horizontal Scroll + 02b Character Report + 02c Display Data + 02d Display Status + 02e Stat Not Ready + 02f Stat Ready + 030 Err Not a loadable Character + 031 Err Font Data Cannot Be Read + 032 Cursur Position Report + 033 Row + 034 Column + 035 Rows + 036 Columns + 037 Cursor Pixel Positioning + 038 Cursor Mode + 039 Cursor Enable + 03a Cursor Blink + 03b Font Report + 03c Font Data + 03d Character Width + 03e Character Height + 03f Character Spacing Horizontal + 040 Character Spacing Vertical + 041 Unicode Character Set +HUT 80 USB Monitor + 001 Monitor Control + 002 EDID Information + 003 VDIF Information + 004 VESA Version +HUT 81 USB Monitor Enumerated Values +HUT 82 Monitor VESA Virtual Controls + 001 Degauss + 010 Brightness + 012 Contrast + 016 Red Video Gain + 018 Green Video Gain + 01a Blue Video Gain + 01c Focus + 020 Horizontal Position + 022 Horizontal Size + 024 Horizontal Pincushion + 026 Horizontal Pincushion Balance + 028 Horizontal Misconvergence + 02a Horizontal Linearity + 02c Horizontal Linearity Balance + 030 Vertical Position + 032 Vertical Size + 034 Vertical Pincushion + 036 Vertical Pincushion Balance + 038 Vertical Misconvergence + 03a Vertical Linearity + 03c Vertical Linearity Balance + 040 Parallelogram Balance (Key Distortion) + 042 Trapezoidal Distortion (Key) + 044 Tilt (Rotation) + 046 Top Corner Distortion Control + 048 Top Corner Distortion Balance + 04a Bottom Corner Distortion Control + 04c Bottom Corner Distortion Balance + 056 Horizontal Moire + 058 Vertical Moire + 05e Input Level Select + 060 Input Source Select + 06c Red Video Black Level + 06e Green Video Black Level + 070 Blue Video Black Level + 0a2 Auto Size Center + 0a4 Polarity Horizontal Sychronization + 0a6 Polarity Vertical Synchronization + 0aa Screen Orientation + 0ac Horizontal Frequency in Hz + 0ae Vertical Frequency in 0.1 Hz + 0b0 Settings + 0ca On Screen Display (OSD) + 0d4 Stereo Mode +HUT 84 Power Device Page + 000 Undefined + 001 iName + 002 Present Status + 003 Changed Status + 004 UPS + 005 Power Supply + 010 Battery System + 011 Battery System ID + 012 Battery + 013 Battery ID + 014 Charger + 015 Charger ID + 016 Power Converter + 017 Power Converter ID + 018 Outlet System + 019 Outlet System ID + 01a Input + 01b Input ID + 01c Output + 01d Output ID + 01e Flow + 01f Flow ID + 020 Outlet + 021 Outlet ID + 022 Gang + 023 Gang ID + 024 Power Summary + 025 Power Summary ID + 030 Voltage + 031 Current + 032 Frequency + 033 Apparent Power + 034 Active Power + 035 Percent Load + 036 Temperature + 037 Humidity + 038 Bad Count + 040 Config Voltage + 041 Config Current + 042 Config Frequency + 043 Config Apparent Power + 044 Config Active Power + 045 Config Percent Load + 046 Config Temperature + 047 Config Humidity + 050 Switch On Control + 051 Switch Off Control + 052 Toggle Control + 053 Low Voltage Transfer + 054 High Voltage Transfer + 055 Delay Before Reboot + 056 Delay Before Startup + 057 Delay Before Shutdown + 058 Test + 059 Module Reset + 05a Audible Alarm Control + 060 Present + 061 Good + 062 Internal Failure + 063 Voltage out of range + 064 Frequency out of range + 065 Overload + 066 Over Charged + 067 Over Temperature + 068 Shutdown Requested + 069 Shutdown Imminent + 06a Reserved + 06b Switch On/Off + 06c Switchable + 06d Used + 06e Boost + 06f Buck + 070 Initialized + 071 Tested + 072 Awaiting Power + 073 Communication Lost + 0fd iManufacturer + 0fe iProduct + 0ff iSerialNumber +HUT 85 Battery System Page + 000 Undefined + 001 SMB Battery Mode + 002 SMB Battery Status + 003 SMB Alarm Warning + 004 SMB Charger Mode + 005 SMB Charger Status + 006 SMB Charger Spec Info + 007 SMB Selector State + 008 SMB Selector Presets + 009 SMB Selector Info + 010 Optional Mfg. Function 1 + 011 Optional Mfg. Function 2 + 012 Optional Mfg. Function 3 + 013 Optional Mfg. Function 4 + 014 Optional Mfg. Function 5 + 015 Connection to SMBus + 016 Output Connection + 017 Charger Connection + 018 Battery Insertion + 019 Use Next + 01a OK to use + 01b Battery Supported + 01c SelectorRevision + 01d Charging Indicator + 028 Manufacturer Access + 029 Remaining Capacity Limit + 02a Remaining Time Limit + 02b At Rate + 02c Capacity Mode + 02d Broadcast To Charger + 02e Primary Battery + 02f Charge Controller + 040 Terminate Charge + 041 Terminate Discharge + 042 Below Remaining Capacity Limit + 043 Remaining Time Limit Expired + 044 Charging + 045 Discharging + 046 Fully Charged + 047 Fully Discharged + 048 Conditioning Flag + 049 At Rate OK + 04a SMB Error Code + 04b Need Replacement + 060 At Rate Time To Full + 061 At Rate Time To Empty + 062 Average Current + 063 Max Error + 064 Relative State Of Charge + 065 Absolute State Of Charge + 066 Remaining Capacity + 067 Full Charge Capacity + 068 Run Time To Empty + 069 Average Time To Empty + 06a Average Time To Full + 06b Cycle Count + 080 Batt. Pack Model Level + 081 Internal Charge Controller + 082 Primary Battery Support + 083 Design Capacity + 084 Specification Info + 085 Manufacturer Date + 086 Serial Number + 087 iManufacturerName + 088 iDeviceName + 089 iDeviceChemistry + 08a Manufacturer Data + 08b Rechargeable + 08c Warning Capacity Limit + 08d Capacity Granularity 1 + 08e Capacity Granularity 2 + 08f iOEMInformation + 0c0 Inhibit Charge + 0c1 Enable Polling + 0c2 Reset To Zero + 0d0 AC Present + 0d1 Battery Present + 0d2 Power Fail + 0d3 Alarm Inhibited + 0d4 Thermistor Under Range + 0d5 Thermistor Hot + 0d6 Thermistor Cold + 0d7 Thermistor Over Range + 0d8 Voltage Out Of Range + 0d9 Current Out Of Range + 0da Current Not Regulated + 0db Voltage Not Regulated + 0dc Master Mode + 0f0 Charger Selector Support + 0f1 Charger Spec + 0f2 Level 2 + 0f3 Level 3 +HUT 86 Power Pages +HUT 87 Power Pages +HUT 8c Bar Code Scanner Page (POS) +HUT 8d Scale Page (POS) +HUT 90 Camera Control Page +HUT 91 Arcade Control Page +HUT f0 Cash Device + 0f1 Cash Drawer + 0f2 Cash Drawer Number + 0f3 Cash Drawer Set + 0f4 Cash Drawer Status +HUT ff Vendor Specific + +# List of Languages + +# Syntax: +# L language_id language_name +# dialect_id dialect_name + +L 0001 Arabic + 01 Saudi Arabia + 02 Iraq + 03 Egypt + 04 Libya + 05 Algeria + 06 Morocco + 07 Tunesia + 08 Oman + 09 Yemen + 0a Syria + 0b Jordan + 0c Lebanon + 0d Kuwait + 0e U.A.E + 0f Bahrain + 10 Qatar +L 0002 Bulgarian +L 0003 Catalan +L 0004 Chinese + 01 Traditional + 02 Simplified + 03 Hongkong SAR, PRC + 04 Singapore + 05 Macau SAR +L 0005 Czech +L 0006 Danish +L 0007 German + 01 German + 02 Swiss + 03 Austrian + 04 Luxembourg + 05 Liechtenstein +L 0008 Greek +L 0009 English + 01 US + 02 UK + 03 Australian + 04 Canadian + 05 New Zealand + 06 Ireland + 07 South Africa + 08 Jamaica + 09 Carribean + 0a Belize + 0b Trinidad + 0c Zimbabwe + 0d Philippines +L 000a Spanish + 01 Castilian + 02 Mexican + 03 Modern + 04 Guatemala + 05 Costa Rica + 06 Panama + 07 Dominican Republic + 08 Venzuela + 09 Colombia + 0a Peru + 0b Argentina + 0c Ecuador + 0d Chile + 0e Uruguay + 0f Paraguay + 10 Bolivia + 11 El Salvador + 12 Honduras + 13 Nicaragua + 14 Puerto Rico +L 000b Finnish +L 000c French + 01 French + 02 Belgian + 03 Canadian + 04 Swiss + 05 Luxembourg + 06 Monaco +L 000d Hebrew +L 000e Hungarian +L 000f Idelandic +L 0010 Italian + 01 Italian + 02 Swiss +L 0011 Japanese +L 0012 Korean + 01 Korean +L 0013 Dutch + 01 Dutch + 02 Belgian +L 0014 Norwegian + 01 Bokmal + 02 Nynorsk +L 0015 Polish +L 0016 Portuguese + 01 Portuguese + 02 Brazilian +L 0017 forgotten +L 0018 Romanian +L 0019 Russian +L 001a Serbian + 01 Croatian + 02 Latin + 03 Cyrillic +L 001b Slovak +L 001c Albanian +L 001d Swedish + 01 Swedish + 02 Finland +L 001e Thai +L 001f Turkish +L 0020 Urdu + 01 Pakistan + 02 India +L 0021 Indonesian +L 0022 Ukrainian +L 0023 Belarusian +L 0024 Slovenian +L 0025 Estonian +L 0026 Latvian +L 0027 Lithuanian + 01 Lithuanian +L 0028 forgotten +L 0029 Farsi +L 002a Vietnamese +L 002b Armenian +L 002c Azeri + 01 Cyrillic + 02 Latin +L 002d Basque +L 002e forgotten +L 002f Macedonian +L 0036 Afrikaans +L 0037 Georgian +L 0038 Faeroese +L 0039 Hindi +L 003e Malay + 01 Malaysia + 02 Brunei Darassalam +L 003f Kazak +L 0041 Awahili +L 0043 Uzbek + 01 Latin + 02 Cyrillic +L 0044 Tatar +L 0045 Bengali +L 0046 Punjabi +L 0047 Gujarati +L 0048 Oriya +L 0049 Tamil +L 004a Telugu +L 004b Kannada +L 004c Malayalam +L 004d Assamese +L 004e Marathi +L 004f Sanskrit +L 0057 Konkani +L 0058 Manipuri +L 0059 Sindhi +L 0060 Kashmiri + 02 India +L 0061 Nepali + 02 India + +# HID Descriptor bCountryCode +# HID Specification 1.11 (2001-06-27) page 23 +# +# Syntax: +# HCC country_code keymap_type + +HCC 00 Not supported +HCC 01 Arabic +HCC 02 Belgian +HCC 03 Canadian-Bilingual +HCC 04 Canadian-French +HCC 05 Czech Republic +HCC 06 Danish +HCC 07 Finnish +HCC 08 French +HCC 09 German +HCC 10 Greek +HCC 11 Hebrew +HCC 12 Hungary +HCC 13 International (ISO) +HCC 14 Italian +HCC 15 Japan (Katakana) +HCC 16 Korean +HCC 17 Latin American +HCC 18 Netherlands/Dutch +HCC 19 Norwegian +HCC 20 Persian (Farsi) +HCC 21 Poland +HCC 22 Portuguese +HCC 23 Russia +HCC 24 Slovakia +HCC 25 Spanish +HCC 26 Swedish +HCC 27 Swiss/French +HCC 28 Swiss/German +HCC 29 Switzerland +HCC 30 Taiwan +HCC 31 Turkish-Q +HCC 32 UK +HCC 33 US +HCC 34 Yugoslavia +HCC 35 Turkish-F + +# List of Video Class Terminal Types + +# Syntax: +# VT terminal_type terminal_type_name + +VT 0100 USB Vendor Specific +VT 0101 USB Streaming +VT 0200 Input Vendor Specific +VT 0201 Camera Sensor +VT 0202 Sequential Media +VT 0300 Output Vendor Specific +VT 0301 Generic Display +VT 0302 Sequential Media +VT 0400 External Vendor Specific +VT 0401 Composite Video +VT 0402 S-Video +VT 0403 Component Video |