[packages/libftdi1] - added python patch to fix consistent python interp/libs detection - build both py2/py3 bindings in
qboosh
qboosh at pld-linux.org
Sun Oct 4 09:47:40 CEST 2015
commit 8f9bdbd78c3328f52c4d4b748ab36d432426a830
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sun Oct 4 09:48:30 2015 +0200
- added python patch to fix consistent python interp/libs detection
- build both py2/py3 bindings in standard way
- release 2
libftdi1-python.patch | 12 ++++++
libftdi1.spec | 102 +++++++++++++++++++++++++++++++++-----------------
2 files changed, 79 insertions(+), 35 deletions(-)
---
diff --git a/libftdi1.spec b/libftdi1.spec
index ccf7d56..5b06878 100644
--- a/libftdi1.spec
+++ b/libftdi1.spec
@@ -1,30 +1,28 @@
#
# Conditional build:
-%bcond_with py3 # using python3 scripting
+%bcond_without python2 # Python 2 module
+%bcond_without python3 # Python 3 module
Summary: Library to talk to FTDI's chips including the popular bitbang mode
Summary(pl.UTF-8): Biblioteka do komunikacji z układami FTDI włącznie z trybem bitbang
Name: libftdi1
Version: 1.2
-Release: 1
+Release: 2
License: LGPL v2
Group: Libraries
Source0: http://www.intra2net.com/en/developer/libftdi/download/%{name}-%{version}.tar.bz2
# Source0-md5: 89dff802d89c4c0d55d8b4665fd52d0b
+Patch0: %{name}-python.patch
URL: http://www.intra2net.com/en/developer/libftdi/
BuildRequires: boost-devel >= 1.33
BuildRequires: doxygen
BuildRequires: libconfuse-devel
BuildRequires: libusb-devel >= 1.0.0
BuildRequires: pkgconfig
-%if %{with py3}
-BuildRequires: python3-devel >= 3.3
-%else
-BuildRequires: python-devel >= 2.6
-%endif
+%{?with_python2:BuildRequires: python-devel >= 1:2.6}
+%{?with_python3:BuildRequires: python3-devel >= 1:3.3}
BuildRequires: rpmbuild(macros) >= 1.600
BuildRequires: swig-python
-BuildRequires: swig-python >= 2.6
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
@@ -105,7 +103,7 @@ Plik nagłówkowy biblioteki libftdipp1.
%package c++-static
Summary: Static libftdipp1 library
Summary(pl.UTF-8): Statyczna biblioteka libftdipp1
-License: LGPL
+License: GPL v2 with linking exception
Group: Development/Libraries
Requires: %{name}-c++-devel = %{version}-%{release}
@@ -116,47 +114,71 @@ Static libftdipp1 library.
Statyczna biblioteka libftdipp1.
%package -n python-libftdi1
-Summary: Python binding for libftdi1
-Summary(pl.UTF-8): Wiązanie Pythona do libftdi1
+Summary: Python 2 binding for libftdi1
+Summary(pl.UTF-8): Wiązanie Pythona 2 do libftdi1
Group: Libraries/Python
Requires: %{name} = %{version}-%{release}
%description -n python-libftdi1
-Python binding for libftdi1.
+Python 2 binding for libftdi1.
%description -n python-libftdi1 -l pl.UTF-8
-Wiązanie Pythona do libftdi1.
+Wiązanie Pythona 2 do libftdi1.
+
+%package -n python3-libftdi1
+Summary: Python 3 binding for libftdi1
+Summary(pl.UTF-8): Wiązanie Pythona 3 do libftdi1
+Group: Libraries/Python
+Requires: %{name} = %{version}-%{release}
+
+%description -n python3-libftdi1
+Python 3 binding for libftdi1.
+
+%description -n python3-libftdi1 -l pl.UTF-8
+Wiązanie Pythona 3 do libftdi1.
%prep
%setup -q
-%if %{with py3}
-sed -i -r "s#(find_package\s+\(\s+PythonLibs)(\s+\))#\1 3.3\2#g" \
-%else
-sed -i -r "s#(find_package\s+\(\s+PythonLibs)(\s+\))#\1 2.6\2#g" \
-%endif
- python/CMakeLists.txt
+%patch0 -p1
%build
-install -d build
-cd build
-%cmake \
-%if %{with py3}
- -DPYTHON_EXECUTABLE=%{__python}3 \
-%else
- -DPYTHON_EXECUTABLE=%{__python}2 \
+%if %{with python2}
+install -d build-py2
+cd build-py2
+%cmake .. \
+ -DEXAMPLES=OFF \
+ -DPYTHON_EXECUTABLE=%{__python}
+%{__make}
+cd ..
%endif
- -DPYTHON_SITE_PACKAGE_PATH=%{py_sitescriptdir} \
+
+%if %{with python3}
+install -d build-py3
+cd build-py3
+%cmake .. \
-DEXAMPLES=OFF \
- ..
+ -DPYTHON_EXECUTABLE=%{__python3}
%{__make}
+cd ..
+%endif
%install
rm -rf $RPM_BUILD_ROOT
-%{__rm} -rf $RPM_BUILD_ROOT
-%{__make} -C build install \
+
+%if %{with python3}
+%{__make} -C build-py3 install \
+ DESTDIR="$RPM_BUILD_ROOT"
+%py3_comp $RPM_BUILD_ROOT%{py3_sitedir}
+%py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}
+%endif
+
+%if %{with python2}
+%{__make} -C build-py2 install \
DESTDIR="$RPM_BUILD_ROOT"
-##%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
-##%py__postclean#
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
+%py_postclean
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
@@ -169,7 +191,7 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc AUTHORS ChangeLog LICENSE README build/doc/html build/doc/man
+%doc AUTHORS ChangeLog LICENSE README %{?with_python2:build-py2}%{!?with_python2:build-py3}/doc/html
%attr(755,root,root) %{_libdir}/libftdi1.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libftdi1.so.2
@@ -181,7 +203,7 @@ rm -rf $RPM_BUILD_ROOT
%dir %{_includedir}/libftdi1
%{_includedir}/libftdi1/ftdi.h
%{_pkgconfigdir}/libftdi1.pc
-%dir %{_libdir}/cmake/libftdi1/
+%dir %{_libdir}/cmake/libftdi1
%{_libdir}/cmake/libftdi1/*.cmake
%dir %{_datadir}/libftdi
%dir %{_datadir}/libftdi/examples
@@ -206,7 +228,17 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%{_libdir}/libftdipp1.a
+%if %{with python2}
%files -n python-libftdi1
%defattr(644,root,root,755)
%attr(755,root,root) %{py_sitedir}/_ftdi1.so
-%{py_sitedir}/ftdi1.py*
+%{py_sitedir}/ftdi1.py[co]
+%endif
+
+%if %{with python3}
+%files -n python3-libftdi1
+%defattr(644,root,root,755)
+%attr(755,root,root) %{py3_sitedir}/_ftdi1.so
+%{py3_sitedir}/ftdi1.py
+%{py3_sitedir}/__pycache__/ftdi1.cpython-*.py[co]
+%endif
diff --git a/libftdi1-python.patch b/libftdi1-python.patch
new file mode 100644
index 0000000..b468ee7
--- /dev/null
+++ b/libftdi1-python.patch
@@ -0,0 +1,12 @@
+--- libftdi1-1.2/python/CMakeLists.txt.orig 2014-11-21 17:42:17.000000000 +0100
++++ libftdi1-1.2/python/CMakeLists.txt 2015-10-04 08:43:11.144485010 +0200
+@@ -12,8 +12,8 @@
+ set ( SWIG_FOUND TRUE )
+ endif ()
+ endif ()
+- find_package ( PythonLibs )
+ find_package ( PythonInterp )
++ find_package ( PythonLibs )
+ endif ()
+
+ if ( SWIG_FOUND AND PYTHONLIBS_FOUND AND PYTHONINTERP_FOUND )
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/libftdi1.git/commitdiff/8f9bdbd78c3328f52c4d4b748ab36d432426a830
More information about the pld-cvs-commit
mailing list