Rebased to 0.38.0

i10ce imports/e9/qpid-proton-0.38.0-1.el9
Kim van der Riet 2 years ago
parent 96fb02f143
commit 1f2f7a6986

@ -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,17 +1,51 @@
From fb76b256a72b2c147e252c3e19fd0523bab1eab8 Mon Sep 17 00:00:00 2001
From: Irina Boverman <iboverma@redhat.com>
Date: Mon, 28 Jun 2021 10:55:15 -0400
Subject: [PATCH 1/2] Changed-Sphinx-invocation-from-sphinx-to-sphinx-buil
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 06caf61a..f8735fd1 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -124,7 +124,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"
@ -20,6 +54,3 @@ index 06caf61a..f8735fd1 100644
add_dependencies(docs docs-py)
install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/docs/"
DESTINATION "${PROTON_SHARE}/docs/api-py"
--
2.29.0

@ -1,5 +1,4 @@
%global proton_datadir %{_datadir}/proton
%global gem_name qpid_proton
%global __cmake_in_source_build 1
%global __provides_exclude_from ^%{proton_datadir}/examples/.*$
@ -8,8 +7,8 @@
%undefine __brp_mangle_shebangs
Name: qpid-proton
Version: 0.37.0
Release: 2%{?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/
@ -33,15 +32,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
@ -77,6 +78,7 @@ Obsoletes: perl-qpid-proton
Summary: C++ libraries for Qpid Proton
Requires: qpid-proton-c%{?_isa} = %{version}-%{release}
Requires: jsoncpp
#Requires: opentelemetry-cpp
%description cpp
%{summary}.
@ -163,6 +165,7 @@ 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
@ -178,8 +181,8 @@ Requires: python3
%{python3_sitearch}/__pycache__/*
%{python3_sitearch}/*.so
%{python3_sitearch}/*.py*
%{python3_sitearch}/*.egg-info
%{python3_sitearch}/proton
%{python3_sitearch}/python_qpid_proton-%{version}.dist-info/*
%package -n python-qpid-proton-docs
@ -199,32 +202,13 @@ Obsoletes: python-qpid-proton-doc
%package tests
Summary: Qpid Proton Tests
BuildArch: noarch
%description tests
%{summary}.
%files tests
%doc %{proton_datadir}/tests
%package -n rubygem-%{gem_name}
Summary: Ruby language bindings for the Qpid Proton messaging framework
Requires: qpid-proton-c = %{version}-%{release}
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}
@ -232,51 +216,47 @@ standard.
%build
mkdir build
cd build
mkdir -p BLD
cd BLD
%cmake \
-DSYSINSTALL_BINDINGS=ON \
-DCMAKE_SKIP_RPATH:BOOL=OFF \
"-DCMAKE_C_FLAGS=$CFLAGS -Wno-deprecated-declarations" \
-DENABLE_FUZZ_TESTING=NO \
..
make all docs %{?_smp_mflags}
(cd python/dist; %py3_build)
%install
rm -rf %{buildroot}
cd build
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}-cp39-cp39-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
@ -326,7 +306,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
@ -334,5 +313,8 @@ 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 centos yet.
* Tue Jul 12 2022 Irina Boverman <iboverma@redhat.com> - 0.37.0-1
- Initial build for EPEL 9

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

Loading…
Cancel
Save