Skip to content

sys-devel/DPC++: Update to nightly 2026.06.18#1402

Open
Emimendoza wants to merge 4 commits into
gentoo:masterfrom
Emimendoza:master
Open

sys-devel/DPC++: Update to nightly 2026.06.18#1402
Emimendoza wants to merge 4 commits into
gentoo:masterfrom
Emimendoza:master

Conversation

@Emimendoza

@Emimendoza Emimendoza commented Jun 20, 2026

Copy link
Copy Markdown

Rationale of changes when compared to previous ebuilds.

Why nightly and not latest official release (6.3.0*)?

Originally I was trying to port the latest official release but DPC++ is very tightly coupled to level-zero, so it would either involve requiring an old version of level-zero installed, or adding slotted level-zeros, or bundling level-zero. This option seemed the least painful.

*: the proprietary compiler follows the yyyy.mm.dd versioning format but their open source releases follow major.minor.patch format; its weird

Why require such a weird version of spirv-headers which can (currently) only be satisfied by the live version?

This commit bumps the required spirv-header version to one that is newer than the latest tag on the spirv-headers github. Khronos tags spirv-headers based off of releases to the vulkan sdk and that's what gentoo uses for their package versions. So as it currently stands, only the live version of the headers contain the required spirv extensions but the next vulkan sdk release will most probably have them; this way there won't be a need to update this ebuild when the time comes.

What's with dev-cpp/parallel-hashmap requirement?

It is required to build the sycl toolchain, fortunately guru contains a compatible version.

What's with bundled emhash, unified-memory-framework and no longer bundling unified-runtime?

Unified-Runtime got upstreamed to intel/llvm so it is compiled with DPC++ in this ebuild, however, it relies on unified-memory-framework which is not upstreamed into intel/llvm. UMF could probably be unbundled but I havent come accross a project that uses UMF but not UR. Emhash is required to compile DPC++ but no ebuilds exist for it in any overlay (that I could find).

Why did you remove the esimd_emulator USE flag?

The project has been archived by intel a while ago.

What is with the offload UR_* unused cmake arguments?

There is a unified-runtime offload backend which used to build with this ebuild (nightly version 2026-08-07 and before) but upstream changed the installation path of liboffload.so and the offload backend no longer compiles. This isn't an issue unique to this ebuild, they broke their own github CI jobs doing so and have decided to simply disable them instead of addressing the breaking commit. I left most of the ebuild intact so that it should be as simple as adding ";offload" to LLVM_ENABLE_RUNTIMES and setting UR_BUILD_ADAPTER_OFFLOAD to ON and uncommenting the "cmake_build runtimes/install" line in src_compile() once the issue is fixed or someone feels like making a patch reverting the commit.

Why are you compiling the LLVM toolchain as static?

We need to compile llvm as a static library because otherwise libsycl.so crashes at runtime because it dlopen's the intel graphics compiler dynlib which pulls in its own llvm dynlib. If it weren't for that it also might crash because something is pulling in vulkan and mesa's vulkan implementation also pulls in its slotted llvm dynlib. This is the path of least resistance. For context, intel's official binary debian packages statically link the llvm components to intel graphics compiler. We don't do that in the igc ebuild (which is in the main gentoo repo).

What is this DPC++-6.3.0-zstd.patch?

The sycl project ignores the LLVM_USE_STATIC_ZSTD cmake variable and will unconditionally try to link to static zstd, which might not exist. The version comes from me originally porting 6.3.0 (please see first item in this PR for clarification) and I decided to keep the name since it is the latest stable release which requires such patch, this way if future nightly ebuilds are released, they wont all require their own versions of this patch and this makes more sense than to have them all use the same patch but just have a random nightly version as the version name in the patch.

@Emimendoza

Copy link
Copy Markdown
Author

I also have an updated oneDPL ebuild but since it depends on this, I have decided not to include it in this PR until I get feedback on this PR/this PR gets merged. I also didn't want to touch the package.mask entry of these packages to keep the PR as single issue as possible.

@APN-Pucky

Copy link
Copy Markdown
Member

Hi, first of thanks for looking into this! However the verbosity of the PR description is very LLM-suspicious. Just in case you did not know here is gentoo's AI policy https://wiki.gentoo.org/wiki/Project:Council/AI_policy.

@Emimendoza

Emimendoza commented Jun 20, 2026

Copy link
Copy Markdown
Author

@APN-Pucky Sorry about the verbosity, no AI was used in this PR nor on the description. I am just a very verbose person (example). I have been personally using this modified ebuild for a month now and upstream intel/llvm kept changing things that made me run into issues which slowly lead to the accumulation of the changes in this PR. I just wanted to explain basically everything that makes it different from the existing ebuilds to avoid a lengthy back and forth. Last time I contributed to an open source project (funnily enough it was LLVM), I spent like a week in the PR review process over trivial things and just wanted to reduce the friction as much as possible.

@APN-Pucky

Copy link
Copy Markdown
Member

Thanks! No problem and being verbose is good. I will review and test it coming week.

Comment thread sys-devel/DPC++/DPC++-2026.06.18.ebuild Outdated
Comment thread sys-devel/DPC++/DPC++-2026.06.18.ebuild Outdated
Comment thread sys-devel/DPC++/DPC++-2026.06.18.ebuild Outdated
@Emimendoza
Emimendoza requested a review from APN-Pucky June 24, 2026 02:06
@APN-Pucky

Copy link
Copy Markdown
Member

Thanks. I tried to fetch it but noticed that your commits do not have a sign-off line (See https://devmanual.gentoo.org/general-concepts/copyright-policy/index.html). You can squash the two commits and add it (git commit --signoff or manually append it to the commit message)

@APN-Pucky

APN-Pucky commented Jun 24, 2026

Copy link
Copy Markdown
Member

@Emimendoza

$ pkgcheck scan --commits
sys-devel/DPC++
  DoubleEmptyLine: version 2026.06.18: ebuild has unneeded empty line on lines: 68, 88
  ExcessiveLineLength: version 2026.06.18: excessive line length (over 120 characters) on line: 43
  NonexistentDeps: version 2026.06.18: DEPEND: nonexistent package: >=dev-cpp/parallel-hashmap-1.3.12
  NonexistentDeps: version 2026.06.18: RDEPEND: nonexistent package: >=dev-cpp/parallel-hashmap-1.3.12

::sci does not have parallel-hashmap. it is only in ::guru. adding @Nowa-Ammerlaan : should we duplicate it in ::sci or move it from ::guru to ::gentoo?

@APN-Pucky

Copy link
Copy Markdown
Member

Given you need very recent spirv-headers I don't think indirectly depending on the latest 9999 version is correct here. Since this ebuild will not support ~amd64 keywording then as it's dependencies do not.

@Emimendoza

Copy link
Copy Markdown
Author

Since this ebuild will not support ~amd64 keywording then as it's dependencies do not.

Maybe the best would be to have this ebuild be ** keyworded and can be brought to ~amd64 keywording at the next release of the vulkan sdk? Its also a random nightly build so maybe ** keywording is the most appropriate anyways.

@Emimendoza

Copy link
Copy Markdown
Author

Squashed and signed off as requested

Comment thread sys-devel/DPC++/DPC++-2026.06.18.ebuild Outdated
@APN-Pucky

APN-Pucky commented Jun 24, 2026

Copy link
Copy Markdown
Member
...
-- Will fetch emhash from https://github.com/ktprime/emhash
-- Performing Test CXX_HAS_FCF_PROTECTION_FULL
-- Performing Test CXX_HAS_FCF_PROTECTION_FULL - Success
-- Performing Test CXX_HAS_FSTACK_CLASH_PROTECTION
-- Performing Test CXX_HAS_FSTACK_CLASH_PROTECTION - Success
-- Performing Test USING_LIBSTDCXX
-- Performing Test USING_LIBSTDCXX - Success
-- Checking for module 'level-zero>=1.29.0'
--   Package dependency requirement 'level-zero >= 1.29.0' could not be satisfied.
Package 'level-zero' has version '1.28.6', required version is '>= 1.29.0'
-- Level Zero Adapter: Download Level Zero loader and headers from github.com
-- Level Zero Adapter: Will fetch Level Zero Loader from https://github.com/oneapi-src/level-zero.git
[1/9] Creating directories for 'level-zero-loader-populate'
[1/9] Performing download step (git clone) for 'level-zero-loader-populate'
Cloning into 'level-zero-loader-src'...
fatal: unable to access 'https://github.com/oneapi-src/level-zero.git/': Could not resolve host: github.com (Could not contact DNS servers)
Cloning into 'level-zero-loader-src'...
fatal: unable to access 'https://github.com/oneapi-src/level-zero.git/': Could not resolve host: github.com (Could not contact DNS servers)
Cloning into 'level-zero-loader-src'...
fatal: unable to access 'https://github.com/oneapi-src/level-zero.git/': Could not resolve host: github.com (Could not contact DNS servers)
Had to git clone more than once: 3 times.
CMake Error at level-zero-loader-subbuild/level-zero-loader-populate-prefix/tmp/level-zero-loader-populate-gitclone.cmake:50 (message):
  Failed to clone repository: 'https://github.com/oneapi-src/level-zero.git'


FAILED: [code=1] level-zero-loader-populate-prefix/src/level-zero-loader-populate-stamp/level-zero-loader-populate-download /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/build/_deps/level-zero-loader-subbuild/level-zero-loader-populate-prefix/src/level-zero-loader-populate-stamp/level-zero-loader-populate-download 
cd /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/build/_deps && /usr/bin/cmake -DCMAKE_MESSAGE_LOG_LEVEL=VERBOSE -P /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/build/_deps/level-zero-loader-subbuild/level-zero-loader-populate-prefix/tmp/level-zero-loader-populate-gitclone.cmake && /usr/bin/cmake -E touch /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/build/_deps/level-zero-loader-subbuild/level-zero-loader-populate-prefix/src/level-zero-loader-populate-stamp/level-zero-loader-populate-download
ninja: build stopped: subcommand failed.

CMake Error at /usr/share/cmake/Modules/FetchContent.cmake:1931 (message):
  Build step for level-zero-loader failed: 1
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FetchContent.cmake:1622 (__FetchContent_populateSubbuild)
  /usr/share/cmake/Modules/FetchContent.cmake:2158:EVAL:2 (__FetchContent_doPopulation)
  /usr/share/cmake/Modules/FetchContent.cmake:2158 (cmake_language)
  /usr/share/cmake/Modules/FetchContent.cmake:2399 (__FetchContent_Populate)
  /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/unified-runtime/cmake/FetchLevelZero.cmake:76 (FetchContent_MakeAvailable)
  /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/unified-runtime/source/common/CMakeLists.txt:6 (include)
  ...
  
  [ERROR] >>> atom: =sys-devel/DPC++-2026.06.18::science, USE flags: '-cuda -hip -llvm_targets_AArch64 -llvm_targets_AMDGPU -llvm_targets_ARM -llvm_targets_AVR -llvm_targets_BPF -llvm_targets_Hexagon -llvm_targets_Lanai -llvm_targets_MSP430 -llvm_targets_Mips -llvm_targets_NVPTX -llvm_targets_PowerPC -llvm_targets_RISCV -llvm_targets_Sparc -llvm_targets_SystemZ -llvm_targets_WebAssembly -llvm_targets_X86 -llvm_targets_XCore'

something fails for me. I am running in the supposed network-sandbox so it can not Fetch anything from the network.

@Emimendoza

Emimendoza commented Jun 24, 2026

Copy link
Copy Markdown
Author

Do you not have level-zero installed? It is a requirement. The build system will try to fetch any of the requirements that aren't installed which is annoying. Edit: Wait nvm I see that it requires a newer version of level-zero than the amd64 keyworded one.

Signed-off-by: Emilio M <emendoz@clemson.edu>
@Emimendoza

Copy link
Copy Markdown
Author

Now it should pull in the correct level-zero version

Co-authored-by: Alexander Puck Neuwirth <APN-Pucky@users.noreply.github.com>
@APN-Pucky

Copy link
Copy Markdown
Member

It pulled/instealled dev-libs/level-zero-1.30.0 now first, but then similar, but different:

-- Fetching sparse source level_zero/include from https://github.com/intel/compute-runtime.git 26.18.38308.1
hint: Using 'master' as the name for the initial branch. This default branch name
hint: will change to "main" in Git 3.0. To configure the initial branch name
hint: to use in all of your new repositories, which will suppress this warning,
hint: call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
hint:
hint: Disable this message with "git config set advice.defaultBranchName false"
Initialized empty Git repository in /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/build/content-exp-headers/.git/
Switched to a new branch 'main'
fatal: unable to access 'https://github.com/intel/compute-runtime.git/': Could not resolve host: github.com (Could not contact DNS servers)
error: pathspec '26.18.38308.1' did not match any file(s) known to git
CMake Warning (dev) at /usr/share/cmake/Modules/FetchContent.cmake:1966 (message):
  Calling FetchContent_Populate(exp-headers) is deprecated, call
  FetchContent_MakeAvailable(exp-headers) instead.  Policy CMP0169 can be set
  to OLD to allow FetchContent_Populate(exp-headers) to be called directly
  for now, but the ability to call it with declared details will be removed
  completely in a future version.
Call Stack (most recent call first):
  /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/unified-runtime/cmake/FetchLevelZero.cmake:139 (FetchContent_Populate)
  /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/unified-runtime/source/common/CMakeLists.txt:6 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Error at /usr/share/cmake/Modules/ExternalProject/shared_internal_commands.cmake:1308 (message):
  No download info given for 'exp-headers-populate' and its source directory:

   /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/build/content-exp-headers/level_zero/include

  is not an existing non-empty directory.  Please specify one of:

   * SOURCE_DIR with an existing non-empty directory
   * DOWNLOAD_COMMAND
   * URL
   * GIT_REPOSITORY
   * SVN_REPOSITORY
   * HG_REPOSITORY
   * CVS_REPOSITORY and CVS_MODULE
Call Stack (most recent call first):
  /usr/share/cmake/Modules/ExternalProject.cmake:3258 (_ep_add_download_command)
  CMakeLists.txt:22 (ExternalProject_Add)


-- Configuring incomplete, errors occurred!

CMake Error at /usr/share/cmake/Modules/FetchContent.cmake:1919 (message):
  CMake step for exp-headers failed: 1
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FetchContent.cmake:1622 (__FetchContent_populateSubbuild)
  /usr/share/cmake/Modules/FetchContent.cmake:2158:EVAL:2 (__FetchContent_doPopulation)
  /usr/share/cmake/Modules/FetchContent.cmake:2158 (cmake_language)
  /usr/share/cmake/Modules/FetchContent.cmake:1991:EVAL:1 (__FetchContent_Populate)
  /usr/share/cmake/Modules/FetchContent.cmake:1991 (cmake_language)
  /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/unified-runtime/cmake/FetchLevelZero.cmake:139 (FetchContent_Populate)
  /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/unified-runtime/source/common/CMakeLists.txt:6 (include)


-- Configuring incomplete, errors occurred!

[ERROR] >>> atom: =sys-devel/DPC++-2026.06.18::science, USE flags: '-cuda -hip -llvm_targets_AArch64 -llvm_targets_AMDGPU -llvm_targets_ARM -llvm_targets_AVR -llvm_targets_BPF -llvm_targets_Hexagon -llvm_targets_Lanai -llvm_targets_MSP430 -llvm_targets_Mips -llvm_targets_NVPTX -llvm_targets_PowerPC -llvm_targets_RISCV -llvm_targets_Sparc -llvm_targets_SystemZ -llvm_targets_WebAssembly -llvm_targets_X86 -llvm_targets_XCore'

@APN-Pucky

APN-Pucky commented Jun 24, 2026

Copy link
Copy Markdown
Member

@Emimendoza you can check it yourself by setting (some of) the following features for test installing the ebuild:

$ FEATURES="network-sandbox preserve-libs sandbox test userpriv usersandbox" emerge/ebuild  sys-devel/DPC++

@Nowa-Ammerlaan

Copy link
Copy Markdown
Member

I vaguely remember bumping into that same problem before, could be a merged-usr/split-usr thing where it does not find the libraries it is looking for.

Signed-off-by: Emilio M <emendoz@clemson.edu>
@APN-Pucky

APN-Pucky commented Jul 16, 2026

Copy link
Copy Markdown
Member

Thank you for the update. Somehow this tries to install old llvm-core/clang:17 (now?) which oddly fails on my system. Investigating....

EDIT: it is due to

dev-libs/intel-compute-runtime -> dev-util/intel-graphics-compiler -> dev-libs/opencl-clang -> ...

which have maximum LLVM_SLOT=17

@Emimendoza

Emimendoza commented Jul 16, 2026

Copy link
Copy Markdown
Author

Yup, didn't realize that this ebuild didn't require the intel-compute-runtime which was independently installed on my system. I suspect that is why it failed to compile on yours earlier. I tested this ebuild on a new system and it managed to install DPC++ but It can't run the full test suite. It looks like there are a lot of LLVM projects that need to be enabled for the "check" command to work. And that some of the tests are non trivial since they require manually 'LD_PRELOAD'ing the address sanitizer library. About clang-17 failing to build. I think I recall running into the same issue when compiling the package with gcc-16 and managed to get it to compile by setting CXX and CC to clang for that package.

@APN-Pucky

APN-Pucky commented Jul 17, 2026

Copy link
Copy Markdown
Member

I could install clang:17 now and try DPC++ again. However I had to disable clang:17's abi_x86 for it to work on my system, resulting in this error:

CMake Warning at /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/llvm/cmake/modules/HandleLLVMOptions.cmake:391 (message):
  -fPIC is not supported.
Call Stack (most recent call first):
  /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/llvm/cmake/modules/HandleLLVMOptions.cmake:457 (add_flag_or_print_warning)
  CMakeLists.txt:204 (include)


-- Performing Test C_SUPPORTS_FNO_SEMANTIC_INTERPOSITION
-- Performing Test C_SUPPORTS_FNO_SEMANTIC_INTERPOSITION - Failed
-- Performing Test CXX_SUPPORTS_FNO_SEMANTIC_INTERPOSITION
-- Performing Test CXX_SUPPORTS_FNO_SEMANTIC_INTERPOSITION - Failed
-- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG
-- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Failed
-- Performing Test CXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG
-- Performing Test CXX_SUPPORTS_SUGGEST_OVERRIDE_FLAG - Failed
-- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP
-- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP - Failed
-- Performing Test C_SUPPORTS_MISLEADING_INDENTATION_FLAG
-- Performing Test C_SUPPORTS_MISLEADING_INDENTATION_FLAG - Failed
-- Performing Test CXX_SUPPORTS_MISLEADING_INDENTATION_FLAG
-- Performing Test CXX_SUPPORTS_MISLEADING_INDENTATION_FLAG - Failed
-- Performing Test C_SUPPORTS_CTAD_MAYBE_UNSPPORTED_FLAG
-- Performing Test C_SUPPORTS_CTAD_MAYBE_UNSPPORTED_FLAG - Failed
-- Performing Test CXX_SUPPORTS_CTAD_MAYBE_UNSPPORTED_FLAG
-- Performing Test CXX_SUPPORTS_CTAD_MAYBE_UNSPPORTED_FLAG - Failed
-- Performing Test LINKER_SUPPORTS_COLOR_DIAGNOSTICS
-- Performing Test LINKER_SUPPORTS_COLOR_DIAGNOSTICS - Failed
-- Precompiled headers enabled.
-- Looking for os_signpost_interval_begin
-- Looking for os_signpost_interval_begin - not found
-- Looking for flock
-- Looking for flock - found
-- Found Python3: /var/tmp/portage/sys-devel/DPC++-2026.06.18/temp/python3.14/bin/python3 (found version "3.14.6") found components: Interpreter
-- LLVM host triple: x86_64-unknown-linux-gnu
-- LLVM default target triple: x86_64-unknown-linux-gnu
-- Doxygen disabled.
-- Looking for unwind.h
-- Looking for unwind.h - found
-- Looking for rpc/xdr.h
-- Looking for rpc/xdr.h - not found
-- Performing Test COMPILER_RT_HAS_NO_DEFAULT_CONFIG_FLAG
-- Performing Test COMPILER_RT_HAS_NO_DEFAULT_CONFIG_FLAG - Failed
-- Performing Test CXX_SUPPORTS_UNWINDLIB_NONE_FLAG
-- Performing Test CXX_SUPPORTS_UNWINDLIB_NONE_FLAG - Failed
-- Looking for fopen in c
-- Looking for fopen in c - found
-- Looking for __gcc_personality_v0 in gcc_s
-- Looking for __gcc_personality_v0 in gcc_s - found
-- Performing Test C_SUPPORTS_NODEFAULTLIBS_FLAG
-- Performing Test C_SUPPORTS_NODEFAULTLIBS_FLAG - Failed
-- Looking for __atomic_load_8 in atomic
-- Looking for __atomic_load_8 in atomic - found
-- Performing Test COMPILER_RT_HAS_FFREESTANDING_FLAG
-- Performing Test COMPILER_RT_HAS_FFREESTANDING_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_OMIT_FRAME_POINTER_FLAG
-- Performing Test COMPILER_RT_HAS_OMIT_FRAME_POINTER_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_STD_C11_FLAG
-- Performing Test COMPILER_RT_HAS_STD_C11_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FCF_PROTECTION_FLAG
-- Performing Test COMPILER_RT_HAS_FCF_PROTECTION_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FPIC_FLAG
-- Performing Test COMPILER_RT_HAS_FPIC_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FPIE_FLAG
-- Performing Test COMPILER_RT_HAS_FPIE_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_BUILTIN_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_BUILTIN_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_EXCEPTIONS_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_EXCEPTIONS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FOMIT_FRAME_POINTER_FLAG
-- Performing Test COMPILER_RT_HAS_FOMIT_FRAME_POINTER_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FUNWIND_TABLES_FLAG
-- Performing Test COMPILER_RT_HAS_FUNWIND_TABLES_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_STACK_PROTECTOR_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_STACK_PROTECTOR_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_SANITIZE_SAFE_STACK_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_SANITIZE_SAFE_STACK_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FVISIBILITY_HIDDEN_FLAG
-- Performing Test COMPILER_RT_HAS_FVISIBILITY_HIDDEN_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FRTTI_FLAG
-- Performing Test COMPILER_RT_HAS_FRTTI_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_RTTI_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_RTTI_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_FUNCTION_SECTIONS_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_FUNCTION_SECTIONS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FTLS_MODEL_INITIAL_EXEC
-- Performing Test COMPILER_RT_HAS_FTLS_MODEL_INITIAL_EXEC - Failed
-- Performing Test COMPILER_RT_HAS_FNO_LTO_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_LTO_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_PROFILE_GENERATE_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_PROFILE_GENERATE_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_PROFILE_INSTR_GENERATE_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_PROFILE_INSTR_GENERATE_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_PROFILE_INSTR_USE_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_PROFILE_INSTR_USE_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_COVERAGE_MAPPING_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_COVERAGE_MAPPING_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_MCRC32_FLAG
-- Performing Test COMPILER_RT_HAS_MCRC32_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_MSSE4_2_FLAG
-- Performing Test COMPILER_RT_HAS_MSSE4_2_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_SYSROOT_FLAG
-- Performing Test COMPILER_RT_HAS_SYSROOT_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_MCRC_FLAG
-- Performing Test COMPILER_RT_HAS_MCRC_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FNO_PARTIAL_INLINING_FLAG
-- Performing Test COMPILER_RT_HAS_FNO_PARTIAL_INLINING_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_TRIVIAL_AUTO_INIT
-- Performing Test COMPILER_RT_HAS_TRIVIAL_AUTO_INIT - Failed
-- Performing Test COMPILER_RT_HAS_NOGPULIB_FLAG
-- Performing Test COMPILER_RT_HAS_NOGPULIB_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FLTO_FLAG
-- Performing Test COMPILER_RT_HAS_FLTO_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_CODE_OBJECT_VERSION_FLAG
-- Performing Test COMPILER_RT_HAS_CODE_OBJECT_VERSION_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FVISIBILITY_INLINES_HIDDEN_FLAG
-- Performing Test COMPILER_RT_HAS_FVISIBILITY_INLINES_HIDDEN_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_GR_FLAG
-- Performing Test COMPILER_RT_HAS_GR_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_GS_FLAG
-- Performing Test COMPILER_RT_HAS_GS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_MT_FLAG
-- Performing Test COMPILER_RT_HAS_MT_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_Oy_FLAG
-- Performing Test COMPILER_RT_HAS_Oy_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_GLINE_TABLES_ONLY_FLAG
-- Performing Test COMPILER_RT_HAS_GLINE_TABLES_ONLY_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_G_FLAG
-- Performing Test COMPILER_RT_HAS_G_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_Zi_FLAG
-- Performing Test COMPILER_RT_HAS_Zi_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WALL_FLAG
-- Performing Test COMPILER_RT_HAS_WALL_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WERROR_FLAG
-- Performing Test COMPILER_RT_HAS_WERROR_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WFRAME_LARGER_THAN_FLAG
-- Performing Test COMPILER_RT_HAS_WFRAME_LARGER_THAN_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WGLOBAL_CONSTRUCTORS_FLAG
-- Performing Test COMPILER_RT_HAS_WGLOBAL_CONSTRUCTORS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WC99_EXTENSIONS_FLAG
-- Performing Test COMPILER_RT_HAS_WC99_EXTENSIONS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WGNU_FLAG
-- Performing Test COMPILER_RT_HAS_WGNU_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WGNU_ANONYMOUS_STRUCT_FLAG
-- Performing Test COMPILER_RT_HAS_WGNU_ANONYMOUS_STRUCT_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WVARIADIC_MACROS_FLAG
-- Performing Test COMPILER_RT_HAS_WVARIADIC_MACROS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WUNUSED_PARAMETER_FLAG
-- Performing Test COMPILER_RT_HAS_WUNUSED_PARAMETER_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WCOVERED_SWITCH_DEFAULT_FLAG
-- Performing Test COMPILER_RT_HAS_WCOVERED_SWITCH_DEFAULT_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WSUGGEST_OVERRIDE_FLAG
-- Performing Test COMPILER_RT_HAS_WSUGGEST_OVERRIDE_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WTHREAD_SAFETY_FLAG
-- Performing Test COMPILER_RT_HAS_WTHREAD_SAFETY_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WTHREAD_SAFETY_REFERENCE_FLAG
-- Performing Test COMPILER_RT_HAS_WTHREAD_SAFETY_REFERENCE_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WTHREAD_SAFETY_BETA_FLAG
-- Performing Test COMPILER_RT_HAS_WTHREAD_SAFETY_BETA_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WNO_PEDANTIC
-- Performing Test COMPILER_RT_HAS_WNO_PEDANTIC - Failed
-- Performing Test COMPILER_RT_HAS_WNO_FORMAT
-- Performing Test COMPILER_RT_HAS_WNO_FORMAT - Failed
-- Performing Test COMPILER_RT_HAS_WNO_FORMAT_PEDANTIC
-- Performing Test COMPILER_RT_HAS_WNO_FORMAT_PEDANTIC - Failed
-- Performing Test COMPILER_RT_HAS_W4_FLAG
-- Performing Test COMPILER_RT_HAS_W4_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WX_FLAG
-- Performing Test COMPILER_RT_HAS_WX_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WD4146_FLAG
-- Performing Test COMPILER_RT_HAS_WD4146_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WD4206_FLAG
-- Performing Test COMPILER_RT_HAS_WD4206_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WD4291_FLAG
-- Performing Test COMPILER_RT_HAS_WD4291_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WD4221_FLAG
-- Performing Test COMPILER_RT_HAS_WD4221_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WD4391_FLAG
-- Performing Test COMPILER_RT_HAS_WD4391_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WD4722_FLAG
-- Performing Test COMPILER_RT_HAS_WD4722_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WD4800_FLAG
-- Performing Test COMPILER_RT_HAS_WD4800_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_ARRAY_BOUNDS_FLAG
-- Performing Test COMPILER_RT_HAS_ARRAY_BOUNDS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_UNINITIALIZED_FLAG
-- Performing Test COMPILER_RT_HAS_UNINITIALIZED_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_SHADOW_FLAG
-- Performing Test COMPILER_RT_HAS_SHADOW_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_EMPTY_BODY_FLAG
-- Performing Test COMPILER_RT_HAS_EMPTY_BODY_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_SIZEOF_POINTER_MEMACCESS_FLAG
-- Performing Test COMPILER_RT_HAS_SIZEOF_POINTER_MEMACCESS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_SIZEOF_ARRAY_ARGUMENT_FLAG
-- Performing Test COMPILER_RT_HAS_SIZEOF_ARRAY_ARGUMENT_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_SUSPICIOUS_MEMACCESS_FLAG
-- Performing Test COMPILER_RT_HAS_SUSPICIOUS_MEMACCESS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_BUILTIN_MEMCPY_CHK_SIZE_FLAG
-- Performing Test COMPILER_RT_HAS_BUILTIN_MEMCPY_CHK_SIZE_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_ARRAY_BOUNDS_POINTER_ARITHMETIC_FLAG
-- Performing Test COMPILER_RT_HAS_ARRAY_BOUNDS_POINTER_ARITHMETIC_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_RETURN_STACK_ADDRESS_FLAG
-- Performing Test COMPILER_RT_HAS_RETURN_STACK_ADDRESS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_SIZEOF_ARRAY_DECAY_FLAG
-- Performing Test COMPILER_RT_HAS_SIZEOF_ARRAY_DECAY_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_FORMAT_INSUFFICIENT_ARGS_FLAG
-- Performing Test COMPILER_RT_HAS_FORMAT_INSUFFICIENT_ARGS_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_BUILTIN_FORMAL_SECURITY_FLAG
-- Performing Test COMPILER_RT_HAS_BUILTIN_FORMAL_SECURITY_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_SIZEOF_ARRAY_DIV_FLAG
-- Performing Test COMPILER_RT_HAS_SIZEOF_ARRAY_DIV_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_SIZEOF_POINTER_DIV_FLAG
-- Performing Test COMPILER_RT_HAS_SIZEOF_POINTER_DIV_FLAG - Failed
-- Looking for __func__
-- Looking for __func__ - found
-- Performing Test COMPILER_RT_HAS_NOSTDINCXX_FLAG
-- Performing Test COMPILER_RT_HAS_NOSTDINCXX_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_NOSTDLIBXX_FLAG
-- Performing Test COMPILER_RT_HAS_NOSTDLIBXX_FLAG - Failed
-- Looking for include file sys/auxv.h
-- Looking for include file sys/auxv.h - found
-- Looking for dlopen in dl
-- Looking for dlopen in dl - found
-- Looking for shm_open in rt
-- Looking for shm_open in rt - found
-- Looking for pow in m
-- Looking for pow in m - found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Looking for backtrace in execinfo
-- Looking for backtrace in execinfo - not found
-- Looking for __cxa_throw in c++
-- Looking for __cxa_throw in c++ - not found
-- Looking for __cxa_throw in stdc++
-- Looking for __cxa_throw in stdc++ - found
-- Performing Test COMPILER_RT_HAS_Z_TEXT
-- Performing Test COMPILER_RT_HAS_Z_TEXT - Failed
-- Performing Test COMPILER_RT_HAS_FUSE_LD_LLD_FLAG
-- Performing Test COMPILER_RT_HAS_FUSE_LD_LLD_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_VERSION_SCRIPT
-- Performing Test COMPILER_RT_HAS_VERSION_SCRIPT - Failed
-- Looking for __i386__
-- Looking for __i386__ - found
-- Compiler-RT supported architectures: x86_64;i386
-- Looking for __GLIBC__
-- Looking for __GLIBC__ - found
-- Performing Test COMPILER_RT_TARGET_HAS_ATOMICS
-- Performing Test COMPILER_RT_TARGET_HAS_ATOMICS - Success
-- Performing Test COMPILER_RT_TARGET_HAS_FCNTL_LCK
-- Performing Test COMPILER_RT_TARGET_HAS_FCNTL_LCK - Success
-- Performing Test COMPILER_RT_TARGET_HAS_FLOCK
-- Performing Test COMPILER_RT_TARGET_HAS_FLOCK - Success
-- Performing Test COMPILER_RT_TARGET_HAS_UNAME
-- Performing Test COMPILER_RT_TARGET_HAS_UNAME - Success
-- Performing Test HAS_THREAD_LOCAL
-- Performing Test HAS_THREAD_LOCAL - Success
-- Performing Test COMPILER_RT_HAS_VISIBILITY_HIDDEN_FLAG
-- Performing Test COMPILER_RT_HAS_VISIBILITY_HIDDEN_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_XRAY_COMPILER_FLAG
-- Performing Test COMPILER_RT_HAS_XRAY_COMPILER_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_WNO_C2Y_EXTENSIONS
-- Performing Test COMPILER_RT_HAS_WNO_C2Y_EXTENSIONS - Failed
-- Performing Test COMPILER_RT_HAS_WBUILTIN_DECLARATION_MISMATCH_FLAG
-- Performing Test COMPILER_RT_HAS_WBUILTIN_DECLARATION_MISMATCH_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_ZL_FLAG
-- Performing Test COMPILER_RT_HAS_ZL_FLAG - Failed
-- Performing Test COMPILER_RT_HAS_ATOMIC_KEYWORD
-- Performing Test COMPILER_RT_HAS_ATOMIC_KEYWORD - Failed
-- Performing Test COMPILER_RT_HAS_ASM_LSE
-- Performing Test COMPILER_RT_HAS_ASM_LSE - Failed
-- Performing Test COMPILER_RT_HAS_AARCH64_SME
-- Performing Test COMPILER_RT_HAS_AARCH64_SME - Failed
-- Performing Test COMPILER_RT_HAS_ARM_UNALIGNED
-- Performing Test COMPILER_RT_HAS_ARM_UNALIGNED - Failed
-- Performing Test COMPILER_RT_HAS_ARM_FP
-- Performing Test COMPILER_RT_HAS_ARM_FP - Failed
-- Performing Test COMPILER_RT_HAS_i386_FLOAT16
-- Performing Test COMPILER_RT_HAS_i386_FLOAT16 - Success
-- Performing Test COMPILER_RT_HAS_x86_64_FLOAT16
-- Performing Test COMPILER_RT_HAS_x86_64_FLOAT16 - Success
-- Builtin supported architectures: i386;x86_64
CMake Error at /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/compiler-rt/test/builtins/CMakeLists.txt:147 (file):
  file failed to open for reading (No such file or directory):

    /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/build/./lib/../lib/clang/23/lib/i386-unknown-linux-gnu/clang_rt.builtins.sources.txt


CMake Error at /var/tmp/portage/sys-devel/DPC++-2026.06.18/work/llvm-nightly-2026-06-18/compiler-rt/test/builtins/CMakeLists.txt:151 (message):
  Failed to find source files for i386 builtin library

I think at some point I'll just merge it given it works for you :)

Comment thread sys-devel/DPC++/DPC++-2026.06.18.ebuild Outdated
Comment thread sys-devel/DPC++/DPC++-2026.06.18.ebuild
Co-authored-by: Alexander Puck Neuwirth <APN-Pucky@users.noreply.github.com>
@Emimendoza

Copy link
Copy Markdown
Author

I mean Ideally I would like the ebuild to be reproducible. But having to disable the 32bit abi on clang:17 seems like an issue with that ebuild or gcc being unable to compile it.

@Nowa-Ammerlaan

Nowa-Ammerlaan commented Jul 17, 2026

Copy link
Copy Markdown
Member

This looks wrong i386-unknown-linux-gnu, why is that unknown? Something 32 bit missing on the build system perhaps?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants