File wemeet.spec of Package wemeet

# wemeet.spec --- Tencent WeMeet

# Original code copy from home:fusionfuture:wemeet

%global debug_package %{nil}
%global __requires_exclude ^lib(cud|nv|q|Qt5|icu|tiff).*$
%global __provides_exclude ^lib(q|Qt5|icu).*$

Name:           wemeet
Version:        3.19.2.400
Release:        3%{?dist}
Summary:        One-stop Cloud Video Conferencing Solution provided by Tencent
License:        SUSE-NonFree
URL:            https://meeting.tencent.com

Source0:        https://updatecdn.meeting.qq.com/cos/fb7464ffb18b94a06868265bed984007/TencentMeeting_0300000000_3.19.2.400_x86_64_default.publish.officialwebsite.deb
Source1:        wemeet.desktop

Patch0:         support-wayland.patch

Requires:       libwemeet-wayland-screenshare

BuildRequires:  chrpath
BuildRequires:  desktop-file-utils
BuildRequires:  execstack
BuildRequires:  fdupes
BuildRequires:  hicolor-icon-theme
BuildRequires:  libX11-devel
BuildRequires:  libopenssl-devel
BuildRequires:  libpulse-devel
BuildRequires:  update-desktop-files

ExclusiveArch:  x86_64

%description
This software is an efficient and reliable video conferencing service powered by
Tencent that is built for collaboration.

%define source_dir opt/%{name}
%prep
ar x %{SOURCE0}
tar -Jxvf data.tar.xz
cp %{SOURCE1} %{_builddir}

%patch 0 -p1

find %{_builddir}/%{source_dir} -type f -name "*.so*" -exec chrpath --delete {} \;
chrpath --delete %{_builddir}/%{source_dir}/bin/wemeetapp
chrpath --delete %{_builddir}/%{source_dir}/bin/QtWebEngineProcess

find %{_builddir}/%{source_dir} -type f -name ".*" -delete

find %{_builddir} -type f -name qt.conf -delete;
find %{_builddir}/%{source_dir}/plugins -maxdepth 1 -type d -name bearer -o -name designer -o -name geoservices -o -name platforminputcontexts -o -name position -o -name printsupport -o -name qmltooling -o -name "wayland*" | xargs rm -rf
for t in f l
do
    find %{_builddir}/%{source_dir}/lib -type ${t} \
        -not -name "libdesktop_common.so" \
        -a -not -name "libicu*" \
        -a -not -name "libImSDK.so" \
        -a -not -name "libnxui*" \
        -a -not -name "libQt5*" \
        -a -not -name "libqt*" \
        -a -not -name "libservice_manager.so" \
        -a -not -name "libTencent*" \
        -a -not -name "libui_framework.so" \
        -a -not -name "libwemeet*" \
        -a -not -name "libxcast*" \
        -a -not -name "libxnn*.so" \
        -a -not -name "libyuv.so" \
        -delete;
done

%build

%install

mkdir -p %{buildroot}{%{_bindir},%{_datadir}/applications,%{_libexecdir}/%{name}}
mkdir -p %{buildroot}%{_bindir} %{buildroot}%{_datadir}/applications %{buildroot}%{_libexecdir}/%{name}
cp -av %{_builddir}/%{source_dir}/* %{buildroot}%{_libexecdir}/%{name}/
ln -s ../../%{_libexecdir}/%{name}/%{name}app.sh %{buildroot}%{_bindir}/%{name}app

find %{buildroot}%{_libexecdir}/%{name}/lib \
  -type f \
  \( -name "libTencentSM.so" \
     -o -name "libwemeet_base.so" \
     -o -name "libxcast.so" \
     -o -name "libxnn_core.so" \
  \) \
  -exec execstack -c '{}' \;

install -Dm644 -T %{_builddir}/%{source_dir}/wemeet.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/wemeetapp.svg

desktop-file-install --dir %{buildroot}%{_datadir}/applications %{_builddir}/%{name}.desktop

%suse_update_desktop_file %{buildroot}%{_datadir}/applications/%{name}.desktop

%fdupes -s %{buildroot}

%files
%{_bindir}/%{name}app
%dir %{_libexecdir}/%{name}
%{_libexecdir}/%{name}/icons/
%{_libexecdir}/%{name}/resources/
%{_libexecdir}/%{name}/translations/
%{_libexecdir}/%{name}/bin/
%{_libexecdir}/%{name}/plugins/
%{_libexecdir}/%{name}/wemeet.svg
%{_libexecdir}/%{name}/wemeetapp.sh

%dir %{_libexecdir}/%{name}/lib
%{_libexecdir}/%{name}/lib/libImSDK.so
%{_libexecdir}/%{name}/lib/libQt5Bodymovin.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Concurrent.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Core.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5DBus.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Designer.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5DesignerComponents.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5EglFSDeviceIntegration.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5EglFsKmsSupport.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Gui.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Help.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Location.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Network.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5NetworkAuth.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5OpenGL.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Pdf.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5PdfWidgets.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Positioning.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5PositioningQuick.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5PrintSupport.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Qml.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5QmlModels.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5QmlWorkerScript.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Quick.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5QuickControls2.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5QuickParticles.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5QuickShapes.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5QuickTemplates2.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5QuickTest.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5QuickWidgets.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5RemoteObjects.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Script.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5ScriptTools.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Scxml.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Sql.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Svg.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Test.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5TextToSpeech.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5WaylandClient.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5WaylandCompositor.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5WebChannel.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5WebEngine.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5WebEngineCore.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5WebEngineWidgets.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5WebSockets.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5WebView.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Widgets.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5X11Extras.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5XcbQpa.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5Xml.so.5.15.8
%{_libexecdir}/%{name}/lib/libQt5XmlPatterns.so.5.15.8
%{_libexecdir}/%{name}/lib/libTencentSM.so
%{_libexecdir}/%{name}/lib/libdesktop_common.so
%{_libexecdir}/%{name}/lib/libicu-le-hb.so.0.0.0
%{_libexecdir}/%{name}/lib/libicudata.so.60.2
%{_libexecdir}/%{name}/lib/libicui18n.so.60.2
%{_libexecdir}/%{name}/lib/libicuio.so.60.2
%{_libexecdir}/%{name}/lib/libiculx.so.60.2
%{_libexecdir}/%{name}/lib/libicutest.so.60.2
%{_libexecdir}/%{name}/lib/libicutu.so.60.2
%{_libexecdir}/%{name}/lib/libicuuc.so.60.2
%{_libexecdir}/%{name}/lib/libnxui_app.so
%{_libexecdir}/%{name}/lib/libnxui_component.so
%{_libexecdir}/%{name}/lib/libnxui_uikit.so
%{_libexecdir}/%{name}/lib/libqt_framework.so
%{_libexecdir}/%{name}/lib/libqt_ui_framework.so
%{_libexecdir}/%{name}/lib/libqt_uikit.so
%{_libexecdir}/%{name}/lib/libqt_util.so
%{_libexecdir}/%{name}/lib/libservice_manager.so
%{_libexecdir}/%{name}/lib/libui_framework.so
%{_libexecdir}/%{name}/lib/libwemeet.so
%{_libexecdir}/%{name}/lib/libwemeet_app_components.so
%{_libexecdir}/%{name}/lib/libwemeet_app_sdk.so
%{_libexecdir}/%{name}/lib/libwemeet_base.so
%{_libexecdir}/%{name}/lib/libwemeet_framework.so
%{_libexecdir}/%{name}/lib/libwemeet_migration.so
%{_libexecdir}/%{name}/lib/libwemeet_module_api.so
%{_libexecdir}/%{name}/lib/libwemeet_plugins.so
%{_libexecdir}/%{name}/lib/libwemeet_qt.so
%{_libexecdir}/%{name}/lib/libwemeet_sdk.so
%{_libexecdir}/%{name}/lib/libwemeet_util.so
%{_libexecdir}/%{name}/lib/libxcast.so
%{_libexecdir}/%{name}/lib/libxcast_codec.so
%{_libexecdir}/%{name}/lib/libxnn.so
%{_libexecdir}/%{name}/lib/libxnn_core.so
%{_libexecdir}/%{name}/lib/libxnn_media.so
%{_libexecdir}/%{name}/lib/libQt5Bodymovin.so
%{_libexecdir}/%{name}/lib/libQt5Bodymovin.so.5
%{_libexecdir}/%{name}/lib/libQt5Bodymovin.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Concurrent.so
%{_libexecdir}/%{name}/lib/libQt5Concurrent.so.5
%{_libexecdir}/%{name}/lib/libQt5Concurrent.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Core.so
%{_libexecdir}/%{name}/lib/libQt5Core.so.5
%{_libexecdir}/%{name}/lib/libQt5Core.so.5.15
%{_libexecdir}/%{name}/lib/libQt5DBus.so
%{_libexecdir}/%{name}/lib/libQt5DBus.so.5
%{_libexecdir}/%{name}/lib/libQt5DBus.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Designer.so
%{_libexecdir}/%{name}/lib/libQt5Designer.so.5
%{_libexecdir}/%{name}/lib/libQt5Designer.so.5.15
%{_libexecdir}/%{name}/lib/libQt5DesignerComponents.so
%{_libexecdir}/%{name}/lib/libQt5DesignerComponents.so.5
%{_libexecdir}/%{name}/lib/libQt5DesignerComponents.so.5.15
%{_libexecdir}/%{name}/lib/libQt5EglFSDeviceIntegration.so
%{_libexecdir}/%{name}/lib/libQt5EglFSDeviceIntegration.so.5
%{_libexecdir}/%{name}/lib/libQt5EglFSDeviceIntegration.so.5.15
%{_libexecdir}/%{name}/lib/libQt5EglFsKmsSupport.so
%{_libexecdir}/%{name}/lib/libQt5EglFsKmsSupport.so.5
%{_libexecdir}/%{name}/lib/libQt5EglFsKmsSupport.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Gui.so
%{_libexecdir}/%{name}/lib/libQt5Gui.so.5
%{_libexecdir}/%{name}/lib/libQt5Gui.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Help.so
%{_libexecdir}/%{name}/lib/libQt5Help.so.5
%{_libexecdir}/%{name}/lib/libQt5Help.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Location.so
%{_libexecdir}/%{name}/lib/libQt5Location.so.5
%{_libexecdir}/%{name}/lib/libQt5Location.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Network.so
%{_libexecdir}/%{name}/lib/libQt5Network.so.5
%{_libexecdir}/%{name}/lib/libQt5Network.so.5.15
%{_libexecdir}/%{name}/lib/libQt5NetworkAuth.so
%{_libexecdir}/%{name}/lib/libQt5NetworkAuth.so.5
%{_libexecdir}/%{name}/lib/libQt5NetworkAuth.so.5.15
%{_libexecdir}/%{name}/lib/libQt5OpenGL.so
%{_libexecdir}/%{name}/lib/libQt5OpenGL.so.5
%{_libexecdir}/%{name}/lib/libQt5OpenGL.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Pdf.so
%{_libexecdir}/%{name}/lib/libQt5Pdf.so.5
%{_libexecdir}/%{name}/lib/libQt5Pdf.so.5.15
%{_libexecdir}/%{name}/lib/libQt5PdfWidgets.so
%{_libexecdir}/%{name}/lib/libQt5PdfWidgets.so.5
%{_libexecdir}/%{name}/lib/libQt5PdfWidgets.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Positioning.so
%{_libexecdir}/%{name}/lib/libQt5Positioning.so.5
%{_libexecdir}/%{name}/lib/libQt5Positioning.so.5.15
%{_libexecdir}/%{name}/lib/libQt5PositioningQuick.so
%{_libexecdir}/%{name}/lib/libQt5PositioningQuick.so.5
%{_libexecdir}/%{name}/lib/libQt5PositioningQuick.so.5.15
%{_libexecdir}/%{name}/lib/libQt5PrintSupport.so
%{_libexecdir}/%{name}/lib/libQt5PrintSupport.so.5
%{_libexecdir}/%{name}/lib/libQt5PrintSupport.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Qml.so
%{_libexecdir}/%{name}/lib/libQt5Qml.so.5
%{_libexecdir}/%{name}/lib/libQt5Qml.so.5.15
%{_libexecdir}/%{name}/lib/libQt5QmlModels.so
%{_libexecdir}/%{name}/lib/libQt5QmlModels.so.5
%{_libexecdir}/%{name}/lib/libQt5QmlModels.so.5.15
%{_libexecdir}/%{name}/lib/libQt5QmlWorkerScript.so
%{_libexecdir}/%{name}/lib/libQt5QmlWorkerScript.so.5
%{_libexecdir}/%{name}/lib/libQt5QmlWorkerScript.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Quick.so
%{_libexecdir}/%{name}/lib/libQt5Quick.so.5
%{_libexecdir}/%{name}/lib/libQt5Quick.so.5.15
%{_libexecdir}/%{name}/lib/libQt5QuickControls2.so
%{_libexecdir}/%{name}/lib/libQt5QuickControls2.so.5
%{_libexecdir}/%{name}/lib/libQt5QuickControls2.so.5.15
%{_libexecdir}/%{name}/lib/libQt5QuickParticles.so
%{_libexecdir}/%{name}/lib/libQt5QuickParticles.so.5
%{_libexecdir}/%{name}/lib/libQt5QuickParticles.so.5.15
%{_libexecdir}/%{name}/lib/libQt5QuickShapes.so
%{_libexecdir}/%{name}/lib/libQt5QuickShapes.so.5
%{_libexecdir}/%{name}/lib/libQt5QuickShapes.so.5.15
%{_libexecdir}/%{name}/lib/libQt5QuickTemplates2.so
%{_libexecdir}/%{name}/lib/libQt5QuickTemplates2.so.5
%{_libexecdir}/%{name}/lib/libQt5QuickTemplates2.so.5.15
%{_libexecdir}/%{name}/lib/libQt5QuickTest.so
%{_libexecdir}/%{name}/lib/libQt5QuickTest.so.5
%{_libexecdir}/%{name}/lib/libQt5QuickTest.so.5.15
%{_libexecdir}/%{name}/lib/libQt5QuickWidgets.so
%{_libexecdir}/%{name}/lib/libQt5QuickWidgets.so.5
%{_libexecdir}/%{name}/lib/libQt5QuickWidgets.so.5.15
%{_libexecdir}/%{name}/lib/libQt5RemoteObjects.so
%{_libexecdir}/%{name}/lib/libQt5RemoteObjects.so.5
%{_libexecdir}/%{name}/lib/libQt5RemoteObjects.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Script.so
%{_libexecdir}/%{name}/lib/libQt5Script.so.5
%{_libexecdir}/%{name}/lib/libQt5Script.so.5.15
%{_libexecdir}/%{name}/lib/libQt5ScriptTools.so
%{_libexecdir}/%{name}/lib/libQt5ScriptTools.so.5
%{_libexecdir}/%{name}/lib/libQt5ScriptTools.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Scxml.so
%{_libexecdir}/%{name}/lib/libQt5Scxml.so.5
%{_libexecdir}/%{name}/lib/libQt5Scxml.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Sql.so
%{_libexecdir}/%{name}/lib/libQt5Sql.so.5
%{_libexecdir}/%{name}/lib/libQt5Sql.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Svg.so
%{_libexecdir}/%{name}/lib/libQt5Svg.so.5
%{_libexecdir}/%{name}/lib/libQt5Svg.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Test.so
%{_libexecdir}/%{name}/lib/libQt5Test.so.5
%{_libexecdir}/%{name}/lib/libQt5Test.so.5.15
%{_libexecdir}/%{name}/lib/libQt5TextToSpeech.so
%{_libexecdir}/%{name}/lib/libQt5TextToSpeech.so.5
%{_libexecdir}/%{name}/lib/libQt5TextToSpeech.so.5.15
%{_libexecdir}/%{name}/lib/libQt5WaylandClient.so
%{_libexecdir}/%{name}/lib/libQt5WaylandClient.so.5
%{_libexecdir}/%{name}/lib/libQt5WaylandClient.so.5.15
%{_libexecdir}/%{name}/lib/libQt5WaylandCompositor.so
%{_libexecdir}/%{name}/lib/libQt5WaylandCompositor.so.5
%{_libexecdir}/%{name}/lib/libQt5WaylandCompositor.so.5.15
%{_libexecdir}/%{name}/lib/libQt5WebChannel.so
%{_libexecdir}/%{name}/lib/libQt5WebChannel.so.5
%{_libexecdir}/%{name}/lib/libQt5WebChannel.so.5.15
%{_libexecdir}/%{name}/lib/libQt5WebEngine.so
%{_libexecdir}/%{name}/lib/libQt5WebEngine.so.5
%{_libexecdir}/%{name}/lib/libQt5WebEngine.so.5.15
%{_libexecdir}/%{name}/lib/libQt5WebEngineCore.so
%{_libexecdir}/%{name}/lib/libQt5WebEngineCore.so.5
%{_libexecdir}/%{name}/lib/libQt5WebEngineCore.so.5.15
%{_libexecdir}/%{name}/lib/libQt5WebEngineWidgets.so
%{_libexecdir}/%{name}/lib/libQt5WebEngineWidgets.so.5
%{_libexecdir}/%{name}/lib/libQt5WebEngineWidgets.so.5.15
%{_libexecdir}/%{name}/lib/libQt5WebSockets.so
%{_libexecdir}/%{name}/lib/libQt5WebSockets.so.5
%{_libexecdir}/%{name}/lib/libQt5WebSockets.so.5.15
%{_libexecdir}/%{name}/lib/libQt5WebView.so
%{_libexecdir}/%{name}/lib/libQt5WebView.so.5
%{_libexecdir}/%{name}/lib/libQt5WebView.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Widgets.so
%{_libexecdir}/%{name}/lib/libQt5Widgets.so.5
%{_libexecdir}/%{name}/lib/libQt5Widgets.so.5.15
%{_libexecdir}/%{name}/lib/libQt5X11Extras.so
%{_libexecdir}/%{name}/lib/libQt5X11Extras.so.5
%{_libexecdir}/%{name}/lib/libQt5X11Extras.so.5.15
%{_libexecdir}/%{name}/lib/libQt5XcbQpa.so
%{_libexecdir}/%{name}/lib/libQt5XcbQpa.so.5
%{_libexecdir}/%{name}/lib/libQt5XcbQpa.so.5.15
%{_libexecdir}/%{name}/lib/libQt5Xml.so
%{_libexecdir}/%{name}/lib/libQt5Xml.so.5
%{_libexecdir}/%{name}/lib/libQt5Xml.so.5.15
%{_libexecdir}/%{name}/lib/libQt5XmlPatterns.so
%{_libexecdir}/%{name}/lib/libQt5XmlPatterns.so.5
%{_libexecdir}/%{name}/lib/libQt5XmlPatterns.so.5.15
%{_libexecdir}/%{name}/lib/libicu-le-hb.so
%{_libexecdir}/%{name}/lib/libicu-le-hb.so.0
%{_libexecdir}/%{name}/lib/libicudata.so
%{_libexecdir}/%{name}/lib/libicudata.so.60
%{_libexecdir}/%{name}/lib/libicui18n.so
%{_libexecdir}/%{name}/lib/libicui18n.so.60
%{_libexecdir}/%{name}/lib/libicuio.so
%{_libexecdir}/%{name}/lib/libicuio.so.60
%{_libexecdir}/%{name}/lib/libiculx.so
%{_libexecdir}/%{name}/lib/libiculx.so.60
%{_libexecdir}/%{name}/lib/libicutest.so
%{_libexecdir}/%{name}/lib/libicutest.so.60
%{_libexecdir}/%{name}/lib/libicutu.so
%{_libexecdir}/%{name}/lib/libicutu.so.60
%{_libexecdir}/%{name}/lib/libicuuc.so
%{_libexecdir}/%{name}/lib/libicuuc.so.60
%{_libexecdir}/%{name}/lib/libyuv.so

%{_datadir}/applications/%{name}.desktop
%dir /usr/share/icons/hicolor/scalable
%dir %dir /usr/share/icons/hicolor/scalable/apps
%{_datadir}/icons/hicolor/scalable/apps/wemeetapp.svg

%changelog

# Local Variables:
# fill-column: 80
# tab-width: 8
# End:
openSUSE Build Service is sponsored by