Quelle est la meilleure façon de définir des indicateurs de compilation des fichiers source individuels en utilisant GCC et autotools?
Question
Je dois désactiver le drapeau d'optimisation pour un fichier individuel à l'aide autotools. Quelle est la meilleure façon de le faire?
La solution
Voulez-vous dire un fichier source individuelle ou un exécutable individuel?
Pour désactiver l'optimisation pour un exécutable est simple:
bin_PROGRAMS = myprog
myprog_SOURCES = foo.c bar.c
myprog_CFLAGS = -O0
Si vous voulez dire que vous souhaitez désactiver l'optimisation pour un seul fichier source temporairement , par exemple pour des fins de débogage, vous pouvez tout simplement refaire ce fichier à l'invite: (exemple du manuel d'automake)
rm bar.o
make CFLAGS=-O0 bar.o
make
Pour le faire pour un fichier source individuel en permanence est pas si simple, et sans doute mieux fait en créant une bibliothèque de commodité:
noinst_LIBRARIES = libnoopt.a
libnoopt_a_SOURCES = bar.c
libnoopt_a_CFLAGS = -O0
bin_PROGRAMS = myprog
myprog_SOURCES = foo.c
myprog_CFLAGS = -O2
myprog_LDADD = libnoopt.a
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow