GIF 機能 の on/off
swfed で GIF を処理するコードを追加したのですが、
giflib 無しのシステムで使っているユーザ様から GIF 機能を外せないかという相談を受けました。
早速、調査。
config.m4
config.m4 で有効と判定したルートに
AC_DEFINE(HAVE_GIF,1,[ ])
を入れれば config.h に #define HAVE_GIF 1 が入ります。
あとは、無効と判定したルートで
if test "$PHP_GIF_DIR" = "no"; then AC_MSG_ERROR([swfed support requires GIF. (略)
等としていると、エラーで configure を中断してしまうので、
if test "$PHP_GIF_DIR" = "no"; then AC_MSG_RESULT([gif_lib.h not found.])
等として、無効のまま configure を続行させれば、OK
HAVE_GIF
プログラムの中で GIF の処理をしている部分を #ifdef HAVE_GIF でくくります。
あと、#include "config.h" しないとHAVE_GIF は無効のままなので無条件で動かなくなります。少しハマりました。
PNG
ついでに PNG 機能も on/off 出来るようにしておきました。
というわけで、prefix が特殊な環境で --with-png= をつけ忘れると、
build は通っても PNG の処理だけ動かないという事になりますので、
お気をつけ下さい。 > 誰となく
zlib は off すると画像の処理が殆どできなくなるので、必須のままにしておきます。
さて…
自分の環境で libgif や libpng を削ったりしての動作確認は出来たので、
ユーザ様に rc 版を渡して動作がうまくいったら、リリースしようと思います。