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

Gentoo-originating build system fixes #100

Closed
wants to merge 9 commits into from
Closed

Gentoo-originating build system fixes #100

wants to merge 9 commits into from

Conversation

mgorny
Copy link
Contributor

@mgorny mgorny commented Mar 31, 2015

So far:

  1. LIB_SUFFIX support to build correctly on multilib systems,
  2. abstractstubserver.h typo fix for consistency and reduced confusion,
  3. fixed tests to be buildable with examples disabled (Tests fail to build when examples are disabled #101),
  4. switched to regular cmake shared/static lib build (Project should have possibility to build static or shared libraries independently #99),
  5. solved the issue of stubs being rebuild on every run.

Support appending ABI-specific suffix to libdir as needed for install on
multilib systems. This is done via LIB_SUFFIX variable that is used
in some other CMake projects.
Fix the stubgen output filename and #include to use
the 'abstractstubserver.h' as defined as OUTPUT and listed in README.
@mgorny mgorny changed the title Support defining LIB_SUFFIX for proper multilib libdir Gentoo-originating build system fixes Mar 31, 2015
Remove duplicate HTTP_SERVER and HTTP_CLIENT conditions inside examples
since all examples are conditional to them.
Include examples/CMakeLists.txt independently of COMPILE_EXAMPLES
conditional, use it to restrict building programs inside that file. This
makes sure that the stub building rules are available for tests even
when building examples is disabled.

Fixes: #101
Remove the explicit code handling building shared and static libraries,
and instead let CMake choose the correct kind of libraries to build
based on BUILD_SHARED_LIBS.

Fixes: #99
Use correct ${CMAKE_BINARY_DIR}/gen paths for dependencies on generated
stubs. This ensures that CMake correctly regenerates them only if
jsonrpcstub or the spec file changes.
@mgorny
Copy link
Contributor Author

mgorny commented Mar 31, 2015

Ok, that should be all fixes I can think of right now :).

@debris
Copy link
Contributor

debris commented Mar 31, 2015

I haven't run this yet, but generally looks good to me ;)

@cinemast
Copy link
Owner

@mgorny thank you for all your contributions. I already gave up on the rebuilding of generated files :D. Haven't tested it yet just looked quickly through your commits. Great work, thanks 👍!

I will have to review and test it in more detail tomorrow. Especially the remove of the static lib version. I think it would be a good idea to switch it off/on independently. I agree with that.
The current version just made the debian packaging easier for me, because shared and static lib were compiled in a single make all invocation.

A few more wishes from me:

Thanks again :)

@mgorny
Copy link
Contributor Author

mgorny commented Mar 31, 2015

Ok, updated AUTHORS and CHANGELOG as well as I could, and opened #102. Not sure how the two branches are developed, so leaving this open in case the changes can end up being backported independently.

@cinemast
Copy link
Owner

cinemast commented Apr 1, 2015

Thank you for rebasing to develop. After all issues are fixed, develop will soon become merged into the new master and 0.5 will get released.

@cinemast cinemast closed this Apr 1, 2015
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.

None yet

3 participants