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

Add shared library support when building with meson #2918

Open
wants to merge 2 commits into
base: devel
Choose a base branch
from

Conversation

Colum31
Copy link

@Colum31 Colum31 commented Oct 11, 2024

Description

Building shared libraries is currently not supported, when building with meson.
This PR enables building shared libraries, by passing -Ddefault_library=shared.
When this option is not passed, a static library is built.

Build type will be set by default_library, which default to static.
However, shared libraries can be built, by passing -Ddefault_library=shared
Copy link

codecov bot commented Oct 11, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 90.99%. Comparing base (fa43b77) to head (c8b394e).

Additional details and impacted files
@@           Coverage Diff           @@
##            devel    #2918   +/-   ##
=======================================
  Coverage   90.99%   90.99%           
=======================================
  Files         198      198           
  Lines        8597     8597           
=======================================
  Hits         7822     7822           
  Misses        775      775           

@horenmar
Copy link
Member

Does this handle exporting symbols?

@horenmar horenmar added the Building and Packaging Issues affecting build/packaging scripts and utilities label Oct 11, 2024
@Colum31
Copy link
Author

Colum31 commented Oct 28, 2024

Yes, when running readelf -s I can see exported symbols.

@Colum31
Copy link
Author

Colum31 commented Nov 20, 2024

Or which symbols do you mean?

@horenmar
Copy link
Member

The important platform for this is Windows. Linux has all symbols visible by default, but Windows uses the better option, which is that all symbols are hidden by default.

CMake has WINDOWS_EXPORT_ALL_SYMBOLS for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Building and Packaging Issues affecting build/packaging scripts and utilities
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants