Rebased to 0.38.0

epel9
Kim van der Riet 2 years ago
parent f124c12ee5
commit 2d2222634b

@ -3,7 +3,7 @@
<dependencies>
<dependency>
<packageName>qpid-proton</packageName>
<version>0.37.0</version>
<version>0.38.0</version>
<licenses>
<license>
<name>ASL 2.0</name>

@ -1,18 +1,51 @@
From c2256a4ed949bad6b85086113dc570472a0f7c11 Mon Sep 17 00:00:00 2001
From: Irina Boverman <iboverma@redhat.com>
Date: Tue, 4 May 2021 14:12:53 -0400
Subject: [PATCH] Changed Sphinx invocation from sphinx to sphinx-build for
RHEL7
diff -ruN qpid-proton-0.38.0.orig/CMakeLists.txt qpid-proton-0.38.0/CMakeLists.txt
--- qpid-proton-0.38.0.orig/CMakeLists.txt 2022-11-07 11:35:09.000000000 -0500
+++ qpid-proton-0.38.0/CMakeLists.txt 2022-11-23 10:19:17.963751717 -0500
@@ -42,7 +42,7 @@
if (NOT DEFINED Python_FIND_FRAMEWORK)
set(Python_FIND_FRAMEWORK "LAST")
endif ()
-find_package(Python 3.6
+find_package(Python 3.9
REQUIRED COMPONENTS Interpreter
OPTIONAL_COMPONENTS Development)
---
python/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff -ruN qpid-proton-0.38.0.orig/cpp/src/map_test.cpp qpid-proton-0.38.0/cpp/src/map_test.cpp
--- qpid-proton-0.38.0.orig/cpp/src/map_test.cpp 2022-11-07 11:35:09.000000000 -0500
+++ qpid-proton-0.38.0/cpp/src/map_test.cpp 2023-01-26 10:49:44.159634165 -0500
@@ -114,6 +114,20 @@
ASSERT_THROWS(conversion_error, m.value(bad));
}
diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
index 44bc36a..e7d0f10 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -125,7 +125,7 @@ else ()
+void test_copy_constructor() {
+ proton::map<string, scalar> m = std::map<string, scalar>{{"a", 2}, {"b", 3}};
+ ASSERT_EQUAL(scalar(2), m.get("a"));
+ ASSERT_EQUAL(scalar(3), m.get("b"));
+ ASSERT_EQUAL(2U, m.size());
+}
+
+void test_initializer_list_constructor() {
+ proton::map<string, scalar> m({{"a", 2}, {"b", 3}});
+ ASSERT_EQUAL(scalar(2), m.get("a"));
+ ASSERT_EQUAL(scalar(3), m.get("b"));
+ ASSERT_EQUAL(2U, m.size());
+}
+
}
int main(int, char**) {
@@ -122,5 +136,7 @@
RUN_TEST(failed, test_use());
RUN_TEST(failed, test_cppmap());
RUN_TEST(failed, test_value());
+ RUN_TEST(failed, test_copy_constructor());
+ RUN_TEST(failed, test_initializer_list_constructor());
return failed;
}
diff -ruN qpid-proton-0.38.0.orig/python/CMakeLists.txt qpid-proton-0.38.0/python/CMakeLists.txt
--- qpid-proton-0.38.0.orig/python/CMakeLists.txt 2022-11-07 11:35:09.000000000 -0500
+++ qpid-proton-0.38.0/python/CMakeLists.txt 2022-11-23 10:20:07.216991810 -0500
@@ -101,7 +101,7 @@
COMMAND ${PN_ENV_SCRIPT} --
PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CMAKE_CURRENT_SOURCE_DIR}
LD_LIBRARY_PATH="${CMAKE_CURRENT_BINARY_DIR}/c"
@ -21,6 +54,3 @@ index 44bc36a..e7d0f10 100644
add_dependencies(docs docs-py)
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/docs/"
DESTINATION "${PROTON_SHARE}/docs/api-py"
--
1.8.3.1

@ -1,13 +1,14 @@
%global proton_datadir %{_datadir}/proton
%global gem_name qpid_proton
%global __cmake_in_source_build 1
%global __provides_exclude_from ^%{proton_datadir}/examples/.*$
%global __requires_exclude_from ^%{proton_datadir}/examples/.*$
%undefine __brp_mangle_shebangs
Name: qpid-proton
Version: 0.37.0
Release: 5%{?dist}
Version: 0.38.0
Release: 1%{?dist}
Summary: A high performance, lightweight messaging library
License: ASL 2.0
URL: http://qpid.apache.org/proton/
@ -30,13 +31,17 @@ BuildRequires: doxygen
BuildRequires: libuuid-devel
BuildRequires: openssl-devel
BuildRequires: python3-devel
BuildRequires: python3-pip
BuildRequires: python3-rpm-macros
BuildRequires: python3-sphinx
BuildRequires: python3-wheel
BuildRequires: glibc-headers
BuildRequires: cyrus-sasl-devel
BuildRequires: jsoncpp-devel
BuildRequires: python3-setuptools
BuildRequires: ruby-devel
BuildRequires: rubygems-devel
BuildRequires: libuv-devel
BuildRequires: nspr-devel
#BuildRequires: opentelemetry-cpp-devel
%description
Proton is a high performance, lightweight messaging library. It can be used in
@ -70,8 +75,9 @@ Obsoletes: perl-qpid-proton
%package cpp
Summary: C++ libraries for Qpid Proton
Requires: qpid-proton-c%{?_isa} = %{version}-%{release}
Requires: qpid-proton-c%{?_isa} = %{version}-%{release}
Requires: jsoncpp
#Requires: opentelemetry-cpp
%description cpp
%{summary}.
@ -125,13 +131,12 @@ Summary: Development libraries for writing messaging apps with Qpid Proton
Summary: Documentation for the C development libraries for Qpid Proton
BuildArch: noarch
Obsoletes: qpid-proton-c-devel-doc
Obsoletes: qpid-proton-c-devel-docs
Obsoletes: qpid-proton-c-devel-docs
%description c-docs
%{summary}.
%files c-docs
%defattr(-,root,root,-)
%license %{proton_licensedir}/LICENSE.txt
%doc %{proton_datadir}/docs/api-c
%doc %{proton_datadir}/examples/README.md
@ -152,7 +157,6 @@ Obsoletes: qpid-proton-cpp-devel-docs
%{summary}.
%files cpp-docs
%defattr(-,root,root,-)
%license %{proton_licensedir}/LICENSE.txt
%{proton_datadir}/docs/api-cpp
%doc %{proton_datadir}/examples/cpp/*.cpp
@ -160,13 +164,12 @@ Obsoletes: qpid-proton-cpp-devel-docs
%doc %{proton_datadir}/examples/cpp/README.dox
%doc %{proton_datadir}/examples/cpp/CMakeLists.txt
%doc %{proton_datadir}/examples/cpp/ssl-certs
%doc %{proton_datadir}/examples/cpp/tracing.dox
%doc %{proton_datadir}/examples/cpp/tutorial.dox
%package -n python3-qpid-proton
Summary: Python language bindings for the Qpid Proton messaging framework
%{?python_provide:%python_provide python3-qpid-proton}
Requires: qpid-proton-c%{?_isa} = %{version}-%{release}
Requires: python3
@ -174,7 +177,11 @@ Requires: python3
%{summary}.
%files -n python3-qpid-proton
%{python3_sitearch}/*
%{python3_sitearch}/__pycache__/*
%{python3_sitearch}/*.so
%{python3_sitearch}/*.py*
%{python3_sitearch}/proton
%{python3_sitearch}/python_qpid_proton-%{version}.dist-info/*
%package -n python-qpid-proton-docs
@ -186,7 +193,6 @@ Obsoletes: python-qpid-proton-doc
%{summary}.
%files -n python-qpid-proton-docs
%defattr(-,root,root,-)
%license %{proton_licensedir}/LICENSE.txt
%doc %{proton_datadir}/docs/api-py
%doc %{proton_datadir}/examples/python
@ -195,6 +201,7 @@ Obsoletes: python-qpid-proton-doc
%package tests
Summary: Qpid Proton Tests
BuildArch: noarch
%description tests
%{summary}.
@ -202,79 +209,53 @@ BuildArch: noarch
%doc %{proton_datadir}/tests
%package -n rubygem-%{gem_name}
Group: System Environment/Libraries
Summary: Ruby language bindings for the Qpid Proton messaging framework
Obsoletes: rubygem-%{gem_name}-doc
%description -n rubygem-%{gem_name}
Proton is a high performance, lightweight messaging library. It can be used in
the widest range of messaging applications including brokers, client libraries,
routers, bridges, proxies, and more. Proton is based on the AMQP 1.0 messaging
standard.
%files -n rubygem-%{gem_name}
%dir %{gem_instdir}
%{gem_libdir}
%{gem_extdir_mri}
%exclude %{gem_cache}
%{gem_spec}
%doc %{gem_instdir}/examples
%doc %{gem_instdir}/tests
%prep
%setup -q -n %{name}-%{version}
%patch0 -p1
%patch -p1 0
%build
mkdir buildpython3
cd buildpython3
mkdir -p BLD
cd BLD
%cmake \
-DSYSINSTALL_BINDINGS=ON \
-DCMAKE_SKIP_RPATH:BOOL=OFF \
-DENABLE_FUZZ_TESTING=NO \
"-DCMAKE_C_FLAGS=$CFLAGS -Wno-deprecated-declarations" \
-DENABLE_FUZZ_TESTING=NO \
..
#make all docs %{?_smp_mflags}
make all docs -j1
(cd python/dist; %py3_build)
make all docs %{?_smp_mflags}
%install
rm -rf %{buildroot}
cd buildpython3
cd BLD
%make_install
(cd python/dist; %py3_install)
chmod +x %{buildroot}%{python3_sitearch}/_cproton.so
(cd python/dist
# Need to remove anything built by the python cmake build in proton
# so that we rebuild from scratch
rm -rf build
# Need to do the python package build here as we rely on the qpid-proton-core
# library to be installed so we don't duplicate it inside the extension
# That is also why we have to point pkg-config at the installed library
PKG_CONFIG_PATH=%{buildroot}%{_libdir}/pkgconfig %py3_build_wheel
%py3_install_wheel python_qpid_proton-%{version}-cp311-cp311-linux_%{_arch}.whl
# We seem to need to strip the build extension otherwise it seems to embed a reference to
# the buildroot in the debug info which fails the rpmbuild - probably because we massaged
# the pkgconfig path above
strip %{buildroot}%{python3_sitearch}/_cproton*.so)
install -dm 755 %{buildroot}%{proton_licensedir}
install -pm 644 %{SOURCE1} %{buildroot}%{proton_licensedir}
install -pm 644 %{buildroot}%{proton_datadir}/LICENSE.txt %{buildroot}%{proton_licensedir}
rm -f %{buildroot}%{proton_datadir}/LICENSE.txt
cd ruby/gem/
mkdir -p %{buildroot}%{gem_instdir}
install -dm 755 %{buildroot}%{gem_dir}/specifications
mkdir -p %{buildroot}%{gem_extdir_mri}
cp -a %{buildroot}%{ruby_vendorarchdir}/cproton.so %{buildroot}%{gem_extdir_mri}/
touch %{buildroot}%{gem_extdir_mri}/gem.build_complete
chmod 644 %{buildroot}%{gem_extdir_mri}/gem.build_complete
cp -a examples tests lib %{buildroot}%{gem_instdir}/
install -pm 644 %{gem_name}.gemspec %{buildroot}%{gem_spec}
# clean up files that are not shipped
rm -rf %{buildroot}%{_exec_prefix}/bindings
rm -rf %{buildroot}%{_libdir}/java
rm -rf %{buildroot}%{_libdir}/libproton-jni.so
rm -rf %{buildroot}%{_datarootdir}/java
rm -rf %{buildroot}%{_libdir}/proton.cmake
rm -rf %{buildroot}%{_libdir}/ruby
rm -rf %{buildroot}%{_datarootdir}/ruby
rm -fr %{buildroot}%{proton_datadir}/examples/CMakeFiles
rm -f %{buildroot}%{proton_datadir}/examples/Makefile
rm -f %{buildroot}%{proton_datadir}/examples/*.cmake
@ -288,6 +269,8 @@ rm -f %{buildroot}%{proton_datadir}/examples/c/receive
rm -f %{buildroot}%{proton_datadir}/examples/c/send
rm -f %{buildroot}%{proton_datadir}/examples/c/send-abort
rm -f %{buildroot}%{proton_datadir}/examples/c/send-ssl
rm -f %{buildroot}%{proton_datadir}/examples/c/raw_connect
rm -f %{buildroot}%{proton_datadir}/examples/c/raw_echo
rm -fr %{buildroot}%{proton_datadir}/examples/cpp/CMakeFiles
rm -f %{buildroot}%{proton_datadir}/examples/cpp/*.cmake
rm -f %{buildroot}%{proton_datadir}/examples/cpp/Makefile
@ -322,7 +305,6 @@ rm -fr %{buildroot}%{proton_datadir}/examples/engine/java
rm -fr %{buildroot}%{proton_datadir}/examples/go
rm -fr %{buildroot}%{proton_datadir}/examples/java
rm -fr %{buildroot}%{proton_datadir}/examples/javascript
rm -fr %{buildroot}%{proton_datadir}/examples/ruby
rm -fr %{buildroot}%{proton_datadir}/examples/perl
rm -fr %{buildroot}%{proton_datadir}/examples/php
rm -f %{buildroot}%{proton_datadir}/CMakeLists.txt
@ -330,6 +312,9 @@ rm -f %{buildroot}%{proton_datadir}/CMakeLists.txt
%check
%changelog
* Fri Mar 31 2023 Kim van der Riet <kvanderr@redhat.com> - 0.38.0-1
- Rebased to 0.38.0, opentelemetry-cpp not included as no pkgs in Fedora yet.
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.37.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
@ -363,7 +348,7 @@ rm -f %{buildroot}%{proton_datadir}/CMakeLists.txt
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.35.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri July 16 2021 Kim van der Riet <kvanderr@redhat.com> - 0.35.0-1
* Fri Jul 16 2021 Kim van der Riet <kvanderr@redhat.com> - 0.35.0-1
- Rebased to 0.35.0
* Tue May 4 2021 Irina Boverman <iboverma@redhat.com> - 0.34.0-1
@ -521,7 +506,7 @@ rm -f %{buildroot}%{proton_datadir}/CMakeLists.txt
* Tue Sep 8 2015 Irina Boverman <iboverma@redhat.com> - 0.10-2
- Added dependency on cyrus-sasl-devel and cyrus-sasl-lib
- Added 0001-PROTON-974-Accept-a-single-symbol-in-SASL-mechs-fram.patch
* Wed Sep 2 2015 Irina Boverman <iboverma@redhat.com> - 0.10-1
- Rebased to 0.10
@ -627,7 +612,7 @@ rm -f %{buildroot}%{proton_datadir}/CMakeLists.txt
- Removed redundant package name from summary.
- Removed debugging artifacts from specfile.
- Moved unversioned library to the -devel package.
- Added dependency on main package to -devel.
- Added dependency on main package to -devel.
- Fixed directory ownerships.
* Fri Nov 30 2012 Darryl L. Pierce <dpierce@redhat.com> - 0.2-2

@ -1 +1 @@
SHA512 (qpid-proton-0.37.0.tar.gz) = 84d67aab0e81f371fbcee3db89a8a585794966e17ffcd2e2e9418cb587efc0bc4e635c6ce251ebefd716817632ea5b049b759678cebbad64a0d0c07285bd5962
SHA512 (qpid-proton-0.38.0.tar.gz) = 5333046c954d8b63c59579b05173fa2345e0a61f37a305d23b9e3afee461280c82f9f1c19c30954ba32176ce5fef9ce1f0afc57c99d6c614b2d66cdbb71ff00e

Loading…
Cancel
Save