New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CMake] ADD external projects handling #649

Merged
merged 13 commits into from May 23, 2018

Conversation

4 participants
@guparan
Copy link
Member

guparan commented Apr 28, 2018

This PR mainly changes SofaMacros.cmake to permit external (on another repository) projects/plugins to be automatically fetched, updated and added to SOFA.

Important: this work will permit to include SofaQtQuick GUI as an external project 馃槈

This is a modified version of @fredroy branch setup_external_plugin.


This PR:

  • builds with SUCCESS for all platforms on the CI.
  • does not generate new warnings.
  • does not generate new unit test failures.
  • does not generate new scene test failures.
  • does not break API compatibility.
  • is more than 1 week old (or has fast-merge label).

Reviewers will merge only if all these checks are true.

Frederick Roy and others added some commits Oct 12, 2017

@guparan

This comment has been minimized.

Copy link
Member

guparan commented May 2, 2018

TODO: try to edit the fetched plugin and configure again to see if CMake is not erasing user modifications.

.gitignore Outdated
@@ -41,6 +41,9 @@ CMakeLists.txt.user*
# custom cmake file
custom.cmake

# Ingnore other .gitignore

This comment has been minimized.

@guparan

@hugtalbot hugtalbot modified the milestone: v18.06 May 9, 2018

@guparan

This comment has been minimized.

Copy link
Member

guparan commented May 16, 2018

Back to wip until tested and typo fixed.

guparan added some commits May 16, 2018

@guparan

This comment has been minimized.

Copy link
Member

guparan commented May 16, 2018

Just tried to add commits in my external plugin and then re-fetch, nothing was erased 馃憤

@hugtalbot hugtalbot self-requested a review May 16, 2018

@@ -316,9 +315,11 @@ macro(sofa_add_generic_external directory name type)
if(EXISTS "${location}/src" AND IS_DIRECTORY "${location}/src")
configure_file(${location}/ExternalProjectConfig.cmake.in ${${name}_TEMP_DIR}/CMakeLists.txt)
if("${type}" STREQUAL "subdirectory")
message( 'coucou' )

This comment has been minimized.

@damienmarchal

damienmarchal May 17, 2018

Contributor

coucou

FIX SofaMacro for single plugin case
Issue in path (plugin_name instead of name)
Remove the warning: not an experimental feature

@guparan guparan force-pushed the guparan:setup_external_plugin branch from dfcf92b to 11834fd May 17, 2018

@hugtalbot hugtalbot removed the status: wip label May 18, 2018

@damienmarchal

This comment has been minimized.

Copy link
Contributor

damienmarchal commented May 23, 2018

This is not really equivalent but on our side we are doing: https://github.com/SofaDefrost/SPM

@hugtalbot hugtalbot merged commit 8a38ac1 into sofa-framework:master May 23, 2018

6 checks passed

Dashboard Builds triggered.
Details
Scene tests Ignored (small diff). Use [ci-build][with-scene-tests] to still trigger.
Details
centos_clang-3.4_options OK (tests ignored, see details)
Details
mac_clang-3.4_options OK (tests ignored, see details)
Details
ubuntu_gcc-5.4_options OK (tests ignored, see details)
Details
windows7_VS-2015_options_amd64 OK (tests ignored, see details)
Details

@guparan guparan deleted the guparan:setup_external_plugin branch Oct 1, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment