[PATCH] D119038: [BOLT] Fix runtime osx cross-compile build

Vladislav Khmelevsky via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 7 16:29:52 PST 2022


yota9 added a comment.

@Amir Do you use clang as CC/CXX for building BOLT? Also don't forget that currently the build for aarch64 is disabled in cmake.

  /usr/bin/clang++   -I. -O3 -DNDEBUG   -target x86_64-apple-darwin19.6.0 -ffreestanding -fno-exceptions -fno-rtti -fno-stack-protector -std=c++11 -MD -MT CMakeFiles/bolt_rt_instr_osx.dir/instr.cpp.o -MF CMakeFiles/bolt_rt_instr_osx.dir/instr.cpp.o.d -o CMakeFiles/bolt_rt_instr_osx.dir/instr.cpp.o -c /home/yota9/src/llvm/bolt/runtime/instr.cpp
  In file included from /home/yota9/src/llvm/bolt/runtime/instr.cpp:44:
  In file included from /home/yota9/src/llvm/bolt/runtime/common.h:13:
  In file included from /usr/include/elf.h:22:
  /usr/include/features.h:461:12: fatal error: 'sys/cdefs.h' file not found
  #  include <sys/cdefs.h>

It does not look as an ARM problem to me. The thing is that HAVE_ELF_H is defined in config.h file since it is defining for the host compiler, but used for cross compile tool. I assume the osx instrumentation is working because in instr.cpp we have:

  #if defined(HAVE_ELF_H) and !defined(__APPLE__)

And the second one is not true for the cross tool. But anyway we should not try include elf.h for non-linux target.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D119038/new/

https://reviews.llvm.org/D119038



More information about the llvm-commits mailing list