From d84d154d74b7d2b96c200cf502771142c03777ab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=A9bastien=20Blin?=
 <sebastien.blin@savoirfairelinux.com>
Date: Wed, 21 Oct 2020 21:07:35 -0400
Subject: [PATCH] packaging: update packaging for opensuse

Fix build for opensuse 15.1
Add build for opensuse 15.2 and tumbleweed

Change-Id: I561a6f48dc4674efd0a9e83a20bb238d476d29a6
---
 Makefile.packaging                    |  2 +
 docker/Dockerfile_opensuse-leap_15.1  |  7 ++-
 docker/Dockerfile_opensuse-leap_15.2  | 88 +++++++++++++++++++++++++++
 docker/Dockerfile_opensuse-tumbleweed | 83 +++++++++++++++++++++++++
 scripts/make-packaging-target.py      | 12 ++++
 5 files changed, 191 insertions(+), 1 deletion(-)
 create mode 100644 docker/Dockerfile_opensuse-leap_15.2
 create mode 100644 docker/Dockerfile_opensuse-tumbleweed

diff --git a/Makefile.packaging b/Makefile.packaging
index 34f96ae2..0ce4b0b3 100644
--- a/Makefile.packaging
+++ b/Makefile.packaging
@@ -114,6 +114,8 @@ package-all: package-debian_9 \
              package-fedora_32_i386 \
              package-rhel_8 \
              package-opensuse-leap_15.1 \
+             package-opensuse-leap_15.2 \
+             package-opensuse-tumbleweed \
              package-gentoo
 
 # Append the output of make-packaging-target to this Makefile
diff --git a/docker/Dockerfile_opensuse-leap_15.1 b/docker/Dockerfile_opensuse-leap_15.1
index f335251b..54f7bc76 100644
--- a/docker/Dockerfile_opensuse-leap_15.1
+++ b/docker/Dockerfile_opensuse-leap_15.1
@@ -1,4 +1,4 @@
-FROM opensuse/leap
+FROM opensuse/leap:15.2
 RUN zypper --non-interactive install  dnf
 RUN dnf clean all
 RUN zypper --non-interactive lr
@@ -12,6 +12,8 @@ RUN zypper --non-interactive up -y && \
     zypper --non-interactive install -y libinput-devel && \
     zypper --non-interactive install -y \
         git \
+        gcc8 \
+        gcc8-c++ \
         rpm-build \
         tar \
         make \
@@ -78,6 +80,9 @@ RUN zypper --non-interactive up -y && \
         libsndfile-devel \
         evolution-devel
 
+RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 50
+RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 50
+
 ADD scripts/build-package-opensuse-leap.sh  /opt/build-package-opensuse-leap.sh
 
 CMD /opt/build-package-opensuse-leap.sh
diff --git a/docker/Dockerfile_opensuse-leap_15.2 b/docker/Dockerfile_opensuse-leap_15.2
new file mode 100644
index 00000000..54f7bc76
--- /dev/null
+++ b/docker/Dockerfile_opensuse-leap_15.2
@@ -0,0 +1,88 @@
+FROM opensuse/leap:15.2
+RUN zypper --non-interactive install  dnf
+RUN dnf clean all
+RUN zypper --non-interactive lr
+RUN zypper --non-interactive  --gpg-auto-import-keys refresh
+RUN zypper --non-interactive lr
+RUN zypper --non-interactive  install -y dnf-command\(builddep\) rpmdevtools
+
+RUN zypper --non-interactive clean
+RUN zypper --non-interactive up -y && \
+    zypper --non-interactive install -y  Mesa-dri-devel Mesa-dri && \
+    zypper --non-interactive install -y libinput-devel && \
+    zypper --non-interactive install -y \
+        git \
+        gcc8 \
+        gcc8-c++ \
+        rpm-build \
+        tar \
+        make \
+        autoconf \
+        automake \
+        cmake \
+        nasm \
+        speexdsp-devel \
+        libpulse-devel \
+        libcanberra-devel \
+        libcurl-devel \
+        libtool \
+        libQt5DBus-devel \
+        pcre-devel \
+        yaml-cpp-devel \
+        boost-devel \
+        libdbus-c++-devel \
+        libQt5DBus-devel \
+        libXext-devel \
+        libXfixes-devel \
+        yasm \
+        speex-devel \
+        libgsm-devel \
+        chrpath \
+        check \
+        astyle \
+        uuid-devel \
+        gettext-devel \
+        gcc-c++ \
+        which \
+        alsa-lib-devel \
+        systemd-devel \
+        libuuid-devel \
+        uuid-devel \
+        gnutls-devel \
+        libopus-devel \
+        patch \
+        jsoncpp-devel \
+        webkit2gtk3-devel \
+        libcryptopp-devel \
+        libva-devel \
+        libvdpau-devel \
+        msgpack-devel \
+        clutter-devel \
+        openssl-devel \
+        clutter-gtk-devel \
+        libnma-devel \
+        libcryptopp-devel \
+        libdbus-c++-devel \
+        libQt5DBus-devel \
+        libexpat-devel \
+        gnome-icon-theme-symbolic \
+        libgsm-devel \
+        gtk3-devel \
+        libappindicator-devel \
+        sqlite-devel \
+        libQt5Sql-devel \
+        libQt5Gui-devel  \
+        ffmpeg-4-libavutil-devel \
+        gtk3-devel\
+        qrencode-devel \
+        python3-python-dateutil \
+        libqt5-linguist-devel \
+        libsndfile-devel \
+        evolution-devel
+
+RUN update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 50
+RUN update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 50
+
+ADD scripts/build-package-opensuse-leap.sh  /opt/build-package-opensuse-leap.sh
+
+CMD /opt/build-package-opensuse-leap.sh
diff --git a/docker/Dockerfile_opensuse-tumbleweed b/docker/Dockerfile_opensuse-tumbleweed
new file mode 100644
index 00000000..6c10f9f4
--- /dev/null
+++ b/docker/Dockerfile_opensuse-tumbleweed
@@ -0,0 +1,83 @@
+FROM opensuse/tumbleweed
+RUN zypper --non-interactive install  dnf
+RUN dnf clean all
+RUN zypper --non-interactive lr
+RUN zypper --non-interactive  --gpg-auto-import-keys refresh
+RUN zypper --non-interactive lr
+RUN zypper --non-interactive  install -y dnf-command\(builddep\) rpmdevtools
+
+RUN zypper --non-interactive clean
+RUN zypper --non-interactive up -y && \
+    zypper --non-interactive install -y  Mesa-dri-devel Mesa-dri && \
+    zypper --non-interactive install -y libinput-devel && \
+    zypper --non-interactive install -y \
+        git \
+        rpm-build \
+        tar \
+        make \
+        autoconf \
+        automake \
+        cmake \
+        nasm \
+        speexdsp-devel \
+        libpulse-devel \
+        libcanberra-devel \
+        libcurl-devel \
+        libtool \
+        libQt5DBus-devel \
+        pcre-devel \
+        yaml-cpp-devel \
+        boost-devel \
+        libdbus-c++-devel \
+        libQt5DBus-devel \
+        libXext-devel \
+        libXfixes-devel \
+        yasm \
+        speex-devel \
+        libgsm-devel \
+        chrpath \
+        check \
+        astyle \
+        uuid-devel \
+        gettext-devel \
+        gcc-c++ \
+        which \
+        alsa-lib-devel \
+        systemd-devel \
+        libuuid-devel \
+        uuid-devel \
+        gnutls-devel \
+        libopus-devel \
+        patch \
+        jsoncpp-devel \
+        webkit2gtk3-devel \
+        libcryptopp-devel \
+        libva-devel \
+        libvdpau-devel \
+        msgpack-devel \
+        clutter-devel \
+        openssl-devel \
+        clutter-gtk-devel \
+        libnma-devel \
+        libcryptopp-devel \
+        libdbus-c++-devel \
+        libQt5DBus-devel \
+        libexpat-devel \
+        gnome-icon-theme-symbolic \
+        libgsm-devel \
+        gtk3-devel \
+        libappindicator-devel \
+        sqlite-devel \
+        libQt5Sql-devel \
+        libQt5Gui-devel  \
+        ffmpeg-4-libavutil-devel \
+        gtk3-devel\
+        qrencode-devel \
+        python3-python-dateutil \
+        libqt5-linguist-devel \
+        libsndfile-devel \
+        evolution-devel
+
+ADD scripts/build-package-opensuse-leap.sh  /opt/build-package-opensuse-leap.sh
+
+CMD /opt/build-package-opensuse-leap.sh
diff --git a/scripts/make-packaging-target.py b/scripts/make-packaging-target.py
index 9b004e07..587f98f6 100755
--- a/scripts/make-packaging-target.py
+++ b/scripts/make-packaging-target.py
@@ -370,6 +370,18 @@ def run_generate_all(parsed_args):
             "output_file": ".packages-built",
             "options": "--security-opt seccomp=./docker/profile-seccomp-fedora_28.json --privileged"
         },
+        {
+            "distribution": "opensuse-leap_15.2",
+            "debian_packaging_override": "",
+            "output_file": ".packages-built",
+            "options": "--security-opt seccomp=./docker/profile-seccomp-fedora_28.json --privileged"
+        },
+        {
+            "distribution": "opensuse-tumbleweed",
+            "debian_packaging_override": "",
+            "output_file": ".packages-built",
+            "options": "--security-opt seccomp=./docker/profile-seccomp-fedora_28.json --privileged"
+        },
         # Gentoo
         {
             "distribution": "gentoo",
-- 
GitLab