Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Add shared library support when building with meson#2918

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Open
Colum31 wants to merge2 commits intocatchorg:devel
base:devel
Choose a base branch
Loading
fromColum31:devel

Conversation

@Colum31
Copy link

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
@codecov
Copy link

codecovbot commentedOct 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?

@horenmarhorenmar added the Building and PackagingIssues affecting build/packaging scripts and utilities labelOct 11, 2024
@Colum31
Copy link
Author

Colum31 commentedOct 28, 2024
edited
Loading

Yes, when runningreadelf -s I can see exported symbols.

@Colum31
Copy link
Author

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 hasWINDOWS_EXPORT_ALL_SYMBOLS for this.

Copy link

@shahsbshahsb left a comment

Choose a reason for hiding this comment

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

LGTM!

@stephanlachnit
Copy link

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 hasWINDOWS_EXPORT_ALL_SYMBOLS for this.

There is thegnu_symbol_visibility property in Meson which can be used to hide all symbols on Unix by default.

However, this only works when each symbol has the appropriate symbol visibility annotation, which is not the case as far as I can see. There is also no equivalent forWINDOWS_EXPORT_ALL_SYMBOLS, so Windows compilation would be broken by default.

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment

Reviewers

1 more reviewer

@shahsbshahsbshahsb approved these changes

Reviewers whose approvals may not affect merge requirements

Assignees

No one assigned

Labels

Building and PackagingIssues affecting build/packaging scripts and utilities

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

4 participants

@Colum31@horenmar@stephanlachnit@shahsb

[8]ページ先頭

©2009-2025 Movatter.jp