Add openwsman-python3 subpackage
This commit is contained in:
parent
30156671fc
commit
f647523456
179
openwsman-2.6.2-python3.patch
Normal file
179
openwsman-2.6.2-python3.patch
Normal file
@ -0,0 +1,179 @@
|
||||
diff -up openwsman-2.6.2/bindings/CMakeLists.txt.orig openwsman-2.6.2/bindings/CMakeLists.txt
|
||||
--- openwsman-2.6.2/bindings/CMakeLists.txt.orig 2015-10-19 15:27:46.000000000 +0200
|
||||
+++ openwsman-2.6.2/bindings/CMakeLists.txt 2016-08-10 11:55:36.588710280 +0200
|
||||
@@ -10,6 +10,7 @@ include_directories(${CMAKE_BINARY_DIR})
|
||||
|
||||
IF( BUILD_PYTHON )
|
||||
add_subdirectory(python)
|
||||
+add_subdirectory(python3)
|
||||
ENDIF( BUILD_PYTHON )
|
||||
|
||||
IF( BUILD_RUBY )
|
||||
diff -up openwsman-2.6.2/bindings/python3/CMakeLists.txt.orig openwsman-2.6.2/bindings/python3/CMakeLists.txt
|
||||
--- openwsman-2.6.2/bindings/python3/CMakeLists.txt.orig 2016-08-10 11:55:36.577710278 +0200
|
||||
+++ openwsman-2.6.2/bindings/python3/CMakeLists.txt 2016-08-10 15:15:46.005991322 +0200
|
||||
@@ -12,11 +12,28 @@ enable_testing()
|
||||
|
||||
add_subdirectory(tests)
|
||||
|
||||
-EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" OUTPUT_VARIABLE PYTHON_LIB_DIR)
|
||||
-STRING(REPLACE "\n" "" PYTHON_LIB_DIR "${PYTHON_LIB_DIR}")
|
||||
+MESSAGE(STATUS "Python3 build:")
|
||||
+unset(Python_ADDITIONAL_VERSIONS)
|
||||
+set(Python_ADDITIONAL_VERSIONS 3.5)
|
||||
+FIND_PACKAGE(PythonLibs)
|
||||
+IF (PYTHON_LIBRARY)
|
||||
+ FIND_PACKAGE(PythonInterp REQUIRED)
|
||||
+ #MESSAGE(STATUS "Found PythonLibs...")
|
||||
+ FIND_PACKAGE(PythonLinkLibs)
|
||||
+ #IF (PYTHON_LINK_LIBS)
|
||||
+ # MESSAGE(STATUS "Building Python...")
|
||||
+ #ENDIF (PYTHON_LINK_LIBS)
|
||||
+ENDIF (PYTHON_LIBRARY)
|
||||
+
|
||||
+set(PYTHON3_EXECUTABLE "${PYTHON_EXECUTABLE}")
|
||||
+set(PYTHON3_INCLUDE_DIRS "${PYTHON_INCLUDE_DIRS}")
|
||||
+set({PYTHON3_INCLUDE_PATH "${PYTHON_INCLUDE_PATH}")
|
||||
|
||||
-MESSAGE(STATUS "Python executable: ${PYTHON_EXECUTABLE}")
|
||||
-MESSAGE(STATUS "Python lib dir: ${PYTHON_LIB_DIR}")
|
||||
+EXECUTE_PROCESS(COMMAND ${PYTHON3_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))" OUTPUT_VARIABLE PYTHON3_LIB_DIR)
|
||||
+STRING(REPLACE "\n" "" PYTHON3_LIB_DIR "${PYTHON3_LIB_DIR}")
|
||||
+
|
||||
+MESSAGE(STATUS "Python executable: ${PYTHON3_EXECUTABLE}")
|
||||
+MESSAGE(STATUS "Python lib dir: ${PYTHON3_LIB_DIR}")
|
||||
|
||||
SET( SWIG_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/openwsman_wrap.c" )
|
||||
|
||||
@@ -36,14 +53,14 @@ SET(pywsman_SRCS ${SWIG_OUTPUT} ${CMAKE_
|
||||
ADD_LIBRARY( pywsman SHARED ${pywsman_SRCS} )
|
||||
SET_TARGET_PROPERTIES( pywsman PROPERTIES PREFIX "_" )
|
||||
|
||||
-INCLUDE_DIRECTORIES( ${PYTHON_INCLUDE_DIRS} )
|
||||
+INCLUDE_DIRECTORIES( ${PYTHON3_INCLUDE_DIRS} )
|
||||
# RHEL5 needs this:
|
||||
-INCLUDE_DIRECTORIES( ${PYTHON_INCLUDE_PATH} )
|
||||
+INCLUDE_DIRECTORIES( ${PYTHON3_INCLUDE_PATH} )
|
||||
INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR} )
|
||||
INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/bindings ${CMAKE_SOURCE_DIR}/include )
|
||||
|
||||
TARGET_LINK_LIBRARIES( pywsman wsman )
|
||||
TARGET_LINK_LIBRARIES( pywsman wsman_client )
|
||||
|
||||
-INSTALL(TARGETS pywsman LIBRARY DESTINATION ${PYTHON_LIB_DIR})
|
||||
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pywsman.py DESTINATION ${PYTHON_LIB_DIR} )
|
||||
+INSTALL(TARGETS pywsman LIBRARY DESTINATION ${PYTHON3_LIB_DIR})
|
||||
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pywsman.py DESTINATION ${PYTHON3_LIB_DIR} )
|
||||
diff -up openwsman-2.6.2/bindings/python/CMakeLists.txt.orig openwsman-2.6.2/bindings/python/CMakeLists.txt
|
||||
--- openwsman-2.6.2/bindings/python/CMakeLists.txt.orig 2015-10-19 15:27:46.000000000 +0200
|
||||
+++ openwsman-2.6.2/bindings/python/CMakeLists.txt 2016-08-10 15:00:21.126141161 +0200
|
||||
@@ -12,11 +12,52 @@ enable_testing()
|
||||
|
||||
add_subdirectory(tests)
|
||||
|
||||
-EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" OUTPUT_VARIABLE PYTHON_LIB_DIR)
|
||||
-STRING(REPLACE "\n" "" PYTHON_LIB_DIR "${PYTHON_LIB_DIR}")
|
||||
+MESSAGE(STATUS "Python2 build:")
|
||||
+set(Python_ADDITIONAL_VERSIONS 2.7)
|
||||
+FIND_PACKAGE(PythonLibs)
|
||||
+IF (PYTHON_LIBRARY)
|
||||
+ FIND_PACKAGE(PythonInterp REQUIRED)
|
||||
+ #MESSAGE(STATUS "Found PythonLibs...")
|
||||
+ FIND_PACKAGE(PythonLinkLibs)
|
||||
+ #IF (PYTHON_LINK_LIBS)
|
||||
+ # MESSAGE(STATUS "Building Python...")
|
||||
+ #ENDIF (PYTHON_LINK_LIBS)
|
||||
+ENDIF (PYTHON_LIBRARY)
|
||||
+
|
||||
+set(PYTHON2_EXECUTABLE "${PYTHON_EXECUTABLE}")
|
||||
+set(PYTHON2_INCLUDE_DIRS "${PYTHON_INCLUDE_DIRS}")
|
||||
+set(PYTHON2_INCLUDE_PATH "${PYTHON_INCLUDE_PATH}")
|
||||
+
|
||||
+# clear FIND_PACKAGE(PythonLibs) side effects
|
||||
+unset(PYTHONLIBS_FOUND)
|
||||
+unset(PYTHON_LIBRARIES)
|
||||
+unset(PYTHON_INCLUDE_PATH)
|
||||
+unset(PYTHON_INCLUDE_DIRS)
|
||||
+unset(PYTHON_DEBUG_LIBRARIES)
|
||||
+unset(PYTHONLIBS_VERSION_STRING)
|
||||
+unset(PYTHON_DEBUG_LIBRARY CACHE)
|
||||
+unset(PYTHON_LIBRARY)
|
||||
+unset(PYTHON_LIBRARY_DEBUG)
|
||||
+unset(PYTHON_LIBRARY_RELEASE)
|
||||
+unset(PYTHON_LIBRARY CACHE)
|
||||
+unset(PYTHON_LIBRARY_DEBUG CACHE)
|
||||
+unset(PYTHON_LIBRARY_RELEASE CACHE)
|
||||
+unset(PYTHON_INCLUDE_DIR CACHE)
|
||||
+unset(PYTHON_INCLUDE_DIR2 CACHE)
|
||||
+
|
||||
+# clear FIND_PACKAGE(PythonInterp) side effects
|
||||
+unset(PYTHONINTERP_FOUND)
|
||||
+unset(PYTHON_EXECUTABLE CACHE)
|
||||
+unset(PYTHON_VERSION_STRING)
|
||||
+unset(PYTHON_VERSION_MAJOR)
|
||||
+unset(PYTHON_VERSION_MINOR)
|
||||
+unset(PYTHON_VERSION_PATCH)
|
||||
|
||||
-MESSAGE(STATUS "Python executable: ${PYTHON_EXECUTABLE}")
|
||||
-MESSAGE(STATUS "Python lib dir: ${PYTHON_LIB_DIR}")
|
||||
+EXECUTE_PROCESS(COMMAND ${PYTHON2_EXECUTABLE} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" OUTPUT_VARIABLE PYTHON2_LIB_DIR)
|
||||
+STRING(REPLACE "\n" "" PYTHON2_LIB_DIR "${PYTHON2_LIB_DIR}")
|
||||
+
|
||||
+MESSAGE(STATUS "Python executable: ${PYTHON2_EXECUTABLE}")
|
||||
+MESSAGE(STATUS "Python lib dir: ${PYTHON2_LIB_DIR}")
|
||||
|
||||
SET( SWIG_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/openwsman_wrap.c" )
|
||||
|
||||
@@ -36,14 +77,14 @@ SET(pywsman_SRCS ${SWIG_OUTPUT} ${CMAKE_
|
||||
ADD_LIBRARY( pywsman SHARED ${pywsman_SRCS} )
|
||||
SET_TARGET_PROPERTIES( pywsman PROPERTIES PREFIX "_" )
|
||||
|
||||
-INCLUDE_DIRECTORIES( ${PYTHON_INCLUDE_DIRS} )
|
||||
+INCLUDE_DIRECTORIES( ${PYTHON2_INCLUDE_DIRS} )
|
||||
# RHEL5 needs this:
|
||||
-INCLUDE_DIRECTORIES( ${PYTHON_INCLUDE_PATH} )
|
||||
+INCLUDE_DIRECTORIES( ${PYTHON2_INCLUDE_PATH} )
|
||||
INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR} )
|
||||
INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/bindings ${CMAKE_SOURCE_DIR}/include )
|
||||
|
||||
TARGET_LINK_LIBRARIES( pywsman wsman )
|
||||
TARGET_LINK_LIBRARIES( pywsman wsman_client )
|
||||
|
||||
-INSTALL(TARGETS pywsman LIBRARY DESTINATION ${PYTHON_LIB_DIR})
|
||||
-INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pywsman.py DESTINATION ${PYTHON_LIB_DIR} )
|
||||
+INSTALL(TARGETS pywsman LIBRARY DESTINATION ${PYTHON2_LIB_DIR})
|
||||
+INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/pywsman.py DESTINATION ${PYTHON2_LIB_DIR} )
|
||||
diff -up openwsman-2.6.2/CMakeLists.txt.orig openwsman-2.6.2/CMakeLists.txt
|
||||
--- openwsman-2.6.2/CMakeLists.txt.orig 2015-10-19 15:27:46.000000000 +0200
|
||||
+++ openwsman-2.6.2/CMakeLists.txt 2016-08-10 11:55:36.588710280 +0200
|
||||
@@ -168,30 +168,6 @@ MESSAGE(STATUS "Building Ruby bindings"
|
||||
ENDIF(NOT RUBY_INCLUDE_PATH )
|
||||
ENDIF( BUILD_RUBY )
|
||||
|
||||
-IF( BUILD_PYTHON )
|
||||
- MESSAGE(STATUS "Building Python bindings" )
|
||||
- FIND_PACKAGE(PythonLibs)
|
||||
- IF (PYTHON_LIBRARY)
|
||||
- FIND_PACKAGE(PythonInterp REQUIRED)
|
||||
- MESSAGE(STATUS "Found PythonLibs...")
|
||||
- FIND_PACKAGE(PythonLinkLibs)
|
||||
- IF (PYTHON_LINK_LIBS)
|
||||
- MESSAGE(STATUS "Building Python...")
|
||||
- ENDIF (PYTHON_LINK_LIBS)
|
||||
- ENDIF (PYTHON_LIBRARY)
|
||||
- IF(NOT PYTHON_INCLUDE_DIRS )
|
||||
- # fallback for older versions of cmake
|
||||
- SET(PYTHON_INCLUDE_DIRS PYTHON_INCLUDE_PATH)
|
||||
- ENDIF(NOT PYTHON_INCLUDE_DIRS )
|
||||
- IF(NOT PYTHON_INCLUDE_DIRS )
|
||||
- IF(BUILD_PYTHON_EXPLICIT)
|
||||
- NO_HEADERS_WARNING_EXPL(BUILD_PYTHON Python)
|
||||
- ELSE(BUILD_PYTHON_EXPLICIT)
|
||||
- NO_HEADERS_WARNING(BUILD_PYTHON Python)
|
||||
- ENDIF(BUILD_PYTHON_EXPLICIT)
|
||||
- ENDIF(NOT PYTHON_INCLUDE_DIRS )
|
||||
-ENDIF( BUILD_PYTHON )
|
||||
-
|
||||
IF( BUILD_PERL )
|
||||
INCLUDE(FindPerl)
|
||||
IF(PERL_EXECUTABLE)
|
@ -1,22 +1,15 @@
|
||||
|
||||
%if ! (0%{?fedora} > 12 || 0%{?rhel} > 5)
|
||||
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
|
||||
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
|
||||
%endif
|
||||
|
||||
# RubyGems's macros expect gem_name to exist.
|
||||
%global gem_name %{name}
|
||||
|
||||
Name: openwsman
|
||||
BuildRequires: swig
|
||||
BuildRequires: libcurl-devel libxml2-devel pam-devel sblim-sfcc-devel
|
||||
BuildRequires: python python-devel ruby ruby-devel rubygems-devel perl
|
||||
BuildRequires: python python-devel perl
|
||||
BuildRequires: python3 python3-devel python2 python2-devel ruby ruby-devel rubygems-devel perl
|
||||
BuildRequires: perl-devel perl-generators pkgconfig openssl-devel
|
||||
BuildRequires: cmake
|
||||
BuildRequires: systemd-units
|
||||
Version: 2.6.2
|
||||
Release: 6%{?dist}
|
||||
Release: 7%{?dist}
|
||||
Url: http://www.openwsman.org/
|
||||
License: BSD
|
||||
Group: Applications/System
|
||||
@ -33,6 +26,7 @@ Source3: owsmantestcert.sh
|
||||
Patch1: openwsman-2.2.7-libssl.patch
|
||||
Patch2: openwsman-2.4.0-pamsetup.patch
|
||||
Patch3: openwsman-2.4.12-ruby-binding-build.patch
|
||||
Patch4: openwsman-2.6.2-python3.patch
|
||||
|
||||
%description
|
||||
Openwsman is a project intended to provide an open-source
|
||||
@ -107,11 +101,25 @@ Openwsman Server and service libraries
|
||||
License: BSD
|
||||
Group: Development/Libraries
|
||||
Summary: Python bindings for openwsman client API
|
||||
Requires: python
|
||||
Requires: python2
|
||||
Requires: libwsman1 = %{version}-%{release}
|
||||
|
||||
%description python
|
||||
This package provides Python bindings to access the openwsman client
|
||||
This package provides Python2 bindings to access the openwsman client
|
||||
API.
|
||||
|
||||
|
||||
|
||||
|
||||
%package python3
|
||||
License: BSD
|
||||
Group: Development/Libraries
|
||||
Summary: Python bindings for openwsman client API
|
||||
Requires: python3
|
||||
Requires: libwsman1 = %{version}-%{release}
|
||||
|
||||
%description python3
|
||||
This package provides Python3 bindings to access the openwsman client
|
||||
API.
|
||||
|
||||
|
||||
@ -165,9 +173,16 @@ can use it to send shell commands to a remote Windows hosts.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
|
||||
# support python3
|
||||
pushd bindings
|
||||
cp -r python python3
|
||||
popd
|
||||
|
||||
%patch1 -p1 -b .libssl
|
||||
%patch2 -p1 -b .pamsetup
|
||||
%patch3 -p1 -b .ruby-binding-build
|
||||
%patch4 -p1 -b .python3
|
||||
|
||||
# support ruby 2.2
|
||||
pushd bindings/ruby
|
||||
@ -176,6 +191,7 @@ chmod 0755 rdoc2.2
|
||||
ln -sf %{_bindir}/rdoc rdoc2_2.rb
|
||||
popd
|
||||
|
||||
|
||||
%build
|
||||
# Removing executable permissions on .c and .h files to fix rpmlint warnings.
|
||||
chmod -x src/cpp/WsmanClient.h
|
||||
@ -281,10 +297,16 @@ rm -f /var/log/wsmand.log
|
||||
%doc AUTHORS COPYING ChangeLog README.md
|
||||
|
||||
%files python
|
||||
%{python_sitearch}/*.so
|
||||
%{python_sitearch}/*.py
|
||||
%{python_sitearch}/*.pyc
|
||||
%{python_sitearch}/*.pyo
|
||||
%{python2_sitearch}/*.so
|
||||
%{python2_sitearch}/*.py
|
||||
%{python2_sitearch}/*.pyc
|
||||
%{python2_sitearch}/*.pyo
|
||||
%doc AUTHORS COPYING ChangeLog README.md
|
||||
|
||||
%files python3
|
||||
%{python3_sitearch}/*.so
|
||||
%{python3_sitearch}/*.py
|
||||
%{python3_sitearch}/__pycache__/*
|
||||
%doc AUTHORS COPYING ChangeLog README.md
|
||||
|
||||
%files -n rubygem-%{gem_name}
|
||||
@ -335,6 +357,10 @@ rm -f /var/log/wsmand.log
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Aug 11 2016 Vitezslav Crhonek <vcrhonek@redhat.com> - 2.6.2-7
|
||||
- Add openwsman-python3 subpackage
|
||||
Resolves: #1354481
|
||||
|
||||
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.6.2-6
|
||||
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user