Obrigado a todos por suas respostas, mas parece que a matemática do Solaris 10 teria que ser implementada para conseguir isso.
Eu decidi lidar com isso de outra maneira usando o bash & bc para calcular o dia juliano do ano. A fórmula é descrita aqui . A função original pode ser encontrada aqui
A função modificada abaixo pode fazer a conversão e você pode comparar duas datas.
function conv_date_to_julian()
{
local cdate="$(date +%d:%m:%Y)"
local day="${1:=$(echo ${cdate} | cut -d: -f1)}"
local month="${2:=$(echo ${cdate} | cut -d: -f2)}"
local year="${3:=$(echo ${cdate} | cut -d: -f3)}"
local jdoy
if [ ${month} -le 2 ]; then
year=$(( ${year} - 1))
month=$(( ${month} + 12))
fi
jdoy=$(echo "2 - ${year} / 100 + ${year} / 400" | bc)
jdoy=$(echo "(${jdoy} + 365.25 * (${year} + 4716))/1" | bc)
jdoy=$(echo "(${jdoy} + 30.6001 * (${month} + 1))/1" | bc)
echo $(echo "(${jdoy} + ${day} - 1524.5)" | bc)
}
Exemplo de uso:
[ $(expr $(conv_date_to_julian 31 12 2017) - $(conv_date_to_julian)) -gt 30 ] && echo true