[Chapel Merge] feat: get chpl to build using CMake

Branch: refs/heads/main
Revision: 9134200
Author: arezaii
Link: Unavailable
Log Message:

Merge pull request #20745 from arezaii/chpl-cmake-start

feat: get chpl to build using CMake

This PR begins the work of adding a CMake build system.

WARNING: Do not run cmake from chapel root directory, you will overwrite
all the Makefiles!

To use:

git clone chapel
cd chapel
mkdir cmake-build-debug // or whatever you want to call it
cd cmake-build-debug // or whatever you named it
cmake ../
cmake --build . --parallel 8

For users of IDEs like VScode or CLion, CMake integration should begin
working. VScode requires extension CMake Tools, and if you previously had
CLion using a different CMakeLists.txt file, you may have to start a new
project or possibly delete your .idea folder (although this will cause you
to lose all your run/debug configurations). I'm sure there's another, possibly
gentler way.

A lot of work remains to get this portable and integrated into our makefile
build system.

reviewed by @mppf - thank you!!

Modified Files:
A CMakeLists.txt

A compiler/AST/CMakeLists.txt
A compiler/CMakeLists.txt
A compiler/adt/CMakeLists.txt
A compiler/backend/CMakeLists.txt
A compiler/codegen/CMakeLists.txt
A compiler/include/CMakeLists.txt
A compiler/llvm/CMakeLists.txt
A compiler/main/CMakeLists.txt
A compiler/optimizations/CMakeLists.txt
A compiler/parser/CMakeLists.txt
A compiler/passes/CMakeLists.txt
A compiler/resolution/CMakeLists.txt
A compiler/util/CMakeLists.txt
M compiler/main/configured_prefix.h
M frontend/CMakeLists.txt
M frontend/Makefile.help
M frontend/include/chpl/config/config.h.cmake
M frontend/lib/CMakeLists.txt
M frontend/test/CMakeLists.txt
M frontend/util/CMakeLists.txt
M frontend/util/linters/CMakeLists.txt
M util/chplenv/printchplenv.py

Compare: https://github.com/chapel-lang/chapel/compare/e2efc7f43904...9134200ba2aa