diff options
-rw-r--r-- | meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb | 56 |
1 files changed, 43 insertions, 13 deletions
diff --git a/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb b/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb index a0252aa946..964dc1d590 100644 --- a/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb +++ b/meta-oe/recipes-devtools/luajit/luajit_2.0.4.bb | |||
@@ -15,11 +15,6 @@ inherit pkgconfig binconfig | |||
15 | 15 | ||
16 | BBCLASSEXTEND = "native" | 16 | BBCLASSEXTEND = "native" |
17 | 17 | ||
18 | do_configure_prepend() { | ||
19 | sed -i 's:PREFIX= /usr/local:PREFIX= ${prefix}:g' ${S}/Makefile | ||
20 | sed -i 's:MULTILIB= lib:MULTILIB= ${baselib}:g' ${S}/Makefile | ||
21 | } | ||
22 | |||
23 | # http://luajit.org/install.html#cross | 18 | # http://luajit.org/install.html#cross |
24 | # Host luajit needs to be compiled with the same pointer size | 19 | # Host luajit needs to be compiled with the same pointer size |
25 | # If you want to cross-compile to any 32 bit target on an x64 OS, | 20 | # If you want to cross-compile to any 32 bit target on an x64 OS, |
@@ -30,20 +25,52 @@ BUILD_CC_ARCH_append_powerpc = ' -m32' | |||
30 | BUILD_CC_ARCH_append_x86 = ' -m32' | 25 | BUILD_CC_ARCH_append_x86 = ' -m32' |
31 | BUILD_CC_ARCH_append_arm = ' -m32' | 26 | BUILD_CC_ARCH_append_arm = ' -m32' |
32 | 27 | ||
33 | EXTRA_OEMAKE_append_class-target = '\ | 28 | # The lua makefiles expect the TARGET_SYS to be from uname -s |
34 | CROSS=${HOST_PREFIX} \ | 29 | # Values: Windows, Linux, Darwin, iOS, SunOS, PS3, GNU/kFreeBSD |
35 | HOST_CC="${BUILD_CC} ${BUILD_CC_ARCH}" \ | 30 | LUA_TARGET_OS = "Unknown" |
36 | TARGET_CFLAGS="${TOOLCHAIN_OPTIONS} ${TARGET_CC_ARCH}" \ | 31 | LUA_TARGET_OS_darwin = "Darwin" |
37 | TARGET_LDFLAGS="${TOOLCHAIN_OPTIONS}" \ | 32 | LUA_TARGET_OS_linux = "Linux" |
38 | TARGET_SHLDFLAGS="${TOOLCHAIN_OPTIONS}" \ | 33 | LUA_TARGET_OS_linux-gnueabi = "Linux" |
39 | ' | 34 | LUA_TARGET_OS_mingw32 = "Windows" |
35 | |||
36 | # We don't want the lua buildsystem's compiler optimizations, or its | ||
37 | # stripping, and we don't want it to pick up CFLAGS or LDFLAGS, as those apply | ||
38 | # to both host and target compiles | ||
39 | EXTRA_OEMAKE = "\ | ||
40 | Q= E='@:' \ | ||
41 | \ | ||
42 | CCOPT= CCOPT_x86= CFLAGS= LDFLAGS= TARGET_STRIP='@:' \ | ||
43 | \ | ||
44 | 'TARGET_SYS=${LUA_TARGET_OS}' \ | ||
45 | \ | ||
46 | 'CC=${CC}' \ | ||
47 | 'TARGET_AR=${AR} rcus' \ | ||
48 | 'TARGET_CFLAGS=${CFLAGS}' \ | ||
49 | 'TARGET_LDFLAGS=${LDFLAGS}' \ | ||
50 | 'TARGET_SHLDFLAGS=${LDFLAGS}' \ | ||
51 | 'HOST_CC=${BUILD_CC}' \ | ||
52 | 'HOST_CFLAGS=${BUILD_CFLAGS}' \ | ||
53 | 'HOST_LDFLAGS=${BUILD_LDFLAGS}' \ | ||
54 | \ | ||
55 | 'PREFIX=${prefix}' \ | ||
56 | 'MULTILIB=${baselib}' \ | ||
57 | " | ||
40 | 58 | ||
41 | do_compile () { | 59 | do_compile () { |
42 | oe_runmake | 60 | oe_runmake |
43 | } | 61 | } |
44 | 62 | ||
63 | # There's INSTALL_LIB and INSTALL_SHARE also, but the lua binary hardcodes the | ||
64 | # '/share' and '/' + LUA_MULTILIB paths, so we don't want to break those | ||
65 | # expectations. | ||
66 | EXTRA_OEMAKEINST = "\ | ||
67 | 'DESTDIR=${D}' \ | ||
68 | 'INSTALL_BIN=${D}${bindir}' \ | ||
69 | 'INSTALL_INC=${D}${includedir}/luajit-$(MAJVER).$(MINVER)' \ | ||
70 | 'INSTALL_MAN=${D}${mandir}/man1' \ | ||
71 | " | ||
45 | do_install () { | 72 | do_install () { |
46 | oe_runmake 'DESTDIR=${D}' install | 73 | oe_runmake ${EXTRA_OEMAKEINST} install |
47 | rmdir ${D}${datadir}/lua/5.* \ | 74 | rmdir ${D}${datadir}/lua/5.* \ |
48 | ${D}${datadir}/lua \ | 75 | ${D}${datadir}/lua \ |
49 | ${D}${libdir}/lua/5.* \ | 76 | ${D}${libdir}/lua/5.* \ |
@@ -52,6 +79,9 @@ do_install () { | |||
52 | 79 | ||
53 | PACKAGES += 'luajit-common' | 80 | PACKAGES += 'luajit-common' |
54 | 81 | ||
82 | # See the comment for EXTRA_OEMAKEINST. This is needed to ensure the hardcoded | ||
83 | # paths are packaged regardless of what the libdir and datadir paths are. | ||
84 | FILES_${PN} += "${prefix}/${baselib} ${prefix}/share" | ||
55 | FILES_${PN} += "${libdir}/libluajit-5.1.so.2 \ | 85 | FILES_${PN} += "${libdir}/libluajit-5.1.so.2 \ |
56 | ${libdir}/libluajit-5.1.so.${PV} \ | 86 | ${libdir}/libluajit-5.1.so.${PV} \ |
57 | " | 87 | " |