@@ -1035,7 +1035,11 @@ impl Step for OmpOffload {
10351035 let inc_dir = base. display ( ) ;
10361036 cflags. push_all ( format ! ( " -I {inc_dir}" ) ) ;
10371037 }
1038+ cflags. push_all (
1039+ " -ULIBC_NAMESPACE -DLIBC_NAMESPACE=__llvm_libc_22_1_0_rust1_95_0nightly" ,
1040+ ) ;
10381041
1042+ //let mytarget = TargetSelection::from_user(omp_target);
10391043 configure_cmake ( builder, target, & mut cfg, true , LdFlags :: default ( ) , cflags, & [ ] ) ;
10401044
10411045 // Re-use the same flags as llvm to control the level of debug information
@@ -1055,24 +1059,28 @@ impl Step for OmpOffload {
10551059 . profile ( profile)
10561060 . env ( "LLVM_CONFIG_REAL" , & host_llvm_config)
10571061 . define ( "LLVM_ENABLE_ASSERTIONS" , "ON" )
1058- // .define("LLVM_ENABLE_PER_TARGET_RUNTIME_DIR", "ON")
1062+ . define ( "LLVM_ENABLE_PER_TARGET_RUNTIME_DIR" , "ON" )
10591063 . define ( "LLVM_INCLUDE_TESTS" , "OFF" )
10601064 . define ( "OFFLOAD_INCLUDE_TESTS" , "OFF" )
10611065 . define ( "OPENMP_STANDALONE_BUILD" , "ON" )
10621066 . define ( "LLVM_ROOT" , builder. llvm_out ( target) . join ( "build" ) )
10631067 . define ( "LLVM_DEFAULT_TARGET_TRIPLE" , omp_target)
1068+ . define ( "CMAKE_CXX_COMPILER_WORKS" , "TRUE" )
1069+ . define ( "CMAKE_C_COMPILER_WORKS" , "TRUE" )
10641070 . define ( "LLVM_DIR" , llvm_cmake_dir. clone ( ) ) ;
10651071 if let Some ( p) = clang_dir. clone ( ) {
10661072 cfg. define ( "Clang_DIR" , p) ;
10671073 }
10681074 if * omp_target != * target. triple {
1069- cfg. define ( "LLVM_ENABLE_RUNTIMES" , "openmp" ) ;
1070- //cfg.define("LIBC_TARGET_TRIPLE", omp_target);
1071- //cfg.define("LLVM_LIBC_FULL_BUILD", "ON");
1072- //cfg.define("LLVM_ENABLE_RUNTIMES", "openmp;libc");
1075+ //cfg.define("LLVM_ENABLE_RUNTIMES", "openmp");
1076+ cfg. define ( "LIBC_TARGET_TRIPLE" , omp_target) ;
1077+ cfg. define ( "LLVM_USE_LINKER" , "lld" ) ;
1078+ cfg. define ( "LLVM_LIBC_FULL_BUILD" , "ON" ) ;
1079+ cfg. define ( "LLVM_ENABLE_RUNTIMES" , "openmp;libc" ) ;
1080+ cfg. define ( "CMAKE_C_COMPILER_TARGET" , omp_target) ;
1081+ cfg. define ( "CMAKE_CXX_COMPILER_TARGET" , omp_target) ;
10731082 } else {
10741083 // offload can't be build for GPUs, only the host
1075- //cfg.define("LLVM_ENABLE_RUNTIMES", "openmp;offload;libc");
10761084 cfg. define ( "LLVM_ENABLE_RUNTIMES" , "openmp;offload" ) ;
10771085 }
10781086 cfg. build ( ) ;
0 commit comments