* [Buildroot] [PATCH 0/1] ACS CCID PC/SC Driver
@ 2015-12-30 11:33 Juha Rantanen
2015-12-30 11:33 ` [Buildroot] [PATCH 1/1] ACS CCID PC/SC Driver added Juha Rantanen
0 siblings, 1 reply; 6+ messages in thread
From: Juha Rantanen @ 2015-12-30 11:33 UTC (permalink / raw)
To: buildroot
Hi,
This is my first patch, hope I did everything right. My device I tested with
is ACR122U USB NFC Reader on RPi 2 but the driver should support a lot of ACS
readers.
I wasn't sure whether this belongs in "Hardware handling" or
"Libraries/Hardware handling" and also not sure if flex and perl are needed
only on build.
Source: https://github.com/acshk/acsccid
Juha Rantanen (1):
ACS CCID PC/SC Driver added.
package/Config.in | 1 +
package/acsccid/Config.in | 11 +++++++++++
package/acsccid/acsccid.mk | 14 ++++++++++++++
3 files changed, 26 insertions(+)
create mode 100644 package/acsccid/Config.in
create mode 100644 package/acsccid/acsccid.mk
--
2.1.4
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH 1/1] ACS CCID PC/SC Driver added.
2015-12-30 11:33 [Buildroot] [PATCH 0/1] ACS CCID PC/SC Driver Juha Rantanen
@ 2015-12-30 11:33 ` Juha Rantanen
2015-12-30 13:19 ` Thomas Petazzoni
2015-12-30 15:16 ` [Buildroot] [PATCH v2] " Juha Rantanen
0 siblings, 2 replies; 6+ messages in thread
From: Juha Rantanen @ 2015-12-30 11:33 UTC (permalink / raw)
To: buildroot
Signed-off-by: Juha Rantanen <juha@codercoded.com>
---
package/Config.in | 1 +
package/acsccid/Config.in | 11 +++++++++++
package/acsccid/acsccid.mk | 14 ++++++++++++++
3 files changed, 26 insertions(+)
create mode 100644 package/acsccid/Config.in
create mode 100644 package/acsccid/acsccid.mk
diff --git a/package/Config.in b/package/Config.in
index bc6099d..c35cf17 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -906,6 +906,7 @@ menu "Graphics"
endmenu
menu "Hardware handling"
+ source "package/acsccid/Config.in"
source "package/bcm2835/Config.in"
source "package/c-periphery/Config.in"
source "package/ccid/Config.in"
diff --git a/package/acsccid/Config.in b/package/acsccid/Config.in
new file mode 100644
index 0000000..9635a99
--- /dev/null
+++ b/package/acsccid/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_ACSCCID
+ bool "acsccid"
+ depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
+ select BR2_PACKAGE_PCSC_LITE
+ select BR2_PACKAGE_LIBUSB
+ select BR2_PACKAGE_FLEX
+ select BR2_PACKAGE_PERL
+ help
+ acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID smart card readers.
+
+ http://acsccid.sourceforge.net/
diff --git a/package/acsccid/acsccid.mk b/package/acsccid/acsccid.mk
new file mode 100644
index 0000000..1325e73
--- /dev/null
+++ b/package/acsccid/acsccid.mk
@@ -0,0 +1,14 @@
+#############################################################
+#
+# acsccid
+#
+#############################################################
+ACSCCID_VERSION = 1.1.1
+ACSCCID_SOURCE = acsccid-$(ACSCCID_VERSION).tar.bz2
+ACSCCID_SITE = http://downloads.sourceforge.net/acsccid
+ACSCCID_INSTALL_STAGING = YES
+ACSCCID_INSTALL_TARGET = YES
+ACSCCID_CONF_OPTS = --enable-shared
+ACSCCID_DEPENDENCIES = pcsc-lite libusb flex perl host-pkgconf
+
+$(eval $(autotools-package))
--
2.1.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH 1/1] ACS CCID PC/SC Driver added.
2015-12-30 11:33 ` [Buildroot] [PATCH 1/1] ACS CCID PC/SC Driver added Juha Rantanen
@ 2015-12-30 13:19 ` Thomas Petazzoni
2015-12-30 15:16 ` [Buildroot] [PATCH v2] " Juha Rantanen
1 sibling, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2015-12-30 13:19 UTC (permalink / raw)
To: buildroot
Dear Juha Rantanen,
Thanks for this contribution. See some comments below.
On Wed, 30 Dec 2015 13:33:23 +0200, Juha Rantanen wrote:
> diff --git a/package/acsccid/Config.in b/package/acsccid/Config.in
> new file mode 100644
> index 0000000..9635a99
> --- /dev/null
> +++ b/package/acsccid/Config.in
> @@ -0,0 +1,11 @@
> +config BR2_PACKAGE_ACSCCID
> + bool "acsccid"
Indentation should be done with one tab.
> + depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
> + select BR2_PACKAGE_PCSC_LITE
> + select BR2_PACKAGE_LIBUSB
libusb is not mandatory, you can disable using --disable-libusb.
> + select BR2_PACKAGE_FLEX
> + select BR2_PACKAGE_PERL
What makes you think Perl and Flex are needed?
For Flex, I see a .l file in the source, so you quite probably needs
Flex on your build machine (by adding host-flex in <pkg>_DEPENDENCIES),
but I don't see why you would need Flex on the target.
For Perl, I see it being used at build time, but not at configure time.
And since we guarantee that a Perl interpreter is available on the
build machine as hard dependency of Buildroot, you don't need anything.
> + help
> + acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID smart card readers.
Indentation for help text is one tab + two spaces. Also, it should be
wrapped so that the lines do not have more than 72 columns.
Since your package has a dependency on threads, you need to add a
Config.in comment like this:
comment "acsccid needs a toolchain w/ threads"
depends on !BR2_TOOLCHAIN_HAS_THREADS
See the Buildroot manual for details about this (or the numerous
examples in the Buildroot tree).
> diff --git a/package/acsccid/acsccid.mk b/package/acsccid/acsccid.mk
> new file mode 100644
> index 0000000..1325e73
> --- /dev/null
> +++ b/package/acsccid/acsccid.mk
> @@ -0,0 +1,14 @@
> +#############################################################
> +#
> +# acsccid
> +#
> +#############################################################
80 # signs are needed, and an empty new line after this header.
> +ACSCCID_VERSION = 1.1.1
> +ACSCCID_SOURCE = acsccid-$(ACSCCID_VERSION).tar.bz2
> +ACSCCID_SITE = http://downloads.sourceforge.net/acsccid
> +ACSCCID_INSTALL_STAGING = YES
> +ACSCCID_INSTALL_TARGET = YES
Not needed, this is the default.
> +ACSCCID_CONF_OPTS = --enable-shared
Not needed, and potentially wrong. --{enable,disable}-{shared,static}
is automatically passed by the package infrastructure, depending on the
Buildroot configuration in terms of static/shared libraries.
> +ACSCCID_DEPENDENCIES = pcsc-lite libusb flex perl host-pkgconf
As indicated above, I believe the libusb dependency is optional, and
there is no flex and perl dependency, but instead just a host-flex
dependency.
So most likely, something like this:
ACSCCID_DEPENDENCIES = pcsc-lite host-flex host-pkgconf
ifeq ($(BR2_PACKAGE_LIBUSB),y)
ACSCCID_DEPENDENCIES += libusb
ACSCCID_CONF_OPTS += --enable-libusb
else
ACSCCID_CONF_OPTS += --disable-libusb
endif
Also, you forgot add the <pkg>_LICENSE and <pkg>_LICENSE_FILES
variables.
Could you rework your patch to take into account those comments, and
send an updated version ?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v2] ACS CCID PC/SC Driver added.
2015-12-30 11:33 ` [Buildroot] [PATCH 1/1] ACS CCID PC/SC Driver added Juha Rantanen
2015-12-30 13:19 ` Thomas Petazzoni
@ 2015-12-30 15:16 ` Juha Rantanen
2015-12-30 21:48 ` Arnout Vandecappelle
2015-12-30 22:20 ` Thomas Petazzoni
1 sibling, 2 replies; 6+ messages in thread
From: Juha Rantanen @ 2015-12-30 15:16 UTC (permalink / raw)
To: buildroot
Fixes for acsccid.
Signed-off-by: Juha Rantanen <juha@codercoded.com>
---
Changes v1 -> v2:
- syntax fixes
- removed flex and perl deps
- libusb optional
- added license
package/Config.in | 1 +
package/acsccid/Config.in | 12 ++++++++++++
package/acsccid/acsccid.mk | 22 ++++++++++++++++++++++
3 files changed, 35 insertions(+)
create mode 100644 package/acsccid/Config.in
create mode 100644 package/acsccid/acsccid.mk
diff --git a/package/Config.in b/package/Config.in
index ef03632..25e574f 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -907,6 +907,7 @@ menu "Graphics"
endmenu
menu "Hardware handling"
+ source "package/acsccid/Config.in"
source "package/bcm2835/Config.in"
source "package/c-periphery/Config.in"
source "package/ccid/Config.in"
diff --git a/package/acsccid/Config.in b/package/acsccid/Config.in
new file mode 100644
index 0000000..b5af1d0
--- /dev/null
+++ b/package/acsccid/Config.in
@@ -0,0 +1,12 @@
+config BR2_PACKAGE_ACSCCID
+ bool "acsccid"
+ depends on BR2_TOOLCHAIN_HAS_THREADS
+ select BR2_PACKAGE_PCSC_LITE
+ help
+ acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID
+ smart card readers.
+
+ http://acsccid.sourceforge.net/
+
+comment "acsccid needs a toolchain w/ threads"
+ depends on !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/acsccid/acsccid.mk b/package/acsccid/acsccid.mk
new file mode 100644
index 0000000..3d24414
--- /dev/null
+++ b/package/acsccid/acsccid.mk
@@ -0,0 +1,22 @@
+################################################################################
+#
+# acsccid
+#
+################################################################################
+
+ACSCCID_VERSION = 1.1.1
+ACSCCID_SOURCE = acsccid-$(ACSCCID_VERSION).tar.bz2
+ACSCCID_SITE = http://downloads.sourceforge.net/acsccid
+ACSCCID_LICENSE = LGPLv2.1+
+ACSCCID_LICENSE_FILES = COPYING
+ACSCCID_INSTALL_STAGING = YES
+ACSCCID_DEPENDENCIES = pcsc-lite host-perl host-flex host-pkgconf
+
+ifeq ($(BR2_PACKAGE_LIBUSB),y)
+ACSCCID_DEPENDENCIES += libusb
+ACSCCID_CONF_OPTS += --enable-libusb
+else
+ACSCCID_CONF_OPTS += --disable-libusb
+endif
+
+$(eval $(autotools-package))
--
2.1.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v2] ACS CCID PC/SC Driver added.
2015-12-30 15:16 ` [Buildroot] [PATCH v2] " Juha Rantanen
@ 2015-12-30 21:48 ` Arnout Vandecappelle
2015-12-30 22:20 ` Thomas Petazzoni
1 sibling, 0 replies; 6+ messages in thread
From: Arnout Vandecappelle @ 2015-12-30 21:48 UTC (permalink / raw)
To: buildroot
Hi Juha,
Still a few more things that Thomas missed.
On 30-12-15 16:16, Juha Rantanen wrote:
> Fixes for acsccid.
>
> Signed-off-by: Juha Rantanen <juha@codercoded.com>
> ---
> Changes v1 -> v2:
> - syntax fixes
> - removed flex and perl deps
> - libusb optional
> - added license
>
> package/Config.in | 1 +
> package/acsccid/Config.in | 12 ++++++++++++
> package/acsccid/acsccid.mk | 22 ++++++++++++++++++++++
You should also add a hash file, see
http://nightly.buildroot.org/#adding-packages-hash
> 3 files changed, 35 insertions(+)
> create mode 100644 package/acsccid/Config.in
> create mode 100644 package/acsccid/acsccid.mk
>
> diff --git a/package/Config.in b/package/Config.in
> index ef03632..25e574f 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -907,6 +907,7 @@ menu "Graphics"
> endmenu
>
> menu "Hardware handling"
> + source "package/acsccid/Config.in"
> source "package/bcm2835/Config.in"
> source "package/c-periphery/Config.in"
> source "package/ccid/Config.in"
> diff --git a/package/acsccid/Config.in b/package/acsccid/Config.in
> new file mode 100644
> index 0000000..b5af1d0
> --- /dev/null
> +++ b/package/acsccid/Config.in
> @@ -0,0 +1,12 @@
> +config BR2_PACKAGE_ACSCCID
> + bool "acsccid"
> + depends on BR2_TOOLCHAIN_HAS_THREADS
> + select BR2_PACKAGE_PCSC_LITE
> + help
> + acsccid is a PC/SC driver for Linux/Mac OS X and it supports ACS CCID
Still a bit too long, the tab counts as 8 characters so there should be just 62
"real" characters on the line.
> + smart card readers.
> +
> + http://acsccid.sourceforge.net/
> +
> +comment "acsccid needs a toolchain w/ threads"
> + depends on !BR2_TOOLCHAIN_HAS_THREADS
> diff --git a/package/acsccid/acsccid.mk b/package/acsccid/acsccid.mk
> new file mode 100644
> index 0000000..3d24414
> --- /dev/null
> +++ b/package/acsccid/acsccid.mk
> @@ -0,0 +1,22 @@
> +################################################################################
> +#
> +# acsccid
> +#
> +################################################################################
> +
> +ACSCCID_VERSION = 1.1.1
> +ACSCCID_SOURCE = acsccid-$(ACSCCID_VERSION).tar.bz2
> +ACSCCID_SITE = http://downloads.sourceforge.net/acsccid
> +ACSCCID_LICENSE = LGPLv2.1+
> +ACSCCID_LICENSE_FILES = COPYING
> +ACSCCID_INSTALL_STAGING = YES
> +ACSCCID_DEPENDENCIES = pcsc-lite host-perl host-flex host-pkgconf
I would be surprised if host-perl is really needed, normally the system perl
should be sufficient.
Regards,
Arnout
> +
> +ifeq ($(BR2_PACKAGE_LIBUSB),y)
> +ACSCCID_DEPENDENCIES += libusb
> +ACSCCID_CONF_OPTS += --enable-libusb
> +else
> +ACSCCID_CONF_OPTS += --disable-libusb
> +endif
> +
> +$(eval $(autotools-package))
>
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Buildroot] [PATCH v2] ACS CCID PC/SC Driver added.
2015-12-30 15:16 ` [Buildroot] [PATCH v2] " Juha Rantanen
2015-12-30 21:48 ` Arnout Vandecappelle
@ 2015-12-30 22:20 ` Thomas Petazzoni
1 sibling, 0 replies; 6+ messages in thread
From: Thomas Petazzoni @ 2015-12-30 22:20 UTC (permalink / raw)
To: buildroot
Juha,
On Wed, 30 Dec 2015 17:16:23 +0200, Juha Rantanen wrote:
> Fixes for acsccid.
>
> Signed-off-by: Juha Rantanen <juha@codercoded.com>
> ---
> Changes v1 -> v2:
> - syntax fixes
> - removed flex and perl deps
> - libusb optional
> - added license
I've applied after doing the following changes:
[Thomas:
- fix commit title
- change libusb back to a mandatory dependency, since even though
there is a --disable-libusb option, it has no effect, and the code
fails to build due to missing libusb.h
- add hash file, noticed by Arnout
- remove host-perl dependency, noticed by Arnout
- rewrap Config.in help text, noticed by Arnout.]
Thanks for your contribution!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2015-12-30 22:20 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-30 11:33 [Buildroot] [PATCH 0/1] ACS CCID PC/SC Driver Juha Rantanen
2015-12-30 11:33 ` [Buildroot] [PATCH 1/1] ACS CCID PC/SC Driver added Juha Rantanen
2015-12-30 13:19 ` Thomas Petazzoni
2015-12-30 15:16 ` [Buildroot] [PATCH v2] " Juha Rantanen
2015-12-30 21:48 ` Arnout Vandecappelle
2015-12-30 22:20 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox