@@ -533,6 +533,29 @@ bool tools::addOpenMPRuntime(ArgStringList &CmdArgs, const ToolChain &TC,
533533 return true ;
534534}
535535
536+ void tools::addOmpSsRuntime (ArgStringList &CmdArgs, const ToolChain &TC,
537+ const ArgList &Args) {
538+ std::string RuntimeDefaultHome (CLANG_DEFAULT_NANOS6_HOME);
539+ Optional<std::string> RuntimeHome =
540+ llvm::sys::Process::GetEnv (" NANOS6_HOME" );
541+ // First look at environment NANOS6_HOME,
542+ // then CMAKE defined variable.
543+ //
544+ // Default to compiler lib dir. in case both are not defined.
545+ if (RuntimeHome && !RuntimeHome->empty ()) {
546+ CmdArgs.push_back (" -L" );
547+ CmdArgs.push_back (Args.MakeArgString (RuntimeHome.getValue () + " /lib" ));
548+ CmdArgs.push_back (" -rpath" );
549+ CmdArgs.push_back (Args.MakeArgString (RuntimeHome.getValue () + " /lib" ));
550+ } else if (!RuntimeDefaultHome.empty ()) {
551+ CmdArgs.push_back (" -L" );
552+ CmdArgs.push_back (Args.MakeArgString (RuntimeDefaultHome + " /lib" ));
553+ CmdArgs.push_back (" -rpath" );
554+ CmdArgs.push_back (Args.MakeArgString (RuntimeDefaultHome + " /lib" ));
555+ }
556+ CmdArgs.push_back (" -lnanos6" );
557+ }
558+
536559static void addSanitizerRuntime (const ToolChain &TC, const ArgList &Args,
537560 ArgStringList &CmdArgs, StringRef Sanitizer,
538561 bool IsShared, bool IsWhole) {
0 commit comments