mirror of
https://github.com/flatcar/scripts.git
synced 2026-02-13 03:31:54 +01:00
app-crypt/ccid: Sync with Gentoo
It's from Gentoo commit 8cef1bb163e7fc8b33bb6a94de97b77d850b7dd6. Signed-off-by: Flatcar Buildbot <buildbot@flatcar-linux.org>
This commit is contained in:
parent
2d1cf9f16d
commit
3da4e86cad
@ -1,2 +1,2 @@
|
||||
DIST ccid-1.5.5.tar.bz2 708374 BLAKE2B a82986ead2dbb3241ef419ad16eb0fac835c5ab4fa988e5ee53cd1608a30a9381210a6fd013b6a059ca2835d55b4a41afa4064575e91b8eb356bff6d01d19add SHA512 9d2aebe645a5880bfad7d420ddab96811d1fd989c79afa28f5471ae53f36b6d45ee5e13b32ac4afcf59fc762ae835db7e6312ad6642b263158c2d9a30c7651bd
|
||||
DIST ccid-1.6.1.tar.xz 195844 BLAKE2B 7ab243196761b22edbaffca14b7ef840d53cc4eecc7d6252fb3255e85fc11eb0e1de65775a250da3d4687015ad6e2901d77b1227dc5921f69b42891541ad4e62 SHA512 3c8336a71e48880f3239b322acb0c40231ae83f80011cef39fef95eade6fd76849343faafdb4fcf9e962afda2c3a415e4a537d3f423b152ef2d3dddb4ecf2eac
|
||||
DIST ccid-1.7.0.tar.xz 200688 BLAKE2B c6c262365191181e53af81d9232cf87d9bfbf7e86d5791076c108776b1822e255da94867895d71331973a9e739ad47059c661880477af9cfa5f9ce599aca359a SHA512 8e138957f01deefc803dde707fa3a9888de260abcfc0e8c57ef5ce7c506d173552ec55e36a384ce40f51b7aa4014ac42f5ba1e98152750f89db3e2eb7e6f4539
|
||||
|
||||
@ -3,44 +3,36 @@
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit autotools udev
|
||||
inherit meson udev
|
||||
|
||||
DESCRIPTION="CCID free software driver"
|
||||
HOMEPAGE="https://ccid.apdu.fr https://github.com/LudovicRousseau/CCID"
|
||||
SRC_URI="https://ccid.apdu.fr/files/${P}.tar.bz2"
|
||||
SRC_URI="https://ccid.apdu.fr/files/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
LICENSE="LGPL-2.1+ LGPL-2+ GPL-2+"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ppc ppc64 ~riscv ~sparc x86"
|
||||
IUSE="twinserial +usb"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
|
||||
IUSE="twinserial"
|
||||
|
||||
RDEPEND="
|
||||
>=sys-apps/pcsc-lite-1.8.3
|
||||
twinserial? ( dev-lang/perl )
|
||||
usb? ( virtual/libusb:1 )
|
||||
sys-apps/pcsc-lite
|
||||
virtual/libusb:1
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-remove-flex-configure-dependency.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
BDEPEND="
|
||||
app-alternatives/lex
|
||||
dev-lang/perl
|
||||
virtual/pkgconfig"
|
||||
|
||||
src_configure() {
|
||||
econf \
|
||||
LEX=: \
|
||||
$(use_enable twinserial) \
|
||||
$(use_enable usb libusb)
|
||||
local emesonargs=(
|
||||
$(meson_use twinserial serial)
|
||||
)
|
||||
meson_src_configure
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
meson_src_install
|
||||
udev_newrules src/92_pcscd_ccid.rules 92-pcsc-ccid.rules
|
||||
}
|
||||
|
||||
@ -1,68 +0,0 @@
|
||||
From 7e2207a07979b6c1b206024e83e22ca2bbd4e17c Mon Sep 17 00:00:00 2001
|
||||
From: Eli Schwartz <eschwartz93@gmail.com>
|
||||
Date: Mon, 10 Jun 2024 22:02:37 -0400
|
||||
Subject: [PATCH] make building work again when flex is not installed
|
||||
|
||||
This explicitly reverts commit eec7cdf03dda2bd26e320ead73b91da5a9d86443
|
||||
because it was a bad idea.
|
||||
|
||||
The motivating bug report was https://github.com/LudovicRousseau/PCSC/issues/124
|
||||
and the issue there occurred when building from a git clone, running
|
||||
./bootstrap && ./configure && make, and having:
|
||||
|
||||
- configure succeed
|
||||
- make "succeeeds" at having $LEX run, do nothing and fail to generate
|
||||
required sources
|
||||
- compiling nonexistent files fail with highly confusing errors
|
||||
|
||||
The autoconf manual has always documented the correct way to handle this
|
||||
is to check if lex is unavailable, and set it to the famous automake
|
||||
wrapper "missing", which checks if a program is missing at build time
|
||||
rather than at ./configure time, and fails the build if the rule cannot
|
||||
be run. This means:
|
||||
|
||||
When building from a git clone, if flex is not available then
|
||||
- configure succeeds
|
||||
- make fails to run $LEX, and tells you to install flex
|
||||
|
||||
The previous attempt to fix the highly confusing error instead resulted
|
||||
in configure erroring out, and saying flex is required, even when it is
|
||||
*not* required because a `make dist` tarball was used, which contains
|
||||
pregenerated tokenparser.c for the express purpose of making flex
|
||||
unnecessary.
|
||||
|
||||
See autoconf documentation on $LEX:
|
||||
https://www.gnu.org/software/autoconf/manual/autoconf-2.72/html_node/Particular-Programs.html#index-AC_005fPROG_005fLEX-1
|
||||
|
||||
And automake documentation on why to use "missing":
|
||||
https://www.gnu.org/software/automake/manual/html_node/maintainer_002dmode.html
|
||||
|
||||
Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
|
||||
---
|
||||
configure.ac | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index eb2370f..c012f2a 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -33,7 +33,10 @@ AC_PROG_INSTALL
|
||||
AC_PROG_MAKE_SET
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_LEX([noyywrap])
|
||||
-AS_IF([test $LEX = ":"], [AC_MSG_ERROR([no lex or flex found])])
|
||||
+AS_IF([test $LEX = ":"], [
|
||||
+ AM_MISSING_PROG(MISSINGLEX, [flex])
|
||||
+ LEX=$MISSINGLEX]
|
||||
+)
|
||||
AM_PROG_AR
|
||||
PKG_PROG_PKG_CONFIG
|
||||
|
||||
@@ -331,4 +334,3 @@ AC_CONFIG_FILES(Makefile
|
||||
examples/Makefile)
|
||||
|
||||
AC_OUTPUT
|
||||
-
|
||||
--
|
||||
2.44.2
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user