llvm 2.5-3
http://llvm.org
Low Level Virtual Machine
community :: devel
Maintainer: None
Votes: 58
License: custom:University of Illinois/NCSA Open
Last Updated: Mon, 06 Jul 2009 03:01:24 +0000
First Submitted: Fri, 01 Jun 2007 20:46:24 +0000
This package has been flagged out of date.
Dependencies libelf
Required by ldc-bin ldc-hg libqtgtl llvm-py pure pure-svn
pkgname=llvm
pkgver=2.5
pkgrel=2
pkgdesc="Low Level Virtual Machine"
arch=('i686' 'x86_64')
url="http://llvm.org"
license=('custom':'University of Illinois/NCSA Open Source License')
depends=('perl' 'libelf')
source=("http://llvm.org/releases/$pkgver/$pkgname-$pkgver.tar.gz")
md5sums=('55df2ea8665c8094ad2ef85187b9fc74')
build() {
cd $srcdir/$pkgname-$pkgver
# --sysconfdir to configure apparently isn't enough ...
sed 's:$(PROJ_prefix)/etc/llvm:/etc/llvm:' -i Makefile.config.in || return 1
# Fix insecure rpath http://bugs.archlinux.org/task/14017
sed 's:-rpath \$(ToolDir)::g' -i Makefile.rules || return 1
# Fix path that point to the build directory
sed 's:^TOOLDIR.*:TOOLDIR=/usr/bin:' \
-i tools/gccld/gccld.sh tools/gccas/gccas.sh || return 1
# remove docs from the make targets
sed 's:runtime docs:runtime:' -i Makefile || return 1
# remove examples projects and bindings from the make targets
sed 's:examples projects bindings::' -i Makefile || return 1
# remove libHello transformation
sed 's: Hello::' -i lib/Transforms/Makefile || return 1
# remove llc from tools
# sed 's:llc llvm-ranlib:llvm-ranlib:' -i tools/Makefile || return 1
# remove llvmc from tools
sed 's:llvm-stub llvmc:llvm-stub:' -i tools/Makefile || return 1
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-optimized \
--enable-assertions \
--enable-pic \
--enable-targets=host-only \
--disable-bindings \
--enable-shared \
--enable-static \
--disable-expensive-checks || return 1
make -j1 SHARED_LIBRARY=1 ARCHIVE_LIBRARY=1 DONT_BUILD_RELINKED=1 || return 1
# install fails with more than one make job
make -j1 DESTDIR=$pkgdir SHARED_LIBRARY=1 ARCHIVE_LIBRARY=1 DONT_BUILD_RELINKED=1 install || return 1
install -D LICENSE.TXT $pkgdir/usr/share/licenses/$pkgname/LICENSE
rm ${pkgdir}/usr/lib/*.la
}
@giorgidze
yes, please share (I might use it for the llvm-gcc package I am "maintaining")
cheers,
sebastien.
Can you produce shared libraries as well. I have PKGBUILD that does that if it is of interest.
Cheers, George
$ llvm-config --libs engine
/usr/lib/LLVMX86AsmPrinter.o ...
actually, LLVMX86AsmPrinter.o (and other .o files) is located at /usr/lib/llvm/LLVMX86AsmPrinter.o
I think sed's in PKGBUILD messe up llvm-config
2.5 PKGBUILD:
# Maintainer: Geoffroy Carrier <geoffroy.carrier@aur.archlinux.org>
# Contributor: Tomas Lindquist Olsen <tomas@famolsen.dk>
# Contributor: Roberto Alsina <ralsina@kde.org>
pkgname=llvm
pkgver=2.5
pkgrel=1
pkgdesc="Low Level Virtual Machine"
arch=('i686' 'x86_64')
url="http://llvm.org"
license=(custom:"University of Illinois/NCSA Open Source License")
depends=('libtool' 'libelf')
source=("http://llvm.org/releases/$pkgver/$pkgname-$pkgver.tar.gz" http://llvm.org/releases/$pkgver/LICENSE.TXT)
noextract=()
# set to 0 for a debug build
_llvm_optimized=1
#options=(!strip)
build() {
install -D "$srcdir"/LICENSE.TXT "$pkgdir"/usr/share/licenses/llvm/COPYING
cd $srcdir/$pkgname-$pkgver
# --sysconfdir to configure apparently isn't enough ...
sed -i 's:$(PROJ_prefix)/etc/llvm:/etc/llvm:' Makefile.config.in || return 1
./configure --prefix=/usr --sysconfdir=/etc || return 1
# remove docs from the make targets
sed -i 's/runtime docs/runtime/' Makefile || return 1
make ENABLE_OPTIMIZED=$_llvm_optimized || return 1
make ENABLE_OPTIMIZED=$_llvm_optimized DESTDIR=$pkgdir install || return 1
}
md5sums=('55df2ea8665c8094ad2ef85187b9fc74'
'a1e3a2623685ef62d184ca201b159ff4')
good package, just some heads up, it depends on gcc-libs nad gcc itself is a makedepends because it is a C++ software.
Updated to 2.3, enjoy and please report any PKGBUILD issues.
For some reason, I can't download the source:
==> Retrieving Sources...
-> Downloading llvm-2.2.tar.gz...
--2008-04-15 11:23:37-- http://llvm.org/releases/2.2/llvm-2.2.tar.gz
Resolving llvm.org... 128.174.239.10
Connecting to llvm.org|128.174.239.10|:80... connected.
HTTP request sent, awaiting response... 403 Forbidden
2008-04-15 11:23:38 ERROR 403: Forbidden.
==> ERROR: Failure while downloading llvm-2.2.tar.gz
Aborting...
Error: Makepkg was unable to build llvm package.
But the tarball downloads fine if I use my browser.
Thanx for the hints, I've added the patch and flex. Compiles on 4.3 now here :)
Just found out that LLVM 2.2 chokes on gcc 4.3. You probably want to include this patch from Fedora.
http://cvs.fedora.redhat.com/viewcvs/rpms/llvm/devel/llvm-2.2-gcc43.patch
http://www.llvm.org/bugs/show_bug.cgi?id=2152
Hi there - seems to be a build time dependency on flex too... configure barfs with "configure: error: flex not found but required"
(Aah, the joys of building on a fresh install:)
Updated to the 2.2 release and fixed some missing dependencies. Enjoy :)
I'm not sure what needed zip, I think I confused it with another package. sorry.
Can you add llvm-gcc to the build as well?
A few updates to remove litter and adds dependencies.
Anders: What seems to depend on zip ?
All yours! :-)
I wouldn't mind maintaining this package if that will help you :)
seems to need zip as a dependency
Version 2.1, fix for the /usr/etc problem as suggested in comments.
It does install docs. There is no point deleting them in the PKGBUILD, because your makepkg will delete them or not as you configured it.
Also, this is just too hard to build on my computer, so if anyone wants to take it over, I will orphan it and giv it to him.
Here is an updated PKGBUILD for the new 2.1 release:
--------------------------------------------------
# Contributor: Roberto Alsina
# Contributor: Tomas Lindquist Olsen <tomas@famolsen.dk>
pkgname=llvm
pkgver=2.1
pkgrel=1
pkgdesc="Low Level Virtual Machine"
arch=('i686' 'x86_64')
url="http://llvm.org"
license=(custom:"University of Illinois/NCSA Open Source License")
depends=('gcc')
makedepends=('gcc')
source=("http://llvm.org/releases/${pkgver}/${pkgname}-${pkgver}.tar.gz")
md5sums=('b930e7213b37acc934d0d163cf13af18')
build() {
cd ${startdir}/src/${pkgname}-${pkgver}
sed -i 's:$(PROJ_prefix)/etc/llvm:/etc/llvm:' Makefile.config.in
./configure --prefix=/usr --sysconfdir=/etc
make ENABLE_OPTIMIZED=1 || return 1
make DESTDIR=${startdir}/pkg install
install -Dm644 LICENSE.TXT ${startdir}/pkg/usr/share/licenses/${pkgname}/license.txt
# no docs please
rm -rf $startdir/pkg/usr/docs
# I have no idea where these comes from but we don't want them
rm $startdir/pkg/etc/llvm/.dir
rm $startdir/pkg/usr/bin/.dir
rm $startdir/pkg/usr/lib/.dir
}
it seems their build process is slightly borked, but this worked for me:
# Contributor: Roberto Alsina <ralsina@kde.org>
pkgname=llvm
pkgver=2.0
pkgrel=2
pkgdesc="Low Level Virtual Machine"
arch=('i686')
url="http://llvm.org"
license=(custom:llvm)
depends=('gcc')
makedepends=('gcc')
source=("http://llvm.org/releases/${pkgver}/${pkgname}-${pkgver}.tar.gz")
md5sums=('6f88002301a25f31a492052695f6138e')
build() {
cd ${startdir}/src/${pkgname}-${pkgver}
sed -i "s:\$(PROJ_prefix)/etc/llvm:/etc/llvm:" Makefile.config.in
./configure --prefix=/usr --sysconfdir=/etc
make ENABLE_OPTIMIZED=1 || return 1
make DESTDIR=${startdir}/pkg install
install -Dm644 LICENSE.TXT ${startdir}/pkg/usr/share/licenses/${pkgname}/license.txt
}
Virtual low level machine.
Still need to build at least llvm-gcc for this to be useful.
I can't find a way to make it use /etc instead of /usr/etc (--sysconfdir=/etc doesn't do it)
v1.6.0