Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

various build fixes #378

Merged
merged 5 commits into from
Sep 18, 2024
Merged

various build fixes #378

merged 5 commits into from
Sep 18, 2024

Conversation

igrr
Copy link
Member

@igrr igrr commented Sep 17, 2024

CI pipeline for master is failing for several reasons, this PR attempts to make it green again:

  • v2 artifacts actions are not supported anymore and the jobs using them fail (example). In this PR all the actions are upgraded to v4.
  • Newer Github actions version use newer version of node, which has higher version libc++ dependency (example failure). In this PR, the image used for target tests is upgraded from python:3.7-buster to python:3.11-bookworm.
  • coap component got broken after the recent update of LWIP to 2.2.0 in ESP-IDF. This PR fixes macro redefinition by checking LWIP version first. Component version is bumped.
  • spi_nand_flash component got broken after the recent update to GCC 14 in ESP-IDF. Fixed by correcting the order of arguments to calloc. Bumped the version.
  • esp32_camera (indirect dependency of esp_jpeg example) got broken by GCC 14 update for the same reason. Fixed in fix: correct calloc call arguments order esp32-camera#683.
  • thorvg component got broken after IDF started detecting stray .got/.plt sections. Turns out we were not properly disabling -fPIC when building thorvg. Fixing that resulted in rewriting most of thorvg component's CMakeLists, see the commit message for more details. Bumped the component version, as well.

Copy link

github-actions bot commented Sep 17, 2024

Unit Test Results

  15 files    15 suites   21m 8s ⏱️
  27 tests   27 ✔️ 0 💤 0
395 runs  395 ✔️ 0 💤 0

Results for commit 83ac6d6.

♻️ This comment has been updated with latest results.

Copy link
Collaborator

@suda-morris suda-morris left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot for fixing the thorvg build issues. 👍

actions/checkout, actions/upload-artifact, actions/download-artifact
Fixes inability to run node due to higher glibcxx version requirement:
/__e/node20/bin/node: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /__e/node20/bin/node)
IDF has started detecting sections generated when compiling with -fPIC
and reports that as an error.

We were already passing b_staticpic=false to Meson, however turns out
this had no effect, because Meson always turns on fPIC when building
for android platform, and we have been setting platform to "android"
in our cross_file.txt.

After digging a bit, it seems that the choice of "android" platform
was a hack to bypass pthread library detection which Thorvg does for
other platforms, but skips for android and windows.

This commit changes cross_file.txt to contain the absolute path of the
directory where libpthread.a is built, so now thorvg can correctly
detect pthread, and there is no need to pretend that we are building
for android anymore.

This commit also refactors the way cross_file.txt is generated:
- started using a template in cross_file.txt.in, to be able to expand
  generator expressions using file(GENERATE)
- replaced manual list concatenation with list(JOIN)
- removed "replace_tool_name" since all the absolute tool paths are
  already known
@igrr igrr force-pushed the bugfix/various_pipeline_fixes branch from 11b583b to 83ac6d6 Compare September 18, 2024 07:34
@igrr igrr merged commit 43e2413 into master Sep 18, 2024
73 checks passed
@igrr igrr deleted the bugfix/various_pipeline_fixes branch September 18, 2024 09:11
@igrr
Copy link
Member Author

igrr commented Sep 18, 2024

Thanks all for reviewing!

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.

4 participants