Workaround armv7hl FTBFS, add python3 subpackage
This commit is contained in:
parent
1803631c67
commit
4b5da7b4c9
72
libkml.spec
72
libkml.spec
@ -1,6 +1,6 @@
|
|||||||
Name: libkml
|
Name: libkml
|
||||||
Version: 1.3.0
|
Version: 1.3.0
|
||||||
Release: 7%{?dist}
|
Release: 8%{?dist}
|
||||||
Summary: Reference implementation of OGC KML 2.2
|
Summary: Reference implementation of OGC KML 2.2
|
||||||
|
|
||||||
License: BSD
|
License: BSD
|
||||||
@ -14,6 +14,8 @@ Patch2: 0003-Fix-python-tests.patch
|
|||||||
Patch3: 0004-Correctly-build-and-run-java-test.patch
|
Patch3: 0004-Correctly-build-and-run-java-test.patch
|
||||||
# Fix a fragile test failing on i686
|
# Fix a fragile test failing on i686
|
||||||
Patch4: fragile_test.patch
|
Patch4: fragile_test.patch
|
||||||
|
# Don't bytecompile python sources as part of build process, leave it to rpmbuild
|
||||||
|
Patch5: libkml_dont-bytecompile.patch
|
||||||
|
|
||||||
BuildRequires: cmake
|
BuildRequires: cmake
|
||||||
BuildRequires: curl-devel
|
BuildRequires: curl-devel
|
||||||
@ -25,6 +27,7 @@ BuildRequires: junit
|
|||||||
BuildRequires: minizip-devel
|
BuildRequires: minizip-devel
|
||||||
%if 0%{?fedora}
|
%if 0%{?fedora}
|
||||||
BuildRequires: python2-devel
|
BuildRequires: python2-devel
|
||||||
|
BuildRequires: python3-devel
|
||||||
%else
|
%else
|
||||||
BuildRequires: python-devel
|
BuildRequires: python-devel
|
||||||
%endif
|
%endif
|
||||||
@ -43,12 +46,21 @@ Earth, as well as several utility libraries for working with other formats.
|
|||||||
|
|
||||||
|
|
||||||
%package -n python2-%{name}
|
%package -n python2-%{name}
|
||||||
Summary: Python bindings for %{name}
|
Summary: Python 2 bindings for %{name}
|
||||||
Requires: %{name}%{?_isa} = %{version}-%{release}
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||||
%{?python_provide:%python_provide python2-%{name}}
|
%{?python_provide:%python_provide python2-%{name}}
|
||||||
|
|
||||||
%description -n python2-%{name}
|
%description -n python2-%{name}
|
||||||
The python2-%{name} package contains Python bindings for %{name}.
|
The python2-%{name} package contains Python 2 bindings for %{name}.
|
||||||
|
|
||||||
|
|
||||||
|
%package -n python3-%{name}
|
||||||
|
Summary: Python 3 bindings for %{name}
|
||||||
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||||||
|
%{?python_provide:%python_provide python3-%{name}}
|
||||||
|
|
||||||
|
%description -n python3-%{name}
|
||||||
|
The python3-%{name} package contains Python 3 bindings for %{name}.
|
||||||
|
|
||||||
|
|
||||||
%package java
|
%package java
|
||||||
@ -71,30 +83,57 @@ developing applications that use %{name}.
|
|||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%autosetup -p1
|
||||||
%patch0 -p1
|
|
||||||
%patch1 -p1
|
|
||||||
%patch2 -p1
|
|
||||||
%patch3 -p1
|
|
||||||
%patch4 -p1
|
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
mkdir build_py2
|
||||||
|
pushd build_py2
|
||||||
|
%ifarch armv7hl
|
||||||
|
%define awtlib -DJAVA_AWT_LIBRARY=`find /usr/lib/jvm/ -name libjawt.so | grep jre/lib/arm \`
|
||||||
|
%endif
|
||||||
%cmake -DWITH_SWIG=ON -DWITH_PYTHON=ON -DWITH_JAVA=ON \
|
%cmake -DWITH_SWIG=ON -DWITH_PYTHON=ON -DWITH_JAVA=ON \
|
||||||
-DJNI_INSTALL_DIR=%{_libdir}/%{name} \
|
-DJNI_INSTALL_DIR=%{_libdir}/%{name} \
|
||||||
-DCMAKE_INSTALL_DIR=%{_libdir}/cmake/%{name} \
|
-DCMAKE_INSTALL_DIR=%{_libdir}/cmake/%{name} \
|
||||||
-DINCLUDE_INSTALL_DIR=%{_includedir}/kml \
|
-DINCLUDE_INSTALL_DIR=%{_includedir}/kml \
|
||||||
|
-DPYTHON_LIBRARY=%{_libdir}/libpython%{python2_version}.so \
|
||||||
|
-DPYTHON_INCLUDE_DIR=%{_includedir}/python%{python2_version}/ \
|
||||||
|
-DPYTHON_INSTALL_DIR=%{python2_sitearch} \
|
||||||
|
%{?awtlib} \
|
||||||
-DBUILD_TESTING=ON \
|
-DBUILD_TESTING=ON \
|
||||||
-DBUILD_EXAMPLES=ON
|
-DBUILD_EXAMPLES=ON \
|
||||||
make %{?_smp_mflags}
|
..
|
||||||
|
%make_build
|
||||||
|
popd
|
||||||
|
|
||||||
|
mkdir build_py3
|
||||||
|
pushd build_py3
|
||||||
|
%cmake -DWITH_SWIG=ON -DWITH_PYTHON=ON -DWITH_JAVA=OFF \
|
||||||
|
-DJNI_INSTALL_DIR=%{_libdir}/%{name} \
|
||||||
|
-DCMAKE_INSTALL_DIR=%{_libdir}/cmake/%{name} \
|
||||||
|
-DINCLUDE_INSTALL_DIR=%{_includedir}/kml \
|
||||||
|
-DPYTHON_LIBRARY=%{_libdir}/libpython%{python3_version}m.so \
|
||||||
|
-DPYTHON_INCLUDE_DIR=%{_includedir}/python%{python3_version}m/ \
|
||||||
|
-DPYTHON_INSTALL_DIR=%{python3_sitearch} \
|
||||||
|
-DBUILD_TESTING=ON \
|
||||||
|
-DBUILD_EXAMPLES=OFF \
|
||||||
|
..
|
||||||
|
%make_build
|
||||||
|
popd
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install
|
%make_install -C build_py2
|
||||||
|
%make_install -C build_py3
|
||||||
|
|
||||||
|
|
||||||
%check
|
%check
|
||||||
|
pushd build_py2
|
||||||
ctest -V
|
ctest -V
|
||||||
|
popd
|
||||||
|
pushd build_py3
|
||||||
|
ctest -V
|
||||||
|
popd
|
||||||
|
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
%post -p /sbin/ldconfig
|
||||||
@ -111,6 +150,11 @@ ctest -V
|
|||||||
%{python2_sitearch}/*.so
|
%{python2_sitearch}/*.so
|
||||||
%{python2_sitearch}/*.py*
|
%{python2_sitearch}/*.py*
|
||||||
|
|
||||||
|
%files -n python3-%{name}
|
||||||
|
%{python3_sitearch}/*.so
|
||||||
|
%{python3_sitearch}/*.py
|
||||||
|
%{python3_sitearch}/__pycache__/*.pyc
|
||||||
|
|
||||||
%files java
|
%files java
|
||||||
%{_javadir}/LibKML.jar
|
%{_javadir}/LibKML.jar
|
||||||
%{_libdir}/%{name}/
|
%{_libdir}/%{name}/
|
||||||
@ -123,6 +167,10 @@ ctest -V
|
|||||||
%{_libdir}/cmake/%{name}/
|
%{_libdir}/cmake/%{name}/
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Aug 07 2017 Sandro Mani <manisandro@gmail.com> - 1.3.0-8
|
||||||
|
- Workaround armv7hl FTBFS
|
||||||
|
- Add python3 bindings
|
||||||
|
|
||||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.0-7
|
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.0-7
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||||
|
|
||||||
|
24
libkml_dont-bytecompile.patch
Normal file
24
libkml_dont-bytecompile.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
diff -rupN libkml-1.3.0/src/swig/CMakeLists.txt libkml-1.3.0-new/src/swig/CMakeLists.txt
|
||||||
|
--- libkml-1.3.0/src/swig/CMakeLists.txt 2015-12-21 18:23:05.000000000 +0100
|
||||||
|
+++ libkml-1.3.0-new/src/swig/CMakeLists.txt 2017-08-07 21:26:23.717928168 +0200
|
||||||
|
@@ -23,12 +23,6 @@ if(WITH_PYTHON)
|
||||||
|
set_source_files_properties( ${CMAKE_CURRENT_BINARY_DIR}/${MODULE_NAME}PYTHON_wrap.cxx COMPILE_FLAGS "-Wno-long-long" )
|
||||||
|
swig_add_module(${MODULE_NAME} python ${INTERFACE_FILE})
|
||||||
|
swig_link_libraries(${MODULE_NAME} kmlbase kmlengine kmldom ${PYTHON_LIBRARIES})
|
||||||
|
- add_custom_command(
|
||||||
|
- TARGET _${MODULE_NAME}
|
||||||
|
- POST_BUILD
|
||||||
|
- COMMAND ${CMAKE_COMMAND} -E echo "Byte-compiling ${MODULE_NAME}.py"
|
||||||
|
- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/cmake/pycompile.py ${CMAKE_CURRENT_BINARY_DIR}/${MODULE_NAME}.py
|
||||||
|
- DEPENDS kmlbase kmlengine kmldom)
|
||||||
|
|
||||||
|
install(TARGETS
|
||||||
|
_${MODULE_NAME}
|
||||||
|
@@ -36,7 +30,6 @@ if(WITH_PYTHON)
|
||||||
|
|
||||||
|
install(FILES
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/${MODULE_NAME}.py
|
||||||
|
- ${CMAKE_CURRENT_BINARY_DIR}/${MODULE_NAME}.pyc
|
||||||
|
DESTINATION ${PYTHON_INSTALL_DIR})
|
||||||
|
|
||||||
|
endforeach()
|
Loading…
Reference in New Issue
Block a user