Почему некоторые мейнтейнеры ПО делают makefile'ы, где не наследуются переvенные (CPPFLAGS, CFLAGS, CXXFLAGS, ASFLAGS, LDFLAGS, ...)?
Пришлось придумать такое:
FLAGS2makefile() {
local _flag flag
for flag in CPPFLAGS ASFLAGS CFLAGS CXXFLAGS RUSTFLAGS FFLAGS LDFLAGS; do
_flag=$(printf %q "${!flag}")
_flag="${_flag//\//\\\/}"
sed -r "s/^(\s*\S*$flag\s*=.*)/\1 $_flag/" -i "$@"
done
}FLAGS2makefile {.,doc,misc,test}/MakefileINTERNAL_CFLAGS = -I$(srcdir) -I$(objdir) \
-I$(srcdir)/include -I$(objdir)/include \
-I$(srcdir)/x86 -I$(objdir)/x86 \
-I$(srcdir)/asm -I$(objdir)/asm \
-I$(srcdir)/disasm -I$(objdir)/disasm \
-I$(srcdir)/output -I$(objdir)/output \
$(ZLIBINC)Вопрос: как состааить выражение для sed, чтобы вставляло мою строку в самый конец последней строки такой конструкции?


