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

Creae meson build system #3

Draft
wants to merge 20 commits into
base: master
Choose a base branch
from
Draft

Creae meson build system #3

wants to merge 20 commits into from

Conversation

zeising
Copy link
Member

@zeising zeising commented Jun 6, 2019

Create a meson build system..

zeising added 20 commits January 5, 2019 16:38
Add meson.build and try to convert this to use Meson rather than CMake
as a build system.  This is still experimental.
Get a .pc file as part of the Meson build system.
Switch name from libepoll-shim to epoll-shim, to match the name used in
the CMake build.
Use both_libraries to build both shared and static libraries.
The libraries are built from the same metadata, so instead of having
separate build instructions, just merge it and build both types of
libraries from the same information.
Update how we generate pkg-config files.
Use the library object as a base for the .pc file, this gives us some
information for the .pc file for free.
Add URL.
Update include directory since we install headers in a subdir (this was
broken before)
Require a newver version of meson that includes support for this way of
generating .pc files.
Fiddle with build options, use a default warning level, and a default
build type of debugoptimized.
Change the CI to run the meson build as well as the make build.
First pass at using the Symbol map to hide symbols.
This is a little clunky in meson, since there's no built in support for
this yet.  What we do is we define the path to the version map, and the
linker flags to use it, and then test if the compiler is OK with this.
If it is, then all is good, otherwise, we abort and complain.
The linker flags are also added to to library build step.
Don't use -fvisibility=hidden to hide *all* symbols.  Then we can't link
against this library.
Fix the Cflags include dir in .pc file, headers are installed in
${includedir}/libepoll-shim, not ${includedir}/epoll-shim.
Move -Werror to default options so that it can be overridden if needed.
Remove our special flags, -Wall -Wextra are added by default, no need to
add them ourselves.
Remove make build from CI, this should have been done in 884d235.
Format default_options better, to avoid overly long lines.
jiixyj added a commit to jiixyj/epoll-shim-1 that referenced this pull request Nov 9, 2019
… in is_not_yet_connected_stream_socket()
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