File PKGBUILD of Package doublecmd-deb

# vim:set ft=sh:
# Maintainer: BlackIkeEagle <ike DOT devolder AT gmail DOT com>
# Contributor: (sirocco AT ngs.ru)

pkgbase=doublecmd
pkgname=('doublecmd-gtk' 'doublecmd-qt' 'doublecmd-qt6')
pkgver=1.2.0
pkgrel=2
url="https://doublecmd.sourceforge.io"
arch=('x86_64')
license=('GPL')
options=('!debug')
provides=("$pkgbase")
makedepends=('lazarus' 'qt5pas' 'qt6pas' 'gtk2')
optdepends=(
    'lua: scripting'
    'unzip: support extracting zip archives'
    'zip: suport packing zip archives'
    'p7zip: support for 7zip archives'
    'libunrar: support for rar archives'
)
source=(
    "$pkgbase-$pkgver.tar.gz"
)
sha512sums=('SKIP')

prepare() {
    cd "$pkgbase-$pkgver"
    sed -e 's/LIB_SUFFIX=.*/LIB_SUFFIX=/g' -i install/linux/install.sh

    mkdir -p $HOME/.lazarus
    cp -a install/linux/pkg/environmentoptions.xml $HOME/.lazarus

    # Get revision number
    declare $(echo $pkgver | awk -v FS="(+svn|+git)" '{print "REVISION="$2+1" COMMIT="$3}')

    # Update dcrevision.inc
    echo "// Created by Git2RevisionInc"   >  src/dcrevision.inc
    echo "const dcRevision = '$REVISION';" >> src/dcrevision.inc
    echo "const dcCommit = '$COMMIT';"     >> src/dcrevision.inc

    cd "$srcdir"

    cp -a "$pkgbase-$pkgver" "$pkgbase-gtk"
    cp -a "$pkgbase-$pkgver" "$pkgbase-qt5"
    cp -a "$pkgbase-$pkgver" "$pkgbase-qt6"
}

build() {
    # build gtk
    cd "$srcdir/$pkgbase-gtk"
    ./build.sh release gtk2

    # build qt5
    cd "$srcdir/$pkgbase-qt5"
    ./build.sh release qt5
    
    # build qt6
    cd "$srcdir/$pkgbase-qt6"
    ./build.sh release qt6    
}

package_doublecmd-gtk() {
    pkgdesc="twin-panel (commander-style) file manager (GTK2)"
    depends=('gtk2' 'desktop-file-utils' 'hicolor-icon-theme' 'shared-mime-info')
    conflicts=('doublecmd-qt' 'doublecmd-qt5' 'doublecmd-qt6')
    replaces=('doublecmd-gtk2')
    cd "$srcdir/$pkgbase-gtk"
    ./install/linux/install.sh --install-prefix="$pkgdir"
}

package_doublecmd-qt() {
    pkgdesc="twin-panel (commander-style) file manager (Qt5)"
    depends=('qt5pas' 'desktop-file-utils' 'hicolor-icon-theme' 'shared-mime-info')
    conflicts=('doublecmd-gtk' 'doublecmd-gtk2' 'doublecmd-qt6')
    replaces=('doublecmd-qt5')
    cd "$srcdir/$pkgbase-qt5"
    ./install/linux/install.sh --install-prefix="$pkgdir"
}

package_doublecmd-qt6() {
    pkgdesc="twin-panel (commander-style) file manager (Qt6)"
    depends=('qt6pas' 'desktop-file-utils' 'hicolor-icon-theme' 'shared-mime-info')
    conflicts=('doublecmd-gtk' 'doublecmd-gtk2' 'doublecmd-qt' 'doublecmd-qt5')
    cd "$srcdir/$pkgbase-qt6"
    ./install/linux/install.sh --install-prefix="$pkgdir"
}
openSUSE Build Service is sponsored by