commonmark / commonmark/cmark

Building both static and shared library?

Open
#598 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
2k
Forks
691
Avg merge
1d 16h
Merged PRs (30d)
1

Description

I see from the changelog that the cmake BUILD_SHARED_LIBS flag is now used to determine whether a static .a or shared .so is built. But previously, both would be built by default, and I don't see how to do this with BUILD_SHARED_LIBS, as when I define the option only the shared .so is built. I need to build both for my Perl extension so that it can be statically linked to XS code as well as dynamically used in FFI code.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the CMake configuration that uses BUILD_SHARED_LIBS and the changelog entry describing that change. Determine how the project can produce both static and shared libraries by default, then verify that the resulting artifacts support the static Perl XS and dynamic FFI use cases described in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, cmake, perl
Domain
build-system
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.