-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[modules][cxxmodules] Improve the layering of our special modules. #1412
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’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[modules][cxxmodules] Improve the layering of our special modules. #1412
Conversation
|
@phsft-bot build just on slc6/gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on |
|
Starting build on |
|
@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on |
|
Starting build on |
|
Build failed on slc6/clang_gcc62. |
c50a6a7 to
84291ed
Compare
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Errors:
And 5 more |
84291ed to
30160b9
Compare
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Errors:
And 5 more |
30160b9 to
cf14b50
Compare
cf14b50 to
92f0514
Compare
|
Starting build on |
|
@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on |
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Warnings:
And 116 more |
|
@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on |
|
Starting build on |
|
Build failed on slc6/clang_gcc62. |
92f0514 to
72e87e8
Compare
|
Starting build on |
|
Build failed on ubuntu16/native. Failing tests: |
|
@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=On |
|
Starting build on |
|
@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on |
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Errors:
|
|
@phsft-bot build just on centos7/clang_gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on |
|
Starting build on |
|
Build failed on centos7/clang_gcc62. Errors:
|
72e87e8 to
d96e298
Compare
|
Starting build on |
|
Build failed on centos7/clang_gcc62. Errors:
Warnings:
|
d96e298 to
cbec7cb
Compare
|
@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on |
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Errors:
And 5 more |
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Errors:
Warnings:
Failing tests:
And 28 more |
There are three different kinds of header files in Core:
* C headers - they can be included in C contexts
* Config headers - they are supposed to be textually included in each
TU.
* No RTTI C++ headers - they can be built in non-rtti context which is
needed for stage1 builds.
The rest of the headers in Core require rtti in order to be built, either
because they use typeinfo or exceptions.
This patch structures the ROOT's special modules in that way allowing
implicit module builds to be trigger from the right complation. For
example, we cannot (and should not) trigger build of C++ module when
compiling C code.
671f273 to
c247e3e
Compare
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Errors:
|
|
@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on |
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Errors:
|
|
@phsft-bot build just on slc6/clang_gcc62 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Dctest_test_exclude_none=on -DCMAKE_GENERATOR="Unix Makefiles" |
|
Starting build on |
|
Build failed on slc6/clang_gcc62. Errors:
|
|
@phsft-bot build just on lcgapp-slc6-x86-64-25 with flags -Dcxxmodules=On -Druntime_cxxmodules=On -Droofit=Off -Dctest_test_exclude_none=on |
|
lcgapp-slc6-x86-64-26 yields different results. Running the ROOT master on that machine with the same build options gives the same test failures as this PR. |
kTRUE and kFALSE were moved in RtypesCore.h which makes the move possible.