@@ -72,19 +72,17 @@ PRODUCT_CMAKE_FLAGS=(
7272 -DCMAKE_CXX_COMPILER=" ${BUILD_DIR} /bootstrap_compiler/bin/clang++"
7373 -DCMAKE_INSTALL_PREFIX=" ${ATFL_DIR} "
7474 -DLLVM_ENABLE_LLD=ON
75- -DLLVM_ENABLE_LIBCXX=ON
7675)
7776COMPILER_CMAKE_FLAGS=(
78- -DCMAKE_C_FLAGS=" -I${ATFL_DIR} /include"
79- -DCMAKE_CXX_FLAGS=" -I${ATFL_DIR} /include -I${ATFL_DIR} /include/c++/v1 -D_LIBCPP_VERBOSE_ABORT_NOT_NOEXCEPT"
80- -DCMAKE_EXE_LINKER_FLAGS=" -L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed"
81- -DCMAKE_MODULE_LINKER_FLAGS=" -L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed"
82- -DCMAKE_SHARED_LINKER_FLAGS=" -L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed"
77+ -DCMAKE_CXX_FLAGS=" -stdlib++-isystem ${ATFL_DIR} /include/c++/v1 -D_LIBCPP_VERBOSE_ABORT_NOT_NOEXCEPT"
78+ -DCMAKE_EXE_LINKER_FLAGS=" -L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++"
79+ -DCMAKE_MODULE_LINKER_FLAGS=" -L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++"
80+ -DCMAKE_SHARED_LINKER_FLAGS=" -L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++"
8381 -DCMAKE_BUILD_TYPE=Release
8482 -DCMAKE_SKIP_RPATH=No
8583 -DCMAKE_SKIP_INSTALL_RPATH=No
8684 -DLLVM_ENABLE_PROJECTS=" llvm;clang;flang;lld"
87- -DLLVM_ENABLE_RUNTIMES=" compiler-rt;libunwind;openmp"
85+ -DLLVM_ENABLE_RUNTIMES=" compiler-rt;flang-rt; libunwind;openmp"
8886 -DCLANG_ENABLE_LIBXML2=OFF
8987 -DCLANG_PLUGIN_SUPPORT=ON
9088 -DCLANG_ENABLE_STATIC_ANALYZER=ON
@@ -102,6 +100,8 @@ COMPILER_CMAKE_FLAGS=(
102100 -DCOMPILER_RT_USE_ATOMIC_LIBRARY=ON
103101 -DCOMPILER_RT_USE_LLVM_UNWINDER=OFF
104102 -DCOMPILER_RT_LIBRARY_atomic_${ATFL_TARGET_TRIPLE} =" -rtlib=compiler-rt"
103+ -DFLANG_RT_ENABLE_SHARED=ON
104+ -DFLANG_RT_ENABLE_STATIC=ON
105105 -DLIBOMP_COPY_EXPORTS=False
106106 -DLIBOMP_USE_HWLOC=False
107107 -DLIBOMP_OMPT_SUPPORT=ON
@@ -344,6 +344,7 @@ product_build() {
344344 run_command cmake ${CMAKE_ARGS} -G Ninja " ${SOURCES_DIR} /llvm" \
345345 -DBUILD_SHARED_LIBS=False \
346346 -DLIBOMP_ENABLE_SHARED=True \
347+ -DRUNTIMES_CMAKE_ARGS=" -DCMAKE_CXX_FLAGS=-stdlib++-isystem${ATFL_DIR} /include/c++/v1 -D_LIBCPP_VERBOSE_ABORT_NOT_NOEXCEPT;-DCMAKE_EXE_LINKER_FLAGS=-L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++;-DCMAKE_MODULE_LINKER_FLAGS=-L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++;-DCMAKE_SHARED_LINKER_FLAGS=-L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++" \
347348 " ${COMMON_CMAKE_FLAGS[@]} " " ${PRODUCT_CMAKE_FLAGS[@]} " " ${COMPILER_CMAKE_FLAGS[@]} " " ${LIBUNWIND_SHARED_CMAKE_FLAGS[@]} " ${extra_flags} 2>&1 |
348349 tee " ${LOGS_DIR} /product.txt"
349350 run_command cmake --build . ${CMAKE_BUILD_ARGS} 2>&1 | tee -a " ${LOGS_DIR} /product.txt"
@@ -364,6 +365,7 @@ shared_lib_build() {
364365 run_command cmake ${CMAKE_ARGS} -G Ninja " ${SOURCES_DIR} /llvm" \
365366 -DBUILD_SHARED_LIBS=True \
366367 -DLIBOMP_ENABLE_SHARED=False \
368+ -DRUNTIMES_CMAKE_ARGS=" -DCMAKE_CXX_FLAGS=-stdlib++-isystem${ATFL_DIR} /include/c++/v1 -D_LIBCPP_VERBOSE_ABORT_NOT_NOEXCEPT;-DCMAKE_EXE_LINKER_FLAGS=-L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++;-DCMAKE_MODULE_LINKER_FLAGS=-L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++;-DCMAKE_SHARED_LINKER_FLAGS=-L${ATFL_DIR} /lib -rtlib=compiler-rt -unwindlib=libunwind -Wl,--as-needed -stdlib=libc++" \
367369 " ${COMMON_CMAKE_FLAGS[@]} " -DLLVM_ENABLE_ZSTD=OFF " ${PRODUCT_CMAKE_FLAGS[@]} " " ${COMPILER_CMAKE_FLAGS[@]} " -DLIBOMP_OMPT_SUPPORT=OFF " ${LIBUNWIND_SHARED_CMAKE_FLAGS[@]} " ${extra_flags} 2>&1 |
368370 tee " ${LOGS_DIR} /shared_lib.txt"
369371 run_command cmake --build . ${CMAKE_BUILD_ARGS} 2>&1 | tee -a " ${LOGS_DIR} /shared_lib.txt"
@@ -374,7 +376,7 @@ shared_lib_build() {
374376 mv " ${ATFL_DIR} .keep" " ${ATFL_DIR} "
375377 cp " ${ATFL_DIR} .libs/lib/${ATFL_TARGET_TRIPLE} /libomp.a" \
376378 " ${ATFL_DIR} /lib/${ATFL_TARGET_TRIPLE} "
377- cp -d ${ATFL_DIR} .libs/lib/libflang_rt* \
379+ cp -d ${ATFL_DIR} .libs/lib/clang/ * /lib/ ${ATFL_TARGET_TRIPLE} / libflang_rt* \
378380 " ${ATFL_DIR} /lib/${ATFL_TARGET_TRIPLE} "
379381 rm -r " ${ATFL_DIR} .libs"
380382 echo ' -L<CFGDIR>/../runtimes/runtimes-bins/openmp/runtime/src $-Wl,--push-state $-Wl,--as-needed $-lomp $-ldl $-Wl,--pop-state' > bin/clang.cfg
@@ -402,8 +404,6 @@ package() {
402404 cp " ${LIBRARIES_DIR} /libamath.so" \
403405 " ${ATFL_DIR} /lib/${ATFL_TARGET_TRIPLE} "
404406 fi
405- cp " ${ATFL_DIR} /lib/libflang_rt.runtime.a" \
406- " ${ATFL_DIR} /lib/${ATFL_TARGET_TRIPLE} "
407407 cp ${ATFL_DIR} /include/flang/omp* " ${ATFL_DIR} /include"
408408 echo ' export PATH="$(dirname `realpath $BASH_SOURCE`)/bin:$PATH"' > " ${ATFL_DIR} /env.bash"
409409 echo " export PS1=\" (ATfL ${ATFL_VERSION} ) \$ PS1\" " >> " ${ATFL_DIR} /env.bash"
0 commit comments