Skip to content

Conversation

@Teemperor
Copy link
Contributor

As stated in the team meeting a month ago, we need dependencies between rootcling invocations when running with C++ modules because each built module needs to reference any depending C++ modules.

This patch also adds a build option for C++ modules that needs to be set for this setting to get active. This build option should replace the environment variable that we had before in areas where it is more practical to have a fixed CMake setting such as running PRs on Jenkins or when having CMake specific code for C++ modules.

@phsft-bot
Copy link

Starting build on centos7/gcc49, mac1012/native, slc6/gcc49, slc6/gcc62, ubuntu14/native with flags -Dvc=OFF -Dimt=ON -Dccache=ON
How to customize builds

@vgvassilev
Copy link
Member

@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=ON -Dccache=OFF -Druntime_cxxmodules=On

@phsft-bot
Copy link

Starting build on slc6/clang_gcc62 with flags -Dvc=OFF -Dimt=ON -Dccache=OFF -Dcxxmodules=ON -Druntime_cxxmodules=On
How to customize builds

Copy link
Member

@Axel-Naumann Axel-Naumann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! But I am good at C++ not CMake, so either trust your CMake-foo or ask for a review by Pere.

ROOT_BUILD_OPTION(root7 OFF "Build the ROOT 7 interface prototype, requires >= cxx14")
ROOT_BUILD_OPTION(rpath OFF "Set run-time library load path on executables and shared libraries (at installation area)")
ROOT_BUILD_OPTION(ruby OFF "Ruby ROOT bindings, requires ruby >= 1.8")
ROOT_BUILD_OPTION(runtime_cxxmodules "Enable runtime support for C++ modules." OFF)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hurray! :-)

@Teemperor Teemperor force-pushed the AddRuntimeCxxmodulesBuildOption branch from 161aa4e to a70d6ee Compare August 24, 2017 07:16
@phsft-bot
Copy link

Starting build on slc6/clang_gcc62 with flags -Dvc=OFF -Dimt=ON -Dccache=OFF -Dcxxmodules=ON -Druntime_cxxmodules=On
How to customize builds

Now that we have a build option for runtime C++ modules, we can add add
the dependencies between the rootcling invocations in case we
build with runtime_cxxmodules enabled.
@Teemperor Teemperor requested a review from peremato August 24, 2017 13:14
@vgvassilev vgvassilev self-assigned this Aug 27, 2017
@vgvassilev
Copy link
Member

LGTM, the failures are probably due to clang/gcc ABI bug.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants