intel / ittapi

Intel® Instrumentation and Tracing Technology (ITT) and Just-In-Time (JIT) API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ci: building the C library silently fails

abrown opened this issue · comments

In #40, I added a way to build the C library during CI to verify that things are working as expected. The CI workflow passed (as expected) using python buildall.py and I didn't give it much more thought. Recently, @bnjbvr brought to my attention that the python buildall.py can silently fail, giving us the impression that the C library has been built when in fact it has not. In a recent commit, here are the results:

  • on Windows, CI seems to be fine: the libraries are built with no issue (log)
  • on macOS, the script calls CMake incorrectly (log); it looks like the --target flag should have a parameter (BUILD_ALL is used on Windows)
  • on Ubuntu, the script emits the same error as macOS but additionally fails with a missing include, bits/libc-header-start.h (log); it is unclear whether these glibc headers need to be installed as a separate dependency or if some include path is missing

There are multiple issues here that need to be fixed:

  1. buildall.py should not fail silently; it should exit immediately with a non-zero error code if any command fails
  2. the buildall.py --target flag should be filled in for non-Windows builds
  3. any needed include paths (or dependencies that provide them) should be a) documented in the README and b) updated in the main.yml GitHub workflow