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

Produce releases with Interprocedural optimisations (LTO) #2187

Merged
merged 3 commits into from
Apr 4, 2022

Conversation

piponazo
Copy link
Collaborator

@piponazo piponazo commented Apr 1, 2022

As I mentioned at #2184 , it has some benefits to use Link-Time Optimisations when generating the binaries, in terms of speed and size.

By studying how different settings affect to the final size of the binaries (static libs, dynamic ones and executables) I realised that we actually do not need to deploy in our tarballs the exiv2-xmp target that was being treated as a STATIC library. By treating that target as a OBJECT library, we will not need to deploy it separately. The object code needed by libexiv2 will be incorporated in the shared lib.

You can compare the latest nightly build (without LTO) and the build with LTO.

As always, any feedback is welcome!

@codecov
Copy link

codecov bot commented Apr 1, 2022

Codecov Report

Merging #2187 (83a4fd5) into main (74622cf) will decrease coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #2187      +/-   ##
==========================================
- Coverage   63.30%   63.29%   -0.02%     
==========================================
  Files          99       99              
  Lines       19596    19596              
  Branches     9559     9559              
==========================================
- Hits        12406    12404       -2     
- Misses       5116     5118       +2     
  Partials     2074     2074              
Impacted Files Coverage Δ
src/xmp.cpp 76.44% <0.00%> (-0.40%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update b8cb4e0...83a4fd5. Read the comment docs.

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.

2 participants