From c4df2f32462a5bae4a895a5825d7f117fd061d2b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blin?=
 <sebastien.blin@savoirfairelinux.com>
Date: Mon, 19 Apr 2021 09:10:22 -0400
Subject: [PATCH] packaging: add fedora 34

Change-Id: I0636da7d2b26eb75a6f8f3a37a2c92f1fd05fdfd
---
 docker/Dockerfile_fedora_34              | 73 ++++++++++++++++++++++++
 packaging/rules/fedora/jami-all.postinst |  2 +-
 packaging/rules/rhel/jami-all.postinst   |  2 +
 scripts/build-package-fedora.sh          |  2 +-
 scripts/make-packaging-target.py         |  6 ++
 5 files changed, 83 insertions(+), 2 deletions(-)
 create mode 100644 docker/Dockerfile_fedora_34

diff --git a/docker/Dockerfile_fedora_34 b/docker/Dockerfile_fedora_34
new file mode 100644
index 00000000..578d05fc
--- /dev/null
+++ b/docker/Dockerfile_fedora_34
@@ -0,0 +1,73 @@
+FROM fedora:34
+
+RUN dnf clean all
+RUN dnf install -y dnf-command\(builddep\) rpmdevtools
+
+RUN dnf clean all
+RUN dnf upgrade -y && \
+    dnf install -y mesa-libgbm-devel mesa-dri-drivers && \
+    dnf install -y libinput-devel && \
+    dnf install -y \
+        git \
+        rpm-build \
+        tar \
+        make \
+        autoconf \
+        automake \
+        nasm \
+        cmake \
+        speexdsp-devel \
+        pulseaudio-libs-devel \
+        libcanberra-devel \
+        libcurl-devel \
+        libtool \
+        dbus-devel \
+        expat-devel \
+        pcre-devel \
+        yaml-cpp-devel \
+        boost-devel \
+        dbus-c++-devel \
+        dbus-devel \
+        libXext-devel \
+        libXfixes-devel \
+        yasm \
+        speex-devel \
+        gsm-devel \
+        chrpath \
+        check \
+        astyle \
+        uuid-c++-devel \
+        gettext-devel \
+        gcc-c++ \
+        which \
+        alsa-lib-devel \
+        systemd-devel \
+        libuuid-devel \
+        uuid-devel \
+        gnutls-devel \
+        nettle-devel \
+        opus-devel \
+        patch \
+        jsoncpp-devel \
+        libnatpmp-devel \
+        webkitgtk4-devel \
+        cryptopp-devel \
+        libva-devel \
+        libvdpau-devel \
+        msgpack-devel \
+        NetworkManager-libnm-devel \
+        openssl-devel \
+        openssl-static \
+        clutter-devel \
+        clutter-gtk-devel \
+        libappindicator-gtk3-devel \
+        libnotify-devel \
+        libupnp-devel \
+        qrencode-devel \
+        qt5-qtbase-devel \
+        qt5-qttools-devel \
+        sqlite-devel
+
+ADD scripts/build-package-fedora.sh /opt/build-package-fedora.sh
+
+CMD /opt/build-package-fedora.sh
diff --git a/packaging/rules/fedora/jami-all.postinst b/packaging/rules/fedora/jami-all.postinst
index af1d4c3a..dbd44a95 100755
--- a/packaging/rules/fedora/jami-all.postinst
+++ b/packaging/rules/fedora/jami-all.postinst
@@ -78,7 +78,7 @@ is_distribution_supported() {
     . /etc/os-release
 
     case ${ID}_${VERSION_ID%.*} in
-        rhel_8|fedora_32|fedora_33)
+        rhel_8|fedora_32|fedora_33|fedora_34)
             return 0;;
     esac
 
diff --git a/packaging/rules/rhel/jami-all.postinst b/packaging/rules/rhel/jami-all.postinst
index aa8d8111..49e9000d 100755
--- a/packaging/rules/rhel/jami-all.postinst
+++ b/packaging/rules/rhel/jami-all.postinst
@@ -98,6 +98,8 @@ enabled=1'
         ENDTAG="fedora_32"
     elif [ "${PLATFORM_ID}" = "platform:f33" ] || [ "${ID}_${VERSION_ID}" = "fedora_33" ]; then
         ENDTAG="fedora_33"
+    elif [ "${PLATFORM_ID}" = "platform:f34" ] || [ "${ID}_${VERSION_ID}" = "fedora_34" ]; then
+        ENDTAG="fedora_34"
     else
         # Distribution is not supported. Don't provide automatic updates.
         CAN_ADD_YUM_SOURCE=false
diff --git a/scripts/build-package-fedora.sh b/scripts/build-package-fedora.sh
index ffe99bd4..ae39cf7c 100755
--- a/scripts/build-package-fedora.sh
+++ b/scripts/build-package-fedora.sh
@@ -36,7 +36,7 @@ cp /opt/ring-project-ro/jami_*.tar.gz /root/rpmbuild/SOURCES
 
 # Set the version
 sed -i "s/RELEASE_VERSION/${RELEASE_VERSION}/g" *.spec
-if [ ${DISTRIBUTION} == "fedora_32" ] || [ ${DISTRIBUTION} == "fedora_33" ]; then
+if [ ${DISTRIBUTION} == "fedora_32" ] || [ ${DISTRIBUTION} == "fedora_33" ] || [ ${DISTRIBUTION} == "fedora_34" ]; then
     # Remove Obsoletes for Fedora 32, as we don't publish "ring"
     sed -i '/^Obsoletes:/d' *.spec
     sed -i '/^Provides:/d' *.spec
diff --git a/scripts/make-packaging-target.py b/scripts/make-packaging-target.py
index 396de955..4139f04e 100755
--- a/scripts/make-packaging-target.py
+++ b/scripts/make-packaging-target.py
@@ -258,6 +258,12 @@ def run_generate_all(parsed_args):
             "output_file": ".packages-built",
             "options": RPM_BASED_SYSTEMS_DOCKER_RUN_OPTIONS
         },
+        {
+            "distribution": "fedora_34",
+            "debian_packaging_override": "",
+            "output_file": ".packages-built",
+            "options": RPM_BASED_SYSTEMS_DOCKER_RUN_OPTIONS
+        },
         {
             "distribution": "rhel_8",
             "debian_packaging_override": "",
-- 
GitLab