OpenSolarisでOpenSSLをmake

OpenSolaris上でOpenSSL1.0.0をmake。ソースを展開してconfigするとこんなエラーが。

$ ./config 
Operating system: i86pc-whatever-solaris2
This system (solaris64-x86_64-/usr/sfw/bin/gcc) is not supported. See file INSTALL for details.

SolarisX86は対象外だと。そんな寂しい。
でもエラーメッセージをよくみると、gccのところがフルパスになっているのがすこし変なことに気がつきます。
configの対象システムを判定するところを参照するとこんな風になっています。

PREFIX=""
"config" 929 行、26930 バイト
if [ $? = "0" ]; then
  OUT="$OUT-$CC"
fi

OUT="$PREFIX$OUT"

$PERL ./Configure LIST | grep "$OUT" > /dev/null
if [ $? = "0" ]; then
  echo Configuring for $OUT

  if [ "$TEST" = "true" ]; then
    echo $PERL ./Configure $OUT $options
  else
    $PERL ./Configure $OUT $options
  fi
else
  echo "This system ($OUT) is not supported. See file INSTALL for details."
fi
)

上記エラーメッセージの括弧内のところ、エラーでは/usr/sfw/bin/gccとなっているところは環境変数のCCから持ってきてます。
./Configure LISTでSolaris関連の対象システムをチェックすると、

$ ./Configure LIST | grep solaris
debug-solaris-sparcv8-cc
debug-solaris-sparcv8-gcc
debug-solaris-sparcv9-cc
debug-solaris-sparcv9-gcc
solaris-sparcv7-cc
solaris-sparcv7-gcc
solaris-sparcv8-cc
solaris-sparcv8-gcc
solaris-sparcv9-cc
solaris-sparcv9-gcc
solaris-x86-cc
solaris-x86-gcc
solaris64-sparcv9-cc
solaris64-sparcv9-gcc
solaris64-x86_64-cc
solaris64-x86_64-gcc

CCをgccにして適切にパスを参照させれば大丈夫かな。

$ unset CC
$ which gcc
/usr/sfw/bin/gcc

こうやってから

$ ./config 
(中略)
Configured for solaris64-x86_64-gcc.

と、これでconfigure,makeできました。