diff options
Diffstat (limited to 'community/lazarus/PKGBUILD')
-rw-r--r-- | community/lazarus/PKGBUILD | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/community/lazarus/PKGBUILD b/community/lazarus/PKGBUILD new file mode 100644 index 000000000..cf23fcf60 --- /dev/null +++ b/community/lazarus/PKGBUILD @@ -0,0 +1,124 @@ +# $Id: PKGBUILD 92718 2013-06-13 12:56:35Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Jens Adam (byte/jra) <j_adam@web.de> +# Contributor: BlackIkeEagle <ike DOT devolder AT gmail DOT com> + +pkgbase=lazarus +pkgname=('lazarus' 'lazarus-gtk2' 'lazarus-qt') +pkgver=1.0.10 +_pkgsubver=0 +pkgrel=1 +url='http://www.lazarus.freepascal.org/' +license=('GPL2' 'MPL' 'custom:LGPL') +arch=('i686' 'x86_64') +makedepends=('fpc' 'fpc-src' 'gtk2' 'qt4pas' 'rsync') +options=('!emptydirs' '!makeflags') +source=("http://downloads.sourceforge.net/project/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%20$pkgver/lazarus-$pkgver-${_pkgsubver}.tar.gz" + 'lazcontrols2.diff') +md5sums=('60d3b297079ca4151f690245295a8708' + '288bca6ad5ade79deec34c3602daaaa9') + +build() { + cd $srcdir/${pkgbase} + + # build gtk2 ide + make FPC=/usr/bin/fpc LCL_PLATFORM=gtk2 clean bigide + # move gtk binaries + mv lazarus lazarus-gtk2 + mv startlazarus startlazarus-gtk2 + + # build qt ide + make FPC=/usr/bin/fpc LCL_PLATFORM=qt bigide + # move qt binaries + mv lazarus lazarus-qt + mv startlazarus startlazarus-qt +} + +package_lazarus() { + pkgdesc='Delphi-like IDE for FreePascal common files' + depends=('fpc' 'fpc-src') + optdepends=( + 'perl: to run some scirpts in the tools directory' + 'gtk2: to compile gtk2 apps' + 'qt4pas: to compile qt apps and use help viewer' + ) + + cd $srcdir/${pkgbase} + + # skip the 'make install' mess completely and do everything manually + mkdir -p $pkgdir/usr/lib/lazarus $pkgdir/usr/bin $pkgdir/usr/share/man/man1 $pkgdir/usr/share/doc + rsync -a \ + --exclude="CVS" --exclude=".cvsignore" \ + --exclude="*.ppw" --exclude="*.ppl" \ + --exclude="*.ow" --exclude="*.a"\ + --exclude="*.rst" --exclude=".#*" \ + --exclude="*.~*" --exclude="*.bak" \ + --exclude="*.orig" --exclude="*.rej" \ + --exclude=".xvpics" \ + --exclude="killme*" --exclude=".gdb_hist*" \ + --exclude="debian" --exclude="COPYING*" \ + --exclude="*.app" --exclude="tools/install" \ + . "$pkgdir"/usr/lib/lazarus + + #remove some stuff, not needed or for in other package + pushd $pkgdir/usr/lib/lazarus + rm lazarus-* + rm startlazarus-* + popd + + ln -s /usr/lib/lazarus/lazbuild $pkgdir/usr/bin/lazbuild + cp -R install/man/man1/* $pkgdir/usr/share/man/man1/ + mv $pkgdir/usr/lib/lazarus/docs $pkgdir/usr/share/doc/lazarus + mkdir -p $pkgdir/usr/lib/lazarus/docs + ln -s /usr/share/doc/lazarus/chm $pkgdir/usr/lib/lazarus/docs/html + + rm -r $pkgdir/usr/lib/lazarus/install + + # license files: /usr/lib/lazarus/COPYING* + install -D -m644 COPYING.modifiedLGPL.txt $pkgdir/usr/share/licenses/$pkgbase/COPYING.modifiedLGPL +} + +package_lazarus-gtk2() { + pkgdesc='Delphi-like IDE for FreePascal gtk2 version' + depends=('lazarus' 'desktop-file-utils' 'gtk2') + conflicts=('lazarus-qt') + install='lazarus-ide.install' + + cd $srcdir/${pkgbase} + + # install gtk binaries + install -Dm755 lazarus-gtk2 $pkgdir/usr/lib/lazarus/lazarus + install -Dm755 startlazarus-gtk2 $pkgdir/usr/lib/lazarus/startlazarus + install -dm755 $pkgdir/usr/bin + ln -s /usr/lib/lazarus/lazarus $pkgdir/usr/bin/lazarus + ln -s /usr/lib/lazarus/startlazarus $pkgdir/usr/bin/startlazarus + + # make 'desktop-file-validate' happy and fix missing .png icon + sed -e 's|\(Categories\).*|\1=IDE;Development;|' \ + -e 's|\.png|\.xpm|' -i install/lazarus.desktop + install -Dm644 install/lazarus.desktop $pkgdir/usr/share/applications/lazarus.desktop + install -Dm644 images/ide_icon48x48.png $pkgdir/usr/share/pixmaps/lazarus.png +} + +package_lazarus-qt() { + pkgdesc='Delphi-like IDE for FreePascal qt version' + depends=('lazarus' 'qt4pas') + conflicts=('lazarus-gtk2') + install='lazarus-ide.install' + + cd $srcdir/${pkgbase} + + # install qt binaries + install -Dm755 lazarus-qt $pkgdir/usr/lib/lazarus/lazarus + install -Dm755 startlazarus-qt $pkgdir/usr/lib/lazarus/startlazarus + install -dm755 $pkgdir/usr/bin + ln -s /usr/lib/lazarus/lazarus $pkgdir/usr/bin/lazarus + ln -s /usr/lib/lazarus/startlazarus $pkgdir/usr/bin/startlazarus + + # make 'desktop-file-validate' happy and fix missing .png icon + sed -e 's|\(Categories\).*|\1=IDE;Development;|' \ + -e 's|\.png|\.xpm|' -i install/lazarus.desktop + install -Dm644 install/lazarus.desktop $pkgdir/usr/share/applications/lazarus.desktop + install -Dm644 images/ide_icon48x48.png $pkgdir/usr/share/pixmaps/lazarus.png +} +# vim:set ts=2 sts=2 sw=2 et: |