omalsa created this revision.
omalsa added a reviewer: Marble.
Herald added projects: Marble, KDE Edu.
Herald added subscribers: kde-edu, marble-devel.
omalsa requested review of this revision.

REVISION SUMMARY
  The absolute path in INCLUDE_INSTALL_DIR eventually made it into the exported
  
    MarbleTargets.cmake file in the INTERFACE_INCLUDE_DIRECTORIES target 
property.
    
    There should be _no_ absolute paths in any outputs of install.
    
    This bug causes the following use-case to fail:
    - Make Install marble
    - Move/deploy install directory to another location (e.g. deploy from 
Continuous Integration server)
    - Link to Marble from new cmake project with find_package(Marble)
    
    Because of this absolute path, the install directory cannot be moved after 
it is created.

TEST PLAN
  This bug was found while trying to deploy Marble from our Continuous 
Integration server. To reproduce:
  
  1. Build and install marble
  2. Move marble install to a different machine
  3. Try to build a cmake project that depends on libMarble
  
  This will fail because the INTERFACE_INCLUDE_DIRECTORIES contained in the 
generated MarbleTarget.cmake file is not accessible.
  
  Once my patch is applied then the above steps will work correctly.

REPOSITORY
  R34 Marble

REVISION DETAIL
  https://phabricator.kde.org/D25456

AFFECTED FILES
  CMakeLists.txt

To: omalsa, #marble
Cc: marble-devel, kde-edu, fbampaloukas, torhamzed, jalvarez, mnafees, shentey, 
chaz6, dkolozsvari, narvaez, cmihalache, rahn, apol, nienhueser

Reply via email to