Go to file
Yann E. MORIN 1924159814 support/apply-patches: bail-out on duplicate patch basenames
Patches we save can come from various locations:
  - bundled with Buildroot
  - downloaded
  - from one or more global-patch-dir

It is possible that two patches lying into different locations have the
same basename, like so (first is bundled, second is from an hypothetical
global-patch-dir):
    package/foo/0001-fix-Makefile.patch
    /path/to/my/patches/foo/0001-fix-Makefile.patch

In that case, when running legal-info, we'd save only the second patch,
overwriting the first. That would be problematic, because:

  - either the second patch depends on the first, and thus would no longer
    apply (this is easy to detect, though),

  - or the second patch does not depend on the first, and the compliance
    delivery will not be complete (this is much harder to detect).

We fix that by checking that no two patches have the same same basename.
If we find that the basename of the patch to be applied collides with
that of a previously applied patch, we error out and report the duplicate.

The unfortunate side-effect is that existing setups will now break in
that situation, but that's a minor, corner-case issue that is easily
fixed.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Thomas: adjust coding style, fix minor typos in the commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-06-24 16:04:24 +02:00
arch m68k: remove BR2_GCC_TARGET_ARCH 2016-06-07 13:11:59 +02:00
board configs/toradex_apalis_imx6_defconfig: new board 2016-06-15 23:23:41 +02:00
boot barebox: bump to version 2016.06.0 2016-06-23 21:07:17 +02:00
configs configs/toradex_apalis_imx6_defconfig: new board 2016-06-15 23:23:41 +02:00
docs scanpypi: new utility 2016-06-11 16:13:31 +02:00
fs fs: add sha-bang to fakeroot script 2016-06-07 23:13:36 +02:00
linux linux: allow the selection of the architecture's default configuration 2016-06-18 15:05:15 +02:00
package core/legal-info: add package version to license directory 2016-06-24 15:49:38 +02:00
support support/apply-patches: bail-out on duplicate patch basenames 2016-06-24 16:04:24 +02:00
system system: add help entry to "none" init system 2016-05-28 10:58:34 +02:00
toolchain toolchain-external: hook for Codescape toolchain side-by-side layout 2016-06-07 23:41:36 +02:00
.defconfig arch/x86: remove support for i386 2016-04-18 23:38:34 +02:00
.gitignore
CHANGES Update for 2016.05 2016-05-31 23:52:36 +02:00
Config.in Config.in: Add BR2_DEPRECATED_SINCE_2016_08 2016-06-18 15:36:10 +02:00
Config.in.legacy imx-vpuwrap: rename from libfslvpuwrap and bump version to 1.0.65 2016-06-15 22:48:40 +02:00
COPYING COPYING: add exception about patch licensing 2016-02-26 19:50:13 +01:00
Makefile build: fix umask test 2016-06-20 22:48:42 +02:00
Makefile.legacy Makefile.legacy: fix recursive invocation with BUILDROOT_DL_DIR and _CONFIG 2014-02-11 08:14:57 +01:00
README README: add reference to submitting-patches 2016-02-01 19:16:08 +01:00

Buildroot is a simple, efficient and easy-to-use tool to generate embedded
Linux systems through cross-compilation.

The documentation can be found in docs/manual. You can generate a text
document with 'make manual-text' and read output/docs/manual/manual.text.
Online documentation can be found at http://buildroot.org/docs.html

To build and use the buildroot stuff, do the following:

1) run 'make menuconfig'
2) select the target architecture and the packages you wish to compile
3) run 'make'
4) wait while it compiles
5) find the kernel, bootloader, root filesystem, etc. in output/images

You do not need to be root to build or run buildroot.  Have fun!

Buildroot comes with a basic configuration for a number of boards. Run
'make list-defconfigs' to view the list of provided configurations.

Please feed suggestions, bug reports, insults, and bribes back to the
buildroot mailing list: buildroot@buildroot.org
You can also find us on #buildroot on Freenode IRC.

If you would like to contribute patches, please read
https://buildroot.org/manual.html#submitting-patches