Quelle est la meilleure façon de définir des indicateurs de compilation des fichiers source individuels en utilisant GCC et autotools?

StackOverflow https://stackoverflow.com/questions/2220855

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?

Était-ce utile?

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
scroll top