# Konstant gesetzt:
# BEGIN generated by MtdParts

setenv my_rootfs0_num 11
setenv my_rootfs0_name NAND.rootfs0
setenv my_rootfs1_num 12
setenv my_rootfs1_name NAND.rootfs1
setenv my_kernel0_num 7
setenv my_kernel0_name NAND.kernel0
setenv my_kernel1_num 8
setenv my_kernel1_name NAND.kernel1
setenv my_kparams0_num 9
setenv my_kparams0_name NAND.kparams0
setenv my_kparams1_num 10
setenv my_kparams1_name NAND.kparams1

# END generated by MtdParts

setenv my_boot_switch 0

# Wie kann man das zuweisen: setenv my_cur_rootfs_num_tmp setenv my_cur_rootfs_num '${'my_rootfs_num_${my_boot_switch}'}'
# so: setenv tmp setenv my_cur_rootfs_num_tmp setenv my_cur_rootfs_num \'\${\'my_rootfs_num_\${my_boot_switch}\'}\'

# my_assign:
#  Argumente: 
#   my_assign_1: lname
#   my_assign_2: rname
#  Benutzte temporaere Var.:
#   my_assign_t1, my_assign_t2
#  Nachbed.: printenv ${my_assign_1} gibt dasselbe aus wie printenv ${my_assign_2}
setenv my_assign 'setenv my_assign_t1 setenv my_assign_t2 \$${my_assign_2}; run my_assign_t1; setenv ${my_assign_1} ${my_assign_t2}'

########

# my_follow_boot_switch:
#  Nachbed.: 
#   Ausgaben von printenv my_rootfs_num und printenv my_rootfs0_num sind gleich falls printenv my_boot_switch 0 ausgibt, sonst sind printenv my_rootfs_num und printenv my_rootfs1_num gleich.
#   Analog fuer my_rootfs_name, my_kernel_num, my_kernel_name, my_kparams_num, my_kparams_name

#############
# Entwurf mit kurzen variablen:
# ziel: run gen aequivalent zu:
# falls rekursive auswertung moeglich waere:
setenv my_assign_1 my_${subject}_${attr} 
setenv my_assign_2 my_${subject}${my_boot_switch}_${attr}
run my_assign
# also 
setenv gen 'setenv my_assign_1 my_${subject}_${attr}; setenv my_assign_2 my_${subject}${my_boot_switch}_${attr}; run my_assign'

# also gen aufrufen fuer alle Elemente aus {rootfs,kernel,kparams} x {num,name}

# hierzu zunaechst gen_attr fuer festes attr aus {num,name}:
# soll geichbedeutend sein wie:
setenv attr num
run gen
setenv attr name
run gen
# also:
setenv gen_attr 'setenv attr num; run gen; setenv attr name; run gen'

# dann insgesamt:
# Ziel: my_follow_boot_switch gleichbedeutend mit:
setenv subject rootfs
run gen_attr
setenv subject kernel
run gen_attr
setenv subject kparams
run gen_attr

#also:
setenv my_follow_boot_switch 'setenv subject rootfs; run gen_attr; setenv subject kernel; run gen_attr; setenv subject kparams; run gen_attr'

################
# Nun mit sicheren aber schlecht-lesbaren langen namen ;-)
setenv my_follow_boot_switch_gen 'setenv my_assign_1 my_${my_follow_boot_switch_gen_subject}_${my_follow_boot_switch_gen_attr}; setenv my_assign_2 my_${my_follow_boot_switch_gen_subject}${my_boot_switch}_${my_follow_boot_switch_gen_attr}; run my_assign'
setenv my_follow_boot_switch_gen1 'setenv my_follow_boot_switch_gen_attr num; run my_follow_boot_switch_gen; setenv my_follow_boot_switch_gen_attr name; run my_follow_boot_switch_gen'
setenv my_follow_boot_switch 'setenv my_follow_boot_switch_gen_subject rootfs; run my_follow_boot_switch_gen1; setenv my_follow_boot_switch_gen_subject kernel; run my_follow_boot_switch_gen1; setenv my_follow_boot_switch_gen_subject kparams; run my_follow_boot_switch_gen1'



