summaryrefslogtreecommitdiff
path: root/packages/llvm/llvm_2.4.bb
blob: c1ad694ae6b8741669ec9f92ac5ef3163d8f896b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
DESCRIPTION = "The Low Level Virtual Machine"
HOMEPAGE = "http://llvm.org"
LICENSE = "various"

SRC_URI = "\
	http://llvm.org/releases/${PV}/llvm-${PV}.tar.gz \
	file://fix-build.patch;patch=1 \
	"

DEPENDS = "llvm-native"

inherit autotools

do_compile() {
	# The build wants these binaries, together with the build-fix patch
  # they are not compiled again (which would not work).
  # Most important aspect is removing BUILD_TARGET_DIRS variable.
	install -d Release/Build/bin
	cp ${STAGING_BINDIR_NATIVE}/tblgen Release/Build/bin
	cp ${STAGING_BINDIR_NATIVE}/fpcmp Release/Build/bin
	cp ${STAGING_BINDIR_NATIVE}/llvm-PerfectShuffle Release/Build/bin
	
	oe_runmake
}

do_stage() {
	autotools_stage_all

	rm ${STAGING_LIBDIR}/LLVMHello.*

	install -d ${STAGING_BINDIR_CROSS}

	sed -e's^my.*ABS_RUN_DIR =.*^my $ABS_RUN_DIR = "${STAGING_DIR_TARGET}";^' \
		-e's^my.*INCLUDEDIR =.*^my $INCLUDEDIR = "${STAGING_INCDIR}";^' \
		-e's^my.*LIBDIR.*^my $LIBDIR = "${STAGING_LIBDIR}";^' \
		-e's^my.*BINDIR.*^my $BINDIR = "${STAGING_BINDIR}";^' \
		Release/Host/bin/llvm-config > ${STAGING_BINDIR_CROSS}/llvm-config

	chmod +x ${STAGING_BINDIR_CROSS}/llvm-config
}