--- acr38-1.7.6.orig/ACR38_LINUX_100706_P.tar.gz.cdbs-config_list +++ acr38-1.7.6/ACR38_LINUX_100706_P.tar.gz.cdbs-config_list @@ -0,0 +1,6 @@ +ACR38_LINUX_100706_P/build/config.guess +ACR38_LINUX_100706_P/build/config.sub +ACR38_LINUX_100706_P/config.status +ACR38_LINUX_100706_P/config.log +ACR38_LINUX_100706_P/config.h +ACR38_LINUX_100706_P/config.h.in --- acr38-1.7.6.orig/debian/libacr38ucontrol0.install +++ acr38-1.7.6/debian/libacr38ucontrol0.install @@ -0,0 +1 @@ +debian/tmp/usr/lib/libacr38ucontrol.so.* --- acr38-1.7.6.orig/debian/changelog +++ acr38-1.7.6/debian/changelog @@ -0,0 +1,18 @@ +acr38 (1.7.6-3) unstable; urgency=low + + * src/driver/usblinux.c: Add some code from libusb to auto-detect usbfs path. + + -- Laurent Bigonville Thu, 20 Jul 2006 12:25:27 +0200 + +acr38 (1.7.6-2) unstable; urgency=low + + * debian/patches/01controlmake.diff: link libacr38ucontrol0 against libpcsclite. + * debian/control: Remove the version for the pcscd dependency. + + -- Laurent Bigonville Thu, 6 Jul 2006 17:16:16 +0200 + +acr38 (1.7.6-1) unstable; urgency=low + + * Initial release. (Closes: #355415) + + -- Laurent Bigonville Sat, 27 May 2006 17:40:08 +0200 --- acr38-1.7.6.orig/debian/libacr38u.postrm +++ acr38-1.7.6/debian/libacr38u.postrm @@ -0,0 +1,45 @@ +#! /bin/sh +# postrm script for acr38 +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `purge' +# * `upgrade' +# * `failed-upgrade' +# * `abort-install' +# * `abort-install' +# * `abort-upgrade' +# * `disappear' overwrit>r> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + remove) + if [ -x /etc/init.d/pcscd ] + then + invoke-rc.d pcscd restart-if-running 3>/dev/null + fi + + ;; + + purge|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + + ;; + + *) + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 + +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 --- acr38-1.7.6.orig/debian/control +++ acr38-1.7.6/debian/control @@ -0,0 +1,41 @@ +Source: acr38 +Section: misc +Priority: extra +Maintainer: Laurent Bigonville +Build-Depends: cdbs, libpcsclite-dev (>= 1.2.9-beta9-1), pkg-config, debhelper (>= 5.0.0), automake1.9, libtool +Standards-Version: 3.7.2 + +Package: libacr38u +Section: libs +Priority: extra +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: pcscd +Provides: pcsc-ifd-handler +Description: PC/SC driver for the ACR38U smart card reader + This library provides a PC/SC IFD handler implementation for the ACS + ACR38U smart card readers. This driver is for the non-CCID version only. + . + This package is needed to communicate with the ACR38U smartcard + readers through the PC/SC Lite resource manager (pcscd). + +Package: libacr38ucontrol0 +Section: libs +Priority: extra +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: libacr38u (= ${Source-Version}) +Description: Library for operational mode for ACR38U smartcard reader + This library set the operational mode for ACR38U smartcard reader + to processory or memory card. + +Package: libacr38ucontrol-dev +Section: libdevel +Priority: extra +Architecture: any +Depends: libacr38ucontrol0 (= ${Source-Version}), libpcsclite-dev +Description: Library for operational mode for ACR38U smartcard reader dev files + This library set the operational mode for ACR38U smartcard reader + to processory or memory card. + . + This package contains development files. --- acr38-1.7.6.orig/debian/compat +++ acr38-1.7.6/debian/compat @@ -0,0 +1 @@ +5 --- acr38-1.7.6.orig/debian/patches/01install.patch +++ acr38-1.7.6/debian/patches/01install.patch @@ -0,0 +1,18 @@ +diff -ru ACR38_LINUX_100706_P.old/src/driver/Makefile.am ACR38_LINUX_100706_P/src/driver/Makefile.am +--- ACR38_LINUX_100706_P.old/src/driver/Makefile.am 2005-08-26 14:46:28.000000000 +0200 ++++ ACR38_LINUX_100706_P/src/driver/Makefile.am 2006-05-19 03:02:42.000000000 +0200 +@@ -41,10 +41,10 @@ + libACR38UDriver_la_LIBADD = @LIBPCSCLITE@ @COREFOUNDATION@ @IOKIT@ + + install: libACR38UDriver.la +- $(mkinstalldirs) $(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/ +- $(INSTALL) .libs/$(DRIVER_LIB_NAME) $(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/$(DRIVER_NAME) +- $(INSTALL) Info.plist $(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents +-# chmod 755 $(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/$(DRIVER_LIB_NAME) ++ $(mkinstalldirs) $(DESTDIR)$(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/ ++ $(INSTALL) .libs/$(DRIVER_LIB_NAME) $(DESTDIR)$(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/$(DRIVER_NAME).$(DYN_LIB_EXT) ++ $(INSTALL) Info.plist $(DESTDIR)$(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents ++# chmod 755 $(DESTDIR)$(usbdropdir)/$(DRIVER_BUNDLE_DIR)/Contents/$(BUNDLE_HOST)/$(DRIVER_LIB_NAME) + + uninstall: + rm -rf $(usbdropdir)/$(DRIVER_BUNDLE_DIR) --- acr38-1.7.6.orig/debian/patches/01controlmake.diff +++ acr38-1.7.6/debian/patches/01controlmake.diff @@ -0,0 +1,11 @@ +diff -ru ACR38_LINUX_100706_P.old/src/controllib/Makefile.am ACR38_LINUX_100706_P/src/controllib/Makefile.am +--- ACR38_LINUX_100706_P.old/src/controllib/Makefile.am 2005-09-27 14:54:19.000000000 +0200 ++++ ACR38_LINUX_100706_P/src/controllib/Makefile.am 2006-06-25 21:51:42.000000000 +0200 +@@ -17,6 +17,7 @@ + + libacr38ucontrol_la_SOURCES = $(SRC_CONTROLLIB) + libacr38ucontrol_la_CFLAGS = `pkg-config libpcsclite --cflags` ++libacr38ucontrol_la_LIBADD = @LIBPCSCLITE@ + + #pcdir= $(PKG_PCSC_CONFIG_PATH) + pcdir= @prefix@/lib/pkgconfig --- acr38-1.7.6.orig/debian/patches/02infos.patch +++ acr38-1.7.6/debian/patches/02infos.patch @@ -0,0 +1,13 @@ +diff -ru ACR38_LINUX_100706_P.old/src/driver/Info.plist ACR38_LINUX_100706_P/src/driver/Info.plist +--- ACR38_LINUX_100706_P.old/src/driver/Info.plist 2005-08-26 14:07:58.000000000 +0200 ++++ ACR38_LINUX_100706_P/src/driver/Info.plist.in 2006-05-27 17:18:03.000000000 +0200 +@@ -5,7 +5,7 @@ + CFBundleDevelopmentRegion + English + CFBundleExecutable +- ACR38UDriver ++ ACR38UDriver.so + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType +Seulement dans ACR38_LINUX_100706_P/src/driver: Info.plist~ --- acr38-1.7.6.orig/debian/patches/01usbfs.patch +++ acr38-1.7.6/debian/patches/01usbfs.patch @@ -0,0 +1,85 @@ +--- ACR38_LINUX_100706_P.old/src/driver/usblinux.c 2005-08-26 14:07:58.000000000 +0200 ++++ ACR38_LINUX_100706_P/src/driver/usblinux.c 2006-07-20 11:39:22.000000000 +0200 +@@ -18,23 +18,34 @@ + #include "config.h" + + +-#define PCSCLITE_USB_PATH "/proc/bus/usb" +- ++#define PCSCLITE_USB_PATH "/proc/bus/usb" ++#define UDEV_USB_PATH "/dev/bus/usb" ++ ++static int check_usb_vfs(const char *dirname); + + int open_linux_usb_dev ( unsigned int manuID, unsigned int prodID, + unsigned int lunNum ) { + + DIR *dir, *dirB; + struct dirent *entry, *entryB; +- char dirpath[150]; ++ char dirpath[150]; ++ char dirbase[150]; + struct usb_device_descriptor usbDescriptor; +- +- +- dir = opendir(PCSCLITE_USB_PATH); +- if (!dir) { +- printf("Cannot Open USB Path Directory\n"); ++ ++ ++ if (check_usb_vfs(UDEV_USB_PATH)) { ++ dir = opendir(UDEV_USB_PATH); ++ strcpy(dirbase, UDEV_USB_PATH); ++ } ++ else if (check_usb_vfs(PCSCLITE_USB_PATH)) { ++ dir = opendir(PCSCLITE_USB_PATH); ++ strcpy(dirbase, PCSCLITE_USB_PATH); + } +- ++ else { ++ printf("Cannot Open USB Path Directory\n"); ++ return -1; ++ } ++ + + while ((entry = readdir(dir)) != NULL) { + +@@ -45,7 +56,7 @@ + continue; + } + +- sprintf(dirpath, "%s/%s", PCSCLITE_USB_PATH, entry->d_name); ++ sprintf(dirpath, "%s/%s", dirbase, entry->d_name); + + dirB = opendir(dirpath); + +@@ -141,3 +152,29 @@ + + return ret; + } ++ ++/* Code from libusb to detect if usbfs path is valid */ ++static int check_usb_vfs(const char *dirname) ++{ ++ DIR *dir; ++ struct dirent *entry; ++ int found = 0; ++ ++ dir = opendir(dirname); ++ if (!dir) ++ return 0; ++ ++ while ((entry = readdir(dir)) != NULL) { ++ /* Skip anything starting with a . */ ++ if (entry->d_name[0] == '.') ++ continue; ++ ++ /* We assume if we find any files that it must be the right place */ ++ found = 1; ++ break; ++ } ++ ++ closedir(dir); ++ ++ return found; ++} --- acr38-1.7.6.orig/debian/libacr38u.postinst +++ acr38-1.7.6/debian/libacr38u.postinst @@ -0,0 +1,45 @@ +#! /bin/sh +# postinst script for acr38 +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package +# + +case "$1" in + configure) + if [ -x /etc/init.d/pcscd ] + then + invoke-rc.d pcscd restart-if-running 3> /dev/null + fi + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + --- acr38-1.7.6.orig/debian/libacr38u.install +++ acr38-1.7.6/debian/libacr38u.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/pcsc/drivers/ACR38UDriver.bundle/Contents/Linux/ACR38UDriver.so +debian/tmp/usr/lib/pcsc/drivers/ACR38UDriver.bundle/Contents/Info.plist --- acr38-1.7.6.orig/debian/copyright +++ acr38-1.7.6/debian/copyright @@ -0,0 +1,26 @@ +This package was debianized by Laurent Bigonville on +Sat, 20 May 2006 03:36:56 +0200. + +It was downloaded from http://www.acs.com.hk/DriversManual.asp?PID=59 + +Copyright Holder: Edward Cheung + +License: + + This package is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This package 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this package; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian systems, the complete text of the GNU Lesser General +Public License can be found in `/usr/share/common-licenses/LGPL'. + --- acr38-1.7.6.orig/debian/rules +++ acr38-1.7.6/debian/rules @@ -0,0 +1,17 @@ +#!/usr/bin/make -f + +DEB_TAR_SRCDIR := ACR38_LINUX_100706_P +DEB_AUTO_UPDATE_AUTOMAKE := 1.9 + +DEB_DH_MAKESHLIBS_ARGS_libacr38u := -n + +include /usr/share/cdbs/1/rules/tarball.mk +include /usr/share/cdbs/1/rules/debhelper.mk +include /usr/share/cdbs/1/class/autotools.mk +include /usr/share/cdbs/1/rules/simple-patchsys.mk + +pre-build:: + $(MAKE) -C $(DEB_SRCDIR) distclean + +binary-install/libacr38u:: + chmod 644 debian/libacr38u/usr/lib/pcsc/drivers/ACR38UDriver.bundle/Contents/Info.plist --- acr38-1.7.6.orig/debian/libacr38ucontrol-dev.install +++ acr38-1.7.6/debian/libacr38ucontrol-dev.install @@ -0,0 +1,3 @@ +debian/tmp/usr/include/* +debian/tmp/usr/lib/pkgconfig/* +debian/tmp/usr/lib/libacr38ucontrol.{a,la,so}