glbinding ライブラリのビルドに苦しんでいたのですが,なんとなくごまかしました.
いろいろ調べていたところ,
#ifdef WIN32
...
#else
# include
#endif
のようなコードがあったのですが,ビルドが始まると glx.h がないと怒られるのです.glx は X-Windows と OpenGL をまたぐライブラリのようですので,Windows にないのは当然といえます.
それにしても,なんで WIN32 を通り抜けて #else 節が残ってしまうんだろう?
cpp -E に WIN32/WIN64
のような内容を食わせるとちゃんと WIN32 も WIN64 も認識しているのに...
MSYS2 の toolchain を再度インストールし直したり,MSYS2 に含まれるいろんな toolchain の組み合わせでビルドしたり,CMake を Windows 版,MSYS2 版,mingw64 版ととっかえひっかえしながらやってたんですが,ついに根つき,以下を指定することで逃げました.
CPPFLAGS="-DWIN32 -DWIN64"
明らかに怪しい逃げなんだけど,ひとまずビルドできたようだ...ものすごく気持ち悪い.