Мне нужна помощь при извлечении теста из команды оболочки для использования в переменной Makefile.
По сути, я использую две разные версии программы на разных серверах, но использую общий make-файл. Одним из них является 6.4.2 версия gnatmake, другим является 6.2.2 версия. Проблема в том, что версия 6.2.2 не поддерживает флаг "- unchecked-shared-lib-import" , который мне нужно включить при компиляции с 6.4.2 версия.
Чтобы найти версию, я решил использовать команду 'gnatmake --version' . Это то, что каждый возвращает ниже. Как я могу разобрать версию? (6.2.2 или 6.4.2)?
Gnatmake 6.2.2:
GNATMAKE Pro 6.2.2 (20090612-43)
Copyright (C) 1995-2009, Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
See your AdaCore support agreement for details of warranty and support.
If you do not have a current support agreement, then there is absolutely
no warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
Gnatmake 6.4.2:
GNATMAKE Pro 6.4.2 (20110614-45)
Copyright (C) 1995-2010, Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
See your AdaCore support agreement for details of warranty and support.
If you do not have a current support agreement, then there is absolutely
no warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
Вот как я думал, что будет создан make-файл, поэтому, если GNATMAKE_VERSION равен 6.4.2 , тогда - unchecked-shared-lib-import будет в переменной GNAT_FLAG , которую я могу включить в будущие параметры.
GNATMAKE_VERSION:=$(shell gnatmake --version)
GNAT_FLAG:=
# if not equal (GNATMAKE_VERSION=6.2.2)
# GNAT_FLAG:= "--unchecked-shared-lib-imports"
#
test:
echo "$(GNATMAKE_VERSION)"
test2:
echo "$(GNAT_FLAG)"
Есть ли простой способ сделать это?