Message ID | 5A61B1CB02000078001A0368@prv-mh.provo.novell.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Jan 19, 2018 at 12:52:27AM -0700, Jan Beulich wrote: > sed's -E option may not be supported by older distros. As there's no > point using sed here at all, use just shell mechanisms to establish the > variable values, starting from the stem instead of the full target. > > Signed-off-by: Jan Beulich <jbeulich@suse.com> Reviewed-by: Daniel P. Berrange <berrange@redhat.com> > --- a/Makefile > +++ b/Makefile > @@ -242,8 +242,7 @@ GENERATED_FILES += $(KEYCODEMAP_FILES) > > ui/input-keymap-%.c: $(KEYCODEMAP_GEN) $(KEYCODEMAP_CSV) $(SRC_PATH)/ui/Makefile.objs > $(call quiet-command,\ > - src=$$(echo $@ | sed -E -e "s,^ui/input-keymap-(.+)-to-(.+)\.c$$,\1,") && \ > - dst=$$(echo $@ | sed -E -e "s,^ui/input-keymap-(.+)-to-(.+)\.c$$,\2,") && \ > + stem=$* && src=$${stem%-to-*} dst=$${stem#*-to-} && \ > test -e $(KEYCODEMAP_GEN) && \ > $(PYTHON) $(KEYCODEMAP_GEN) \ > --lang glib2 \ Clever ! I was hoping someone might suggest a cleaner approach one day Regards, Daniel
On 01/19/2018 06:28 AM, Daniel P. Berrange wrote: > On Fri, Jan 19, 2018 at 12:52:27AM -0700, Jan Beulich wrote: >> sed's -E option may not be supported by older distros. As there's no >> point using sed here at all, use just shell mechanisms to establish the >> variable values, starting from the stem instead of the full target. >> >> Signed-off-by: Jan Beulich <jbeulich@suse.com> > > Reviewed-by: Daniel P. Berrange <berrange@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > >> --- a/Makefile >> +++ b/Makefile >> @@ -242,8 +242,7 @@ GENERATED_FILES += $(KEYCODEMAP_FILES) >> >> ui/input-keymap-%.c: $(KEYCODEMAP_GEN) $(KEYCODEMAP_CSV) $(SRC_PATH)/ui/Makefile.objs >> $(call quiet-command,\ >> - src=$$(echo $@ | sed -E -e "s,^ui/input-keymap-(.+)-to-(.+)\.c$$,\1,") && \ >> - dst=$$(echo $@ | sed -E -e "s,^ui/input-keymap-(.+)-to-(.+)\.c$$,\2,") && \ >> + stem=$* && src=$${stem%-to-*} dst=$${stem#*-to-} && \ >> test -e $(KEYCODEMAP_GEN) && \ >> $(PYTHON) $(KEYCODEMAP_GEN) \ >> --lang glib2 \ > > Clever ! I was hoping someone might suggest a cleaner approach one day > > Regards, > Daniel >
On 01/19/2018 01:52 AM, Jan Beulich wrote: > sed's -E option may not be supported by older distros. As there's no > point using sed here at all, use just shell mechanisms to establish the > variable values, starting from the stem instead of the full target. Grammar in the subject ("allow to ${verb}" is not idiomatic, better is "allow ${subject} to ${verb}" or "allow ${verb}ing"): s/to build/building/ Reviewed-by: Eric Blake <eblake@redhat.com> > > Signed-off-by: Jan Beulich <jbeulich@suse.com> > > --- a/Makefile > +++ b/Makefile > @@ -242,8 +242,7 @@ GENERATED_FILES += $(KEYCODEMAP_FILES) > > ui/input-keymap-%.c: $(KEYCODEMAP_GEN) $(KEYCODEMAP_CSV) $(SRC_PATH)/ui/Makefile.objs > $(call quiet-command,\ > - src=$$(echo $@ | sed -E -e "s,^ui/input-keymap-(.+)-to-(.+)\.c$$,\1,") && \ > - dst=$$(echo $@ | sed -E -e "s,^ui/input-keymap-(.+)-to-(.+)\.c$$,\2,") && \ > + stem=$* && src=$${stem%-to-*} dst=$${stem#*-to-} && \ > test -e $(KEYCODEMAP_GEN) && \ > $(PYTHON) $(KEYCODEMAP_GEN) \ > --lang glib2 \ > > > > >
--- a/Makefile +++ b/Makefile @@ -242,8 +242,7 @@ GENERATED_FILES += $(KEYCODEMAP_FILES) ui/input-keymap-%.c: $(KEYCODEMAP_GEN) $(KEYCODEMAP_CSV) $(SRC_PATH)/ui/Makefile.objs $(call quiet-command,\ - src=$$(echo $@ | sed -E -e "s,^ui/input-keymap-(.+)-to-(.+)\.c$$,\1,") && \ - dst=$$(echo $@ | sed -E -e "s,^ui/input-keymap-(.+)-to-(.+)\.c$$,\2,") && \ + stem=$* && src=$${stem%-to-*} dst=$${stem#*-to-} && \ test -e $(KEYCODEMAP_GEN) && \ $(PYTHON) $(KEYCODEMAP_GEN) \ --lang glib2 \
sed's -E option may not be supported by older distros. As there's no point using sed here at all, use just shell mechanisms to establish the variable values, starting from the stem instead of the full target. Signed-off-by: Jan Beulich <jbeulich@suse.com>