--- /usr/portage/sys-libs/libomp/libomp-9.0.0.ebuild	2019-11-03 06:09:50.000000000 -0600
+++ libomp-9.0.0.ebuild	2019-12-03 08:47:15.994041981 -0600
@@ -4,7 +4,7 @@
 EAPI=7
 
 PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
-inherit cmake-multilib linux-info llvm.org multiprocessing python-any-r1
+inherit cmake-multilib linux-info llvm.org llvm multiprocessing python-any-r1
 
 DESCRIPTION="OpenMP runtime library for LLVM/clang compiler"
 HOMEPAGE="https://openmp.llvm.org"
@@ -67,8 +67,10 @@
 }
 
 multilib_src_configure() {
+	local llvm_prefix=$(get_llvm_prefix -b)
 	local libdir="$(get_libdir)"
 	local mycmakeargs=(
+		-DCMAKE_INSTALL_PREFIX="${llvm_prefix}"
 		-DOPENMP_LIBDIR_SUFFIX="${libdir#lib}"
 
 		-DLIBOMP_USE_HWLOC=$(usex hwloc)
@@ -81,6 +83,13 @@
 		# disable unnecessary hack copying stuff back to srcdir
 		-DLIBOMP_COPY_EXPORTS=OFF
 	)
+	if use cuda; then
+		export CC="${llvm_prefix}/bin/clang"
+		export CXX="${llvm_prefix}/bin/clang++"
+		mycmakeargs+=(
+			-DLIBOMPTARGET_NVPTX_COMPUTE_CAPABILITIES=35,60,70
+		)
+	fi
 	use offload && mycmakeargs+=(
 		# this is non-fatal and libomp checks for CUDA conditionally
 		# to ABI, so we can just ignore passing the wrong value