set EXECUTABLE_OUTPUT_PATH with FORCE in CMakeList.txt looks wrong

Bug #1548469 reported by Michael Soegtrop on 2016-02-22
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Low
Mc

Bug Description

Dear Inkscape Team,

I wonder why you set

set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin CACHE INTERNAL "" FORCE)

with FORCE in CMakeList.txt. There are good reasons to override this on the cmake command line, but FORCE disables the possibility to override this from the command line.

One reason to do this is to setup the makefile such that the executables are directly built in a private install location. Inkscape doesn't run very well from an out of source build location (it doesn't find icons and other things). E.g. I want to create an eclipse project like this:

Local development install dir
/home/michael/InkscapeBuild/bin_master

Eclipse workspace dir:
/home/michael/InkscapeBuild/eclipse

Eclipse project and build dir
/home/michael/InkscapeBuild/eclipse/inkscape_master

Inkscape source dir
/home/michael/InkscapeBuild/inkscape-master

Then I run from the eclipse project dir:

cmake -G"Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug -D EXECUTABLE_OUTPUT_PATH=/home/michael/InkscapeBuild/bin_master/bin -D CMAKE_INSTALL_PREFIX=/home/michael/InkscapeBuild/bin_master ../../inkscape-master

This creates a nice eclipse project, I can simply import to eclipse.

Then I can build and install to the local install folder. When I rebuild or debug inkscape from eclipse, it will also go into the local install folder and I can nicely debug it there.

I guess you have some other tricks to nicely debug it, but as far as I can tell doing it the way I outlined above is quite common.

Best regards,

Michael

Version: Git master from about 1 week ago

jazzynico (jazzynico) on 2016-04-01
tags: added: build
Mc (mc...) wrote :

Fixed in r14775

Changed in inkscape:
status: New → Fix Committed
importance: Undecided → Low
assignee: nobody → Mc (mc...)
Changed in inkscape:
milestone: none → 0.92
Bryce Harrington (bryce) on 2017-01-10
Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers