rust-git ã® PKGBUILD
AUR ã«ãã rust-git ããmakepkg ãããã¨ããã¨æ¯å llvm ãã libuv ã®ãµãã¢ã¸ã¥ã¼ã«ã clone ãããã¨ãã¦æéãããã£ã¦ä»æ¹ãç¡ãã®ã§ãååã ã clone ããããã«ä¿®æ£ãã¦ã¿ããã¤ãã§ã«ãã³ã³ãã¤ã©ã¨ã㦠clang ã使ãè¨å®ãããã¦ã¿ãã
æ¢ã«ããç©ã®æ¹é çã AUR ã«ã¢ãããã¦è¯ãç©ãããããªãã®ã§ãããã«è²¼ãä»ãã¦ããã¾ãã
# Author: NAKASHIMA, Makoto <[email protected]> pkgname=rust-git pkgver=20120528 pkgrel=1 pkgdesc="A safe, concurrent, practical language from Mozilla." arch=(i686 x86_64) url="http://www.rust-lang.org/" license=('MIT') depends=('gcc-libs') makedepends=('git' 'gcc' 'libffi' 'python2' # for LLVM ) optdepends=('pandoc: to build rust.pdf' 'llnextgen: for build-time grammar verification' 'naturaldocs: to build library doc') _gitroot="git://github.com/mozilla/rust.git" _gitname="rust" build() { cd "$srcdir" msg "Connecting to git server...." if [ -d $_gitname ] ; then cd $_gitname && git pull origin git submodule sync git submodule update --init --recursive git submodule foreach --recursive git clean -dxf git submodule foreach --recursive git checkout . msg "The local files are updated." else git clone --recursive $_gitroot $_gitname cd $_gitname fi msg "git checkout done or server timeout" rm -rf "$srcdir/$_gitname-build" cp -r "$srcdir/$_gitname" "$srcdir/$_gitname-build" cd "$srcdir/$_gitname-build" ./configure --prefix=/usr --enable-clang msg 's/python$/python2/' find . \ -type f -executable -exec grep -qe 'env python$' '{}' ';' \ -exec sed -i 's/env python$/env python2/' '{}' ';' -print msg "Starting make..." make || return 1 } package() { mkdir "$pkgdir/usr" cd "$srcdir/$_gitname-build" make install DESTDIR="$pkgdir/usr/" _docdir=$pkgdir/usr/share/doc/rust mkdir -p "$_docdir" for _doc in rust.pdf rust.html tutorial.html rust.css core std rust.md ; do if ! [ -e "doc/$_doc" ] ; then continue ; fi cp -r "doc/$_doc" "$_docdir/" chmod -R 644 "$_docdir/$_doc" chown -R root:root "$_docdir/$_doc" done find "$_docdir" -type d -exec chmod 755 '{}' ';' }