Package: cmake-data
Version: 3.2.2-2
Severity: normal

FindFLTK.cmake uses the following call to find FLTK's code generator,
fluid:

      find_program(FLTK_FLUID_EXECUTABLE fluid PATHS
        ${FLTK_EXECUTABLE_DIRS}
        ${FLTK_EXECUTABLE_DIRS}/RelWithDebInfo
        ${FLTK_EXECUTABLE_DIRS}/Debug
        ${FLTK_EXECUTABLE_DIRS}/Release
        NO_SYSTEM_PATH)

Prior to 1.3.3, this worked fine, because /usr/lib/fltk/FLTKConfig.cmake
defined FLTK_FLUID_EXECUTABLE, and to an absolute path at that.
However, 1.3.3 yields a very different setup: the definition appears
only in UseFLTK.cmake, which FLTKConfig.cmake doesn't include, just
points FLTK_USE_FILE to.  Moreover, the definition is simply "fluid",
with no path specified.  FLTKConfig.cmake does include
FLTK-Targets.cmake, which in turn pulls in FLTK-Targets-noconfig.cmake,
but the relevant contents are evidently insufficient as well:

  # Create imported target fluid
  add_executable(fluid IMPORTED)

  # Import target "fluid" for configuration ""
  set_property(TARGET fluid APPEND PROPERTY IMPORTED_CONFIGURATIONS NOCONFIG)
  set_target_properties(fluid PROPERTIES
    IMPORTED_LOCATION_NOCONFIG "${_IMPORT_PREFIX}/bin/fluid"
    )

  list(APPEND _IMPORT_CHECK_TARGETS fluid )
  list(APPEND _IMPORT_CHECK_FILES_FOR_fluid "${_IMPORT_PREFIX}/bin/fluid" )

No version of /usr/lib/fltk/*.cmake defines FLTK_EXECUTABLE_DIRS, though
1.3.2's did define FLTK_BIN_DIR.

The FLTK packaging follows upstream here, so I think it would be better
for CMake to adapt to it than for Debian to patch FLTK to match its
historic expectations.

Thanks!

Meanwhile, affected packages such as yoshimi can work around the
problem by explicitly invoking

    cmake ... -DFLTK_FLUID_EXECUTABLE=/usr/bin/fluid ...


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to