Skip to content

Conversation

@spl
Copy link
Contributor

@spl spl commented Apr 18, 2019

No description provided.

@spl spl mentioned this pull request Apr 24, 2019
@spl
Copy link
Contributor Author

spl commented Aug 2, 2019

Ping! What do you think about this change? I think it should be uncontroversial since it's the same thing done for Linux. (Also, I'd hate to leave this unfixed in the next release.)

pkgw added a commit to pkgw/tectonic that referenced this pull request Dec 23, 2019
By "semi-static" I mean that the final binary is not statically linked, but
that it only dynamically links with core system libraries. Higher-level like
harfbuzz are linked into the executable statically. This is accomplished by an
environment variable TECTONIC_PKGCONFIG_FORCE_SEMI_STATIC=1, since I
discovered that the pkg-config-rs library's logic for encouraging static
linking will turn it off in the common case that our static libraries live in
standard system prefixes.

Unfortunately, graphite2 seems to have issues with its various static builds
(e.g. silnrsi/graphite#54) so we won't always get a
super-minimal list of dependencies, but this seems to get us most of the way
there, and I've coded it so that we should start doing better if/when
graphite2 is fixed.
burrbull pushed a commit to burrbull/tectonic that referenced this pull request Oct 29, 2020
By "semi-static" I mean that the final binary is not statically linked, but
that it only dynamically links with core system libraries. Higher-level like
harfbuzz are linked into the executable statically. This is accomplished by an
environment variable TECTONIC_PKGCONFIG_FORCE_SEMI_STATIC=1, since I
discovered that the pkg-config-rs library's logic for encouraging static
linking will turn it off in the common case that our static libraries live in
standard system prefixes.

Unfortunately, graphite2 seems to have issues with its various static builds
(e.g. silnrsi/graphite#54) so we won't always get a
super-minimal list of dependencies, but this seems to get us most of the way
there, and I've coded it so that we should start doing better if/when
graphite2 is fixed.
burrbull pushed a commit to burrbull/tectonic that referenced this pull request Oct 30, 2020
By "semi-static" I mean that the final binary is not statically linked, but
that it only dynamically links with core system libraries. Higher-level like
harfbuzz are linked into the executable statically. This is accomplished by an
environment variable TECTONIC_PKGCONFIG_FORCE_SEMI_STATIC=1, since I
discovered that the pkg-config-rs library's logic for encouraging static
linking will turn it off in the common case that our static libraries live in
standard system prefixes.

Unfortunately, graphite2 seems to have issues with its various static builds
(e.g. silnrsi/graphite#54) so we won't always get a
super-minimal list of dependencies, but this seems to get us most of the way
there, and I've coded it so that we should start doing better if/when
graphite2 is fixed.
@mgood7123
Copy link

applied in #69

@blacktm
Copy link

blacktm commented Feb 7, 2022

Hello! Would also love to see this get merged and enable static libraries for Homebrew, the macOS package manager.

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.

4 participants