プリプロセッサマクロで sizeof を使う

多分、C/C++ の標準機能だけだと無理な気が。autoconf を使えば何とかなる。
まず、configure.ac に

AC_CHECK_SIZEOF(int)
AC_CHECK_SIZEOF(wchar_t)

SIZEOF_INT=$ac_cv_sizeof_int
SIZEOF_WCHAR_T=$ac_cv_sizeof_wchar_t

AC_SUBST(SIZEOF_INT)
AC_SUBST(SIZEOF_WCHAR_T)

AC_OUTPUT([foo.h])

てな感じにしておいて、foo.h.in を

#if @SIZEOF_WHCAR_T@ != @SIZEOF_INT@
#endif

と書けば、ご所望の結果かと。まぁ、autoconf を使えるかどうかという問題がありますが。
ちなみに、Dartsがこういうことをしている。