AC_INIT
не только определяет символы препроцессора, но также определяет выходные переменные. Когда вы перечисляете файл, давайте назовем его somefile
, в вашем макросе AC_CONFIG_FILES
ваш скрипт configure
ищет файл с именем somefile.in
и заменяет имена любых выходных переменных между @ -синами на их значения вызов результата somefile
.
Итак, чтобы получить доступ к этим определениям в файле Python somescript.py
, поместите что-то вроде этого в свой configure.ac
:
AC_INIT(MILHOUSE, 0.3.6)
...blah blah...
AC_CONFIG_FILES([
some/Makefile
some/other/Makefile
somescript.py
])
Затем назовите свой файл Python somescript.py.in
и получите доступ к выходной переменной PACKAGE_VERSION, например:
version = '''@PACKAGE_VERSION@'''
Тройные кавычки, вероятно, целесообразны, потому что вы никогда не знаете, когда выходная переменная может содержать кавычку.