В настоящее время Automake предоставляет ограниченную поддержку создания программ и разделяемых библиотек, которые являются смесью Fortran 77 и C и/или C++. Однако существует много других вопросов, возникающих при смешивании кода на Fortran 77 с кодом на других языках, которые в настоящее время не обрабатываются Automake, но обрабатываются другими пакетами(2).
Automake может предоставить вам помощь двумя способами:
FLIBS макросом Autoconf AC_F77_LIBRARY_LDFLAGS,
который поставляется со свежими версиями Autoconf (Autoconf версии 2.13
и выше). See section `Характеристики компилятора Fortran 77' in Autoconf.
Если Automake определяет, что программа или разделяемая библиотека
(упомянутые в каких-либо основных переменных _PROGRAMS или
_LTLIBRARIES) содержит исходный код, который является смесью
Fortran 77 и C и/или C++, то он требует вызова макроса
AC_F77_LIBRARY_LDFLAGS в файле `configure.in', и чтобы в
соответствующей переменной _LDADD (для программ) или
_LIBADD (для разделяемых библиотек) появились ссылки либо на
$(FLIBS), либо на @FLIBS@. От человека, пишущего
`Makefile.am', требуется убедиться, что переменные
$(FLIBS) или @FLIBS@ находятся в соответствующих
переменных _LDADD или _LIBADD.
Например, рассмотрим следующий `Makefile.am':
bin_PROGRAMS = foo foo_SOURCES = main.cc foo.f foo_LDADD = libfoo.la @FLIBS@ pkglib_LTLIBRARIES = libfoo.la libfoo_la_SOURCES = bar.f baz.c zardoz.cc libfoo_la_LIBADD = $(FLIBS)
В этом случае Automake будет настаивать, чтобы макрос
AC_F77_LIBRARY_LDFLAGS был упомянут в `configure.in'. Более
того,
если переменная @FLIBS@ не была упомянута в переменной
foo_LDADD и libfoo_la_LIBADD, то Automake выдаст
предупреждение.
Go to the first, previous, next, last section, table of contents.