Skip to content

Conversation

@vgvassilev
Copy link
Member

This would allow CMSSW to build its third party modules by calling:

rootcling bare-cling -xc++ -I${ROOTSYS}/etc -I ${headers_location}
                                 -fmodules -Xclang -emit-module -fmodule-name=tinyxml2
                                 -fmodules-cache-path=${CMSSW_LIBDIR} -o ${module_file_location}
                                 ${headers_location}/module.modulemap

This commit has several issues one is that it does not order the dependencies so if libc.pcm goes out of date the build system does not regenerate std.pcm.

cc: @oshadura, @davidlange6, @smuzaffar

@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on ROOT-fedora30/cxx14.
Running on root-fedora30-2.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-01T14:52:19.447Z] ninja: error: 'etc/cling/module.modulemap', needed by 'lib/Cling_Runtime.pcm', missing and no known rule to make it

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft18.dyndns.cern.ch:/Users/sftnight/build/jenkins/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-01T15:03:32.166Z] CMake Error at cmake/modules/RootMacros.cmake:287 (message):
  • [2020-05-01T15:03:32.423Z] CMake Error at /Users/sftnight/build/jenkins/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:968 (message):

@phsft-bot
Copy link

Build failed on ROOT-fedora29/python3.
Running on root-fedora29-3.cern.ch:/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-01T15:10:37.804Z] ninja: error: 'etc/cling/module.modulemap', needed by 'lib/Cling_Runtime.pcm', missing and no known rule to make it

@vgvassilev vgvassilev force-pushed the rootcling_barecling_external_modules branch from 022148b to a879994 Compare May 4, 2020 08:25
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft18.dyndns.cern.ch:/Users/sftnight/build/jenkins/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-04T08:29:16.788Z] CMake Error at cmake/modules/RootMacros.cmake:287 (message):
  • [2020-05-04T08:29:17.045Z] CMake Error at /Users/sftnight/build/jenkins/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:968 (message):

@vgvassilev vgvassilev force-pushed the rootcling_barecling_external_modules branch from a879994 to bec0e46 Compare May 7, 2020 17:56
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@vgvassilev vgvassilev changed the title WIP: [cxxmodules] Teach cling to build modules; Build dependent modules explicitly. [cxxmodules] Teach cling to build modules; Build dependent modules explicitly. May 7, 2020
@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft20.dyndns.cern.ch:/Users/sftnight/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-07T17:57:42.102Z] CMake Error at cmake/modules/RootMacros.cmake:287 (message):
  • [2020-05-07T17:57:42.102Z] CMake Error at /Users/sftnight/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:988 (message):

@phsft-bot
Copy link

Build failed on ROOT-fedora30/cxx14.
Running on root-fedora30-2.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-07T18:01:39.948Z] ninja: error: 'etc/cling/module.modulemap', needed by 'lib/Cling_Runtime.pcm', missing and no known rule to make it

@phsft-bot
Copy link

Build failed on ROOT-fedora29/python3.
Running on root-fedora29-3.cern.ch:/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-07T18:12:00.973Z] ninja: error: 'etc/cling/module.modulemap', needed by 'lib/Cling_Runtime.pcm', missing and no known rule to make it

@vgvassilev vgvassilev force-pushed the rootcling_barecling_external_modules branch from bec0e46 to fdca56d Compare May 7, 2020 19:55
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on ROOT-fedora30/cxx14.
Running on root-fedora30-2.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-07T19:58:30.450Z] ninja: error: 'etc/cling/module.modulemap', needed by 'lib/Cling_Runtime.pcm', missing and no known rule to make it

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft18.dyndns.cern.ch:/Users/sftnight/build/jenkins/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-07T19:59:15.593Z] CMake Error at cmake/modules/RootMacros.cmake:287 (message):
  • [2020-05-07T19:59:15.851Z] CMake Error at /Users/sftnight/build/jenkins/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:988 (message):

@vgvassilev
Copy link
Member Author

@phsft-bot build!

@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft18.dyndns.cern.ch:/Users/sftnight/build/jenkins/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-08T05:05:12.418Z] CMake Error at cmake/modules/RootMacros.cmake:287 (message):
  • [2020-05-08T05:05:12.677Z] CMake Error at /Users/sftnight/build/jenkins/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:988 (message):

@phsft-bot
Copy link

Build failed on ROOT-fedora30/cxx14.
Running on root-fedora30-2.cern.ch:/home/sftnight/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-08T05:05:35.893Z] ninja: error: 'etc/cling/module.modulemap', needed by 'lib/Cling_Runtime.pcm', missing and no known rule to make it

@phsft-bot
Copy link

Build failed on windows10/cxx14.
Running on null:C:\build\workspace\root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-08T05:08:55.195Z] CMake Error at C:/build/workspace/root-pullrequests-build/build/TBB-prefix/src/TBB-stamp/TBB-build-Release.cmake:49 (message):

@phsft-bot
Copy link

Build failed on ROOT-fedora29/python3.
Running on root-fedora29-2.cern.ch:/build/workspace/root-pullrequests-build
See cdash.
See console output.

Failing tests:

@vgvassilev
Copy link
Member Author

@phsft-bot build!

@phsft-bot
Copy link

Build failed on ROOT-fedora29/python3.
Running on root-fedora29-3.cern.ch:/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-08T11:33:49.947Z] CMake Error at cmake/modules/SearchInstalledSoftware.cmake:1515 (message):
  • [2020-05-08T11:33:49.948Z] CMake Error at /mnt/build/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:988 (message):

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft18.dyndns.cern.ch:/Users/sftnight/build/jenkins/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-08T11:38:15.106Z] CMake Error at cmake/modules/RootMacros.cmake:287 (message):
  • [2020-05-08T11:38:15.363Z] CMake Error at /Users/sftnight/build/jenkins/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:988 (message):

@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft18.dyndns.cern.ch:/Users/sftnight/build/jenkins/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-09T19:05:16.274Z] CMake Error at cmake/modules/RootMacros.cmake:287 (message):
  • [2020-05-09T19:05:16.532Z] CMake Error at /Users/sftnight/build/jenkins/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:988 (message):

@vgvassilev vgvassilev force-pushed the rootcling_barecling_external_modules branch from 84c61c7 to af6bfc7 Compare May 9, 2020 20:05
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft18.dyndns.cern.ch:/Users/sftnight/build/jenkins/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-09T20:07:12.655Z] CMake Error at cmake/modules/RootMacros.cmake:288 (message):
  • [2020-05-09T20:07:12.912Z] CMake Error at /Users/sftnight/build/jenkins/workspace/root-pullrequests-build/rootspi/jenkins/root-build.cmake:988 (message):

@phsft-bot
Copy link

@vgvassilev vgvassilev force-pushed the rootcling_barecling_external_modules branch from af6bfc7 to 5eed354 Compare May 9, 2020 20:27
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft20.dyndns.cern.ch:/Users/sftnight/build/workspace/root-pullrequests-build
See cdash.
See console output.

Errors:

  • [2020-05-09T20:44:17.603Z] /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/module.modulemap:118:11: error: header 'stdarg.h' not found
  • [2020-05-09T20:44:17.603Z] /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/module.modulemap:1:1: error: unknown type name 'module'
  • [2020-05-09T20:44:17.603Z] /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/module.modulemap:1:29: error: use of undeclared identifier 'system'
  • [2020-05-09T20:44:17.604Z] :1:38: error: use of undeclared identifier 'extern_c'module AppleTextureEncoder [system] [extern_c] {
  • [2020-05-09T20:44:17.870Z] /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/module.modulemap:2:2: error: use of undeclared identifier 'header'
  • [2020-05-09T20:44:17.870Z] :2:2: error: use of undeclared identifier 'header'
  • [2020-05-09T20:44:17.870Z] /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/module.modulemap:2:2: error: use of undeclared identifier 'header'
  • [2020-05-09T20:44:17.870Z] /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/module.modulemap:5:2: error: expected ';' after top level declarator
  • [2020-05-09T20:44:17.870Z] /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/module.modulemap:5:2: error: expected ';' after top level declarator
  • [2020-05-09T20:44:17.870Z] /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/module.modulemap:5:2: error: expected ';' after top level declarator

And 117 more

@phsft-bot
Copy link

Build failed on ROOT-fedora29/python3.
Running on root-fedora29-2.cern.ch:/build/workspace/root-pullrequests-build
See cdash.
See console output.

Failing tests:

@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

…plicitly.

This allows external users to call rootcling as:

rootcling bare-cling -xc++ -I${ROOTSYS}/etc -I ${headers_location}
                     -fmodules -Xclang -emit-module -fmodule-name=tinyxml2
                     -fmodules-cache-path=${CMSSW_LIBDIR} -o ${module_file_location}
                      ${headers_location}/module.modulemap
This will allow us to generalize it to resolve C headers as well.
New versions of OSX has libc in the sdk path and not at the usual /usr/include.
Detect the location in a similar way to detection of the C++ headers.

This solves the issue with the failure to build the Darwin.pcm file and the
diagnostic that there is no module.modulemap for osx 10.15 in /usr/include/
@vgvassilev vgvassilev force-pushed the rootcling_barecling_external_modules branch from 25c9029 to e627c0b Compare May 12, 2020 10:49
@phsft-bot
Copy link

Starting build on ROOT-debian10-i386/cxx14, ROOT-performance-centos7-multicore/default, ROOT-fedora29/python3, ROOT-fedora30/cxx14, ROOT-fedora31/noimt, ROOT-ubuntu16/nortcxxmod, mac1015/cxx17, windows10/cxx14
How to customize builds

@phsft-bot
Copy link

Build failed on mac1015/cxx17.
Running on macphsft20.dyndns.cern.ch:/Users/sftnight/build/workspace/root-pullrequests-build
See cdash.
See console output.

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants