Skip to content
Snippets Groups Projects
Select Git revision
  • release/beta-qt-202301101210
  • stable
  • master default protected
  • release/beta-qt-202211182015
  • release/beta-qt-202211181752
  • release/beta-qt-202211171508
  • release/beta-qt-202211081754
  • release/beta-qt-202211071518
  • release/beta-qt-202210270957
  • release/beta-qt-202210071648
  • release/beta-qt-202209291549
  • release/beta-qt-202209011129
  • release/beta-qt-202208261640
  • release/beta-qt-202208241511
  • release/beta-qt-202208231849
  • release/beta-qt-202208091525
  • release/beta-qt-202207191241
  • release/beta-qt-202207181708
  • release/beta-qt-202207131914
  • release/beta-qt-202207131513
  • android/release_358
  • android/release_357
  • android/release_356
  • android/release_355
  • android/release_354
  • 20221220.0956.79e1207
  • android/release_353
  • android/release_352
  • android/release_350
  • android/release_349
  • android/release_348
  • android/release_347
  • 20221031.1308.130cc26
  • android/release_346
  • android/release_345
  • android/release_344
  • android/release_343
  • android/release_342
  • android/release_341
  • android/release_340
40 results

prebuild-package-debian.sh

Blame
    • Amin Bandali's avatar
      027bd5e2
      packaging: simplify build of libqt-jami deb packages · 027bd5e2
      Amin Bandali authored and Sébastien Blin's avatar Sébastien Blin committed
      Since the introduction of libqt-jami deb packages, they were built
      using quite an ugly hack on the Jenkins side.  This patch reworks all
      of that so that libqt-jami is built for each distro version if it was
      not already previously built, or if a force rebuild is specified.
      
      Change-Id: Ib74b747628a007cd0d61b068e0ff9ed80006b93d
      027bd5e2
      History
      packaging: simplify build of libqt-jami deb packages
      Amin Bandali authored and Sébastien Blin's avatar Sébastien Blin committed
      Since the introduction of libqt-jami deb packages, they were built
      using quite an ugly hack on the Jenkins side.  This patch reworks all
      of that so that libqt-jami is built for each distro version if it was
      not already previously built, or if a force rebuild is specified.
      
      Change-Id: Ib74b747628a007cd0d61b068e0ff9ed80006b93d
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    prebuild-package-debian.sh 2.19 KiB
    #!/usr/bin/env bash
    #
    # Copyright (C) 2021 Savoir-faire Linux Inc.
    #
    # Author: Amin Bandali <amin.bandali@savoirfairelinux.com>
    #
    # This program is free software: you can redistribute it and/or modify
    # it under the terms of the GNU General Public License as published by
    # the Free Software Foundation, either version 3 of the License, or
    # (at your option) any later version.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    # GNU General Public License for more details.
    #
    # You should have received a copy of the GNU General Public License
    # along with this program.  If not, see <http://www.gnu.org/licenses/>.
    #
    # This script is used in the packaging containers to build packages on
    # debian-based distros.
    
    set -e
    
    DPKG_BUILD_OPTIONS=""
    # Set the host architecture as armhf and add some specific architecture
    # options to the package builder.
    if grep -q "raspbian_10_armhf" <<< "${DISTRIBUTION}"; then
        echo "Adding armhf as the host architecture."
        export HOST_ARCH=arm-linux-gnueabihf
        DPKG_BUILD_OPTIONS="${DPKG_BUILD_OPTIONS} -a armhf"
    fi
    
    install_deps()
    {
        apt-get update
        mk-build-deps \
            --remove --install \
            --tool "apt-get -y --no-install-recommends -o Acquire::Retries=10" \
            "debian/control"
    }
    
    install_dummy()
    {
        cat <<EOF > dummy-libqt-jami.equivs
    Package: libqt-jami
    Version: 1.0
    Maintainer: The Jami project <jami@gnu.org>
    Architecture: all
    Description: Dummy libqt-jami package
    EOF
        equivs-build dummy-libqt-jami.equivs
        dpkg -i libqt-jami_1.0_all.deb
    }
    
    remove_dummy()
    {
        dpkg -r libqt-jami
    }
    
    case "$1" in
        qt-deps)
            (
                cd /tmp/builddeps
                install_deps
                dpkg -r libqt-jami-build-deps
            )
            rm -rf /tmp/builddeps
            exit 0
            ;;
        jami-deps)
            (
                cd /tmp/builddeps
                install_dummy
                install_deps
                dpkg -r jami-build-deps
                remove_dummy
            )
            rm -rf /tmp/builddeps
            exit 0
            ;;
        *)
            printf "Usage: %s {qt-deps|jami-deps}\n" "$0"
            exit 1
            ;;
    esac