Rebased to 0.38.0

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

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

@ -1,18 +1,51 @@
From c2256a4ed949bad6b85086113dc570472a0f7c11 Mon Sep 17 00:00:00 2001 diff -ruN qpid-proton-0.38.0.orig/CMakeLists.txt qpid-proton-0.38.0/CMakeLists.txt
From: Irina Boverman <iboverma@redhat.com> --- qpid-proton-0.38.0.orig/CMakeLists.txt 2022-11-07 11:35:09.000000000 -0500
Date: Tue, 4 May 2021 14:12:53 -0400 +++ qpid-proton-0.38.0/CMakeLists.txt 2022-11-23 10:19:17.963751717 -0500
Subject: [PATCH] Changed Sphinx invocation from sphinx to sphinx-build for @@ -42,7 +42,7 @@
RHEL7 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)
--- diff -ruN qpid-proton-0.38.0.orig/cpp/src/map_test.cpp qpid-proton-0.38.0/cpp/src/map_test.cpp
python/CMakeLists.txt | 2 +- --- qpid-proton-0.38.0.orig/cpp/src/map_test.cpp 2022-11-07 11:35:09.000000000 -0500
1 file changed, 1 insertion(+), 1 deletion(-) +++ 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 +void test_copy_constructor() {
index 44bc36a..e7d0f10 100644 + proton::map<string, scalar> m = std::map<string, scalar>{{"a", 2}, {"b", 3}};
--- a/python/CMakeLists.txt + ASSERT_EQUAL(scalar(2), m.get("a"));
+++ b/python/CMakeLists.txt + ASSERT_EQUAL(scalar(3), m.get("b"));
@@ -125,7 +125,7 @@ else () + 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} -- COMMAND ${PN_ENV_SCRIPT} --
PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CMAKE_CURRENT_SOURCE_DIR} PYTHONPATH=${CMAKE_CURRENT_BINARY_DIR}:${CMAKE_CURRENT_SOURCE_DIR}
LD_LIBRARY_PATH="${CMAKE_CURRENT_BINARY_DIR}/c" LD_LIBRARY_PATH="${CMAKE_CURRENT_BINARY_DIR}/c"
@ -21,6 +54,3 @@ index 44bc36a..e7d0f10 100644
add_dependencies(docs docs-py) add_dependencies(docs docs-py)
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/docs/" install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/docs/"
DESTINATION "${PROTON_SHARE}/docs/api-py" DESTINATION "${PROTON_SHARE}/docs/api-py"
--
1.8.3.1

@ -1,13 +1,14 @@
%global proton_datadir %{_datadir}/proton %global proton_datadir %{_datadir}/proton
%global gem_name qpid_proton
%global __cmake_in_source_build 1 %global __cmake_in_source_build 1
%global __provides_exclude_from ^%{proton_datadir}/examples/.*$ %global __provides_exclude_from ^%{proton_datadir}/examples/.*$
%global __requires_exclude_from ^%{proton_datadir}/examples/.*$ %global __requires_exclude_from ^%{proton_datadir}/examples/.*$
%undefine __brp_mangle_shebangs
Name: qpid-proton Name: qpid-proton
Version: 0.37.0 Version: 0.38.0
Release: 5%{?dist} Release: 1%{?dist}
Summary: A high performance, lightweight messaging library Summary: A high performance, lightweight messaging library
License: ASL 2.0 License: ASL 2.0
URL: http://qpid.apache.org/proton/ URL: http://qpid.apache.org/proton/
@ -30,13 +31,17 @@ BuildRequires: doxygen
BuildRequires: libuuid-devel BuildRequires: libuuid-devel
BuildRequires: openssl-devel BuildRequires: openssl-devel
BuildRequires: python3-devel BuildRequires: python3-devel
BuildRequires: python3-pip
BuildRequires: python3-rpm-macros
BuildRequires: python3-sphinx BuildRequires: python3-sphinx
BuildRequires: python3-wheel
BuildRequires: glibc-headers BuildRequires: glibc-headers
BuildRequires: cyrus-sasl-devel BuildRequires: cyrus-sasl-devel
BuildRequires: jsoncpp-devel BuildRequires: jsoncpp-devel
BuildRequires: python3-setuptools BuildRequires: python3-setuptools
BuildRequires: ruby-devel BuildRequires: libuv-devel
BuildRequires: rubygems-devel BuildRequires: nspr-devel
#BuildRequires: opentelemetry-cpp-devel
%description %description
Proton is a high performance, lightweight messaging library. It can be used in Proton is a high performance, lightweight messaging library. It can be used in
@ -72,6 +77,7 @@ Obsoletes: perl-qpid-proton
Summary: C++ libraries for Qpid Proton Summary: C++ libraries for Qpid Proton
Requires: qpid-proton-c%{?_isa} = %{version}-%{release} Requires: qpid-proton-c%{?_isa} = %{version}-%{release}
Requires: jsoncpp Requires: jsoncpp
#Requires: opentelemetry-cpp
%description cpp %description cpp
%{summary}. %{summary}.
@ -131,7 +137,6 @@ Obsoletes: qpid-proton-c-devel-docs
%{summary}. %{summary}.
%files c-docs %files c-docs
%defattr(-,root,root,-)
%license %{proton_licensedir}/LICENSE.txt %license %{proton_licensedir}/LICENSE.txt
%doc %{proton_datadir}/docs/api-c %doc %{proton_datadir}/docs/api-c
%doc %{proton_datadir}/examples/README.md %doc %{proton_datadir}/examples/README.md
@ -152,7 +157,6 @@ Obsoletes: qpid-proton-cpp-devel-docs
%{summary}. %{summary}.
%files cpp-docs %files cpp-docs
%defattr(-,root,root,-)
%license %{proton_licensedir}/LICENSE.txt %license %{proton_licensedir}/LICENSE.txt
%{proton_datadir}/docs/api-cpp %{proton_datadir}/docs/api-cpp
%doc %{proton_datadir}/examples/cpp/*.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/README.dox
%doc %{proton_datadir}/examples/cpp/CMakeLists.txt %doc %{proton_datadir}/examples/cpp/CMakeLists.txt
%doc %{proton_datadir}/examples/cpp/ssl-certs %doc %{proton_datadir}/examples/cpp/ssl-certs
%doc %{proton_datadir}/examples/cpp/tracing.dox
%doc %{proton_datadir}/examples/cpp/tutorial.dox %doc %{proton_datadir}/examples/cpp/tutorial.dox
%package -n python3-qpid-proton %package -n python3-qpid-proton
Summary: Python language bindings for the Qpid Proton messaging framework 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: qpid-proton-c%{?_isa} = %{version}-%{release}
Requires: python3 Requires: python3
@ -174,7 +177,11 @@ Requires: python3
%{summary}. %{summary}.
%files -n python3-qpid-proton %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 %package -n python-qpid-proton-docs
@ -186,7 +193,6 @@ Obsoletes: python-qpid-proton-doc
%{summary}. %{summary}.
%files -n python-qpid-proton-docs %files -n python-qpid-proton-docs
%defattr(-,root,root,-)
%license %{proton_licensedir}/LICENSE.txt %license %{proton_licensedir}/LICENSE.txt
%doc %{proton_datadir}/docs/api-py %doc %{proton_datadir}/docs/api-py
%doc %{proton_datadir}/examples/python %doc %{proton_datadir}/examples/python
@ -195,6 +201,7 @@ Obsoletes: python-qpid-proton-doc
%package tests %package tests
Summary: Qpid Proton Tests Summary: Qpid Proton Tests
BuildArch: noarch BuildArch: noarch
%description tests %description tests
%{summary}. %{summary}.
@ -202,79 +209,53 @@ BuildArch: noarch
%doc %{proton_datadir}/tests %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 %prep
%setup -q -n %{name}-%{version} %setup -q -n %{name}-%{version}
%patch0 -p1 %patch -p1 0
%build %build
mkdir -p BLD
mkdir buildpython3 cd BLD
cd buildpython3
%cmake \ %cmake \
-DSYSINSTALL_BINDINGS=ON \
-DCMAKE_SKIP_RPATH:BOOL=OFF \ -DCMAKE_SKIP_RPATH:BOOL=OFF \
-DENABLE_FUZZ_TESTING=NO \
"-DCMAKE_C_FLAGS=$CFLAGS -Wno-deprecated-declarations" \ "-DCMAKE_C_FLAGS=$CFLAGS -Wno-deprecated-declarations" \
-DENABLE_FUZZ_TESTING=NO \
.. ..
#make all docs %{?_smp_mflags} make all docs %{?_smp_mflags}
make all docs -j1
(cd python/dist; %py3_build)
%install %install
rm -rf %{buildroot} rm -rf %{buildroot}
cd buildpython3 cd BLD
%make_install %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 -dm 755 %{buildroot}%{proton_licensedir}
install -pm 644 %{SOURCE1} %{buildroot}%{proton_licensedir} install -pm 644 %{SOURCE1} %{buildroot}%{proton_licensedir}
install -pm 644 %{buildroot}%{proton_datadir}/LICENSE.txt %{buildroot}%{proton_licensedir} install -pm 644 %{buildroot}%{proton_datadir}/LICENSE.txt %{buildroot}%{proton_licensedir}
rm -f %{buildroot}%{proton_datadir}/LICENSE.txt 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 # clean up files that are not shipped
rm -rf %{buildroot}%{_exec_prefix}/bindings rm -rf %{buildroot}%{_exec_prefix}/bindings
rm -rf %{buildroot}%{_libdir}/java rm -rf %{buildroot}%{_libdir}/java
rm -rf %{buildroot}%{_libdir}/libproton-jni.so rm -rf %{buildroot}%{_libdir}/libproton-jni.so
rm -rf %{buildroot}%{_datarootdir}/java rm -rf %{buildroot}%{_datarootdir}/java
rm -rf %{buildroot}%{_libdir}/proton.cmake rm -rf %{buildroot}%{_libdir}/proton.cmake
rm -rf %{buildroot}%{_libdir}/ruby
rm -rf %{buildroot}%{_datarootdir}/ruby
rm -fr %{buildroot}%{proton_datadir}/examples/CMakeFiles rm -fr %{buildroot}%{proton_datadir}/examples/CMakeFiles
rm -f %{buildroot}%{proton_datadir}/examples/Makefile rm -f %{buildroot}%{proton_datadir}/examples/Makefile
rm -f %{buildroot}%{proton_datadir}/examples/*.cmake 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
rm -f %{buildroot}%{proton_datadir}/examples/c/send-abort 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/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 -fr %{buildroot}%{proton_datadir}/examples/cpp/CMakeFiles
rm -f %{buildroot}%{proton_datadir}/examples/cpp/*.cmake rm -f %{buildroot}%{proton_datadir}/examples/cpp/*.cmake
rm -f %{buildroot}%{proton_datadir}/examples/cpp/Makefile 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/go
rm -fr %{buildroot}%{proton_datadir}/examples/java rm -fr %{buildroot}%{proton_datadir}/examples/java
rm -fr %{buildroot}%{proton_datadir}/examples/javascript 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/perl
rm -fr %{buildroot}%{proton_datadir}/examples/php rm -fr %{buildroot}%{proton_datadir}/examples/php
rm -f %{buildroot}%{proton_datadir}/CMakeLists.txt rm -f %{buildroot}%{proton_datadir}/CMakeLists.txt
@ -330,6 +312,9 @@ rm -f %{buildroot}%{proton_datadir}/CMakeLists.txt
%check %check
%changelog %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 * Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.37.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - 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 * Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.35.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - 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 - Rebased to 0.35.0
* Tue May 4 2021 Irina Boverman <iboverma@redhat.com> - 0.34.0-1 * Tue May 4 2021 Irina Boverman <iboverma@redhat.com> - 0.34.0-1

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

Loading…
Cancel
Save