File linphone-desktop.spec of Package linphone-desktop
%global __brp_check_rpaths %{nil}
%if 0%{?fedora_version}
%global debug_package %{nil}
%endif
%define executable linphone
%define pkgname %{executable}-desktop
%define install_prefix /opt/%{executable}
# Problem: executable cannot find its libraries
# Alternative one creates a launcher with LD_LIBRARY_PATH=%%{install_prefix}/lib64
# set 1 if true 0 if false
%define alternative_one 1
# Alternative one creates /etc/ld.so.conf.d/%%{pkgname}.conf
# containing %%{install_prefix}/lib64 which /sbin/ldconfig reads.
# This alternative loads %%{install_prefix}/lib64 first for ALL apps on system
# causing issues with libxml2.so.2 crashing other apps (emacs etc.)
# libxml2 has to be removed. Maybe other libraries cause similar problem.
# set 1 if true 0 if false
%define alternative_two 0
%define enable_post_quantum_crypto_engine 1
%define temporary_compilation_fix_opensuse 0
# Problem: nothing provides 'libopenh264.so.6()(64bit)'
# needed by the to be installed %%{pkgname}-5.x.y
# Solution 1: do not install %%{pkgname}-5.x.y
# Solution 2: break %%{pkgname}-5.x.y by ignoring some of its dependencies
# set 1 if true 0 if false
%define enable_openh264 0
# Problem: %%{install_prefix}/bin/%%{executable}: error while loading shared libraries:
# libQt5Keychain.so.1: cannot open shared object file: No such file or directory
# even though it exists in %%{install_prefix}/lib64/
# set 1 if true 0 if false
%define enable_qt_keychain 1
# openSUSE Tumbleweed has libvpx8 instead of libvpx7.
# libvpx7 has to be provided where missing.
# set 1 if true 0 if false
%define enable_vpx_opensuse 1
%define enable_vpx_fedora 1
%define THISMONTHSHORT %(LC_TIME='en_US.UTF-8' date +%%b)
%define THISMONTHLONG %(LC_TIME='en_US.UTF-8' date +%%B)
%define THISYEAR %(date +%%Y)
%define DAYNUMBER %(LC_TIME='en_US.UTF-8' date +%%d)
%define DAYNAMESHORT %(LC_TIME='en_US.UTF-8' date +%%a)
#today format: Mon Jan 1 2024
%define today %{DAYNAMESHORT} %{THISMONTHSHORT} %{DAYNUMBER} %{THISYEAR}
#TODO: add manpage if missing
#manpage_date format: January 2024
%define manpage_date "%{THISMONTHLONG} %{THISYEAR}"
%define packager Kimi
%define packager_lowercase %(echo %{packager} | tr '[:upper:]' '[:lower:]')
%define packagerEmail noreply@nodomain.org
%define numberOfProcessorsOnMachine %(nproc)
%define wantedJobs %(echo "1.1*%{numberOfProcessorsOnMachine}" | bc -l)
%define jobsIget %(echo %{wantedJobs} | awk '{print int(\$1+0.5)}')
Name: linphone-desktop
Version: 5.3.0
Release: 0
Summary: A free VoIP and video softphone based on the SIP protocol
License: GPL-3.0-or-later
Group: Productivity/Telephony/SIP/Clients
URL: https://linphone.org/technical-corner/linphone
Source: %{name}-%{version}.tar.xz
Patch: 0002-build-out-of-git.patch
#AutoReq: no
#AutoProv: no
#AutoReqProv: no
#BuildRequires: lsb-release
BuildRequires: bc
BuildRequires: git
BuildRequires: chrpath
BuildRequires: fdupes
BuildRequires: meson
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: glibc-devel
BuildRequires: nasm
BuildRequires: yasm
BuildRequires: doxygen
BuildRequires: hicolor-icon-theme
BuildRequires: libv4l-devel
BuildRequires: glew-devel
BuildRequires: jack-audio-connection-kit
BuildRequires: libXext-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig(Qt5Concurrent)
BuildRequires: pkgconfig(Qt5Core) >= 5.12
BuildRequires: pkgconfig(Qt5DBus)
BuildRequires: pkgconfig(Qt5Gui)
BuildRequires: pkgconfig(Qt5Multimedia)
BuildRequires: pkgconfig(Qt5Network)
BuildRequires: pkgconfig(Qt5Quick)
BuildRequires: pkgconfig(Qt5QuickControls2)
BuildRequires: pkgconfig(Qt5Svg)
BuildRequires: pkgconfig(Qt5TextToSpeech)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(openssl)
%if 0%{?fedora_version}
BuildRequires: cmake >= 3.22
BuildRequires: generic-release-common
BuildRequires: procps-ng
BuildRequires: python3-six
BuildRequires: python3-pystache
BuildRequires: alsa-lib-devel
BuildRequires: qt5-linguist
BuildRequires: libvpx-devel
%endif
%if 0%{?suse_version}
BuildRequires: cmake-full >= 3.22
BuildRequires: procps
BuildRequires: Mesa-libGLESv2-devel
BuildRequires: alsa-devel
BuildRequires: update-desktop-files
BuildRequires: libqt5-linguist-devel
BuildRequires: glu-devel
BuildRequires: libvpx-devel
%endif
%if 0%{?suse_version} > 1600
# openSUSE Tumbleweed
BuildRequires: python313-six
BuildRequires: python313-pystache
%endif
%if 0%{?sle_version} == 160000 && 0%{?is_opensuse}
# openSUSE Leap 16.0
BuildRequires: python313-six
BuildRequires: python313-pystache
#BuildRequires: cmake-full <= 3.29
%endif
%if 0%{?suse_version} == 1600
# openSUSE Leap 16.0
BuildRequires: python313-six
BuildRequires: python313-pystache
#BuildRequires: cmake-full <= 3.29
%endif
%if 0%{?sle_version} == 150500 || 0%{?sle_version} == 150600 && 0%{?is_opensuse}
# openSUSE Leap 15.5 15.6
BuildRequires: python3-six
#BuildRequires: python3-pystache
BuildRequires: python311-pystache
%endif
Provides: %{pkgname} = %{version}-%{release}
Obsoletes: %{pkgname} < %{version}-%{release}
Obsoletes: linphone < %{version}-%{release}
Recommends: linphone-contacts-vcard-csv-import-export
# This app would benefit from being run in a firejail sandbox
Recommends: firejail-linphone-desktop
Recommends: firetools-linphone-desktop
Recommends: firejail >= 0.9.72
Recommends: firetools >= 0.9.72
%description
Linphone is a Web phone with a Qt interface. It lets you make
two-party calls over IP networks such as the Internet. It uses the IETF
protocols SIP (Session Initiation Protocol) and RTP (Realtime TransporT
Protocol) to make calls, so it should be able to communicate with other
SIP-based Web phones. With several codecs available, it can be used
with high speed connections as well as 28k modems.
%package devel
Summary: Header files for building %{pkgname} plugins
Group: Productivity/Telephony/SIP/Clients
BuildArch: noarch
Provides: %{name}-devel = %{version}-%{release}
Obsoletes: %{name}-devel < %{version}-%{release}
%description devel
Header files for building %{pkgname} plugins.
%prep
%autosetup -p1
%build
echo "--- Listing rpmbuild variables ---"
uname -a
find /usr/lib64 -name libQt5Quick.so* -exec bash -c "strings {} | grep Qt.*API" \;
echo %%_prefix=%{_prefix}
echo %%_exec_prefix=%{_exec_prefix}
echo %%_bindir=%{_bindir}
echo %%_sbindir=%{_sbindir}
echo %%_libexecdir=%{_libexecdir}
echo %%_datadir=%{_datadir}
echo %%_sysconfdir=%{_sysconfdir}
echo %%_sharedstatedir=%{_sharedstatedir}
echo %%_localstatedir=%{_localstatedir}
echo %%_libdir=%{_libdir}
echo %%_includedir=%{_includedir}
echo %%_oldincludedir==%{_oldincludedir}
echo %%_infodir=%{_infodir}
echo %%_mandir=%{_mandir}
echo %%buildroot=%{buildroot}
echo %%_topdir=%{_topdir}
echo %%_builddir=%{_builddir}
echo %%_rpmdir=%{_rpmdir}
echo %%_sourcedir=%{_sourcedir}
echo %%_specdir=%{_specdir}
echo %%_srcrpmdir=%{_srcrpmdir}
echo %%_buildrootdir=%{_buildrootdir}
echo %%sourcefile=%{sourcefile}
echo %%source_root_directory=%{source_root_directory}
echo "--- Ported variables ---"
echo %%{builddir}=%{builddir}
echo %%{_builddir}=%{_builddir}
echo %%{_srcdir}=%{_srcdir}
echo %%{sourcedir}=%{sourcedir}
echo %%{_sourcedir}=%{_sourcedir}
echo numberOfProcessorsOnMachine=%{numberOfProcessorsOnMachine}
echo wantedJobs=%{wantedJobs}
echo jobsIget=%{jobsIget}
echo 0%%{?fedora}=0%{?fedora}
echo 0%%{?fedora_version}=0%{?fedora_version}
echo 0%%{?rhel_version}=0%{?rhel_version}
echo 0%%{?centos_version}=0%{?centos_version}
echo 0%%{?openeuler_version}=0%{?openeuler_version}
echo 0%%{?sle_version}=0%{?sle_version}
echo 0%%{?is_opensuse}=0%{?is_opensuse}
echo 0%%{?suse_version}=0%{?suse_version}
echo %%{dist}=%{dist}
echo "--- End ported variables ---"
TOP_DIR=$(pwd)
echo "TOP_DIR=$TOP_DIR"
ls -al
#echo "Top level git version:"
#echo "Current dir: $(pwd)"
#echo "`git symbolic-ref HEAD 2> /dev/null | cut -b 12-`-`git log --pretty=format:\"%h\" -1`"
#echo "`git describe`"
#cd "linphone-app"
#echo "Current dir: $(pwd)"
#echo "linphone-app git version:"
#echo "`git symbolic-ref HEAD 2> /dev/null | cut -b 12-`-`git log --pretty=format:\"%h\" -1`"
#echo "`git describe`"
#cd "$TOP_DIR/linphone-sdk"
#echo "Current dir: $(pwd)"
#echo "linphone-sdk git version:"
#echo "`git symbolic-ref HEAD 2> /dev/null | cut -b 12-`-`git log --pretty=format:\"%h\" -1`"
#echo "`git describe`"
cd "$TOP_DIR"
export pkgver=$(echo %{version} | cut -d' ' -f 2 | sed 's/[(,)]//g' | cut -d'.' -f 1-3)
export sdkver=$(echo %{version} | cut -d' ' -f 2 | sed 's/[(,)]//g' | cut -d'.' -f 1-3)
export CFLAGS=$(echo "$CFLAGS -Wno-error=maybe-uninitialized -Wno-error=unused-parameter -Wno-error=return-type -Wno-error=implicit-function-declaration")
export CXXFLAGS=$(echo "$CXXFLAGS -Wno-error=maybe-uninitialized -Wno-error=unused-parameter -Wno-error=return-type -Wno-error=implicit-function-declaration")
%cmake \
-DCMAKE_C_FLAGS="%{optflags} -fpic -ffat-lto-objects -Wno-error=maybe-uninitialized -Wno-error=unused-parameter -Wno-error=return-type -Wno-error=implicit-function-declaration -Wno-error=deprecated-declarations" \
-DCMAKE_CXX_FLAGS="%{optflags} -fpic -ffat-lto-objects -fpermissive -Wno-error=maybe-uninitialized -Wno-error=unused-parameter -Wno-error=return-type -Wno-error=implicit-function-declaration -Wno-error=deprecated-declarations" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=%{_builddir}/build/OUTPUT \
-DLINPHONEAPP_VERSION=${pkgver} \
-DLINPHONEAPP_SHORT_VERSION=${pkgver} \
-DLINPHONESDK_VERSION=${sdkver} \
-DLINPHONESDK_STATE="snapshots" \
-DLINPHONESDK_BRANCH="-alpha.384" \
%if 0%{?suse_version}
-DCMAKE_SHARED_LINKER_FLAGS="-flto=auto -Wl,--as-needed -Wl,-z,now -Wl,-rpath,-lm" \
%if 0%{?enable_post_quantum_crypto_engine}
-DENABLE_PQCRYPTO=YES \
%endif
%if 0%{?enable_vpx_opensuse}
-DENABLE_VPX=YES \
%else
-DENABLE_VPX=OFF \
%endif
%if 0%{?temporary_compilation_fix_opensuse}
-DENABLE_AV1=OFF \
%endif
%endif
%if 0%{?fedora_version}
%endif
%if 0%{?enable_qt_keychain}
-DENABLE_QT_KEYCHAIN=YES \
%else
-DENABLE_QT_KEYCHAIN=OFF \
%endif
%if 0%{?enable_vpx_fedora}
-DENABLE_VPX=YES \
%else
-DENABLE_VPX=OFF \
%endif
%if 0%{?enable_openh264}
-DENABLE_OPENH264=YES \
%else
-DENABLE_OPENH264=OFF \
%endif
-DLINPHONE_OUTPUT_DIR="$PWD" \
-DENABLE_UPDATE_CHECK=OFF
%cmake_build
%install
echo HOME=$HOME
ls -al $HOME 2>/dev/null
echo %%{_sourcedir}=%{_sourcedir}
ls -al %{_sourcedir} 2>/dev/null
srcdir=%{_sourcedir}
pkgdir_head=%{buildroot}
pkgdir=%{buildroot}
export QA_RPATHS=$(( 0x0001|0x0002 ))
%cmake_install
mkdir -pv "%{buildroot}%{install_prefix}/"
%if 0%{?suse_version}
# openSUSE %%cmake install honors CMAKE_INSTALL_PREFIX
mv -v %{buildroot}%{_builddir}/build/OUTPUT/* %{buildroot}%{install_prefix}/.
%endif
%if 0%{?fedora_version}
# Fedora %%cmake install:
# DESTDIR=%%{buildroot}
# /usr/bin/cmake --install redhat-linux-build
# Fedora %%cmake neglects CMAKE_INSTALL_PREFIX and install puts files in:
# %%{buildroot}%{_builddir}/%%{name}-%%{version}/redhat-linux-build/OUTPUT/
mv -v %{buildroot}%{_builddir}/%{name}-%{version}/redhat-linux-build/OUTPUT/* %{buildroot}%{install_prefix}/.
%endif
# fix openSUSE complaint
rm -rf %{buildroot}%{install_prefix}/lib64/pkgconfig
%if 0%{?alternative_two}
# Alternative 2
# Other programs such as emacs crash if libxml2.so* exists
# in %%{install_prefix}/lib so we remove it and
# use system libxml2 instead
rm -vf "%{buildroot}%{install_prefix}/lib64/libxml2.so.2"
rm -vf "%{buildroot}%{install_prefix}/lib64/libxml2.so"
# End alternative 2
%endif
# Exchange nowebcamCIF.jpg
cp -v "%{_sourcedir}/static.jpg" "%{buildroot}%{install_prefix}/share/images/nowebcamCIF.jpg"
mkdir -pv "%{buildroot}%{_datadir}/applications/"
#cat "%{buildroot}%{install_prefix}/share/applications/linphone.desktop"
# Fix %{install_prefix}/bin/%{executable} not finding its libraries in ../lib/
%if 0%{?alternative_one}
# Alternative 1 (not working on opensuse tumbleweed)
# Add linphone's own lib folder to LD_LIBRARY_PATH
echo '#!/bin/bash' > "%{buildroot}%{install_prefix}/%{executable}-launcher"
echo 'SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"' >> "%{buildroot}%{install_prefix}/%{executable}-launcher"
#echo 'echo "Script directory: $SCRIPT_DIR"' >> "%{buildroot}%{install_prefix}/%{executable}-launcher"
echo 'LD_LIBRARY_PATH="$SCRIPT_DIR/lib64:$LD_LIBRARY_PATH" "$SCRIPT_DIR/../../opt/linphone/bin/linphone" "$@"' >> "%{buildroot}%{install_prefix}/%{executable}-launcher"
#echo 'LD_LIBRARY_PATH="%{install_prefix}/lib64:$LD_LIBRARY_PATH" "./bin/%{executable}" "$@"' >> "%{buildroot}%{install_prefix}/%{executable}-launcher"
chmod +x "%{buildroot}%{install_prefix}/%{executable}-launcher"
# End alternative 1
%endif
%if 0%{?alternative_two}
# Alternative 2
# Create %{pkgname}.conf and let ldconfig find those libraries
mkdir -pv "%{buildroot}/etc/ld.so.conf.d"
echo "%{install_prefix}/lib64" > "%{buildroot}/etc/ld.so.conf.d/%{name}.conf"
chmod 644 "%{buildroot}/etc/ld.so.conf.d/%{name}.conf"
# End alternative 2
%endif
echo "Edit %{name}.desktop :"
%if 0%{?alternative_one}
# Alternative 1
#sed -i 's/Exec=linphone/Exec=\/opt\/linphone\/linphone-launcher/g' "%{buildroot}%{install_prefix}/share/applications/linphone.desktop"
sed -i "s|Exec=linphone|Exec=%{install_prefix}/%{executable}-launcher|g" "%{buildroot}%{install_prefix}/share/applications/linphone.desktop"
%endif
%if 0%{?alternative_two}
# Alternative 2
#sed -i 's/Exec=linphone/Exec=\/opt\/linphone\/bin\/linphone/g' "%{buildroot}%{install_prefix}/share/applications/linphone.desktop"
sed -i "s|Exec=linphone|Exec=%{install_prefix}/bin/%{executable}|g" "%{buildroot}%{install_prefix}/share/applications/linphone.desktop"
%endif
sed -i "s|Icon=.*|Icon=%{pkgname}|g" "%{buildroot}%{install_prefix}/share/applications/linphone.desktop"
cat "%{buildroot}%{install_prefix}/share/applications/linphone.desktop"
mkdir -pv "${buildroot}/usr/share/applications"
install -Dm644 "%{buildroot}%{install_prefix}/share/applications/linphone.desktop" "%{buildroot}/usr/share/applications/%{name}.desktop"
mkdir -pv "%{buildroot}/usr/share/icons/hicolor/scalable/apps"
install -Dm644 "%{buildroot}%{install_prefix}/share/icons/hicolor/scalable/apps/linphone.svg" "%{buildroot}/usr/share/icons/hicolor/scalable/apps/%{name}.svg"
rm -vf %{buildroot}%{install_prefix}/bin/qt.conf
rm -vf %{buildroot}%{install_prefix}/lib64/libxml2.so
# Not sure if removing some *.a files will cause any issues:
rm -vf %{buildroot}%{install_prefix}/lib64/libbcmatroska2.a
rm -vf %{buildroot}%{install_prefix}/lib64/libeverest.a
rm -vf %{buildroot}%{install_prefix}/lib64/libp256m.a
# Files may end up in the wrong place:
mv -v %{buildroot}/usr/lib64/* %{buildroot}%{install_prefix}/lib64/.
chrpath -d "%{buildroot}%{install_prefix}/bin/linphone"
chrpath -d "%{buildroot}%{install_prefix}/bin/cjpeg"
chrpath -d "%{buildroot}%{install_prefix}/bin/djpeg"
chrpath -d "%{buildroot}%{install_prefix}/bin/jpegtran"
chrpath -d "%{buildroot}%{install_prefix}/lib64/"*.so*
chrpath -d "%{buildroot}%{install_prefix}/lib64/mediastreamer/plugins/"*.so*
strip -s "%{buildroot}%{install_prefix}/bin/"*
strip -s "%{buildroot}%{install_prefix}/lib64/"lib*.so*
strip -s "%{buildroot}%{install_prefix}/lib64/mediastreamer/plugins/"lib*.so*
chmod -x "%{buildroot}%{install_prefix}/lib64/"lib*.a
%fdupes "%{buildroot}%{install_prefix}"
## Create a script to allow firejail openGL
## Create script in /usr/local/bin/firejail-linphone-allow-opengl
#mkdir -pv "%{buildroot}/usr/local/bin"
#scriptFile="${pkgdir}/usr/local/bin/firejail-%{executable}-allow-opengl"
#proFile="\$HOME/.config/firejail/%{executable}.local"
#echo "#!/usr/bin/bash" > $scriptFile
#echo "echo \"ignore no3d\" >> \"${proFile}\"" >> $scriptFile
#echo "echo \"added \\\"ignore no3d\\\" to \\\"${proFile}\\\"\"" >> $scriptFile
#echo "echo \"Done.\"" >> $scriptFile
#echo "exit 0" >> $scriptFile
## Make script executable
#chmod +x "$scriptFile"
## Create a script to allow firejail video
## Create script in /usr/local/bin/firejail-linphone-allow-camera
#scriptFile="${pkgdir}/usr/local/bin/firejail-%{executable}-allow-camera"
#proFile="\$HOME/.config/firejail/%{executable}.local"
#echo "#!/usr/bin/bash" > $scriptFile
#echo "echo \"ignore novideo\" >> \"${proFile}\"" >> $scriptFile
#echo "echo \"added \\\"ignore novideo\\\" to \\\"${proFile}\\\"\"" >> $scriptFile
#echo "echo \"Done.\"" >> $scriptFile
#echo "exit 0" >> $scriptFile
## Make script executable
#chmod +x "$scriptFile"
## Create a script to allow firejail video
## Create script in /usr/local/bin/firejail-linphone-reset
#scriptFile="${pkgdir}/usr/local/bin/firejail-%{executable}-reset"
#proFile="\$HOME/.config/firejail/%{executable}.local"
#echo "#!/usr/bin/bash" > $scriptFile
#echo "rm -f \"${proFile}\"" >> $scriptFile
#echo "echo \"Removed \\\"${proFile}\\\"\"" >> $scriptFile
#echo "echo \"Done.\"" >> $scriptFile
#echo "exit 0" >> $scriptFile
## Make script executable
#chmod +x "$scriptFile"
echo "--- List files that will be packaged ---"
find %{buildroot} | sed "s|%{buildroot}||g"
echo "--- End list files that will be packaged ---"
# Also possible:
# /sbin/ldconfig %{install_prefix}/lib64
# if not using /etc/ld.so.conf.d/%{pkgname}.conf
%post -n %{name}
/sbin/ldconfig
%postun -n %{name}
/sbin/ldconfig
%files
%license LICENSE.txt
%doc CHANGELOG.md README.md
%exclude %{install_prefix}/include
%exclude %{install_prefix}/lib64/cmake
%exclude %{_libdir}
%exclude %{install_prefix}/lib64/lib*.a
%if 0%{?enable_qt_keychain}
%exclude %{install_prefix}/lib64/libQt5Keychain.so
%endif
%exclude %{install_prefix}/lib64/libbctoolbox-tester.so
%exclude %{install_prefix}/lib64/libbctoolbox.so
%exclude %{install_prefix}/lib64/libbcunit.so
%exclude %{install_prefix}/lib64/libbelcard.so
%exclude %{install_prefix}/lib64/libbelle-sip.so
%exclude %{install_prefix}/lib64/libbelr.so
%exclude %{install_prefix}/lib64/libbzrtp.so
%exclude %{install_prefix}/lib64/libdecaf.so
%exclude %{install_prefix}/lib64/libjpeg.so
%exclude %{install_prefix}/lib64/libjsoncpp.so
%exclude %{install_prefix}/lib64/liblber.so
%exclude %{install_prefix}/lib64/libldap.so
%exclude %{install_prefix}/lib64/liblime.so
%exclude %{install_prefix}/lib64/liblinphone++.so
%exclude %{install_prefix}/lib64/liblinphone.so
%exclude %{install_prefix}/lib64/libmbedcrypto.so
%exclude %{install_prefix}/lib64/libmbedtls.so
%exclude %{install_prefix}/lib64/libmbedx509.so
%exclude %{install_prefix}/lib64/libopus.so
%exclude %{install_prefix}/lib64/libortp.so
%exclude %{install_prefix}/lib64/libsoci_core.so
%exclude %{install_prefix}/lib64/libsoci_sqlite3.so
%exclude %{install_prefix}/lib64/libspeex.so
%exclude %{install_prefix}/lib64/libspeexdsp.so
%exclude %{install_prefix}/lib64/libsrtp2.so
%exclude %{install_prefix}/lib64/libturbojpeg.so
#%%exclude %%{install_prefix}/lib64/libxml2.so
%exclude %{install_prefix}/lib64/libz.so
%if 0%{?suse_version}
# openSUSE
%exclude %{install_prefix}/lib64/liboqs.so
%exclude %{install_prefix}/lib64/libpostquantumcryptoengine.so
%exclude %{install_prefix}/share/doc/packages/linphone-desktop/example.c
%exclude %{install_prefix}/share/doc/packages/linphone-desktop/tjexample.c
%endif
%{install_prefix}
%{_datadir}/applications/*.desktop
%{_datadir}/icons/hicolor/scalable/apps/*.svg
#%%{_datadir}/applications/%%{name}.desktop
#%%{_datadir}/icons/hicolor/*/apps/*
%if 0%{?alternative_two}
# Alternative 2
/etc/ld.so.conf.d/*.conf
# End alternative 2
%endif
%files devel
%{install_prefix}/include
%{install_prefix}/lib64/cmake
%{install_prefix}/lib64/lib*.a
%if 0%{?enable_qt_keychain}
%{install_prefix}/lib64/libQt5Keychain.so
%endif
%{install_prefix}/lib64/libbctoolbox-tester.so
%{install_prefix}/lib64/libbctoolbox.so
%{install_prefix}/lib64/libbcunit.so
%{install_prefix}/lib64/libbelcard.so
%{install_prefix}/lib64/libbelle-sip.so
%{install_prefix}/lib64/libbelr.so
%{install_prefix}/lib64/libbzrtp.so
%{install_prefix}/lib64/libdecaf.so
%{install_prefix}/lib64/libjpeg.so
%{install_prefix}/lib64/libjsoncpp.so
%{install_prefix}/lib64/liblber.so
%{install_prefix}/lib64/libldap.so
%{install_prefix}/lib64/liblime.so
%{install_prefix}/lib64/liblinphone++.so
%{install_prefix}/lib64/liblinphone.so
%{install_prefix}/lib64/libmbedcrypto.so
%{install_prefix}/lib64/libmbedtls.so
%{install_prefix}/lib64/libmbedx509.so
%{install_prefix}/lib64/libopus.so
%{install_prefix}/lib64/libortp.so
%{install_prefix}/lib64/libsoci_core.so
%{install_prefix}/lib64/libsoci_sqlite3.so
%{install_prefix}/lib64/libspeex.so
%{install_prefix}/lib64/libspeexdsp.so
%{install_prefix}/lib64/libsrtp2.so
%{install_prefix}/lib64/libturbojpeg.so
#%%{install_prefix}/lib64/libxml2.so
%{install_prefix}/lib64/libz.so
%if 0%{?suse_version}
# openSUSE
%{install_prefix}/lib64/liboqs.so
%{install_prefix}/lib64/libpostquantumcryptoengine.so
%{install_prefix}/share/doc/packages/linphone-desktop/example.c
%{install_prefix}/share/doc/packages/linphone-desktop/tjexample.c
%endif
%changelog
* %{today} %{packager} <%{packagerEmail}> - %{version}
- New build.