SHARE
TWEET

PKGBUILD for latest U++

a guest Jul 15th, 2016 75 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # Maintainer: Jan Dolinar <dolik.rce@gmail.com>
  2.  
  3. pkgbase=upp
  4. pkgname=(upp theide umk)
  5. pkgver=10043
  6. pkgrel=1
  7. pkgdesc="Radical and innovative multiplatform C++ framework (known as U++)"
  8. arch=('any')
  9. url="http://www.ultimatepp.org"
  10. license=('BSD')
  11. groups=()
  12. depends=('gtk2' 'libnotify' 'libpng' 'gcc-libs' 'libxft' 'desktop-file-utils')
  13. makedepends=()
  14. optdepends=('libnotify: Enables compiling gtk-styled apps' 'sox: Enables playing notification sounds')
  15. replaces=()
  16. backup=()
  17. options=(!makeflags emptydirs !strip)
  18. source=("http://www.ultimatepp.org/downloads/upp-x11-src-$pkgver.tar.gz"
  19.         'GCC.bm'
  20.         'license.txt'
  21.         'theide.install'
  22.         'https://raw.githubusercontent.com/ultimatepp/mirror/master/uppbox/lpbuild2/theide.1'
  23.         'https://raw.githubusercontent.com/ultimatepp/mirror/master/uppbox/lpbuild2/umk.1'
  24.         'https://raw.githubusercontent.com/ultimatepp/mirror/master/uppbox/lpbuild2/mkfile')
  25. noextract=()
  26. md5sums=('63e558f15dcce96c7669c3f1d68df236'
  27.          'a1b57c2231b6b0fa8070941fa4accf72'
  28.          'b214709f096e4f50d61f50988359241e'
  29.          '204e9ece27294b4b73cb3a31f0474d8d'
  30.          'b21415926edc5f18efaec625f6135556'
  31.          'b56d54a9d5d722bb32633a06675fbeb6'
  32.          '9ad99eb6ead298341b6698e505067d7c')
  33.  
  34. # uncomment this to true to build theide with simpler GUI (with no GTK dependecies)
  35. #USE_NOGTK=false
  36.  
  37. build() {
  38.   cd "$srcdir/upp-x11-src-$pkgver"
  39.  
  40.   FLAGS="GCC GUI MT STACKTRACE"
  41.   USE_NOGTK="${USE_NOGTK:-false}"
  42.   if [ "$USE_NOGTK" == "true" ]; then
  43.     SUFFIX="-nogtk"
  44.     FLAGS="$FLAGS NOGTK"
  45.   fi
  46.  
  47.   # set the version string
  48.   echo "#define IDE_VERSION \"$pkgver-Arch-$CARCH-$SUFFIX\"" > "uppsrc/ide/version.h"
  49.  
  50.   # build
  51.   msg2 "Building umk..."
  52.   make -f "$srcdir/mkfile" PKG=umk FLAGS="GCC STACKTRACE" NESTS="uppsrc" TIME= COLOR=0 USEMAINCFG=0 JOBS=5 ECHO=0 TARGET="$srcdir/umk"
  53.  
  54.   msg2 "Building theide..."
  55.   make -f "$srcdir/mkfile" PKG=ide FLAGS="$FLAGS" NESTS="uppsrc" TIME= COLOR=0 USEMAINCFG=0 JOBS=5 ECHO=0 TARGET="$srcdir/theide"
  56. }
  57.  
  58. package_theide(){
  59.   # theide specific settings
  60.   pkgdesc="Modern IDE designed for developping large U++/C++ applications"
  61.   arch=('i686' 'x86_64')
  62.   if [ "$USE_NOGTK" = true ]; then
  63.     depends=('libpng' 'gcc-libs' 'libxft' 'libxinerama' 'desktop-file-utils')
  64.     optdepends=('sox: Enables notification sounds')
  65.   else
  66.     depends=('gtk2' 'libnotify' 'desktop-file-utils')
  67.     optdepends=('sox: Enables notification sounds')
  68.   fi
  69.   options=(!makeflags emptydirs)
  70.   install='theide.install'
  71.  
  72.   # license
  73.   install -D "$srcdir/license.txt" "$pkgdir/usr/share/licenses/$pkgname/license.txt"
  74.   # man pages
  75.   install -D "$srcdir/theide.1" "$pkgdir/usr/share/man/man1/theide.1"
  76.   install -D "$srcdir/umk.1" "$pkgdir/usr/share/man/man1/umk.1"
  77.   # desktop entry
  78.   install -D "$srcdir/upp-x11-src-$pkgver/uppsrc/ide/theide.desktop" "$pkgdir/usr/share/applications/theide.desktop"
  79.   # icon
  80.   install -D "$srcdir/upp-x11-src-$pkgver/uppsrc/ide/theide-48.png" "$pkgdir/usr/share/pixmaps/theide.png"
  81.   # fix permissions
  82.   find "$pkgdir/usr/" -print0 | xargs -0 chown root:root
  83.   find "$pkgdir/usr/" -type f -print0 | xargs -0 chmod 644
  84.   find "$pkgdir/usr/" -type d -print0 | xargs -0 chmod 755
  85.   # install applications
  86.   install -D "$srcdir/theide" "$pkgdir/usr/bin/theide"
  87. }
  88.  
  89. package_umk(){
  90.   # theide specific settings
  91.   pkgdesc="Command line builder for U++ applications"
  92.   arch=('i686' 'x86_64')
  93.   depends=('gcc-libs' 'desktop-file-utils')
  94.   options=(!makeflags emptydirs)
  95.  
  96.   # license
  97.   install -D "$srcdir/license.txt" "$pkgdir/usr/share/licenses/$pkgname/license.txt"
  98.   # man pages
  99.   install -D "$srcdir/umk.1" "$pkgdir/usr/share/man/man1/umk.1"
  100.   # fix permissions
  101.   find "$pkgdir/usr/" -print0 | xargs -0 chown root:root
  102.   find "$pkgdir/usr/" -type f -print0 | xargs -0 chmod 644
  103.   find "$pkgdir/usr/" -type d -print0 | xargs -0 chmod 755
  104.   # install applications
  105.   install -D "$srcdir/umk" "$pkgdir/usr/bin/umk"
  106. }
  107.  
  108. package_upp() {
  109.   pkgdesc="Radical and innovative multiplatform C++ framework (known as U++)"
  110.   arch=('any')
  111.   depends=('theide')
  112.   optdepends=('libnotify: Enables compiling gtk-styled apps')
  113.   options=(emptydirs !strip)
  114.   #copy source files
  115.   mkdir -p "$pkgdir/usr/share/upp"
  116.   msg2 "Moving the source codes..."
  117.   cp -r "$srcdir/upp-x11-src-$pkgver/"{bazaar,examples,reference,tutorial,uppsrc} "$pkgdir/usr/share/upp/"
  118.   echo "#define IDE_VERSION \"$pkgver-Arch\"" > "$pkgdir/usr/share/upp/uppsrc/ide/version.h"
  119.   msg2 "Copying additional files..."
  120.   #license
  121.   mkdir -p "$pkgdir/usr/share/licenses/upp"
  122.   cp "$srcdir/license.txt" "$pkgdir/usr/share/licenses/upp"
  123.   #build method
  124.   cp "$srcdir/GCC.bm" "$pkgdir/usr/share/upp"
  125.   #fix permissions
  126.   msg2 "Setting permissions..."
  127.   find "$pkgdir/usr/" -print0 | xargs -0 chown root:root
  128.   find "$pkgdir/usr/" -type f -print0 | xargs -0 chmod 644
  129.   find "$pkgdir/usr/" -type d -print0 | xargs -0 chmod 755
  130. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top