diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-06-25 18:40:23 +0200 |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-07-17 18:18:05 +0200 |
commit | c417fbce98722ad7e384caa8ba6f2e7c5f8672d9 (patch) | |
tree | 4fb1d144fccb0ea5c70c2e01029d76fd853d7910 /scripts/bin2c.c | |
parent | Coccinelle: add atomic_as_refcounter script (diff) | |
download | linux-c417fbce98722ad7e384caa8ba6f2e7c5f8672d9.tar.xz linux-c417fbce98722ad7e384caa8ba6f2e7c5f8672d9.zip |
kbuild: move bin2c back to scripts/ from scripts/basic/
Commit 8370edea81e3 ("bin2c: move bin2c in scripts/basic") moved bin2c
to the scripts/basic/ directory, incorrectly stating "Kexec wants to
use bin2c and it wants to use it really early in the build process.
See arch/x86/purgatory/ code in later patches."
Commit bdab125c9301 ("Revert "kexec/purgatory: Add clean-up for
purgatory directory"") and commit d6605b6bbee8 ("x86/build: Remove
unnecessary preparation for purgatory") removed the redundant
purgatory build magic entirely.
That means that the move of bin2c was unnecessary in the first place.
fixdep is the only host program that deserves to sit in the
scripts/basic/ directory.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'scripts/bin2c.c')
-rw-r--r-- | scripts/bin2c.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/scripts/bin2c.c b/scripts/bin2c.c new file mode 100644 index 000000000000..c3d7eef3ad06 --- /dev/null +++ b/scripts/bin2c.c @@ -0,0 +1,36 @@ +/* + * Unloved program to convert a binary on stdin to a C include on stdout + * + * Jan 1999 Matt Mackall <mpm@selenic.com> + * + * This software may be used and distributed according to the terms + * of the GNU General Public License, incorporated herein by reference. + */ + +#include <stdio.h> + +int main(int argc, char *argv[]) +{ + int ch, total = 0; + + if (argc > 1) + printf("const char %s[] %s=\n", + argv[1], argc > 2 ? argv[2] : ""); + + do { + printf("\t\""); + while ((ch = getchar()) != EOF) { + total++; + printf("\\x%02x", ch); + if (total % 16 == 0) + break; + } + printf("\"\n"); + } while (ch != EOF); + + if (argc > 1) + printf("\t;\n\n#include <linux/types.h>\n\nconst size_t %s_size = %d;\n", + argv[1], total); + + return 0; +} |