Squidをコンパイルしたらエラー

Squidの最新版(4.0.17)をgcc6.2.0でコンパイルリンクするとこんなエラーが。

libtool: compile:  g++ -DHAVE_CONFIG_H -I../.. -I../../include -I../../lib -I../../src -I../../include -I../../libltdl -Wall -Wpointer-arith -Werror -Wwrite-strings -Wcomments -Wshadow -Woverloaded-virtual -Wno-deprecated-register -pipe -D_REENTRANT -g -O2 -march=native -MT Handshake.lo -MD -MP -MF .deps/Handshake.Tpo -c Handshake.cc -o Handshake.o >/dev/null 2>&1
make[1]: *** [Handshake.lo] エラー 1

src/security以下の Handshake.cc のコンパイルでエラーになってます。/dev/null にエラー内容が捨てられているので、手動で上記コンパイルを再実行。

$ g++ -DHAVE_CONFIG_H -I../.. -I../../include -I../../lib -I../../src -I../../include -I../../libltdl -Wall -Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Woverloaded-virtual -Werror -Wno-deprecated-register -pipe -D_REENTRANT -g -O2 -march=native -MT Handshake.lo -MD -MP -MF .deps/Handshake.Tpo -c Handshake.cc -o Handshake.o 
Handshake.cc: メンバ関数 ‘void Security::HandshakeParser::parseServerCertificates(const SBuf&)’ 内:
Handshake.cc:560:31: エラー: ‘cert’ はこの関数内初期化されずに使用されるかもしれません [-Werror=maybe-uninitialized]
         Security::CertPointer cert;
                               ^~~~
大域スコープ:
cc1plus: エラー: 認識できないコマンドラインオプション ‘-Wno-deprecated-register’ です [-Werror]
cc1plus: all warnings being treated as errors

変数が初期化されないで使われるかもーって、警告がエラー扱いになっているみたい。-Werrorをつけてるとそうなる。
良い子はconfigure時にCXXFLAGSに以下を設定しましょう。

-Wall -Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Woverloaded-virtual -Werror -Wno-deprecated-register -pipe -D_REENTRANT

面倒なので、src/security以下のMakefileから-Werrorを削除してmake。