# Maintainer: Laurent Carlier <lordheavym@gmail.com>
# Contributor : sebikul <sebikul@gmail.com>

pkgbase=gambas3
pkgname=('gambas3-gb-args'
         'gambas3-gb-cairo' 'gambas3-gb-chart' 'gambas3-gb-clipper' 'gambas3-gb-complex' 'gambas3-gb-compress' 'gambas3-gb-crypt'
         'gambas3-gb-dbus' 'gambas3-gb-data'
         'gambas3-gb-db-form' 'gambas3-gb-db-mysql' 'gambas3-gb-db-odbc' 'gambas3-gb-db-postgresql' 'gambas3-gb-db-sqlite3' 'gambas3-gb-db'
         'gambas3-gb-desktop-gnome' 'gambas3-gb-desktop-x11' 'gambas3-gb-desktop'
         'gambas3-gb-eval-highlight' 'gambas3-gb-httpd'
         'gambas3-gb-form-dialog' 'gambas3-gb-form-mdi' 'gambas3-gb-form-terminal' 'gambas3-gb-form-stock' 'gambas3-gb-form-editor' 'gambas3-gb-form'
         'gambas3-gb-gmp' 'gambas3-gb-gsl' 'gambas3-gb-gtk-opengl' 'gambas3-gb-gtk' 'gambas3-gb-gtk3'
         'gambas3-gb-image-effect' 'gambas3-gb-image-imlib' 'gambas3-gb-image-io' 'gambas3-gb-image' 'gambas3-gb-inotify'
         'gambas3-gb-libxml' 'gambas3-gb-logging'
         'gambas3-gb-map' 'gambas3-gb-markdown' 'gambas3-gb-media-form' 'gambas3-gb-media' 'gambas3-gb-memcached' 'gambas3-gb-mime' 'gambas3-gb-mysql'
         'gambas3-gb-ncurses' 'gambas3-gb-net-curl' 'gambas3-gb-net-pop3' 'gambas3-gb-net-smtp' 'gambas3-gb-net'
         'gambas3-gb-openal' 'gambas3-gb-opengl-glu' 'gambas3-gb-opengl-glsl' 'gambas3-gb-opengl-sge' 'gambas3-gb-opengl' 'gambas3-gb-option'
         'gambas3-gb-pcre' 'gambas3-gb-pdf'
         'gambas3-gb-qt5-opengl' 'gambas3-gb-qt5-webkit' 'gambas3-gb-qt5'
         'gambas3-gb-openssl'
         'gambas3-gb-report'
         'gambas3-gb-scanner' 'gambas3-gb-sdl2-audio' 'gambas3-gb-sdl2' 'gambas3-gb-sdl-sound' 'gambas3-gb-sdl' 'gambas3-gb-settings' 'gambas3-gb-signal'
         'gambas3-gb-term'
         'gambas3-gb-util-web' 'gambas3-gb-util'
         'gambas3-gb-v4l' 'gambas3-gb-vb'
         'gambas3-gb-xml-html' 'gambas3-gb-xml-rpc' 'gambas3-gb-xml-xslt' 'gambas3-gb-xml'
         'gambas3-gb-web-feed' 'gambas3-gb-web-form' 'gambas3-gb-web'
         'gambas3-runtime' 'gambas3-devel' 'gambas3-ide' 'gambas3-script')
pkgver=3.13.0
pkgrel=7
pkgdesc="A free development environment based on a Basic interpreter."
arch=('x86_64')
url="http://gambas.sourceforge.net/"
license=('GPL2')
groups=('gambas3')
makedepends=('intltool' 'postgresql' 'libffi' 'bzip2' 'glib2' 'v4l-utils'
         'zlib' 'mesa' 'glew' 'xdg-utils' 'gtk2' 'imlib2' 'gdk-pixbuf2' 'gtk3'
         'postgresql-libs' 'mariadb-libs' 'unixodbc' 'sqlite' 'librsvg'
         'curl' 'poppler-glib' 'sdl_mixer' 'sdl_ttf' 'sdl2' 'sdl2_mixer' 'sdl2_image' 'sdl2_ttf' 'libxtst'
         'pcre' 'qt5-webkit' 'qt5-x11extras' 'qt5-svg' 'libxcursor' 'libsm' 'dbus' 'libxml2'
         'libxslt' 'libgnome-keyring' 'gsl' 'gst-plugins-base-libs' 'alure' 'gtkglext' 'ncurses'
	 'gmime3')
options=('!emptydirs' 'libtool')
source=("https://gitlab.com/gambas/gambas/-/archive/${pkgver}/gambas-${pkgver}.tar.bz2"
        gambas-poppler-0.76.patch
        gambas-qt-5.13.patch)
sha512sums=('5a7954df222a91f87926e6d96aca39b098cd3205f43d48557459e639ed4cf70bfb67c41a19d8296ec8f82acaa9a040549a99d4e1702f3fae2af381615a6cc84d'
            'dab805eb855ad5774833a9d040599c37b7154cf8ad065278d425ea4a23749c442e0585309e4c03f5f2be286398226ee7153f1060fd2e1025c3761e5ded7056df'
            'f7f6c124886062a14ec5fc03d1985317349dcaa837222243364eb210413ba3060a2814c67de5715f0e829c642a2ba1a38072039741ebdeb268f05bbebbaebd38')

create_dirs() {
  install -dm755 ${pkgdir}/usr/lib/gambas3
  install -dm755 ${pkgdir}/usr/share/gambas3/info/control
}

prepare() {
  cd ${srcdir}/gambas-${pkgver}

  patch -p1 -i ../gambas-poppler-0.76.patch
  patch -p1 -i ../gambas-qt-5.13.patch
  ./reconf-all
}

build() {
  cd ${srcdir}/gambas-${pkgver}

  ./configure --prefix=/usr

  make bindir=${pkgdir}/usr/bin

  mkdir -p ${srcdir}/fakeinstall
  make -j1 XDG_UTILS='' DESTDIR=${srcdir}/fakeinstall install
}

package_gambas3-gb-args() {
  depends=('gambas3-runtime')
  pkgdesc="Command-line options analyzer component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.args.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.args.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-cairo() {
  depends=('gambas3-runtime' 'cairo')
  pkgdesc="Cairo component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.cairo.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.cairo.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-chart() {
  depends=('gambas3-gb-form')
  pkgdesc="Chart component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.chart.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.chart.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-clipper() {
  depends=('gambas3-runtime')
  pkgdesc="Polygon clipping component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.clipper.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.clipper.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-complex() {
  depends=('gambas3-runtime')
  pkgdesc="Complex numbers component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.complex.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.complex.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-compress() {
  depends=('gambas3-runtime' 'bzip2' 'zlib')
  provides=('gambas3-gb-compress-bzlib2' 'gambas3-gb-compress-zlib')
  pkgdesc="Compression support component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.compress.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.compress.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-crypt() {
  depends=('gambas3-runtime')
  pkgdesc="MD5/DES crypting component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.crypt.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.crypt.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-data() {
  depends=('gambas3-runtime')
  pkgdesc="Data containers component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.data.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.data.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-db-form() {
  depends=('gambas3-gb-db' 'gambas3-gb-form')
  pkgdesc="Database form component"

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.db.form

  mv -v usr/lib/gambas3/gb.db.form.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.db.form.* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.db.form/* ${pkgdir}/usr/share/gambas3/control/gb.db.form
}

package_gambas3-gb-db-mysql() {
  depends=('gambas3-gb-db' 'mariadb-libs')
  pkgdesc="MySQL database access component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.db.mysql.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.db.mysql.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-db-odbc() {
  depends=('gambas3-gb-db' 'unixodbc')
  pkgdesc="ODBC database access component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.db.odbc.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.db.odbc.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-db-postgresql() {
  depends=('gambas3-gb-db' 'postgresql-libs')
  pkgdesc="PostgreSQL database access component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.db.postgresql.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.db.postgresql.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-db-sqlite3() {
  depends=('gambas3-gb-db' 'sqlite' 'gcc-libs')
  pkgdesc="Sqlite3 database access component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.db.sqlite3.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.db.sqlite3.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-db() {
  depends=('gambas3-runtime')
  pkgdesc="Database access component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.db.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.db.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-dbus() {
  depends=('gambas3-gb-image' 'dbus')
  provides=('gambas3-gb-dbus-trayicon')
  pkgdesc="DBUS component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.dbus.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.dbus.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-desktop-gnome() {
  depends=('libgnome-keyring')
  pkgdesc="Desktop component for Gnome"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.desktop.gnome.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.desktop.gnome.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-desktop-x11() {
  depends=('libsm' 'libxtst')
  pkgdesc="X-Window library support component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.desktop.x11.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.desktop.x11.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-desktop() {
  depends=('gambas3-gb-image')
  pkgdesc="Desktop component"

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.desktop

  mv -v usr/lib/gambas3/gb.desktop.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.desktop.* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.desktop/* ${pkgdir}/usr/share/gambas3/control/gb.desktop
}

package_gambas3-gb-eval-highlight() {
  depends=('gambas3-runtime')
  pkgdesc="Expression evaluator highlight component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.eval.highlight.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.eval.highlight.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-form-dialog() {
  depends=('gambas3-gb-form')
  pkgdesc="Form dialog component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.form.dialog.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.form.dialog.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-form-mdi() {
  depends=('gambas3-gb-form')
  pkgdesc="Form MDI component"

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.form.midi

  mv -v usr/lib/gambas3/gb.form.mdi.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.form.mdi.* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.form.mdi/* ${pkgdir}/usr/share/gambas3/control/gb.form.midi
}

package_gambas3-gb-form-stock() {
  depends=('gambas3-runtime')
  pkgdesc="Default stock icons component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.form.stock.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.form.stock.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-form-editor() {
  depends=('gambas3-gb-eval-highlight')
  pkgdesc="Editor component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.form.editor.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.form.editor.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-form-terminal() {
  depends=('gambas3-runtime')
  pkgdesc="Terminal component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.form.terminal.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.form.terminal.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-form() {
  depends=('gambas3-runtime')
  pkgdesc="Form component"

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.form

  mv -v usr/lib/gambas3/gb.form.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.form.* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.form/* ${pkgdir}/usr/share/gambas3/control/gb.form
}

package_gambas3-gb-gmp() {
  depends=('gambas3-runtime' 'gmp')
  pkgdesc="Arbitrary precision arithmetic component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.gmp.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.gmp.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-gsl() {
  depends=('gambas3-runtime' 'gsl')
  pkgdesc="The GNU Scientific Library component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.gsl.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.gsl.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-gtk-opengl() {
  depends=('gambas3-gb-gtk' 'gambas3-gb-opengl' 'gtkglext')
  pkgdesc="GTK+ toolkit OpenGL component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.gtk.opengl.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.gtk.opengl.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-gtk() {
  depends=('gambas3-gb-image' 'gtk2' 'librsvg')
  pkgdesc="GTK+ toolkit component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.gtk.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.gtk.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-gtk3() {
  depends=('gambas3-gb-image' 'gtk3')
  pkgdesc="GTK3 toolkit component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.gtk3.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.gtk3.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-httpd() {
  depends=('gambas3-runtime')
  pkgdesc="Embedded HTTP server for the interpreter"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.httpd.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.httpd.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-image-effect() {
  depends=('gambas3-gb-image' 'gcc-libs')
  pkgdesc="Image effect component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.image.effect.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.image.effect.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-image-imlib() {
  depends=('gambas3-gb-image' 'imlib2')
  pkgdesc="Imlib component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.image.imlib.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.image.imlib.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-image-io() {
  depends=('gambas3-gb-image' 'gdk-pixbuf2')
  pkgdesc="Input/Output image component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.image.io.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.image.io.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-image() {
  depends=('gambas3-runtime')
  pkgdesc="Image component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.image.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.image.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-inotify() {
  depends=('gambas3-runtime')
  pkgdesc="Filesystem events monitoring component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.inotify.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.inotify.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-libxml() {
  depends=('gambas3-runtime' 'libxml2')
  pkgdesc="libxml2 component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.libxml.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.libxml.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-logging() {
  depends=('gambas3-runtime')
  pkgdesc="Flexible log message handling component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.logging.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.logging.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-map() {
  depends=('gambas3-gb-image-io' 'gambas3-gb-form')
  pkgdesc="Display maps component"

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.map

  mv -v usr/lib/gambas3/gb.map.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.map.* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.map/* ${pkgdir}/usr/share/gambas3/control/gb.map
}

package_gambas3-gb-markdown() {
  depends=('gambas3-gb-image-io' 'gambas3-gb-form')
  pkgdesc="Convert the Gambas markdown syntax to HTML"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.markdown.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.markdown.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-media-form() {
  depends=('gambas3-runtime' 'gambas3-gb-media')
  pkgdesc="Media player control component"

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.media.form

  mv -v usr/lib/gambas3/gb.media.form* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.media.form* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.media.form/* ${pkgdir}/usr/share/gambas3/control/gb.media.form
}

package_gambas3-gb-media() {
  depends=('gambas3-runtime' 'gst-plugins-base-libs')
  pkgdesc="Simplified interface to the GStreamer library component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.media.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.media.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-memcached() {
  depends=('gambas3-gb-net')
  pkgdesc="Memcached client component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.memcached.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.memcached.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-mime() {
  depends=('gambas3-runtime' 'gmime')
  pkgdesc="MIME message component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.mime.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.mime.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-mysql() {
  depends=('gambas3-runtime' 'gambas3-gb-db-mysql')
  pkgdesc="Mysql extra component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.mysql.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.mysql.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-ncurses() {
  depends=('gambas3-runtime' 'ncurses')
  pkgdesc="Ncurses component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.ncurses.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.ncurses.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-net-curl() {
  depends=('gambas3-gb-net' 'curl')
  pkgdesc="Curl component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.net.curl.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.net.curl.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-net-pop3() {
  depends=('gambas3-gb-net' 'gambas3-gb-mime')
  pkgdesc="POP3 component"

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.net.pop3

  mv -v usr/lib/gambas3/gb.net.pop3.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.net.pop3.* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.net.pop3/* ${pkgdir}/usr/share/gambas3/control/gb.net.pop3
}

package_gambas3-gb-net-smtp() {
  depends=('gambas3-runtime' 'glib2')
  pkgdesc="SMTP component"

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.net.smtp

  mv -v usr/lib/gambas3/gb.net.smtp.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.net.smtp.* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.net.smtp/* ${pkgdir}/usr/share/gambas3/control/gb.net.smtp
}

package_gambas3-gb-net() {
  depends=('gambas3-runtime')
  pkgdesc="Network component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.net.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.net.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-openal() {
  depends=('gambas3-runtime' 'alure')
  pkgdesc="OpenAL 3D audio component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.openal.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.openal.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-opengl-glu() {
  depends=('gambas3-gb-opengl')
  pkgdesc="GL Utility component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.opengl.glu.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.opengl.glu.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-opengl-glsl() {
  depends=('gambas3-gb-opengl')
  pkgdesc="GLSL component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.opengl.glsl.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.opengl.glsl.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-opengl-sge() {
  depends=('gambas3-gb-opengl')
  pkgdesc="Simple OpenGL game engine component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.opengl.sge* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.opengl.sge* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-opengl() {
  depends=('gambas3-runtime' 'glew')
  pkgdesc="OpenGL component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.opengl.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.opengl.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-openssl() {
  depends=('gambas3-runtime' 'openssl')
  pkgdesc="Openssl component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.openssl.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.openssl.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-option() {
  depends=('gambas3-runtime')
  pkgdesc="Getopt component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.option.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.option.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-pcre() {
  depends=('gambas3-runtime' 'pcre')
  pkgdesc="PCRE component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.pcre.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.pcre.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-pdf() {
  depends=('gambas3-runtime' 'poppler')
  pkgdesc="PDF component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.pdf.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.pdf.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-qt5-opengl() {
  depends=('gambas3-gb-qt5' 'gambas3-gb-opengl')
  pkgdesc="Qt5 toolkit OpenGL component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.qt5.opengl.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.qt5.opengl.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-qt5-webkit() {
  depends=('gambas3-gb-qt5' 'qt5-webkit')
  pkgdesc="Qt5 toolkit webkit component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.qt5.webkit.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.qt5.webkit.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-qt5() {
  depends=('gambas3-gb-image' 'qt5-base' 'qt5-svg' 'qt5-x11extras')
  pkgdesc="Qt5 toolkit component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.qt5.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.qt5.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-report() {
  depends=('gambas3-gb-form' 'gambas3-gb-image-io')
  pkgdesc="Report component"
  provides=("gambas3-gb-report2=${pkgver}")

  cd ${srcdir}/fakeinstall

  create_dirs
  install -dm755 ${pkgdir}/usr/share/gambas3/control/gb.report{,2}

  mv -v usr/lib/gambas3/gb.report{,2}.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.report{,2}.* ${pkgdir}/usr/share/gambas3/info/
  mv -v usr/share/gambas3/control/gb.report/* ${pkgdir}/usr/share/gambas3/control/gb.report
  mv -v usr/share/gambas3/control/gb.report2/* ${pkgdir}/usr/share/gambas3/control/gb.report2
}

package_gambas3-gb-scanner() {
  depends=('gambas3-gb-image' 'gambas3-gb-settings' 'sane')
  pkgdesc="Scanimage frontend component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.scanner.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.scanner.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-sdl-sound() {
  depends=('gambas3-runtime' 'sdl_mixer')
  pkgdesc="SDL sound component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.sdl.sound.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.sdl.sound.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-sdl() {
  depends=('gambas3-gb-image-io' 'sdl_ttf' 'libxcursor' 'glew')
  pkgdesc="SDL component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.sdl.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.sdl.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-sdl2-audio() {
  depends=('gambas3-runtime' 'sdl2_mixer')
  pkgdesc="SDL2 audio component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.sdl2.audio.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.sdl2.audio.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-sdl2() {
  depends=('gambas3-gb-image-io' 'sdl2_ttf' 'sdl2_image' 'glew')
  pkgdesc="SDL2 component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.sdl2.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.sdl2.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-settings() {
  depends=('gambas3-runtime')
  pkgdesc="Setting component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.settings.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.settings.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-signal() {
  depends=('gambas3-runtime')
  pkgdesc="POSIX Signals component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.signal.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.signal.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-term() {
  depends=('gambas3-runtime')
  pkgdesc="Terminal management component"
  provides=("gambas3-gb-term-form=${pkgver}")

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.term.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.term.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-util-web() {
  depends=('gambas3-runtime')
  pkgdesc="Miscellaneous web utility functions component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.util.web.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.util.web.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-util() {
  depends=('gambas3-runtime')
  pkgdesc="Miscellaneous utility functions component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.util.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.util.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-v4l() {
  depends=('gambas3-runtime' 'v4l-utils' 'libjpeg' 'libpng')
  pkgdesc="Video4linux component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.v4l.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.v4l.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-vb() {
  depends=('gambas3-runtime')
  pkgdesc="Visual Basic transitional component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.vb.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.vb.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-web-feed() {
  depends=('gambas3-gb-xml')
  pkgdesc="Web feed parser and generator component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.web.feed.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.web.feed.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-web-form() {
  depends=('gambas3-gb-web' 'gambas3-gb-util-web')
  pkgdesc="web form component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.web.form.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.web.form.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-web() {
  depends=('gambas3-runtime')
  pkgdesc="CGI component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.web.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.web.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-xml-html() {
  depends=('gambas3-gb-xml')
  pkgdesc="HTML generator component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.xml.html.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.xml.html.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-xml-rpc() {
  depends=('gambas3-gb-xml' 'gambas3-gb-net-curl')
  pkgdesc="XML-RPC component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.xml.rpc.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.xml.rpc.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-xml-xslt() {
  depends=('gambas3-gb-xml' 'libxslt')
  pkgdesc="XML-XSLT component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.xml.xslt.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.xml.xslt.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-gb-xml() {
  depends=('gambas3-runtime' 'gcc-libs')
  pkgdesc="XML component"

  cd ${srcdir}/fakeinstall

  create_dirs

  mv -v usr/lib/gambas3/gb.xml.* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/gb.xml.* ${pkgdir}/usr/share/gambas3/info/
}

package_gambas3-runtime() {
  depends=('libffi' 'xdg-utils')
  pkgdesc="Runtime environment"
  conflicts=('gambas3-gb-gui')
  replaces=('gambas3-gb-gui')
  provides=("gambas3-gb-gui=${pkgver}" 'gambas3-gb-jit')

  cd ${srcdir}/fakeinstall

  create_dirs

  install -dm755 ${pkgdir}/usr/bin
  install -dm755 ${pkgdir}/usr/share/gambas3/{icons,mime}

  mv -v usr/bin/gb{r,x}3 ${pkgdir}/usr/bin
  mv -v usr/lib/gambas3/* ${pkgdir}/usr/lib/gambas3/
  mv -v usr/share/gambas3/info/* ${pkgdir}/usr/share/gambas3/info/
  install -m644 ${srcdir}/gambas-${pkgver}/main/mime/* ${pkgdir}/usr/share/gambas3/mime/
  install -m644 ${pkgdir}/usr/share/gambas3/mime/application-x-gambas3.png ${pkgdir}/usr/share/gambas3/icons/
}

package_gambas3-devel() {
  depends=('gambas3-runtime')
  pkgdesc="Development environment"

  cd ${srcdir}/fakeinstall

  install -dm755 ${pkgdir}/usr/bin

  mv -v usr/bin/gb{a,c,i}3 ${pkgdir}/usr/bin
}

package_gambas3-ide() {
  depends=('gambas3-devel' 'gambas3-gb-clipper' 'gambas3-gb-db-form' 'gambas3-gb-desktop' 'gambas3-gb-desktop-x11'
           'gambas3-gb-eval-highlight' 'gambas3-gb-form-dialog' 'gambas3-gb-form-editor' 'gambas3-gb-form-stock'
           'gambas3-gb-markdown' 'gambas3-gb-settings' 'gambas3-gb-form-mdi' 'gambas3-gb-image-effect' 'gambas3-gb-qt5'
           'gambas3-gb-qt5-webkit' 'gambas3-gb-net-curl' 'gambas3-gb-form-terminal'  'gambas3-gb-signal'
           'gambas3-gb-term' 'gambas3-gb-util')
  pkgdesc="Integrated Development Environment"
  conflicts=('gambas3-examples')
  replaces=('gambas3-examples')

  cd ${srcdir}/fakeinstall

  install -dm755 ${pkgdir}/usr/{bin,share/{applications,gambas3,pixmaps}}

  mv -v usr/bin/gambas3* ${pkgdir}/usr/bin/
  mv -v usr/share/appdata ${pkgdir}/usr/share/
  mv -v usr/share/gambas3/template ${pkgdir}/usr/share/gambas3/

  install -m644 ${srcdir}/gambas-${pkgver}/app/desktop/gambas3.desktop ${pkgdir}/usr/share/applications/
  install -m644 ${srcdir}/gambas-${pkgver}/app/desktop/gambas3.png ${pkgdir}/usr/share/pixmaps/
}

package_gambas3-script() {
  depends=('gambas3-devel')
  pkgdesc="Scripter and server programs support"

  cd ${srcdir}/fakeinstall

  install -dm755 ${pkgdir}/usr/bin
  install -dm755 ${pkgdir}/usr/share/gambas3/mime

  mv -v usr/bin/gb{s,w}3* ${pkgdir}/usr/bin/
  install -m644 ${srcdir}/gambas-${pkgver}/app/mime/* ${pkgdir}/usr/share/gambas3/mime/
}
