История изменений
Исправление xaizek, (текущая версия) :
Не так чтобы простые проекты, но что-то получилось. Установка по крайней мере одной из этих переменных (в любое значение, даже пустое):
foo_CFLAGS =
foo_CPPFLAGS =
превращает
gcc -DHAVE_CONFIG_H -I. -g -O2 -MT foo.o -MD -MP -MF .deps/foo.Tpo -c -o foo.o foo.c
в
gcc -DHAVE_CONFIG_H -I. -g -O2 -MT foo-foo.o -MD -MP -MF .deps/foo-foo.Tpo -c -o foo-foo.o `test -f 'foo.c' || echo './'`foo.c
Как можно заметить у объектный файлов дополнительно появился префикс приложения (foo-
).
В depend2.am
кстати есть рядом с test -f
:
## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
Ещё из automake.in
(оно из секции о info-файлах, но это тот же флаг вроде):
# We can output two kinds of rules: the "generic" rules use Make
# suffix rules and are appropriate when $source and $dest do not lie
# in a sub-directory; the "specific" rules are needed in the other
# case.
#
# The former are output only once (this is not really apparent here,
# but just remember that some logic deeper in Automake will not
# output the same rule twice); while the later need to be output for
# each Texinfo source.
Generic правила в выходном Makefile не перечисляют именя файлов явно, а non-generic выписывают для каждого файла свои правила (при этом generic правила в выходном файле тоже есть). Каким боком ко всему этому флаги, я не понял. Может быть это баг.
Исходная версия xaizek, :
Не так чтобы простые проекты, но что-то получилось. Установка по крайней мере одной из этих переменных:
foo_CFLAGS =
foo_CPPFLAGS =
превращает
gcc -DHAVE_CONFIG_H -I. -g -O2 -MT foo.o -MD -MP -MF .deps/foo.Tpo -c -o foo.o foo.c
в
gcc -DHAVE_CONFIG_H -I. -g -O2 -MT foo-foo.o -MD -MP -MF .deps/foo-foo.Tpo -c -o foo-foo.o `test -f 'foo.c' || echo './'`foo.c
Как можно заметить у объектный файлов дополнительно появился префикс приложения (foo-
).
В depend2.am
кстати есть рядом с test -f
:
## For non-suffix rules, we must emulate a VPATH search on %SOURCE%.
Ещё из automake.in
(оно из секции о info-файлах, но это тот же флаг вроде):
# We can output two kinds of rules: the "generic" rules use Make
# suffix rules and are appropriate when $source and $dest do not lie
# in a sub-directory; the "specific" rules are needed in the other
# case.
#
# The former are output only once (this is not really apparent here,
# but just remember that some logic deeper in Automake will not
# output the same rule twice); while the later need to be output for
# each Texinfo source.
Generic правила в выходном Makefile не перечисляют именя файлов явно, а non-generic выписывают для каждого файла свои правила (при этом generic правила в выходном файле тоже есть). Каким боком ко всему этому флаги, я не понял. Может быть это баг.