diff options
Diffstat (limited to 'meta/recipes-devtools/syslinux')
-rw-r--r-- | meta/recipes-devtools/syslinux/files/cross-build.patch | 64 | ||||
-rw-r--r-- | meta/recipes-devtools/syslinux/syslinux_3.86.bb | 46 |
2 files changed, 110 insertions, 0 deletions
diff --git a/meta/recipes-devtools/syslinux/files/cross-build.patch b/meta/recipes-devtools/syslinux/files/cross-build.patch new file mode 100644 index 0000000000..c90c7afbaf --- /dev/null +++ b/meta/recipes-devtools/syslinux/files/cross-build.patch | |||
@@ -0,0 +1,64 @@ | |||
1 | Use ?= for Makefile variables to use poky environment variables. | ||
2 | Original method to sed s/CC =/CC ?=/ is not applicable anymore | ||
3 | because of the Makefile changes. | ||
4 | |||
5 | against 3.86 | ||
6 | |||
7 | 06/28/2010 - qhe | ||
8 | |||
9 | also AUXDIR stays in $(LIBDIR)/syslinux rather than $(DATADIR)/syslinux | ||
10 | |||
11 | 07/08/2010 - qhe | ||
12 | |||
13 | --- | ||
14 | diff --git a/MCONFIG b/MCONFIG | ||
15 | index e9c16d3..4d49f33 100644 | ||
16 | --- a/MCONFIG | ||
17 | +++ b/MCONFIG | ||
18 | @@ -18,13 +18,13 @@ | ||
19 | MAKEFLAGS += -r | ||
20 | MAKE += -r | ||
21 | |||
22 | -BINDIR = /usr/bin | ||
23 | -SBINDIR = /sbin | ||
24 | -LIBDIR = /usr/lib | ||
25 | -DATADIR = /usr/share | ||
26 | -AUXDIR = $(DATADIR)/syslinux | ||
27 | -MANDIR = /usr/man | ||
28 | -INCDIR = /usr/include | ||
29 | +BINDIR ?= /usr/bin | ||
30 | +SBINDIR ?= /sbin | ||
31 | +LIBDIR ?= /usr/lib | ||
32 | +DATADIR ?= /usr/share | ||
33 | +AUXDIR = $(LIBDIR)/syslinux | ||
34 | +MANDIR ?= /usr/man | ||
35 | +INCDIR ?= /usr/include | ||
36 | TFTPBOOT = /tftpboot | ||
37 | COM32DIR = $(AUXDIR)/com32 | ||
38 | |||
39 | @@ -38,18 +38,18 @@ PERL = perl | ||
40 | |||
41 | CHMOD = chmod | ||
42 | |||
43 | -CC = gcc | ||
44 | +CC ?= gcc | ||
45 | gcc_ok = $(shell tmpf=gcc_ok.$$$$.tmp; \ | ||
46 | if $(CC) $(1) -c $(topdir)/dummy.c -o $$tmpf 2>/dev/null ; \ | ||
47 | then echo '$(1)'; else echo '$(2)'; fi; \ | ||
48 | rm -f $$tmpf) | ||
49 | |||
50 | -LD = ld | ||
51 | -OBJDUMP = objdump | ||
52 | -OBJCOPY = objcopy | ||
53 | -AR = ar | ||
54 | -NM = nm | ||
55 | -RANLIB = ranlib | ||
56 | +LD ?= ld | ||
57 | +OBJDUMP ?= objdump | ||
58 | +OBJCOPY ?= objcopy | ||
59 | +AR ?= ar | ||
60 | +NM ?= nm | ||
61 | +RANLIB ?= ranlib | ||
62 | GZIPPROG = gzip | ||
63 | PNGTOPNM = pngtopnm | ||
64 | MCOPY = mcopy | ||
diff --git a/meta/recipes-devtools/syslinux/syslinux_3.86.bb b/meta/recipes-devtools/syslinux/syslinux_3.86.bb new file mode 100644 index 0000000000..5edbd24086 --- /dev/null +++ b/meta/recipes-devtools/syslinux/syslinux_3.86.bb | |||
@@ -0,0 +1,46 @@ | |||
1 | DESCRIPTION = "A multi-purpose linux bootloader" | ||
2 | HOMEPAGE = "http://syslinux.zytor.com/" | ||
3 | LICENSE = "GPLv2+" | ||
4 | LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ | ||
5 | file://README;beginline=28;endline=34;md5=a4607efd4a6392017186d08099e7d546" | ||
6 | |||
7 | # If you really want to run syslinux, you need mtools. We just want the | ||
8 | # ldlinux.* stuff for now, so skip mtools-native | ||
9 | DEPENDS = "nasm-native" | ||
10 | PR = "r1" | ||
11 | |||
12 | SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/boot/syslinux/syslinux-${PV}.tar.bz2 \ | ||
13 | file://cross-build.patch" | ||
14 | |||
15 | COMPATIBLE_HOST = '(x86_64|i.86.*)-(linux|freebsd.*)' | ||
16 | |||
17 | EXTRA_OEMAKE = " \ | ||
18 | BINDIR=${bindir} SBINDIR=${sbindir} LIBDIR=${libdir} \ | ||
19 | DATADIR=${datadir} MANDIR=${mandir} INCDIR=${includedir} \ | ||
20 | " | ||
21 | # syslinux uses $LD for linking, strip `-Wl,' so it can work | ||
22 | export LDFLAGS = "`echo $LDFLAGS | sed 's/-Wl,//g'`" | ||
23 | |||
24 | do_configure() { | ||
25 | # drop win32 targets or build fails | ||
26 | sed -e 's,win32/\S*,,g' -i Makefile | ||
27 | |||
28 | # clean installer executables included in source tarball | ||
29 | oe_runmake clean | ||
30 | } | ||
31 | |||
32 | do_compile() { | ||
33 | # Rebuild only the installer; keep precompiled bootloaders | ||
34 | # as per author's request (doc/distrib.txt) | ||
35 | oe_runmake CC="${CC}" installer | ||
36 | } | ||
37 | |||
38 | do_install() { | ||
39 | oe_runmake install INSTALLROOT="${D}" | ||
40 | |||
41 | install -d ${D}${libdir}/syslinux/ | ||
42 | install -m 644 ${S}/core/ldlinux.sys ${D}${libdir}/syslinux/ | ||
43 | install -m 644 ${S}/core/ldlinux.bss ${D}${libdir}/syslinux/ | ||
44 | } | ||
45 | |||
46 | BBCLASSEXTEND = "native" | ||