forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dev-embedded/libftdi: add upstream CMake patch
Closes: https://bugs.gentoo.org/775116 Signed-off-by: Sam James <[email protected]>
- Loading branch information
1 parent
ad49fd8
commit a4c8581
Showing
2 changed files
with
142 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
https://bugs.gentoo.org/766818 | ||
|
||
From cdb28383402d248dbc6062f4391b038375c52385 Mon Sep 17 00:00:00 2001 | ||
From: Fabrice Fontaine <[email protected]> | ||
Date: Fri, 17 Jul 2020 21:25:03 +0200 | ||
Subject: [PATCH] CMakeLists.txt: fix paths when FTDIPP is set | ||
|
||
Use the same project name (i.e. libftdi1 and not libftdipp1) when FTDIPP | ||
is enabled as suggested by Aurelien Jarno in | ||
http://developer.intra2net.com/mailarchive/html/libftdi/2020/msg00044.html | ||
|
||
Without this change, the libftdi1.pc config file defines the include | ||
path as /usr/local/include/libftdipp1 while the ftdi.h file is actually | ||
installed in /usr/local/include/libftdi1 | ||
|
||
This is an issue for example for libsigrok which will fail on: | ||
|
||
In file included from src/hardware/asix-sigma/protocol.c:27: | ||
src/hardware/asix-sigma/protocol.h:28:10: fatal error: ftdi.h: No such file or directory | ||
28 | #include <ftdi.h> | ||
| ^~~~~~~~ | ||
|
||
Fixes: | ||
- http://autobuild.buildroot.org/results/1427f44e36752c337791597fab47a1889552a2fe | ||
|
||
Signed-off-by: Fabrice Fontaine <[email protected]> | ||
--- | ||
CMakeLists.txt | 2 +- | ||
1 files changed, 1 insertions(+), 1 deletions(-) | ||
|
||
diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
index 5aecafc..3b0b87c 100644 | ||
--- a/CMakeLists.txt | ||
+++ b/CMakeLists.txt | ||
@@ -136,7 +136,7 @@ endif () | ||
|
||
add_subdirectory(src) | ||
if ( FTDIPP ) | ||
- project(libftdipp1 C CXX) | ||
+ project(libftdi1 C CXX) | ||
add_subdirectory(ftdipp) | ||
endif () | ||
if ( PYTHON_BINDINGS ) | ||
-- | ||
1.7.1 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
# Copyright 1999-2021 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
|
||
PYTHON_COMPAT=( python3_{7..9} ) | ||
inherit cmake python-single-r1 | ||
|
||
MY_P="${PN}1-${PV}" | ||
if [[ ${PV} == 9999* ]] ; then | ||
inherit git-r3 | ||
EGIT_REPO_URI="git://developer.intra2net.com/${PN}" | ||
else | ||
SRC_URI="https://www.intra2net.com/en/developer/${PN}/download/${MY_P}.tar.bz2" | ||
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~sparc ~x86" | ||
fi | ||
|
||
DESCRIPTION="Userspace access to FTDI USB interface chips" | ||
HOMEPAGE="https://www.intra2net.com/en/developer/libftdi/" | ||
S="${WORKDIR}/${MY_P}" | ||
|
||
LICENSE="LGPL-2" | ||
SLOT="1" | ||
IUSE="cxx doc examples python test tools" | ||
RESTRICT="!test? ( test )" | ||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" | ||
|
||
BDEPEND=" | ||
doc? ( app-doc/doxygen ) | ||
python? ( dev-lang/swig )" | ||
RDEPEND=" | ||
virtual/libusb:1 | ||
cxx? ( dev-libs/boost ) | ||
python? ( ${PYTHON_DEPS} ) | ||
tools? ( | ||
!<dev-embedded/ftdi_eeprom-1.0 | ||
dev-libs/confuse:= | ||
)" | ||
DEPEND="${RDEPEND} | ||
test? ( dev-libs/boost ) | ||
" | ||
|
||
PATCHES=( | ||
"${FILESDIR}"/${P}-tests-no-cxx.patch | ||
"${FILESDIR}"/${P}-cmake-cxx.patch | ||
) | ||
|
||
pkg_setup() { | ||
use python && python-single-r1_pkg_setup | ||
} | ||
|
||
src_configure() { | ||
local mycmakeargs=( | ||
-DFTDIPP=$(usex cxx) | ||
-DDOCUMENTATION=$(usex doc) | ||
-DEXAMPLES=$(usex examples) | ||
-DPYTHON_BINDINGS=$(usex python) | ||
-DBUILD_TESTS=$(usex test) | ||
-DFTDI_EEPROM=$(usex tools) | ||
-DCMAKE_SKIP_BUILD_RPATH=ON | ||
-DSTATICLIBS=OFF | ||
) | ||
cmake_src_configure | ||
} | ||
|
||
src_test() { | ||
cd "${BUILD_DIR}/test" || die | ||
LD_LIBRARY_PATH="${BUILD_DIR}/src" ./test_libftdi1 -l all || die | ||
} | ||
|
||
src_install() { | ||
cmake_src_install | ||
|
||
# Fix up pkgconfig files | ||
# bug #766818 | ||
if use cxx ; then | ||
sed -i -e "s/libftdipp1/libftdi1/" "${ED}"/usr/$(get_libdir)/pkgconfig/libftdi1.pc || die | ||
sed -i -e "s/libftdi1/libftdipp1/" "${ED}"/usr/$(get_libdir)/pkgconfig/libftdipp1.pc || die | ||
fi | ||
|
||
use python && python_optimize | ||
dodoc AUTHORS ChangeLog README TODO | ||
|
||
if use doc ; then | ||
# Clean up crap man pages. #356369 | ||
rm -vf "${BUILD_DIR}"/doc/man/man3/_* || die | ||
|
||
doman "${BUILD_DIR}"/doc/man/man3/* | ||
dodoc -r "${BUILD_DIR}"/doc/html | ||
fi | ||
|
||
if use examples ; then | ||
docinto examples | ||
dodoc examples/*.c | ||
fi | ||
} |