If anyone ever stumbles up on this topic and gets curious how to easily solve it.
It took a while, but I finally figured out that MinGW-w64 ships with a tool called gendef.exe which does a proper export of DLL to DEF file. From there you can take the dlltool.exe that also ships with MinGW-w64.
In summary, here's a bat file that converts all the CSFML libs - I know it's quite hardcoded, but hey it works. :D
set dll_file= csfml-system-2.dll
set def_file= csfml-system-2.def
set a_file= libcsfml-system.a
gendef.exe %dll_file%
dlltool.exe -d %def_file% -D %dll_file% -l %a_file%
set dll_file= csfml-window-2.dll
set def_file= csfml-window-2.def
set a_file= libcsfml-window.a
gendef.exe %dll_file%
dlltool.exe --export-all-symbols -d %def_file% -D %dll_file% -l %a_file%
set dll_file= csfml-graphics-2.dll
set def_file= csfml-graphics-2.def
set a_file= libcsfml-graphics.a
gendef.exe %dll_file%
dlltool.exe --export-all-symbols -d %def_file% -D %dll_file% -l %a_file%
set dll_file= csfml-network-2.dll
set def_file= csfml-network-2.def
set a_file= libcsfml-network.a
gendef.exe %dll_file%
dlltool.exe --export-all-symbols -d %def_file% -D %dll_file% -l %a_file%
set dll_file= csfml-audio-2.dll
set def_file= csfml-audio-2.def
set a_file= libcsfml-audio.a
gendef.exe %dll_file%
dlltool.exe --export-all-symbols -d %def_file% -D %dll_file% -l %a_file%
Also finally updated the CSFML download packages, so this issue shouldn't occur anymore!
For those interested, I wrote a short blog post (https://dev.my-gate.net/2018/06/02/generate-a-def-file-from-a-dll/) about it.