From c0a93453582f161feb70b314a0afc9fdf0ea6d0b Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Sat, 15 Jan 2022 17:52:35 +0100 Subject: [PATCH] Add OpenMandriva to CI --- .github/workflows/ccpp.yml | 84 ++++++++++++++++++++++++++++++++++ dist/scripts/maketarball.sh.in | 25 +++++++++- 2 files changed, 108 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ccpp.yml b/.github/workflows/ccpp.yml index ddc3b75f..a5d98ab8 100644 --- a/.github/workflows/ccpp.yml +++ b/.github/workflows/ccpp.yml @@ -791,6 +791,90 @@ jobs: working-directory: build run: rpmbuild -ba ../dist/unix/strawberry.spec + build_openmandriva_cooker: + name: Build OpenMandriva Cooker + runs-on: ubuntu-latest + container: + image: openmandriva/cooker + env: + RPM_BUILD_NCPUS: "2" + steps: + - uses: actions/checkout@v1.2.0 + + - name: Update packages + run: dnf update --assumeyes + + - name: Upgrade packages + run: dnf upgrade --assumeyes + + - name: Install OpenMandriva dependencies + run: > + dnf install --assumeyes + glibc + gcc-c++ + git + gnutar + make + cmake + glib + gettext + lsb-release + rpmdevtools + rpm-build + glibc-devel + boost-devel + dbus-devel + protobuf-devel + protobuf-compiler + sqlite-devel + libasound-devel + pulseaudio-devel + gnutls-devel + lib64GL-devel + libgst-plugins-base1.0-devel + taglib-devel + chromaprint-devel + fftw-devel + libcdio-devel + libgpod-devel + libmtp-devel + lib64Qt6Core-devel + lib64Qt6Concurrent-devel + lib64Qt6Network-devel + lib64Qt6Sql-devel + lib64Qt6DBus-devel + lib64Qt6Gui-devel + lib64Qt6Widgets-devel + lib64Qt6Test-devel + qt6-cmake + qt6-qtbase-tools + qt6-qttools + desktop-file-utils + appstream + appstream-util + hicolor-icon-theme + + - name: Create Build Environment + shell: bash + run: cmake -E make_directory build + - name: Configure CMake + shell: bash + working-directory: build + run: cmake .. -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DBUILD_WERROR=ON + - name: Create source tarball + working-directory: build + run: ../dist/scripts/maketarball.sh + - name: Create RPM build sources directories + working-directory: build + run: mkdir -p ~/rpmbuild/SOURCES /usr/src/packages/SOURCES + - name: Copy source tarball + working-directory: build + run: cp strawberry-*.tar.xz ~/rpmbuild/SOURCES/ + - name: Build RPM + working-directory: build + run: rpmbuild -ba ../dist/unix/strawberry.spec + + build_debian_buster: name: Build Debian Buster diff --git a/dist/scripts/maketarball.sh.in b/dist/scripts/maketarball.sh.in index a1de7579..04307f4c 100755 --- a/dist/scripts/maketarball.sh.in +++ b/dist/scripts/maketarball.sh.in @@ -11,10 +11,33 @@ if ! [ "$gitrev" = "ON" ]; then exclude_vcs="--exclude-vcs" fi +cmds="gtar tar" +for cmd in $cmds +do + which $cmd >/dev/null 2>&1 + if [ ! $? -eq 0 ]; then + continue + fi + result=$($cmd --version 2>&1 | head -n1) + if [ ! $? -eq 0 ]; then + continue + fi + echo "$result" | grep "^.* (GNU tar) .*$" >/dev/null 2>&1 + if [ ! $? -eq 0 ]; then + continue + fi + TAR=$cmd +done + +if [ "$TAR" = "" ]; then + echo "ERROR: Missing GNU Tar" + exit 1 +fi + echo "Creating $name-$version.tar.xz..." rm -f "$name-$version.tar.xz" -tar -cJf $name-$version.tar.xz \ +${TAR} -cJf $name-$version.tar.xz \ --transform "s,^$rootnoslash,$name-$version," $exclude_vcs \ --exclude=".directory" \ --exclude="*.tar" \