My work on the CMake build system update for FLTK is nearing a 
milestone.  It now generates a good config.h and fltk-config file.  A 
fair amount of work has gone into making the tests cross-compile 
friendly, which means that tests don't find resources on the host 
machine when cross-compiling.  The feature set is comparable to the 
autotools build.  It works quite well on my archlinux system.

I have just realized that rather than having the build shared libraries 
option replace the static libraries, each should have its own option as 
in autotools.  Once that is done and a round of testing is complete, I 
will be submitting a patch.

There are however a few things on which I would like advice/comments.

The Apple configuration is not configurable, but set permanently to 
Quartz.  Should an X11 option also be available or turned on if 
autodetected?  Are there any other options which should be available?

When the large file support is turned on I add the definitions 
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 to the 
compile.  How cross-platform is this?

When using the built-in png library, the HAVE_PNG_GET_VALID and 
HAVE_PNG_SET_TRNS_TO_ALPHA macros are set to 1.  This is not detectable 
until after the build, which means after the creation of config.h, so it 
seems like a reasonable thing to do.

If a requested feature is unavailable, it is simply not used.  Should 
this be an error which halts the config process?

My main reason for taking on this project was so FLTK would have an easy 
to use cross-compiling system.  Unfortunately there are basic problems 
surrounding this.  Many tests use the "try-run" facility.  CMake is 
smart enough to know that if we're cross-compiling, we really can't run 
the test programs and fails them.  Alternative tests need to be found or 
devised.  Any pointers, links, etc would be appreciated.  I forsee the 
toughest one as detecting the size of the various flavours of int.

An easier alternative would be to provide an editable config file which 
sets the needed variables ***when cross-compiling is autodetected***. 
The first item in this file being a halt-compile error which has to be 
edited out, the error stating that this file has to be edited.

Again advice and comments are welcome.

Mike
_______________________________________________
fltk-dev mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-dev

Reply via email to