Do makefile napis:
INCLUDES = tvuj_inc_dir druhy_inc_dir dalsi_inc_dir
CFLAGS = $(addprefix -I, $(INCLUDES)) dalsi_flagy
vpath %.h $(addsuffix :,$(INCLUDES))
Prvnim radkem udelas seznam adresaru s includama, na druhem je nastavis pro gcc a na tretim pro gmake, aby mohl jednoduse kontrolovat zavislosti.
man gcc ;-) sekce FILES
/usr/include standard directory for #include files
LIBDIR/include standard gcc directory for #include files
LIBDIR/g++-include additional g++ directory for #include
LIBDIR is usually /usr/local/lib/machine/version.
Zmenit se to da napriklad pri prekladu gcc, tak se delaji crosscompilery.
Vypnout se to da parametrama -nostdinc a -nostdinc++.
v man gcc se urcite da najit i jine reseni ;-)
Globalni nastaveni jinak - pro make: nastav si do prostredi napr.:
CFLAGS="-nostdinc -nostdinc++ -I/moje/hedry/"
a mas to zmeneno globalne pro vse, co prekladas pomoci make a v makefile se neprestavuje CFLAGS. A kdyz to nastavis do TARGET_ARCH, tak to bude vsude. Nebo dej:
CC="gcc -nostdinc -nostdinc++ -I/moje/hedry/"
atd.....