aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrzej Zaborowski <andrew@openedhand.com>2008-10-20 00:22:07 +0000
committerAndrzej Zaborowski <andrew@openedhand.com>2008-10-20 00:22:07 +0000
commit3f93ed6bce12da9ece86e3f965e4e667b22fb306 (patch)
tree3d059c6ebe00f5d19590c4e660696dfc7c0964bd
parent4cb659823ba8f8631d623a870695c79ba352a6ad (diff)
downloadopenembedded-core-contrib-3f93ed6bce12da9ece86e3f965e4e667b22fb306.tar.gz
syslinux-native: Try to make syslinux cross-compile friendly.
We only had one package for building both the bootloader and the installer, i.e. target and host code. It used always the host compiler. Split the package into syslinux and syslinux-installer-native, require both for a cd bootable image. git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5539 311d38ba-8fff-0310-9ca6-ca027cbcb966
-rw-r--r--meta/classes/bootimg.bbclass7
-rw-r--r--meta/packages/syslinux/syslinux-installer-native_3.36.bb26
-rw-r--r--meta/packages/syslinux/syslinux-native_3.36.bb3
-rw-r--r--meta/packages/syslinux/syslinux.inc29
-rw-r--r--meta/packages/syslinux/syslinux3.inc21
-rw-r--r--meta/packages/syslinux/syslinux_3.36.bb14
6 files changed, 44 insertions, 56 deletions
diff --git a/meta/classes/bootimg.bbclass b/meta/classes/bootimg.bbclass
index 7bd367b9ae..d15818ee5b 100644
--- a/meta/classes/bootimg.bbclass
+++ b/meta/classes/bootimg.bbclass
@@ -13,7 +13,8 @@
# ${SYSLINUX_OPTS} - additional options to add to the syslinux file ';' delimited
do_bootimg[depends] += "dosfstools-native:do_populate_staging \
- syslinux-native:do_populate_staging \
+ syslinux:do_populate_staging \
+ syslinux-installer-native:do_populate_staging \
mtools-native:do_populate_staging \
cdrtools-native:do_populate_staging"
@@ -45,7 +46,7 @@ build_boot_bin() {
install -m 0644 ${ROOTFS} ${HDDDIR}/rootfs.img
fi
- install -m 444 ${STAGING_DATADIR_NATIVE}/syslinux/ldlinux.sys \
+ install -m 444 ${STAGING_DATADIR}/syslinux/ldlinux.sys \
${HDDDIR}/ldlinux.sys
# Do a little math, bash style
@@ -83,7 +84,7 @@ build_boot_bin() {
install -m 0644 ${INITRD} ${ISODIR}/initrd
# And install the syslinux stuff
- cp ${STAGING_DATADIR_NATIVE}/syslinux/isolinux.bin \
+ cp ${STAGING_DATADIR}/syslinux/isolinux.bin \
${ISODIR}
mkisofs -V ${BOOTIMG_VOLUME_ID} \
diff --git a/meta/packages/syslinux/syslinux-installer-native_3.36.bb b/meta/packages/syslinux/syslinux-installer-native_3.36.bb
new file mode 100644
index 0000000000..ae5b73afac
--- /dev/null
+++ b/meta/packages/syslinux/syslinux-installer-native_3.36.bb
@@ -0,0 +1,26 @@
+# syslinux-native OE build file
+# Copyright (C) 2004-2006, Advanced Micro Devices, Inc. All Rights Reserved
+# Released under the MIT license (see packages/COPYING)
+
+DESCRIPTION="A multi-purpose linux bootloader"
+HOMEPAGE="http://syslinux.zytor.com/"
+LICENSE="GPL"
+SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/boot/syslinux/syslinux-${PV}.tar.bz2 "
+
+S="${WORKDIR}/syslinux-${PV}"
+STAGE_TEMP="${WORKDIR}/stage_temp"
+
+inherit native
+
+do_compile() {
+ oe_runmake installer
+}
+
+do_stage() {
+ install -d ${STAGE_TEMP}
+ oe_runmake install INSTALLROOT="${STAGE_TEMP}"
+
+ install -d ${STAGING_BINDIR}
+ install -m 755 ${STAGE_TEMP}/usr/bin/syslinux ${STAGING_BINDIR}
+ install -m 755 ${STAGE_TEMP}/sbin/extlinux ${STAGING_BINDIR}
+}
diff --git a/meta/packages/syslinux/syslinux-native_3.36.bb b/meta/packages/syslinux/syslinux-native_3.36.bb
deleted file mode 100644
index d9019a4ab4..0000000000
--- a/meta/packages/syslinux/syslinux-native_3.36.bb
+++ /dev/null
@@ -1,3 +0,0 @@
-SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/boot/syslinux/syslinux-${PV}.tar.bz2 "
-
-require syslinux3.inc
diff --git a/meta/packages/syslinux/syslinux.inc b/meta/packages/syslinux/syslinux.inc
deleted file mode 100644
index 41be168d12..0000000000
--- a/meta/packages/syslinux/syslinux.inc
+++ /dev/null
@@ -1,29 +0,0 @@
-# syslinux-native OE build file
-# Copyright (C) 2004-2006, Advanced Micro Devices, Inc. All Rights Reserved
-# Released under the MIT license (see packages/COPYING)
-
-DESCRIPTION="A multi-purpose linux bootloader"
-HOMEPAGE="http://syslinux.zytor.com/"
-LICENSE="GPL"
-
-# If you really want to run syslinux, you need mtools. We just want the
-# ldlinux.* stuff for now, so skip mtools-native
-DEPENDS="nasm-native"
-
-S="${WORKDIR}/syslinux-${PV}"
-
-
-inherit native
-
-do_stage() {
- install -d ${STAGING_BINDIR}
- install -m 755 ${S}/syslinux ${STAGING_BINDIR}
-
- # When building media, the syslinux binary isn't nearly as useful
- # as the DOS data files, so we copy those into a special location
- # for usage during a image build stage
-
- install -d ${STAGING_DATADIR}/syslinux
- install -m 644 ${S}/ldlinux.sys ${STAGING_DATADIR}/syslinux/ldlinux.sys
- install -m 644 ${S}/ldlinux.bss ${STAGING_DATADIR}/syslinux/ldlinux.bss
-}
diff --git a/meta/packages/syslinux/syslinux3.inc b/meta/packages/syslinux/syslinux3.inc
deleted file mode 100644
index 95124d6160..0000000000
--- a/meta/packages/syslinux/syslinux3.inc
+++ /dev/null
@@ -1,21 +0,0 @@
-require syslinux.inc
-
-STAGE_TEMP="${WORKDIR}/stage_temp"
-
-do_stage() {
- install -d ${STAGE_TEMP}
- oe_runmake install INSTALLROOT="${STAGE_TEMP}"
-
- install -d ${STAGING_BINDIR}
- install -m 755 ${STAGE_TEMP}/usr/bin/syslinux ${STAGING_BINDIR}
- install -m 755 ${STAGE_TEMP}/sbin/extlinux ${STAGING_BINDIR}
-
- # When building media, the syslinux binary isn't nearly as useful
- # as the DOS data files, so we copy those into a special location
- # for usage during a image build stage
-
- install -d ${STAGING_DATADIR}/syslinux
- install -m 0644 ${STAGE_TEMP}/usr/lib/syslinux/isolinux.bin ${STAGING_DATADIR}/syslinux/isolinux.bin
- install -m 644 ${S}/ldlinux.sys ${STAGING_DATADIR}/syslinux/ldlinux.sys
- install -m 644 ${S}/ldlinux.bss ${STAGING_DATADIR}/syslinux/ldlinux.bss
-}
diff --git a/meta/packages/syslinux/syslinux_3.36.bb b/meta/packages/syslinux/syslinux_3.36.bb
new file mode 100644
index 0000000000..4458c1f234
--- /dev/null
+++ b/meta/packages/syslinux/syslinux_3.36.bb
@@ -0,0 +1,14 @@
+DESCRIPTION="A multi-purpose linux bootloader"
+HOMEPAGE="http://syslinux.zytor.com/"
+LICENSE="GPL"
+SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/boot/syslinux/syslinux-${PV}.tar.bz2 "
+
+# If you really want to run syslinux, you need mtools. We just want the
+# ldlinux.* stuff for now, so skip mtools-native
+DEPENDS="nasm-native"
+
+S="${WORKDIR}/syslinux-${PV}"
+
+do_configure() {
+ sed -i ${S}/Makefile ${S}/*/Makefile -e 's/\(CC[\t ]*\)=/\1?=/'
+}