FLTK logo

Re: [fltk.coredev] Re: Understanding macOS build environments

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 All Forums  |  Back to fltk.coredev  ]
 
Previous Message ]New Message | Reply ]Next Message ]

Re: Re: Understanding macOS build environments Rob McDonald Mar 03, 2021  
 
No, it's okay, points taken. Thanks for all constructive criticism.
We're all (and particularly I am) still learning how to deal with CMake.
I don't like autoconf so I'm striving to make the best of our CMake support.

I'm all for the CMake support.  Your efforts (and those of others) in this direction are greatly appreciated.

> I will have to parse and understand everything you say later about the
> alternatives, but I submit that using FindXXXX.cmake is still the
> default mode of using CMake.

AFAIC it's officially find_package(NAME options ...) which will
eventually call FindXXXX.cmake (which is called "module mode") or use
XXXXConfig.cmake (which is called "config mode"). See the CMake docs for
find_package(). The way you call it decides which option is chosen or if
you leave it to find_package() to choose - whatever it finds.

I've read through the CMake docs and a few other resources on this.  I understand why CMake added config mode, but I largely wish they hadn't.  It seems to me that a FindXXXX.cmake script could be made to search first for a config file -- and if it does not find one, continue the old fashioned search process.  It would seem to me to be a more flexible option.

CMake has to work with libraries that weren't built with CMake -- so the config mode will never cover all cases.  FLTK makes it harder on ourselves by allowing multiple different modes for building.

Having autoconf write a CMake config file would certainly help one part of the problem.

However, (when considering compatibility) I don't think we can ever get away from the need for fixing FindFLTK.cmake.  Then again, it has been broken forever, so perhaps nobody really cares.

Someone asked (maybe it's an open issue, I don't remember) if we could
provide FLTKConfig.cmake even with autoconf builds. This is something we
(I?) might consider. The effect would be that all Linux distributions
would provide it, whether they build FLTK with autoconf or CMake.

I agree, this would help with a chunk of the problems.
 
Another option (also a user question, IIRC) was if we could provide
pkg-config (.pc) files. That's also something that would likely help
some people.

I don't know anything about these.
 
Your idea to provide FindFLTK.cmake with FLTK sources (or somewhere
installed by the build?) is also something that might be doable. I need
to make myself familiar with "how to write a CMake find module" to be
able to do this. But if it helps FLTK users to use FLTK in their
projects it might be worth it.

All valid points and a lot of work to do. Particularly to do it *right*.

> > In short, I'd love to see some TLC applied to the FindFLTK.cmake
> > script.
>
> What is TLC? https://www.acronymfinder.com
> <https://www.acronymfinder.com> finds 237 results.
>
> Tender loving care

Thanks for explanation. Also, Greg Ercolano wrote:

> ... it's an old, pre-internet acronym, if I remember cor.. uh, IIRC.
> I'm not sure when it came about, but it's a really
> common english thing, seems as old as the hills.

Yeah, "common english thing". Hard to know for a non-native english
speaker. But now I know, thanks.

And I'll try to do my best.

Your english is superb -- and from your emails, it often feels like you live in the Pacific time zone.  So you have nothing to worry about.

Rob
 

--
You received this message because you are subscribed to the Google Groups "fltk.coredev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fltkcoredev+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/fltkcoredev/57e5ec25-21a2-4ae3-9afb-58c99313b8f7n%40googlegroups.com.
Direct Link to Message ]
 
     
Previous Message ]New Message | Reply ]Next Message ]
 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.