toge's diary

コンピュータ関連の趣味をつらつらと。

-MMで無駄な依存ファイルを表示させない

さらに作業メモ。

makeで必要な依存関係を自動生成するために"gcc -MM"ってやるのは常套手段ですが、この際にboostとか変更の可能性が低いヘッダへの依存がばらばらでてきて邪魔だった。
"gcc -I /usr/hoge/include"ではなくて、"gcc -isystem /usr/hoge/include"ってすれば良かったのね。
でやってみた結果。

gl2d/SDL_gl2d_pfont.o: gl2d/SDL_gl2d_pfont.c glee/GLee.h \
  gl2d/SDL_gl2d_pfont.h gl2d/SDL_gl2d.h /usr/include/SDL/SDL.h \
  /usr/include/SDL/SDL_main.h /usr/include/SDL/SDL_types.h \
  /usr/include/SDL/SDL_getenv.h /usr/include/SDL/SDL_error.h \
  /usr/include/SDL/begin_code.h /usr/include/SDL/close_code.h \
  /usr/include/SDL/SDL_rwops.h /usr/include/SDL/SDL_timer.h \
  /usr/include/SDL/SDL_audio.h /usr/include/SDL/SDL_byteorder.h \
  /usr/include/SDL/SDL_cdrom.h /usr/include/SDL/SDL_joystick.h \
  /usr/include/SDL/SDL_events.h /usr/include/SDL/SDL_active.h \
  /usr/include/SDL/SDL_keyboard.h /usr/include/SDL/SDL_keysym.h \
  /usr/include/SDL/SDL_mouse.h /usr/include/SDL/SDL_video.h \
  /usr/include/SDL/SDL_mutex.h /usr/include/SDL/SDL_quit.h \
  /usr/include/SDL/SDL_version.h 

ぐあ、sdl-configの馬鹿っ。/usr/bin/sdl-configを弄るわけにもいかないので、

/usr/bin/sdl-config --cflags | sed 's/-I/-isystem /' 

とやって逃げることにしました。ああ、これですっきり。参照するファイルが減った分、コンパイルも速くなったに違いない。

・・・しかしどんどん変態的なMakefileになってきたな。