I want to (re)label my variables automatically, based on a variable name → new label lookup table.

I currently do it as follows:
Code:
sysuse auto

foreach renaming_pair in "make model" "mpg mileage" "rep78 repair" {
    label variable `=word("`renaming_pair'", 1)' `"`=word("`renaming_pair'", 2)'"'
}
However, this suppose to hardcode the relabelling mapping. I would prefer to define the lookup table externally.

1. How to achieve the same result using the following label_lookup_table.csv?
Code:
var_name, new_label
make, model
mpg, mileage
rep78, repair
2. What if I want to use the following generic_label_lookup_table.csv (which also contains renaming_pairs not relevant for the given dataset)?
Code:
var_name, new_label
make, model
mpg, mileage
rep78, repair
foo, bar
baz, buzz