This patch adds support for the cmake build system on unix.
Tested on ubuntu 64 bits system.
Other tests are welcomed :)
the patch itself
Logged In: YES
Applied the patch (without testing with Cmake)
This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 14 days (the time period specified by
the administrator of this Tracker).
This one adds a file I forgot in the previous one and checks for forbidden object to function cast.
-- Performing Test ,PERMITS_OBJECT_TO_FUNCTION_CAST - Failed
Besides the typo, is this expected to fail for gcc?
the build fails compiling at the very first target. But it does even without the patch. Wierd, I think it worked once before.
Yes this is expected to fail on newer gcc.
At least, the autotools build system defines HAVE_FORBIDDEN_OBJECT_TO_FUNCTION_CAST.
By the way, I tried to compile gemrb_core as a static library and the other plugins as module which do not depend on it, but I get some undefined symbol on this way. I tried to use -Wl-E at linking stage for gemrb_core, but cmake doesn't appear to pass it...
I applied the patch and made the *.in tracked.
This one avoids the mess with LD_LIBRARY_PATH.
It also silence some warnings on windows.
Sadly, gemrb_core has to be built twice, once static, once shared.
Tests are really appreciated here, since this is the most complete set I made.
File Added: cmake_patch3.txt
here is a new one.
Gemrb_core is not compiled twice, but I have to use rpath to make the gemrb executable find gemrb_core.
Now gemrb_core is put in the plugins directory, and the executable is rpathed to this directory.
File Added: cmake_patch4.txt
applied. Thanks again. :)