Есть сборка RPM-пакетов софтины через rpmbuild. Задача стоит опакетить это под DEB. Для сборки запускается shell-скрипт, который тянет исходники из git, патчит их, парсит конфигурацию сборки и выставляет -D и -I для сборки в переменных для Makefile-ов через export, и запускает rpmbuild.
rpmbuild делает в итоге
make -C каталог all
make -f make_deb.mak
var = ""
val = "value"
num = 1
.PHONY: all
all: test6
test:
echo "1#### "$$var ; \
if [ -z $$var ] ; then \
var="$(val)"; \
echo "2#### var="$$var; \
else \
echo "3#### FAIL"; \
fi; \
echo "4#### "$$var
test4:
echo "##### test4"$(optflags)
if [ -z "${CFLAGS}" ]; \
then \
CFLAGS=${optflags}; \
echo $$CFLAGS ; \
fi ; \
echo $$CFLAGS
test6:
@PYTHON=/usr/bin/python3 ; \
TESTVAR=test ; \
env ; \
echo $(PYTHON) ; \
./a.sh
Заданные в Makefile переменные, в нем же видны (test). Заданные в bash-консоли переменные видны (test4).
optflags=anyflags; make -f b.sh test4