[gnome-remote-desktop] build: Bump FreeRDP version requirement



commit f3534474e4b0c24d736251795421392a9a2d950f
Author: Pascal Nowack <Pascal Nowack gmx de>
Date:   Fri Feb 5 13:11:54 2021 +0100

    build: Bump FreeRDP version requirement
    
    FreeRDP 2.8.0 contains APIs, which are needed for the functionality
    implemented in the next commits.
    
    Since Fedora does not contain the new package version yet, create an
    install-cmake-project script from the existing install-meson-project
    script and build FreeRDP in the CI.

 .gitlab-ci.yml                      | 24 ++++++++++++++++------
 .gitlab-ci/install-cmake-project.sh | 40 +++++++++++++++++++++++++++++++++++++
 meson.build                         |  2 +-
 3 files changed, 59 insertions(+), 7 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index db1af323..1b480ece 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -9,7 +9,7 @@ stages:
 .gnome-remote-desktop.fedora:35@common:
   variables:
     FDO_DISTRIBUTION_VERSION: 36
-    BASE_TAG: '2022-05-10.0'
+    BASE_TAG: '2022-07-28.2'
     FDO_UPSTREAM_REPO: GNOME/gnome-remote-desktop
     FDO_DISTRIBUTION_EXEC: |
       dnf -y update && dnf -y upgrade &&
@@ -21,6 +21,8 @@ stages:
       dnf builddep -y gnome-remote-desktop &&
       dnf install -y 'pkgconfig(epoxy)' 'pkgconfig(libdrm)' 'pkgconfig(gbm)' \
                      'pkgconfig(gudev-1.0)' &&
+      dnf install -y 'pkgconfig(ffnvcodec)' &&
+      dnf install -y 'pkgconfig(fuse3)' &&
       dnf install -y asciidoc &&
 
       # To test
@@ -28,11 +30,21 @@ stages:
       dnf install -y 'pkgconfig(libvncclient)' &&
       dnf remove -y pipewire0.2-devel pipewire0.2-libs &&
       dnf install -y 'pkgconfig(libpipewire-0.3)' &&
-      dnf install -y 'pkgconfig(fuse3)' &&
-      dnf install -y 'pkgconfig(ffnvcodec)' &&
-      dnf install -y dbus-daemon xorg-x11-server-Xvfb python3-dbus \
-                     python3-gobject gnome-settings-daemon mesa-dri-drivers \
-                     xorg-x11-server-Xwayland mutter &&
+      dnf install -y dbus-daemon python3-dbus python3-gobject \
+                     gnome-settings-daemon mesa-dri-drivers mutter &&
+
+      dnf install -y git cmake gcc-c++ libusb1-devel &&
+      ./.gitlab-ci/install-cmake-project.sh \
+          -DCMAKE_BUILD_TYPE='None' \
+          -DWITH_ICU=ON \
+          -DWITH_SERVER=ON \
+          -DWITH_SHADOW=OFF \
+          -DWITH_PROXY=OFF \
+          -DWITH_CHANNELS=ON \
+          -DWITH_CLIENT_CHANNELS=ON \
+          -DWITH_SERVER_CHANNELS=ON \
+          https://github.com/FreeRDP/FreeRDP \
+          master . e3fc97feb512053189e276b2ca79762990bb8c4c &&
 
       dnf clean all
 
diff --git a/.gitlab-ci/install-cmake-project.sh b/.gitlab-ci/install-cmake-project.sh
new file mode 100755
index 00000000..7cf0c02c
--- /dev/null
+++ b/.gitlab-ci/install-cmake-project.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+set -e
+
+if [[ $# -lt 3 ]]; then
+  echo Usage: $0 [options] [repo-url] [commit] [subdir]
+  echo  Options:
+  echo    -Dkey=val
+  exit 1
+fi
+
+CMAKE_OPTIONS=()
+
+while [[ $1 =~ ^-D ]]; do
+  CMAKE_OPTIONS+=( "$1" )
+  shift
+done
+
+REPO_URL="$1"
+TAG_OR_BRANCH="$2"
+SUBDIR="$3"
+COMMIT="$4"
+
+REPO_DIR="$(basename ${REPO_URL%.git})"
+
+git clone --depth 1 "$REPO_URL" -b "$TAG_OR_BRANCH"
+pushd "$REPO_DIR"
+pushd "$SUBDIR"
+
+if [ ! -z "$COMMIT" ]; then
+  git fetch origin "$COMMIT"
+  git checkout "$COMMIT"
+fi
+
+cmake -DCMAKE_INSTALL_PREFIX='/usr' -DCMAKE_INSTALL_LIBDIR='lib64' "${CMAKE_OPTIONS[@]}" -Wno-dev -B _build 
-S .
+make VERBOSE=1 -C _build
+make install -C _build
+popd
+popd
+rm -rf "$REPO_DIR"
diff --git a/meson.build b/meson.build
index 3e7c2724..1a30f4e3 100644
--- a/meson.build
+++ b/meson.build
@@ -6,7 +6,7 @@ project('gnome-remote-desktop', 'c',
 
 cuda_req = '>= 11.1.5.0'
 epoxy_req = '>= 1.4'
-freerdp_req = '>= 2.7.0'
+freerdp_req = '>= 2.8.0'
 fuse_req = '>= 3.9.1'
 xkbcommon_req = '>= 1.0.0'
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]