Currently, the libomp CMake build system uses a Perl script to configure files (tools/expand-vars.pl). This patch replaces the use of the Perl script by using CMake's configure_file() function. The major changes include:
- *.var has every $KMP_* variable changed to @LIBOMP_*@
- kmp_config.h.cmake is a new file which contains all the feature macros and #cmakedefine lines
- Most of the -D lines have been moved from LibompDefinitions.cmake but some OS specific MACROs (e.g., _GNU_SOURCE) remain.
- All expand-vars.pl related logic is removed from the CMake files.
One important note about this change is that it breaks the old Perl+Makefile build system because it can't create kmp_config.h properly.
Couldn't this be replaced with #include "kmp_config.h" ...