Skip to content

Allow multiple calls to REFLEX_GENERATE_DICTIONARY #16256

@Dr15Jones

Description

@Dr15Jones

Explain what you would like to see improved and how.

The CMake function REFLEX_GENERATE_DICTIONARY can only be called once for each CMake target as it generates a file based on the target name.

In CMS code, we allow multiple classes_def*.xml files for each library being created. This has sped up compilation and avoids excessing memory use by the compiler. Because of the restriction in REFLEX_GENERATE_DICTIONARY , my experiments to use CMake to generate some CMSSW code was unable to use that function.

It appears that if REFLEX_GENERATE_DICTIONARY used part of the name of the SELECTION argument for the generate class name it could be possible to have multiple calls to the function for the same target.

ROOT version

   ------------------------------------------------------------------
  | Welcome to ROOT 6.33.01                        https://root.cern |
  | (c) 1995-2024, The ROOT Team; conception: R. Brun, F. Rademakers |
  | Built for linuxx8664gcc on Jul 22 2024, 08:52:38                 |
  | From heads/master@tags/v6-33-01                                  |
  | With g++ (GCC) 12.3.1 20230527                                   |
  | Try '.help'/'.?', '.demo', '.license', '.credits', '.quit'/'.q'  |
   ------------------------------------------------------------------

Installation method

from source

Operating system

Linux alma 8

Additional context

No response

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions