Bug 1513512
Summary: | Review Request: mir - Next generation display server | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Neal Gompa <ngompa13> |
Component: | Package Review | Assignee: | Igor Gnatenko <ignatenko> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | alan, eclipseo, package-review |
Target Milestone: | --- | Flags: | ignatenko:
fedora-review+
|
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2017-11-28 01:41:48 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Neal Gompa
2017-11-15 14:41:36 UTC
2830 /usr/bin/c++ -fPIC -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat- hardened-cc1 -m64 -mtune=generic -pthread -g -std=c++14 -Werror -Wall -fno-strict-aliasing -pedantic -Wnon-virtual-dtor -Wextra -fPIC -Wno-psabi -flto -ffat-lto-objects -Wl,--exclude-libs=ALL -Wl,--version- script,/builddir/build/BUILD/mir-0.28.1/src/client/symbols.map -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,--as-needed -Wl,--no-undefined -shared -Wl,-soname,libmirclient.so.9 -o ../../li b/libmirclient.so.9 CMakeFiles/mirclientobjects.dir/display_configuration.cpp.o CMakeFiles/mirclientobjects.dir/drag_and_drop.cpp.o CMakeFiles/mirclientobjects.dir/error_connections.cpp.o CMakeFiles/mirclie ntobjects.dir/event.cpp.o CMakeFiles/mirclientobjects.dir/event_printer.cpp.o CMakeFiles/mirclientobjects.dir/mir_blob.cpp.o CMakeFiles/mirclientobjects.dir/mir_cookie.cpp.o CMakeFiles/mirclientobjects.dir/ mir_connection.cpp.o CMakeFiles/mirclientobjects.dir/mir_connection_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_input_device_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_wait_handle.cpp.o CMakeFiles/mirc lientobjects.dir/mir_wait_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_surface.cpp.o CMakeFiles/mirclientobjects.dir/mir_surface_api.cpp.o CMakeFiles/mirclientobjects.dir/logging/rpc_report.cpp.o CMakeFile s/mirclientobjects.dir/logging/input_receiver_report.cpp.o CMakeFiles/mirclientobjects.dir/logging/perf_report.cpp.o CMakeFiles/mirclientobjects.dir/default_connection_configuration.cpp.o CMakeFiles/mirclie ntobjects.dir/connection_surface_map.cpp.o CMakeFiles/mirclientobjects.dir/frame_clock.cpp.o CMakeFiles/mirclientobjects.dir/mir_screencast.cpp.o CMakeFiles/mirclientobjects.dir/mir_screencast_api.cpp.o CMa keFiles/mirclientobjects.dir/mir_cursor_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_prompt_session.cpp.o CMakeFiles/mirclientobjects.dir/mir_prompt_session_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_ev ent_distributor.cpp.o CMakeFiles/mirclientobjects.dir/probing_client_platform_factory.cpp.o CMakeFiles/mirclientobjects.dir/periodic_perf_report.cpp.o CMakeFiles/mirclientobjects.dir/mir_platform_message_ap i.cpp.o CMakeFiles/mirclientobjects.dir/buffer_stream.cpp.o CMakeFiles/mirclientobjects.dir/screencast_stream.cpp.o CMakeFiles/mirclientobjects.dir/buffer_vault.cpp.o CMakeFiles/mirclientobjects.dir/mir_buf fer_stream_api.cpp.o CMakeFiles/mirclientobjects.dir/error_stream.cpp.o CMakeFiles/mirclientobjects.dir/error_render_surface.cpp.o CMakeFiles/mirclientobjects.dir/buffer.cpp.o CMakeFiles/mirclientobjects.di r/error_buffer.cpp.o CMakeFiles/mirclientobjects.dir/mir_render_surface_api.cpp.o CMakeFiles/mirclientobjects.dir/render_surface.cpp.o CMakeFiles/mirclientobjects.dir/presentation_chain.cpp.o CMakeFiles/mir clientobjects.dir/mir_presentation_chain_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_buffer_api.cpp.o CMakeFiles/mirclientobjects.dir/display_configuration_api.cpp.o CMakeFiles/mirclientobjects.dir/protob uf_to_native_buffer.cpp.o CMakeFiles/mirclientobjects.dir/buffer_factory.cpp.o CMakeFiles/mirclientobjects.dir/mir_error.cpp.o CMakeFiles/mirclientobjects.dir/mir_error_api.cpp.o CMakeFiles/mirclientobjects .dir/buffer_stream_configuration.cpp.o CMakeFiles/mirclientobjects.dir/events/event_builders.cpp.o CMakeFiles/mirclientobjects.dir/mir_extension_core.cpp.o input/CMakeFiles/mirsharedinput.dir/input_event.cp p.o input/CMakeFiles/mirsharedinput.dir/input_devices.cpp.o input/CMakeFiles/mirsharedinput.dir/xkb_mapper.cpp.o rpc/CMakeFiles/mirclientrpc.dir/mir_basic_rpc_channel.cpp.o rpc/CMakeFiles/mirclientrpc.dir/n ull_rpc_report.cpp.o rpc/CMakeFiles/mirclientrpc.dir/mir_protobuf_rpc_channel.cpp.o rpc/CMakeFiles/mirclientrpc.dir/make_socket_rpc_channel.cpp.o rpc/CMakeFiles/mirclientrpc.dir/stream_socket_transport.cpp. o rpc/CMakeFiles/mirclientrpc.dir/mir_display_server.cpp.o rpc/CMakeFiles/mirclientrpc.dir/mir_display_server_debug.cpp.o -Wl,-rpath,/builddir/build/BUILD/mir-0.28.1/x86_64-redhat-linux-gnu/lib: lttng/libmi rclientlttng-static.a /usr/lib64/libxkbcommon.so ../../lib/libmircommon.so.7 ../../lib/libmirprotobuf.so.3 ../../lib/libmircookie.so.2 /usr/lib64/libxkbcommon.so -ldl ../capnproto/libmircapnproto.a /usr/lib 64/libcapnp.so.0.6.1 /usr/lib64/libkj.so.0.6.1 ../../lib/libmircore.so.1 /usr/lib64/libboost_date_time.so /usr/lib64/libboost_system.so /usr/lib64/libboost_program_options.so /usr/lib64/libboost_filesystem. so -ldl /usr/lib64/libprotobuf-lite.so -lnettle 2831 make[2]: Leaving directory '/builddir/build/BUILD/mir-0.28.1/x86_64-redhat-linux-gnu' 2832 /tmp/cc2VcRKA.ltrans5.ltrans.o: In function `mir::protobuf::DisplayConfiguration::operator=(mir::protobuf::DisplayConfiguration&&)': 2833 /builddir/build/BUILD/mir-0.28.1/x86_64-redhat-linux-gnu/src/protobuf/mir_protobuf.pb.h:5080: undefined reference to `mir::protobuf::DisplayConfiguration::InternalSwap(mir::protobuf::DisplayConfiguration*)' 2834 collect2: error: ld returned 1 exit status It doesn't build correctly: [ 79%] Linking CXX shared library ../../lib/libmirclient.so cd /builddir/build/BUILD/mir-0.28.1/x86_64-redhat-linux-gnu/src/client && /usr/bin/cmake -E cmake_link_script CMakeFiles/mirclient.dir/link.txt --verbose=1 /usr/bin/c++ -fPIC -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -pthread -g -std=c++14 -Werror -Wall -fno-strict-aliasing -pedantic -Wnon-virtual-dtor -Wextra -fPIC -Wno-psabi -flto -ffat-lto-objects -Wl,--exclude-libs=ALL -Wl,--version-script,/builddir/build/BUILD/mir-0.28.1/src/client/symbols.map -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,--as-needed -Wl,--no-undefined -shared -Wl,-soname,libmirclient.so.9 -o ../../lib/libmirclient.so.9 CMakeFiles/mirclientobjects.dir/display_configuration.cpp.o CMakeFiles/mirclientobjects.dir/drag_and_drop.cpp.o CMakeFiles/mirclientobjects.dir/error_connections.cpp.o CMakeFiles/mirclientobjects.dir/event.cpp.o CMakeFiles/mirclientobjects.dir/event_printer.cpp.o CMakeFiles/mirclientobjects.dir/mir_blob.cpp.o CMakeFiles/mirclientobjects.dir/mir_cookie.cpp.o CMakeFiles/mirclientobjects.dir/mir_connection.cpp.o CMakeFiles/mirclientobjects.dir/mir_connection_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_input_device_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_wait_handle.cpp.o CMakeFiles/mirclientobjects.dir/mir_wait_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_surface.cpp.o CMakeFiles/mirclientobjects.dir/mir_surface_api.cpp.o CMakeFiles/mirclientobjects.dir/logging/rpc_report.cpp.o CMakeFiles/mirclientobjects.dir/logging/input_receiver_report.cpp.o CMakeFiles/mirclientobjects.dir/logging/perf_report.cpp.o CMakeFiles/mirclientobjects.dir/default_connection_configuration.cpp.o CMakeFiles/mirclientobjects.dir/connection_surface_map.cpp.o CMakeFiles/mirclientobjects.dir/frame_clock.cpp.o CMakeFiles/mirclientobjects.dir/mir_screencast.cpp.o CMakeFiles/mirclientobjects.dir/mir_screencast_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_cursor_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_prompt_session.cpp.o CMakeFiles/mirclientobjects.dir/mir_prompt_session_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_event_distributor.cpp.o CMakeFiles/mirclientobjects.dir/probing_client_platform_factory.cpp.o CMakeFiles/mirclientobjects.dir/periodic_perf_report.cpp.o CMakeFiles/mirclientobjects.dir/mir_platform_message_api.cpp.o CMakeFiles/mirclientobjects.dir/buffer_stream.cpp.o CMakeFiles/mirclientobjects.dir/screencast_stream.cpp.o CMakeFiles/mirclientobjects.dir/buffer_vault.cpp.o CMakeFiles/mirclientobjects.dir/mir_buffer_stream_api.cpp.o CMakeFiles/mirclientobjects.dir/error_stream.cpp.o CMakeFiles/mirclientobjects.dir/error_render_surface.cpp.o CMakeFiles/mirclientobjects.dir/buffer.cpp.o CMakeFiles/mirclientobjects.dir/error_buffer.cpp.o CMakeFiles/mirclientobjects.dir/mir_render_surface_api.cpp.o CMakeFiles/mirclientobjects.dir/render_surface.cpp.o CMakeFiles/mirclientobjects.dir/presentation_chain.cpp.o CMakeFiles/mirclientobjects.dir/mir_presentation_chain_api.cpp.o CMakeFiles/mirclientobjects.dir/mir_buffer_api.cpp.o CMakeFiles/mirclientobjects.dir/display_configuration_api.cpp.o CMakeFiles/mirclientobjects.dir/protobuf_to_native_buffer.cpp.o CMakeFiles/mirclientobjects.dir/buffer_factory.cpp.o CMakeFiles/mirclientobjects.dir/mir_error.cpp.o CMakeFiles/mirclientobjects.dir/mir_error_api.cpp.o CMakeFiles/mirclientobjects.dir/buffer_stream_configuration.cpp.o CMakeFiles/mirclientobjects.dir/events/event_builders.cpp.o CMakeFiles/mirclientobjects.dir/mir_extension_core.cpp.o input/CMakeFiles/mirsharedinput.dir/input_event.cpp.o input/CMakeFiles/mirsharedinput.dir/input_devices.cpp.o input/CMakeFiles/mirsharedinput.dir/xkb_mapper.cpp.o rpc/CMakeFiles/mirclientrpc.dir/mir_basic_rpc_channel.cpp.o rpc/CMakeFiles/mirclientrpc.dir/null_rpc_report.cpp.o rpc/CMakeFiles/mirclientrpc.dir/mir_protobuf_rpc_channel.cpp.o rpc/CMakeFiles/mirclientrpc.dir/make_socket_rpc_channel.cpp.o rpc/CMakeFiles/mirclientrpc.dir/stream_socket_transport.cpp.o rpc/CMakeFiles/mirclientrpc.dir/mir_display_server.cpp.o rpc/CMakeFiles/mirclientrpc.dir/mir_display_server_debug.cpp.o -Wl,-rpath,/builddir/build/BUILD/mir-0.28.1/x86_64-redhat- linux-gnu/lib: lttng/libmirclientlttng-static.a /usr/lib64/libxkbcommon.so ../../lib/libmircommon.so.7 ../../lib/libmirprotobuf.so.3 ../../lib/libmircookie.so.2 /usr/lib64/libxkbcommon.so -ldl ../capnproto/libmircapnproto.a /usr/lib64/libcapnp.so.0.6.1 /usr/lib64/libkj.so.0.6.1 ../../lib/libmircore.so.1 /usr/lib64/libboost_date_time.so /usr/lib64/libboost_system.so /usr/lib64/libboost_program_options.so /usr/lib64/libboost_filesystem.so -ldl /usr/lib64/libprotobuf-lite.so -lnettle make[2]: Leaving directory '/builddir/build/BUILD/mir-0.28.1/x86_64-redhat-linux-gnu' /tmp/ccIxM4gk.ltrans5.ltrans.o: In function `mir::protobuf::DisplayConfiguration::operator=(mir::protobuf::DisplayConfiguration&&)': /builddir/build/BUILD/mir-0.28.1/x86_64-redhat-linux-gnu/src/protobuf/mir_protobuf.pb.h:5080: undefined reference to `mir::protobuf::DisplayConfiguration::InternalSwap(mir::protobuf::DisplayConfiguration*)' collect2: error: ld returned 1 exit status make[2]: *** [src/client/CMakeFiles/mirclient.dir/build.make:208: lib/libmirclient.so.9] Error 1 make[1]: *** [CMakeFiles/Makefile2:3949: src/client/CMakeFiles/mirclient.dir/all] Error 2 make: *** [Makefile:144: all] Error 2 It works on Fedora 27 though. Maybe due to a change in protobuf whose version 3.4.1 was pushed in Rawhide. FTBFS reported https://github.com/MirServer/mir/issues/39 I've added a patch from upstream to fix the build, and replaced the spec and srpm: Spec URL: http://kinginuyasha.enanocms.org/downloads/mir.spec SRPM URL: http://kinginuyasha.enanocms.org/downloads/mir-0.28.1-1.fc26.src.rpm Review: - mir-demos contains an icon, you need to use the gtk-update-icon-cache scriplet. See https://fedoraproject.org/wiki/Packaging:Scriptlets#Icon_Cache Requires: hicolor-icon-theme And: %post demos /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : %postun demos if [ $1 -eq 0 ] ; then /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : fi %posttrans demos /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : - You should call /sbin/ldconfig for client-libs-debugext which contains the library libmirclient-debug-extension.so.* - mir-demos contains a desktop file, miral-shell.desktop, it should be validated in %install or %check. See: https://fedoraproject.org/wiki/Packaging:Guidelines#desktop-file-install_usage BuildRequires: desktop-file-utils And: desktop-file-validate %{buildroot}/%{_datadir}/applications/miral-shell.desktop - Package should own these directories: /usr/lib64/mir, /usr/lib64/mir/tools, /usr/lib64/mir/client-platform, /usr/lib64/mir/server-platform Added requested fixes. Spec URL: http://kinginuyasha.enanocms.org/downloads/mir.spec SRPM URL: http://kinginuyasha.enanocms.org/downloads/mir-0.28.1-1.fc27.src.rpm I would remove static subpackage unless there is some hard requirement. The subpackage is currently disabled due to brokenness with Google Test in Rawhide anyway, but I'll check with upstream on whether it's useful for anything... (fedrepo-req-admin): The Pagure repository was created at https://src.fedoraproject.org/rpms/mir mir-0.28.1-1.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2017-db63d31a86 mir-0.28.1-1.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-db63d31a86 mir-0.28.1-1.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-ec8ee3a847 mir-0.28.1-1.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report. mir-0.28.1-1.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report. |