aboutsummaryrefslogtreecommitdiff
path: root/boot/syslinux
Commit message (Collapse)AuthorAgeFilesLines
* boot/syslinux: fix gcc-10.x compileGravatar Peter Seiderer2021-03-202-0/+168
| | | | | | | | | | | | Add two patches ([1], [2]) taken from the fedora syslinux package ([3]) to fix compile/linking with gcc-10.x compiler. [1] https://src.fedoraproject.org/rpms/syslinux/raw/rawhide/f/0005-Workaround-multiple-definition-of-symbol-errors.patch [2] https://src.fedoraproject.org/rpms/syslinux/raw/rawhide/f/0006-Replace-builtin-strlen-that-appears-to-get-optimized.patch [3] https://src.fedoraproject.org/rpms/syslinux/tree/rawhide Signed-off-by: Peter Seiderer <ps.report@gmx.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* toolchain: drop old BR2_TOOLCHAIN_HAS_BINUTILS_BUG_* optionsGravatar Thomas Petazzoni2021-03-151-1/+0
| | | | | | | | | | | | | The BR2_TOOLCHAIN_HAS_BINUTILS_BUG_19615 and BR2_TOOLCHAIN_HAS_BINUTILS_BUG_20006 options were last selected by the BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64 toolchain, but this toolchain has been removed as part of commit d87e114a8ffacdc71f853e7c4ea76fd3c6958d22 in August 2020. It's time to get rid of those two options that are never enabled. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
* boot/syslinux: fix build of efi part with gnu-efi 3.0.10Gravatar Thomas Petazzoni2020-04-041-0/+60
| | | | | | | | | | | | | | | | | | | | | | | | The following defconfig: BR2_x86_i686=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y BR2_TOOLCHAIN_EXTERNAL_URL="http://toolchains.bootlin.com/downloads/releases/toolchains/x86-i686/tarballs/x86-i686--glibc--bleeding-edge-2018.11-1.tar.bz2" BR2_TOOLCHAIN_EXTERNAL_GCC_8=y BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_14=y BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y BR2_TOOLCHAIN_EXTERNAL_CXX=y BR2_INIT_NONE=y BR2_TARGET_SYSLINUX=y BR2_TARGET_SYSLINUX_EFI=y fails to build due to missing setjmp/longjmp definitions, which is a consequence of a change introduced between gnu-efi 3.0.9 and 3.0.10. This build failure is fixed by adding another syslinux paytch, which has been submitted upstream. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* package/s*: add license file hashesGravatar Heiko Thiery2020-02-031-1/+3
| | | | | Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
* boot/syslinux: fix build with binutils note gnu property sectionGravatar Christian Stewart2019-04-071-0/+47
| | | | | | | | | | | | | | | | | | | | | Fixes #11756 This fixes the following build error with newer binutils: objcopy -O binary mbr.elf mbr.bin perl /build/syslinux/src/syslinux/mbr/checksize.pl mbr.bin mbr.bin: too big (452 > 440) Corresponding bug reports: - https://bugs.archlinux.org/task/60405 - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=906414 Strip the .note.gnu.property in the linker scripts for the MBRs. Signed-off-by: Christian Stewart <christian@paral.in> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: fix build with EFI supportGravatar Carlos Santos2019-02-261-0/+45
| | | | | | | | | Commit 1a437fd22f bumped gnu-efi to version 3.0.9. This breaks the build of syslinux with EFI support due to multiple definitions of 'memset' and 'memcpy'. Backport a patch already applied upstream to fix the problem. Signed-off-by: Carlos Santos <casantos@datacom.com.br> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package/gnu-efi: introduce BR2_PACKAGE_GNU_EFI_ARCH_SUPPORTS optionGravatar Thomas Petazzoni2019-01-121-0/+1
| | | | | | | | | | This will be used in packages that depend on gnu-efi, and we take this opportunity to propagate this dependency where it was missing in gummiboot and syslinux. In practice, it was not a problem because gummiboot and syslinux are only available on i386 and x86-64, which is a subset of the architectures supported by gnu-efi. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* boot/syslinux: fix build with glibc 2.28+Gravatar Alexander Sverdlin2018-11-191-0/+34
| | | | | | | | | | | When building with glibc 2.28+, the "major", "minor" and "makedev" functions are defined in "sys/sysmacros.h". This commit backports upstream commit 1a74985b2a404639b08882c57f3147229605dfd5 to fix the build with glibc 2.28. Link: https://www.syslinux.org/wiki/index.php?title=Building Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* syslinux: use the host compiler to build extlinuxGravatar Carlos Santos2018-04-011-0/+53
| | | | | | | | Like the utilities, it is meant to run on the host machine, hence must be built using the host toolchain. Signed-off-by: Carlos Santos <casantos@datacom.ind.br> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* */Config.in*: remove consecutive empty linesGravatar Ricardo Martincoski2018-04-011-1/+0
| | | | | Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* boot/*/*.mk: fix code styleGravatar Ricardo Martincoski2018-04-011-1/+1
| | | | | | | | Use only one space before backslash. Indent with tabs. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* boot/syslinux: fix i386 bios build with recent binutilsGravatar Arnout Vandecappelle2017-08-162-0/+917
| | | | | | | | | | | | | | | | | | | | | | | | | When we use the cross-compiler to build syslinux with a recent binutils version, it fails with: /builds/arnout/buildroot/output/host/bin/i586-buildroot-linux-uclibc-ld -Bsymbolic -pie -E --hash-style=gnu -T /builds/arnout/buildroot/output/build/syslinux-6.03/core/i386/syslinux.ld -M -o ldlinux.elf ldlinux.o \ --start-group libcom32.a --whole-archive /builds/arnout/buildroot/output/build/syslinux-6.03/bios/com32/lib/libcom32core.a libldlinux.a --end-group -N --no-omagic \ > ldlinux.map /builds/arnout/buildroot/output/host/bin/i586-buildroot-linux-uclibc-ld: ldlinux.elf: Not enough room for program headers, try linking with -N /builds/arnout/buildroot/output/host/bin/i586-buildroot-linux-uclibc-ld: final link failed: Bad value /builds/arnout/buildroot/output/build/syslinux-6.03/core/Makefile:167: recipe for target 'ldlinux.elf' failed Backport an upstream patch that reorganises the i386 bios build by removing some symbols and making others hidden. To simplify the backport, an additional patch that also touches the link script is also included - it anyway looks like that patch could be relevant as well. Partially fixes: https://gitlab.com/arnout/buildroot/-/jobs/28979377 Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* boot/syslinux: renumber patchesGravatar Arnout Vandecappelle2017-08-166-10/+10
| | | | | | | | Also the last two are regenerated, their context has changed due to the patches that have been removed earlier. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Globally replace $(HOST_DIR)/usr/share with $(HOST_DIR)/shareGravatar Arnout Vandecappelle2017-07-051-1/+1
| | | | | | | | | | | Since things are no longer installed in $(HOST_DIR)/usr, the callers should also not refer to it. This is a mechanical change with git grep -l '$(HOST_DIR)/usr/share' | xargs sed -i 's%$(HOST_DIR)/usr/share%$(HOST_DIR)/share%g' Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Globally replace $(HOST_DIR)/usr/bin with $(HOST_DIR)/binGravatar Arnout Vandecappelle2017-07-051-2/+2
| | | | | | | | | | | Since things are no longer installed in $(HOST_DIR)/usr, the callers should also not refer to it. This is a mechanical change with git grep -l '$(HOST_DIR)/usr/bin' | xargs sed -i 's%$(HOST_DIR)/usr/bin%$(HOST_DIR)/bin%g' Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: drop patch 0003, not needed after gnu-efi updateGravatar Benoît Allard2017-07-041-35/+0
| | | | | Signed-off-by: Benoît Allard <benoit.allard@greenbone.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* boot/syslinux: disable syslinux legacy-BIOS for broken toolchainsGravatar Romain Naour2017-07-041-0/+1
| | | | | | | | | | | | | | | | | | Since [1] syslinux is built with the target toolchain in order to properly build with gnu-efi package. But toolchains built with binutils 2.26 break the syslinux legacy-BIOS build as reported at [2], due to binutils bug #19615. Thanks to Benoît Allard for the investigation and the link to the binutils bug [3]. [1] 6e432d5ecb46959f3c27dbbca48e41512bb40a70 [2] http://lists.busybox.net/pipermail/buildroot/2017-July/196253.html [3] https://sourceware.org/bugzilla/show_bug.cgi?id=19615 Signed-off-by: Romain Naour <romain.naour@smile.fr> Cc: Benoît Allard <benoit.allard@greenbone.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* boot/syslinux: drop patch 0008, not needed after gnu-efi updateGravatar Benoît Allard2017-06-301-30/+0
| | | | | | | | | | | Thanks to the bump of gnu-efi from 3.0.5 to 3.0.6, patch 0008 in the syslinux package is no longer needed. More specifically, it's commit bf07e8141777e5a2d67ec8447084215224bdad4b in upstream gnu-efi that fixed the underlying issue. Signed-off-by: Benoît Allard <benoit.allard@greenbone.net> [Thomas: add better commit log] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: Add patch to build efi/wrapper with the host toolchainGravatar Benoît Allard2017-06-121-0/+32
| | | | | | | | The 'wrapper' tool built by syslinux is executed on the build machine, so it should be built with CC_FOR_BUILD. Signed-off-by: Benoît Allard <benoit.allard@greenbone.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: add patches to build with the latest gnu-efi releaseGravatar Benoît Allard2017-06-113-0/+104
| | | | | Signed-off-by: Benoît Allard <benoit.allard@greenbone.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: add missing dependency on host-util-linuxGravatar Thomas Petazzoni2017-06-111-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | If util-linux is not installed system-wide on the host, the build fails with: /usr/bin/gcc -Wp,-MT,isohybrid.o,-MMD,./.isohybrid.o.d -O2 -I/home/thomas/projets/buildroot/output/host/usr/include -W -Wall -Wstrict-prototypes -Os -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 -I/home/thomas/projets/buildroot/output/build/syslinux-6.03/utils -c -o isohybrid.o /home/thomas/projets/buildroot/output/build/syslinux-6.03/utils/isohybrid.c /home/thomas/projets/buildroot/output/build/syslinux-6.03/utils/isohybrid.c:40:23: fatal error: uuid/uuid.h: No such file or directory #include <uuid/uuid.h> ^ compilation terminated. Therefore, this commit adds a dependency on host-util-linux, which will ensure that libuuid is available. The resulting isohybrid tool is really installed, and linked with libuuid: $ readelf -d output/host/usr/bin/isohybrid Dynamic section at offset 0x3e00 contains 26 entries: Tag Type Name/Value 0x0000000000000001 (NEEDED) Shared library: [libuuid.so.1] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] 0x000000000000000f (RPATH) Library rpath: [/home/thomas/projets/buildroot/output/host/usr/lib] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: build with the target toolchainGravatar Benoît Allard2017-04-086-8/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | Until now, the host toolchain was used to build syslinux, as it was not possible to build a 32-bit syslinux with a x86-64 toolchain. However, syslinux requires gnu-efi, and gnu-efi is built using the target toolchain. Mixing different toolchains doesn't work well, so this commit changes the syslinux package to use the target toolchain for syslinux as well. This is made possible by patches 0003-Fix-ldlinux.elf-Not-enough-room-for-program-headers-.patch and 0004-memdisk-Force-ld-output-format-to-32-bits.patch. Since syslinux also contains some utilities that have to run on the host, those have to continue being built with the host toolchain, which requires patch 0005-utils-Use-the-host-toolchain-to-build.patch. Patch 0006-lzo-Use-the-host-toolchain-for-prepcore.patch is about building prepcore, another utility with the host toolchain as it is required at build-time. This was tested using a Buildroot's built x86_64 toolchain, and checked that the output binaries are 32-bits. It was tested as well if they actually boot on hardware. Signed-off-by: Benoît Allard <benoit.allard@greenbone.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: use Git formatted patchesGravatar Thomas Petazzoni2017-04-053-34/+48
| | | | | | | | In preparation for the addition of more patches to the syslinux package, reformat the two existing patches as proper Git formatted patches. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* boot, linux, package: use SPDX short identifier for GPLv2/GPLv2+Gravatar Rahul Bedarkar2017-04-011-1/+1
| | | | | | | | | | | We want to use SPDX identifier for license strings as much as possible. SPDX short identifier for GPLv2/GPLv2+ is GPL-2.0/GPL-2.0+. This change is done by using following command. find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/\<GPLv2\>/GPL-2.0/g' Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: add patch to disable pieGravatar Ryan Coe2016-09-121-0/+22
| | | | | | | | | | | Ubuntu 16.10 has pie enable by default. This causes a build failure with syslinux. https://bugs.launchpad.net/ubuntu/+source/syslinux/+bug/1579023 Signed-off-by: Ryan Coe <bluemrp9@gmail.com> [Thomas: improve patch description.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: fix boot hang when host-gcc is 5.3Gravatar Frank Hunleth2016-05-011-0/+76
| | | | | | | | | | | | Syslinux uses the host version of gcc to build to bootloader. On systems with gcc 5.3, this results in a bootloader that hangs. This issue has been addressed in upstream syslinux, but an official release has not been made yet. This commit adds the upstream patch to fix the issue. Most likely fixes bug #8866. Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: Allow to build multiple flavors simultaneouslyGravatar Benoît Allard2016-04-182-10/+11
| | | | | | | | | | | This becomes handy when building hybrid images that needs to be able to boot in MBR and GPT mode. Signed-off-by: Benoît Allard <benoit.allard@greenbone.net> Tested-by: Matt Weber <matt@thewebers.ws> Reviewed-by: Matt Weber <matt@thewebers.ws> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* boot/syslinux: bump version to 6.03Gravatar Romain Naour2015-03-043-43/+14
| | | | | | | | | | | | | | | | | | | | | | Since 6.03 syslinux release, the gnu-efi sources are bundled whith syslinux. We need to force the build system to use the Buildroot's gnu-efi package. Remove the patch for find-gnu-efi.sh script which was removed, as well as the SYSROOT variable from the BUILD_CMDS, which is no longer needed. There are still some parallel build issues, so MAKE1 can't be removed for now. Add a hash file. Fix indentation. [Thomas: fix minor typos in a new comment in the .mk file.] Signed-off-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: add hashGravatar Gustavo Zacarias2015-03-031-0/+2
| | | | | Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* .mk files: bulk aligment and whitespace cleanup of assignmentsGravatar Thomas De Schampheleire2014-10-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Buildroot coding style defines one space around make assignments and does not align the assignment symbols. This patch does a bulk fix of offending packages. The package infrastructures (or more in general assignments to calculated variable names, like $(2)_FOO) are not touched. Alignment of line continuation characters (\) is kept as-is. The sed command used to do this replacement is: find * -name "*.mk" | xargs sed -i \ -e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*$#\1 \2#' -e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*\([^\\]\+\)$#\1 \2 \3#' -e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*\([^\\ \t]\+\s*\\\)\s*$#\1 \2 \3#' -e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\(\s*\\\)#\1 \2\3#' Brief explanation of this command: ^\([A-Z0-9a-z_]\+\) a regular variable at the beginning of the line \([?:+]\?=\) any assignment character =, :=, ?=, += \([^\\]\+\) any string not containing a line continuation \([^\\ \t]\+\s*\\\) string, optional whitespace, followed by a line continuation character \(\s*\\\) optional whitespace, followed by a line continuation character Hence, the first subexpression handles empty assignments, the second handles regular assignments, the third handles regular assignments with line continuation, and the fourth empty assignments with line continuation. This expression was tested on following test text: (initial tab not included) FOO = spaces before FOO = spaces before and after FOO = tab before FOO = tab and spaces before FOO = tab after FOO = tab and spaces after FOO = spaces and tab after FOO = \ FOO = bar \ FOO = bar space \ FOO = \ GENIMAGE_DEPENDENCIES = host-pkgconf libconfuse FOO += spaces before FOO ?= spaces before and after FOO := FOO = FOO = FOO = FOO = $(MAKE1) CROSS_COMPILE=$(TARGET_CROSS) -C AT91BOOTSTRAP3_DEFCONFIG = \ AXEL_DISABLE_I18N=--i18n=0 After this bulk change, following manual fixups were done: - fix line continuation alignment in cegui06 and spice (the sed expression leaves the number of whitespace between the value and line continuation character intact, but the whitespace before that could have changed, causing misalignment. - qt5base was reverted, as this package uses extensive alignment which actually makes the code more readable. Finally, the end result was manually reviewed. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Cc: Yann E. Morin <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package: remove the trailing slash sign from <PKG>_SITE variableGravatar Jerzy Grzegorek2014-07-311-1/+1
| | | | | | | | | | | | Since the trailing slash is stripped from $($(PKG)_SITE) by pkg-generic.mk: $(call DOWNLOAD,$($(PKG)_SITE:/=)/$($(PKG)_SOURCE)) so it is redundant. This patch removes it from $(PKG)_SITE variable for BR consistency. Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* boot/syslinux: install in a sub-dir of $(BINARIES_DIR)Gravatar Yann E. MORIN2014-05-031-2/+2
| | | | | | | | | | | | Since syslinux can now install quite a number of files, install them in a sub-directory of $(BINARIES_DIR) for clarity. It also aligns it to rpi-firmware, grub2, gummiboot, that install all of their files in a sub-dir of $(BINARIES_DIR), too. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: add option to install c32 modulesGravatar Yann E. MORIN2014-05-032-0/+19
| | | | | | | [Peter: reworded comment slightly] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: add an option to install a MBR blobGravatar Yann E. MORIN2014-05-032-0/+9
| | | | | | | | | | | | | This MBR blob will look for an active partition, and boot the bootcode present in that partition. This can be used to boot an extlinux-prepared partition. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Lundquist <lists@zelow.no> Cc: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: add option to install the EFI imageGravatar Yann E. MORIN2014-05-033-3/+66
| | | | | | | | | | | | | syslinux can now also build an EFI application. If the target is 64-bit, we build the 64-bit EFI app, otherwise we build the 32-bit EFI app. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: bump versionGravatar Yann E. MORIN2014-05-031-8/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This new version has a very, very weird build system. There are different images that syslinux can now build: - the plain legacy-bios images we already supported previously - two new EFI32 and EFI64 applications To build one or the other, the Makefile accepts one or more of: make (bios|efi32|efi64) Specify all of them, and it builds all. Specify 'install', and it installs all of them, as one may expect. Still a regular behaviour, is to build only a subset (down to one): make bios <-- builds just the legacy-bios images make efi32 bios <-- builds just the legacy-bios and efi32 images Where it gets weird is the install procedure. Can you guess how it's done? Hint: the syslinux guys have invented the multiple-argument parsing in pure Makefiles. To build then install only the bios images, one would do: make bios make bios install Yep, that's it. make bios install. Two arguments, one action. That makes for some funky workarounds in our install procedure... 'bios' is the only image we support so far, with efi to come in a future patch. Using MAKE1, as there are issues with highly-parallel builds. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: move comments out of define-blockGravatar Yann E. MORIN2014-05-031-2/+2
| | | | | | | | | | The comments are not really part of the command we want to execute, so move them out of the define-block. This also cleans up the output, as they will no longer appear. Reported-by: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: rewrite options promptsGravatar Yann E. MORIN2014-05-031-3/+9
| | | | | | | | | | | | | Rewrite the options prompt in preparation to adding a new type of image to install. Add help entries to each option, too. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: make the sub-options a choiceGravatar Yann E. MORIN2014-05-031-2/+5
| | | | | | | | | | | | | | | | | | | Currently it is possible to choose either, both or none of the pxelinux or isolinux images. But it does not make sense to build none or both, as we need at least one to boot the target, and the target can not use more than one. So, we need one and only one image to be selected at once. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Lundquist <thomasez@redpill-linpro.com> Cc: Frank Hunleth <fhunleth@troodon-software.com> Cc: Arnout Vandecappelle <arnout@mind.be> Tested-by: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: prepare to install non-core imagesGravatar Yann E. MORIN2014-05-031-3/+3
| | | | | | | | | | | | | | | | | | Currently, we hard-code the path to the images we install, and expect them to be from the core/ sub-dir. Not all images we can install are located in core/. For example, the efi boot images (to come later) are not located in core/. Prepare the upcoming installation of extlinux by not expecting images be in core/. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Lundquist <lists@zelow.no> Cc: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* boot/syslinux: needs an ia32-capable compilerGravatar Yann E. MORIN2014-05-031-0/+1
| | | | | | | | | | | | The pxelinux and isolionux images are 32-bit binaries, so we need a compiler that can generate them (ie. a compiler that understands -m32). Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Frank Hunleth <fhunleth@troodon-software.com> Cc: Arnout Vandecappelle <arnout@mind.be> Tested-by: Frank Hunleth <fhunleth@troodon-software.com> Tested-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* syslinux: remove host variantGravatar Thomas Petazzoni2014-04-201-10/+0
| | | | | | | | | | | The host variant of syslinux wasn't exposed anywhere, so the only way to use it was to know that a "host-syslinux" target existed. Moreover, thanks to commit 8e0d4118982ae5a29e462f0a476d82772459cf5c ('syslinux: install helper programs to the host'), the host utilities of syslinux are automatically installed to $(HOST_DIR) when building the target syslinux. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* syslinux: install helper programs to the hostGravatar Frank Hunleth2014-04-201-1/+6
| | | | | | | | | | Even though syslinux is built for the target, it does create helper programs intended to be run on the host such as syslinux and extlinux. This change installs these helper programs to the host so that they may be called by post image creation scripts. Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* Config.in files: use if/endif instead of 'depends on' for main symbolGravatar Thomas De Schampheleire2013-12-251-2/+4
| | | | | | | | | | | | | | | | | | | | | | | In the Config.in file of package foo, it often happens that there are other symbols besides BR2_PACKAGE_FOO. Typically, these symbols only make sense when foo itself is enabled. There are two ways to express this: with depends on BR2_PACKAGE_FOO in each extra symbol, or with if BR2_PACKAGE_FOO ... endif around the entire set of extra symbols. The if/endif approach avoids the repetition of 'depends on' statements on multiple symbols, so this is clearly preferred. But even when there is only one extra symbol, if/endif is a more logical choice: - it is future-proof for when extra symbols are added - it allows to have just one strategy instead of two (less confusion) This patch modifies the Config.in files accordingly. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* packages: remove package clean commandsGravatar Thomas De Schampheleire2013-12-081-4/+0
| | | | | Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* syslinux: bump to version 4.07Gravatar Romain Naour2013-09-111-1/+1
| | | | | Signed-off-by: Romain Naour <romain.naour@openwide.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Normalize separator size to 80Gravatar Jerzy Grzegorek2013-06-071-2/+2
| | | | | Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* syslinux: bump to version 4.06Gravatar Daniel Price2013-03-242-16/+1
| | | | | | | Signed-off-by: Daniel Price <daniel.price@gmail.com> Tested-by: Will Moore <will.moore@beraninstruments.com> Tested-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* syslinux: add license informationGravatar Simon Dawson2012-08-211-0/+3
| | | | | Signed-off-by: Simon Dawson <spdawson@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
* all packages: rename XXXTARGETS to xxx-packageGravatar Arnout Vandecappelle (Essensium/Mind)2012-07-171-1/+1
| | | | | | | | | | | | | Also remove the redundant $(call ...). This is a purely mechanical change, performed with find package linux toolchain boot -name \*.mk | \ xargs sed -i -e 's/$(eval $(call GENTARGETS))/$(eval $(generic-package))/' \ -e 's/$(eval $(call AUTOTARGETS))/$(eval $(autotools-package))/' \ -e 's/$(eval $(call CMAKETARGETS))/$(eval $(cmake-package))/' Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>