package/e2fsprogs: update to 1.42.12, add subpackages for static tune2fs and e2fsck
[openadk.git] / scripts / create-menu
blob8bd7de4b30bdd627ac0a5e5e3594c7d0549542bb
1 #!/usr/bin/env bash
2 # This file is part of the OpenADK project. OpenADK is copyrighted
3 # material, please see the LICENCE file in the top-level directory.
5 topdir=$(readlink -nf $(dirname $0)/.. 2>/dev/null || (cd $(dirname $0)/..; pwd -P))
6 systems=$(grep -h config target/*/systems/*|cut -d " " -f 2)
8 printf "# autogenerated via scripts/create-menu\n" > target/config/Config.in.arch
9 printf "source target/config/Config.in.arch.default\n" >> target/config/Config.in.arch
10 printf "source target/config/Config.in.arch.choice\n" >> target/config/Config.in.arch
11 printf "# autogenerated via scripts/create-menu\n" > target/config/Config.in.system
12 printf "source target/config/Config.in.system.default\n" >> target/config/Config.in.system
13 printf "source target/config/Config.in.system.choice\n" >> target/config/Config.in.system
15 # update appliances
16 if [ -d "$topdir/target/appliances" ];then
17 printf "# autogenerated via scripts/create-menu\n" > $topdir/target/config/Config.in.appliances
18 printf "choice\n" >> $topdir/target/config/Config.in.appliances
19 printf "prompt \"Appliance\"\n\n" >> $topdir/target/config/Config.in.appliances
20 printf "config ADK_CHOOSE_APPLIANCE\n" >> $topdir/target/config/Config.in.appliances
21 printf "\tprompt \"choose an appliance\"\n" >> $topdir/target/config/Config.in.appliances
22 printf "\tboolean\n\n" >> $topdir/target/config/Config.in.appliances
23 cat $topdir/target/appliances/*.appliance >> $topdir/target/config/Config.in.appliances 2>/dev/null
24 printf "\nendchoice\n\n" >> $topdir/target/config/Config.in.appliances
25 printf "menu \"Appliance Options\"\n" >> $topdir/target/config/Config.in.appliances
26 printf "\tvisible if !ADK_CHOOSE_APPLIANCE\n" >> $topdir/target/config/Config.in.appliances
27 cat $topdir/target/appliances/*.options >> $topdir/target/config/Config.in.appliances 2>/dev/null
28 printf "endmenu\n" >> $topdir/target/config/Config.in.appliances
31 # create system default
32 printf "# autogenerated via scripts/create-menu\n" > $topdir/target/config/Config.in.system.default
33 for j in $systems;do
34 system=${j#ADK_TARGET_SYSTEM_}
35 systemu=$(echo $system|tr '[:upper:]' '[:lower:]')
36 printf "config ADK_$systemu\n" >> $topdir/target/config/Config.in.system.default
37 printf "\tboolean\n\n" >> $topdir/target/config/Config.in.system.default
38 done
40 cat >> $topdir/target/config/Config.in.system.default << EOD
41 config ADK_TARGET_SYSTEM
42 string
43 EOD
44 for i in $systems;do
45 system=${i#ADK_TARGET_SYSTEM_}
46 systemu=$(echo $system|tr '[:upper:]' '[:lower:]')
47 system=$(echo $system|tr '[:upper:]_' '[:lower:]-')
48 system=$(echo $system|sed 's#x86-64#x86_64#')
49 printf "\tdefault \"${system}\" if ADK_$systemu\n" >> $topdir/target/config/Config.in.system.default
50 done
52 # create or update systems
53 for i in $(ls $topdir/target/);do
54 if [ -d "$topdir/target/$i/systems" ];then
55 cat $topdir/target/$i/systems/* > $topdir/target/$i/Config.in.systems 2>/dev/null
57 done
59 # create target/$arch/Config.in.arch and target/config/Config.in.system.choice
60 printf "# autogenerated via scripts/create-menu\n" > target/config/Config.in.system.choice
61 printf "# autogenerated via scripts/create-menu\n" > target/config/Config.in.arch.default
62 for arch in $(cat $topdir/target/arch.lst);do
63 ARCH=$(echo $arch | tr '[:lower:]' '[:upper:]')
64 printf "choice\n" > $topdir/target/$arch/Config.in.arch
65 printf "prompt \"Embedded system\"\n" >> $topdir/target/$arch/Config.in.arch
66 printf "depends on ADK_TARGET_ARCH_$ARCH\n" >> $topdir/target/$arch/Config.in.arch
67 printf "source target/$arch/Config.in.systems\n" >> $topdir/target/$arch/Config.in.arch
68 printf "endchoice\n" >> $topdir/target/$arch/Config.in.arch
69 printf "source target/$arch/Config.in.arch\n" >> target/config/Config.in.system.choice
70 printf "config ADK_$arch\n" >> target/config/Config.in.arch.default
71 printf "\tboolean\n\n" >> target/config/Config.in.arch.default
72 done
74 cat >> $topdir/target/config/Config.in.arch.default << EOD
75 config ADK_TARGET_ARCH
76 string
77 EOD
79 for arch in $(cat $topdir/target/arch.lst);do
80 printf "\tdefault \"$arch\" if ADK_$arch\n" >> target/config/Config.in.arch.default
81 done
83 cat > $topdir/target/config/Config.in.arch.choice << EOD
84 # autogenerated via scripts/create-menu
85 choice
86 prompt "Architecture"
88 EOD
90 for arch in $(cat $topdir/target/arch.lst);do
91 ARCH=$(echo $arch | tr '[:lower:]' '[:upper:]')
92 printf "config ADK_TARGET_ARCH_$ARCH\n" >> $topdir/target/config/Config.in.arch.choice
93 printf "\tprompt \"$arch system\"\n" >> $topdir/target/config/Config.in.arch.choice
94 printf "\tboolean\n" >> $topdir/target/config/Config.in.arch.choice
95 printf "\tselect ADK_$arch\n" >> $topdir/target/config/Config.in.arch.choice
96 printf "\thelp\n" >> $topdir/target/config/Config.in.arch.choice
97 printf "\t Support for $ARCH systems.\n\n" >> $topdir/target/config/Config.in.arch.choice
98 done
100 printf "endchoice\n" >> $topdir/target/config/Config.in.arch.choice
101 exit 0