Spec URL: https://rstoyanov.fedorapeople.org/p4lang-pi.spec SRPM URL: https://rstoyanov.fedorapeople.org/p4lang-pi-0.1.0-1.fc37.src.rpm Description: Protocol Independent API (PI or P4 Runtime) defines a set of APIs that allow interacting with entities defined in a P4 program, such as tables, counters, meters. Fedora Account System Username: rstoyanov
Created attachment 1872814 [details] Fedora-review report
Could you remove # license %{__mkdir_p} %{buildroot}%{_datadir}/p4lang-pi %{__cp} LICENSE %{buildroot}%{_datadir}/p4lang-pi/LICENSE and do %license PI-%{version}/LICENSE does that work
Thank you for the review Adrian. I have updated the spec file and src RPM file with your suggestion. As as expected, the LICENSE file is now installed in /usr/share/licenses/p4lang-pi/. Spec URL: https://rstoyanov.fedorapeople.org/p4lang-pi.spec SRPM URL: https://rstoyanov.fedorapeople.org/p4lang-pi-0.1.0-1.fc37.src.rpm
Created attachment 1875111 [details] Fedora-review report
It does not build on my Fedora 36 system. Does the package require something from rawhide? /bin/sh ../libtool --tag=CXX --mode=link g++ -Wall -Werror -Wno-unused-command-line-argument -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -Wl,-dT,/home/adrian/rpmbuild/BUILD/p4lang-pi-0.1.0/.package_note-p4lang-pi-0.1.0-1.fc36.x86_64.ld -o pi_server_dummy pi_server_main.o ../server/libpigrpcserver.la ../frontend/libpifeproto.la ../libpiprotogrpc.la ../libpiprotobuf.la ../../src/libpiall.la ../../targets/dummy/libpi_dummy.la -lmicrohttpd libtool: link: g++ -Wall -Werror -Wno-unused-command-line-argument -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -Wl,-dT -Wl,/home/adrian/rpmbuild/BUILD/p4lang-pi-0.1.0/.package_note-p4lang-pi-0.1.0-1.fc36.x86_64.ld -o .libs/pi_server_dummy pi_server_main.o ../server/.libs/libpigrpcserver.so -L/usr/lib64 -L/usr/lib /home/adrian/rpmbuild/BUILD/p4lang-pi-0.1.0/PI-0.1.0/build/proto/frontend/.libs/libpifeproto.so /home/adrian/rpmbuild/BUILD/p4lang-pi-0.1.0/PI-0.1.0/build/proto/.libs/libpiprotogrpc.so -lboost_system ../frontend/.libs/libpifeproto.so /home/adrian/rpmbuild/BUILD/p4lang-pi-0.1.0/PI-0.1.0/build/frontends_extra/cpp/.libs/libpifecpp.so /home/adrian/rpmbuild/BUILD/p4lang-pi-0.1.0/PI-0.1.0/build/proto/p4info/.libs/libpiconvertproto.so /home/adrian/rpmbuild/BUILD/p4lang-pi-0.1.0/PI-0.1.0/build/src/.libs/libpip4info.so -lboost_thread ../.libs/libpiprotogrpc.so /home/adrian/rpmbuild/BUILD/p4lang-pi-0.1.0/PI-0.1.0/build/proto/.libs/libpiprotobuf.so -lgrpc++ -lgrpc -laddress_sorting -lre2 -lupb -lcares -lz -lgpr -lssl -lcrypto -labsl_hash -labsl_city -labsl_wyhash -labsl_raw_hash_set -labsl_hashtablez_sampler -labsl_exponential_biased -labsl_statusor -labsl_status -labsl_cord -labsl_bad_optional_access -labsl_str_format_internal -labsl_synchronization -labsl_graphcycles_internal -labsl_stacktrace -labsl_symbolize -labsl_debugging_internal -labsl_demangle_internal -labsl_malloc_internal -labsl_time -labsl_civil_time -labsl_strings -labsl_strings_internal -lrt -labsl_base -labsl_spinlock_wait -labsl_int128 -labsl_throw_delegate -labsl_time_zone -labsl_bad_variant_access -labsl_raw_logging_internal -labsl_log_severity ../.libs/libpiprotobuf.so -lprotobuf ../../src/.libs/libpiall.so -lm ../../targets/dummy/.libs/libpi_dummy.so -lmicrohttpd -pthread ../../../proto/demo_grpc/web_server.cpp: In function 'int {anonymous}::answer_to_connection(void*, MHD_Connection*, const char*, const char*, const char*, const char*, size_t*, void**)': ../../../proto/demo_grpc/web_server.cpp:199:39: error: invalid conversion from 'int (*)(void*, MHD_ValueKind, const char*, const char*, const char*, const char*, const char*, uint64_t, size_t)' {aka 'int (*)(void*, MHD_ValueKind, const char*, const char*, const char*, const char*, const char*, long unsigned int, long unsigned int)'} to 'MHD_PostDataIterator' {aka 'MHD_Result (*)(void*, MHD_ValueKind, const char*, const char*, const char*, const char*, const char*, long unsigned int, long unsigned int)'} [-fpermissive] 199 | connection, POSTBUFFERSIZE, iterate_post, | ^~~~~~~~~~~~ | | | int (*)(void*, MHD_ValueKind, const char*, const char*, const char*, const char*, const char*, uint64_t, size_t) {aka int (*)(void*, MHD_ValueKind, const char*, const char*, const char*, const char*, const char*, long unsigned int, long unsigned int)} In file included from ../../../proto/demo_grpc/web_server.cpp:26: /usr/include/microhttpd.h:4020:49: note: initializing argument 3 of 'MHD_PostProcessor* MHD_create_post_processor(MHD_Connection*, size_t, MHD_PostDataIterator, void*)' 4020 | MHD_PostDataIterator iter, void *iter_cls); | ~~~~~~~~~~~~~~~~~~~~~^~~~ ../../../proto/demo_grpc/web_server.cpp: In member function 'int WebServer::start()': ../../../proto/demo_grpc/web_server.cpp:240:29: error: invalid conversion from 'int (*)(void*, MHD_Connection*, const char*, const char*, const char*, const char*, size_t*, void**)' {aka 'int (*)(void*, MHD_Connection*, const char*, const char*, const char*, const char*, long unsigned int*, void**)'} to 'MHD_AccessHandlerCallback' {aka 'MHD_Result (*)(void*, MHD_Connection*, const char*, const char*, const char*, const char*, long unsigned int*, void**)'} [-fpermissive] 240 | &answer_to_connection, static_cast<void *>(this), | ^~~~~~~~~~~~~~~~~~~~~ | | | int (*)(void*, MHD_Connection*, const char*, const char*, const char*, const char*, size_t*, void**) {aka int (*)(void*, MHD_Connection*, const char*, const char*, const char*, const char*, long unsigned int*, void**)} /usr/include/microhttpd.h:2701:45: note: initializing argument 5 of 'MHD_Daemon* MHD_start_daemon(unsigned int, uint16_t, MHD_AcceptPolicyCallback, void*, MHD_AccessHandlerCallback, void*, ...)' 2701 | MHD_AccessHandlerCallback dh, void *dh_cls, | ~~~~~~~~~~~~~~~~~~~~~~~~~~^~ At global scope: cc1plus: note: unrecognized command-line option '-Wno-unused-command-line-argument' may have been intended to silence earlier diagnostics make[4]: *** [Makefile:559: web_server.o] Error 1 make[4]: *** Waiting for unfinished jobs.... ../../../proto/demo_grpc/test_perf.cpp: In member function 'int P4RuntimeClient::assign_device(int, const pi_p4info_t*)': ../../../proto/demo_grpc/test_perf.cpp:115:27: error: ignoring return value of 'p4::config::v1::P4Info* p4::v1::ForwardingPipelineConfig::release_p4info()', declared with attribute 'nodiscard' [-Werror=unused-result] 115 | config->release_p4info(); | ~~~~~~~~~~~~~~~~~~~~~~^~ In file included from ../grpc_out/p4/v1/p4runtime.grpc.pb.h:22, from ../../../proto/demo_grpc/test_perf.cpp:20: ../cpp_out/p4/v1/p4runtime.pb.h:20462:34: note: declared here 20462 | inline ::p4::config::v1::P4Info* ForwardingPipelineConfig::release_p4info() { | ^~~~~~~~~~~~~~~~~~~~~~~~ At top level: cc1plus: note: unrecognized command-line option '-Wno-unused-command-line-argument' may have been intended to silence earlier diagnostics cc1plus: all warnings being treated as errors make[4]: *** [Makefile:559: test_perf.o] Error 1 In file included from /usr/include/boost/smart_ptr/detail/sp_thread_sleep.hpp:22, from /usr/include/boost/smart_ptr/detail/yield_k.hpp:23, from /usr/include/boost/smart_ptr/detail/spinlock_gcc_atomic.hpp:14, from /usr/include/boost/smart_ptr/detail/spinlock.hpp:42, from /usr/include/boost/smart_ptr/detail/spinlock_pool.hpp:25, from /usr/include/boost/smart_ptr/shared_ptr.hpp:29, from /usr/include/boost/shared_ptr.hpp:17, from /usr/include/boost/date_time/time_clock.hpp:17, from /usr/include/boost/date_time/posix_time/posix_time_types.hpp:10, from /usr/include/boost/asio/time_traits.hpp:23, from /usr/include/boost/asio/detail/timer_queue_ptime.hpp:22, from /usr/include/boost/asio/detail/deadline_timer_service.hpp:29, from /usr/include/boost/asio/basic_deadline_timer.hpp:25, from /usr/include/boost/asio.hpp:25, from ../../../proto/demo_grpc/simple_router_mgr.h:25, from ../../../proto/demo_grpc/simple_router_mgr.cpp:21: /usr/include/boost/bind.hpp:36:1: note: '#pragma message: The practice of declaring the Bind placeholders (_1, _2, ...) in the global namespace is deprecated. Please use <boost/bind/bind.hpp> + using namespace boost::placeholders, or define BOOST_BIND_GLOBAL_PLACEHOLDERS to retain the current behavior.' 36 | BOOST_PRAGMA_MESSAGE( | ^~~~~~~~~~~~~~~~~~~~ ../../../proto/demo_grpc/simple_router_mgr.cpp: In member function 'int SimpleRouterMgr::assign(const std::string&, const std::string*)': ../../../proto/demo_grpc/simple_router_mgr.cpp:273:25: error: ignoring return value of 'p4::config::v1::P4Info* p4::v1::ForwardingPipelineConfig::release_p4info()', declared with attribute 'nodiscard' [-Werror=unused-result] 273 | config->release_p4info(); | ~~~~~~~~~~~~~~~~~~~~~~^~ In file included from ../grpc_out/p4/v1/p4runtime.grpc.pb.h:22, from ../../../proto/demo_grpc/simple_router_mgr.h:29: ../cpp_out/p4/v1/p4runtime.pb.h:20462:34: note: declared here 20462 | inline ::p4::config::v1::P4Info* ForwardingPipelineConfig::release_p4info() { | ^~~~~~~~~~~~~~~~~~~~~~~~ ../../../proto/demo_grpc/simple_router_mgr.cpp: In member function 'int SimpleRouterMgr::add_one_entry(p4::v1::TableEntry*)': ../../../proto/demo_grpc/simple_router_mgr.cpp:318:30: error: ignoring return value of 'p4::v1::TableEntry* p4::v1::Entity::release_table_entry()', declared with attribute 'nodiscard' [-Werror=unused-result] 318 | entity->release_table_entry(); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~ ../cpp_out/p4/v1/p4runtime.pb.h:12593:30: note: declared here 12593 | inline ::p4::v1::TableEntry* Entity::release_table_entry() { | ^~~~~~ ../../../proto/demo_grpc/simple_router_mgr.cpp: In member function 'int SimpleRouterMgr::set_one_default_entry(pi_p4_id_t, p4::v1::Action*)': ../../../proto/demo_grpc/simple_router_mgr.cpp:442:24: error: ignoring return value of 'p4::v1::Action* p4::v1::TableAction::release_action()', declared with attribute 'nodiscard' [-Werror=unused-result] 442 | entry->release_action(); | ~~~~~~~~~~~~~~~~~~~~~^~ ../cpp_out/p4/v1/p4runtime.pb.h:14995:26: note: declared here 14995 | inline ::p4::v1::Action* TableAction::release_action() { | ^~~~~~~~~~~ ../../../proto/demo_grpc/simple_router_mgr.cpp: In member function 'int SimpleRouterMgr::update_config_(const std::string&, const std::string*)': ../../../proto/demo_grpc/simple_router_mgr.cpp:729:27: error: ignoring return value of 'p4::config::v1::P4Info* p4::v1::ForwardingPipelineConfig::release_p4info()', declared with attribute 'nodiscard' [-Werror=unused-result] 729 | config->release_p4info(); | ~~~~~~~~~~~~~~~~~~~~~~^~ ../cpp_out/p4/v1/p4runtime.pb.h:20462:34: note: declared here 20462 | inline ::p4::config::v1::P4Info* ForwardingPipelineConfig::release_p4info() { | ^~~~~~~~~~~~~~~~~~~~~~~~ At top level: cc1plus: note: unrecognized command-line option '-Wno-unused-command-line-argument' may have been intended to silence earlier diagnostics cc1plus: all warnings being treated as errors
If you make changes to your package during the review process please increase the Release and mention the changes in the changelog.
I am not able to replicate this error. Here are the steps I followed to test with Fedora 36: $ sudo podman run -it registry.fedoraproject.org/fedora:36 bash dnf install -y fedpkg rpmdevtools valgrind automake libtool python3-devel glibc-devel gcc gcc-c++ boost-devel boost-system boost-thread grpc-devel grpc-plugins protobuf-devel git clone https://github.com/rst0git/p4lang-pi-rpm.git cd p4lang-pi-rpm/ spectool -g p4lang-pi.spec fedpkg local
That error only happens when libmicrohttpd-deve is installed, right.
Looks good. Please open an ExclusiveArch tracker bug once the package has been imported.
Package was never imported. The ticket status is being reset, since creating the repository will require a fresh approval. Let us know if you're still interested in this package.
This is an automatic check from review-stats script. This review request ticket hasn't been updated for some time. We're sorry it is taking so long. If you're still interested in packaging this software into Fedora repositories, please respond to this comment clearing the NEEDINFO flag. You may want to update the specfile and the src.rpm to the latest version available and to propose a review swap on Fedora devel mailing list to increase chances to have your package reviewed. If this is your first package and you need a sponsor, you may want to post some informal reviews. Read more at https://fedoraproject.org/wiki/How_to_get_sponsored_into_the_packager_group. Without any reply, this request will shortly be considered abandoned and will be closed. Thank you for your patience.
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 120 days