[Openmp-dev] CMake overhaul

C Bergström cbergstrom at pathscale.com
Tue Jun 23 00:45:15 PDT 2015


On Tue, Jun 23, 2015 at 4:26 AM, Peyton, Jonathan L
<jonathan.l.peyton at intel.com> wrote:
> Hello everyone,
>
>
>
> I have been working on overhauling the CMake build system for the LLVM
> OpenMP Runtime library.  Instead of sending 1000 small updates, I decided to
> do a complete refactoring/reorganizing/renaming/you-name-it-I-did-it.  **All
> the interface variables are still the same (LIBOMP_OS, LIBOMP_ARCH, etc.)**.
> So there was no change there.  Here are the major changes:
>
> 1) Renaming internal variables/macros/functions – everything has libomp_ or
> LIBOMP_ prefixed to it unless maybe if it is a local variable/parameter
> inside a function/macro.
>
> 2) config-ix.cmake added – compiler flag checks, linker flag checks, some
> feature checks, threading-model check.  This means
> cmake/${CMAKE_C_COMPILER_ID}/*Flags.cmake directories/files are deleted.

I am strongly apposed to this change. This was designed specifically
to ensure that each set of compilers can easily set their own specific
flags. Do not remove this feature.


>
> 3) All files inside cmake/ subdirectory are renamed to Libompxyz.cmake

Why - who cares? fwiw - most cmake files are named CMakeLists.txt

.cmake is typically used for cmake files which are meant to be reused
as "modules".


I am a bit annoyed with the history of the cmake build system. My
original system worked and was removed without much justification
"just because". Now it's being refactored again and it's unclear to me
the driving motivation.




More information about the Openmp-dev mailing list