Hell, everyone.
Just to let everyone know, I am porting some stuff to Windows from Linux. I
use the MSYS2 enviornment to make mingw-w64 packages and there is quite a
lot of software ported. I have done some work on some netsurf libraries to
this. This includes making .DLL's or shared libraries for Windows.
To do this, I've been using Cmake and I've had some success that I want to
share with everyone here This is stuff I willing contribute in to this
project in order to help get netsurf stuff available for Windows, Win32, and
possibly something like CygWin or even MSYS2.
The Cmake build system should also work on OS/X which I don't have as well
as some other things. It might even be possible to use Cmake to cross
compile to things like Android.
To start off with, here is an updated version of the CMakeLists.txt file I
wrote for LibParseUtils. An older version is available at (
https://bugs.netsurf-browser.org/mantis/view.php?id=2621 ) You would place
this in the root directory.
Hopefully, the CMakeLists.txt file in this message is received.
Some notes about this version. This one does change the pkg-config file
generated to require iconv in some cases where it's not part of the system.
Test .EXE's are build ONLY if testing is enabled.
I do want to encourage you to include this CMakeLists.txt in your
distribution. I am pleased to report that The tests complete at 100%
including the iconv and non-iconv versions. IN addition, I also was able to
make a fallback for earlier cmake versions to use iconv.
IIconv is rather a special dependency because in Linux, the iconv functions
are located in the RTL. In windows, this is not the case but there are
implementations of it so when building such such acases, the pkg-config file
has to list. As a requirement.