Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 1 | #!/bin/sh |
| 2 | # |
| 3 | # Copyright (C) 2002 Khalid Aziz <khalid_aziz at hp.com> |
| 4 | # Copyright (C) 2002 Randy Dunlap <rddunlap at osdl.org> |
| 5 | # Copyright (C) 2002 Al Stone <ahs3 at fc.hp.com> |
| 6 | # Copyright (C) 2002 Hewlett-Packard Company |
| 7 | # |
| 8 | # This program is free software; you can redistribute it and/or modify |
| 9 | # it under the terms of the GNU General Public License as published by |
| 10 | # the Free Software Foundation; either version 2 of the License, or |
| 11 | # (at your option) any later version. |
| 12 | # |
| 13 | # This program is distributed in the hope that it will be useful, |
| 14 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 15 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 16 | # GNU General Public License for more details. |
| 17 | # |
| 18 | # You should have received a copy of the GNU General Public License |
| 19 | # along with this program; if not, write to the Free Software |
| 20 | # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
| 21 | # |
| 22 | # Busybox version by Matteo Croce <3297627799 at wind.it> |
| 23 | # |
Denis Vlasenko | 45854b5 | 2007-02-04 02:38:21 +0000 | [diff] [blame] | 24 | # Rules to generate bbconfigopts.h from .config: |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 25 | # - Retain lines that begin with "CONFIG_" |
| 26 | # - Retain lines that begin with "# CONFIG_" |
| 27 | # - lines that use double-quotes must \\-escape-quote them |
| 28 | |
Denys Vlasenko | 9ce07e7 | 2010-08-29 14:36:11 +0200 | [diff] [blame] | 29 | config=.config |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 30 | |
Denys Vlasenko | ed2af2e | 2022-01-04 14:32:41 +0100 | [diff] [blame] | 31 | od -v -b </dev/null >/dev/null |
| 32 | if test $? != 0; then |
| 33 | echo 'od tool is not installed or cannot accept "-v -b" options' |
| 34 | exit 1 |
| 35 | fi |
| 36 | bzip2 </dev/null >/dev/null |
| 37 | if test $? != 0; then |
| 38 | echo 'bzip2 is not installed' |
| 39 | exit 1 |
| 40 | fi |
| 41 | |
Denys Vlasenko | 9ce07e7 | 2010-08-29 14:36:11 +0200 | [diff] [blame] | 42 | { |
Denis Vlasenko | 45854b5 | 2007-02-04 02:38:21 +0000 | [diff] [blame] | 43 | echo "\ |
| 44 | #ifndef _BBCONFIGOPTS_H |
| 45 | #define _BBCONFIGOPTS_H |
| 46 | /* |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 47 | * busybox configuration settings. |
| 48 | * |
Denys Vlasenko | 0ef64bd | 2010-08-16 20:14:46 +0200 | [diff] [blame] | 49 | * Licensed under GPLv2 or later, see file LICENSE in this source tree. |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 50 | * |
Denis Vlasenko | a5c5ae0 | 2007-02-03 12:50:41 +0000 | [diff] [blame] | 51 | * This file is generated automatically by scripts/mkconfigs. |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 52 | * Do not edit. |
Denis Vlasenko | 45854b5 | 2007-02-04 02:38:21 +0000 | [diff] [blame] | 53 | */ |
Denys Vlasenko | 9ce07e7 | 2010-08-29 14:36:11 +0200 | [diff] [blame] | 54 | static const char bbconfig_config[] ALIGN1 =" |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 55 | |
Denys Vlasenko | e7212a4 | 2011-02-09 01:33:41 +0100 | [diff] [blame] | 56 | grep -e '^# CONFIG_' -e '^CONFIG_' "$config" \ |
Denys Vlasenko | 9ce07e7 | 2010-08-29 14:36:11 +0200 | [diff] [blame] | 57 | | sed -e 's/\"/\\\"/g' -e 's/^/"/' -e 's/$/\\n"/' |
Denis Vlasenko | 45854b5 | 2007-02-04 02:38:21 +0000 | [diff] [blame] | 58 | |
Denis Vlasenko | 7d219aa | 2006-10-05 10:17:08 +0000 | [diff] [blame] | 59 | echo ";" |
Denys Vlasenko | 9ce07e7 | 2010-08-29 14:36:11 +0200 | [diff] [blame] | 60 | echo "#endif" |
| 61 | } >"$1" |
| 62 | |
| 63 | { |
| 64 | echo "\ |
| 65 | #ifndef _BBCONFIGOPTS_BZ2_H |
| 66 | #define _BBCONFIGOPTS_BZ2_H |
| 67 | /* |
| 68 | * busybox configuration settings. |
| 69 | * |
| 70 | * Licensed under GPLv2 or later, see file LICENSE in this source tree. |
| 71 | * |
| 72 | * This file is generated automatically by scripts/mkconfigs. |
| 73 | * Do not edit. |
| 74 | */ |
| 75 | static const char bbconfig_config_bz2[] ALIGN1 = {" |
| 76 | |
Denys Vlasenko | 08caf09 | 2011-04-16 19:45:33 +0200 | [diff] [blame] | 77 | grep -e '^# CONFIG_' -e '^CONFIG_' "$config" \ |
Denys Vlasenko | d493e93 | 2010-08-29 14:39:45 +0200 | [diff] [blame] | 78 | | bzip2 -1 | dd bs=2 skip=1 2>/dev/null \ |
Denys Vlasenko | 195c436 | 2013-11-26 14:56:29 +0100 | [diff] [blame] | 79 | | od -v -b \ |
Denys Vlasenko | 9ce07e7 | 2010-08-29 14:36:11 +0200 | [diff] [blame] | 80 | | sed -e 's/^[^ ]*//' \ |
| 81 | -e 's/ //g' \ |
| 82 | -e '/^$/d' \ |
Denys Vlasenko | 195c436 | 2013-11-26 14:56:29 +0100 | [diff] [blame] | 83 | -e 's/\(...\)/0\1,/g' |
Denys Vlasenko | 9ce07e7 | 2010-08-29 14:36:11 +0200 | [diff] [blame] | 84 | |
| 85 | echo "};" |
| 86 | echo "#endif" |
| 87 | } >"$2" |