FLTK logo

STR #3217

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 
 Home  |  Articles & FAQs  |  Bugs & Features  |  Documentation  |  Download  |  Screenshots  ]
 

Return to Bugs & Features | Roadmap 1.3 | SVN ⇄ GIT ]

STR #3217

Application:FLTK Library
Status:1 - Closed w/Resolution
Priority:1 - Request for Enhancement, e.g. asking for a feature
Scope:3 - Applies to all machines and operating systems
Subsystem:Build Files
Summary:fix CMake build's fltk-config
Version:1.3-feature
Created By:mjsurette
Assigned To:AlbrechtS
Fix Version:1.3.4 (SVN: v10719)
Update Notification:

Receive EMails Don't Receive EMails

Trouble Report Files:


Name/Time/Date Filename/Size  
 
#1 mjsurette
22:09 Apr 13, 2015
fltk-config.patch
9k
 
 
#2 mjsurette
07:49 Apr 25, 2015
cmake-aix.patch
1k
 
     

Trouble Report Comments:


Name/Time/Date Text  
 
#1 mjsurette
22:09 Apr 13, 2015
This patch fixes CMake's fltk-config.

Notes:

It wasn't that far from working, actually.  I mostly added a little glue and reorganized a bit.

export.cmake generates configuration files for non-installed use
install.cmake generates configuration files for installed use
The new variables.cmake sets path-insensitive variables common to both.  This will hopefully make things clearer.

I found it necessary to generate two versions of fltk-config.  The one generated by configure checks for local invocation by checking for the presence of ./FL/Fl_Window.H.  This is not a valid test for out of tree builds.

The local invocation version is in the build directory.  The install version is in build/bin.  Both versions generate the proper full path names for ${prefix} and ${includedir}

fltk-config.in was used as the template.  fltk-config.cmake.in is now obsolete.

The CMake build files never did set the optimization flags that configure did and so does not report them unless they have been added via OPTION_OPTIM

The variable CMAKE_REQUIRED_LIBRARIES had no real use and was removed.
 
 
#2 AlbrechtS
07:01 Apr 25, 2015
Fixed in Subversion repository.

Thanks for the patch.

I applied the patch almost literally. I changed 'prefix' to 'exec_prefix' where configure's fltk-config used $exec_prefix, although this is rarely used.

I also set the variable SHAREDSUFFIX to an empty string for now instead of ${CMAKE_SHARED_LIBRARY_SUFFIX}, because configure (and hence its generated fltk-config) would set this only if the OS is 'aix', and then it would be set to "_s". The original patch used ".so" under Linux, which led to using "-lfltk.so" which is at least unusual. Now it is "-lfltk" (as in configure's fltk-config).

Comments on the above and possible ways to set "_s" under "aix" welcome.

I also deleted the obsolete template fltk-config.cmake.in.
 
 
#3 mjsurette
07:49 Apr 25, 2015
This untested patch should do the trick according to the docs.  
 
#4 AlbrechtS
13:38 Apr 25, 2015
Thanks for the quick update. Patch applied with little extra formatting.  
 
#5 AlbrechtS
07:30 Jun 27, 2015
Updates are in svn r 10716 and 10719, resp.  
     

Return to Bugs & Features ]

 
 

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'.