# # $Id$ # # shared functions # # # History: # -------- # 2008-06-27 initial version (andrei) # escape_values=$(subst $$,\$$,$(subst ",\", $(1))) # generates echo "$(1)=escape($(1))" cfg_gen_var=echo "$(1)=$(call escape_values,$($(1)))" # similar to cfg_gen_var, but for FOO=1 var=$(FOO) # it would generate "echo var=$(FOO)" and not "echo var=1" cfg_gen_var2=echo "$(1)=$(call escape_values,$(value $(1)))" # generates echo "$(1)=escape($(1)) >> $(2)" cfg_save_var=$(call cfg_gen_var,$(1)) >>$(2); # same as above but uses cfg_gen_var2 cfg_save_var2=$(call cfg_gen_var2,$(1)) >>$(2); # map function $(1) on variable list $($(2)) (the function is used with only # one arg) mapf1=$(foreach v,$($(2)),$(call $(1),$v)) # map function $(1) on variable list $($(2)), passing also $(3) as second # arg mapf2=$(foreach v,$($(2)),$(call $(1),$v,$(3))) #cfg_fixed_to_file=$(call mapf2,cfg_save_var,saved_fixed_vars,$(1)) #cfg_chg_to_file=$(call mapf2,cfg_save_var2,saved_chg_vars,$(1)) ifeq (${err_fail},1) sh_err_fail=set -e; try_err=$(1) ; if [ $$? != 0 ]; then echo ERROR: $(1) failed ; exit 1 ; fi else sh_err_fail= try_err=$(1) ; if [ $$? != 0 ]; then echo ERROR: $(1) failed ; fi endif