1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-01-08 03:31:59 +02:00
goreleaser/www/docs/customization
Giorgio Azzinnaro 0a536f08fd
feat: build of shared/static libraries (#3511)
<!--

Hi, thanks for contributing!

Please make sure you read our CONTRIBUTING guide.

Also, add tests and the respective documentation changes as well.

-->


<!-- If applied, this commit will... -->

This PR improves the handling of shared or static libraries by
GoReleaser. It uses the default behaviour of the Go compiler by
appending the right extension to libraries.

* `.so` and `.a` for Linux shared libraries and static libraries
respectively
* `.dylib` and `.a.` on Darwin
* `.dll` and `.lib` on Windows (pre-existent)

It does not add any configuration option to `.goreleaser.yml`, since it
leverages the existing `buildmode` flag.

Additionally, this PR takes care of adding the generated header file
into the archive.

<!-- Why is this change being made? -->

Personally I would leverage this change to release some software both as
a CLI and as a shared library. I believe others who use CGo or need
interoperability with Go from other languages could benefit from this.

<!-- # Provide links to any relevant tickets, URLs or other resources
-->

This was previously discussed in #3497.

I couldn't quite think of a proper way to add some tests to the header
archiving feature. Any recommendation?
2022-11-11 23:35:51 -03:00
..
announce feat: MarkdownV2 for Telegram announcer (#3435) 2022-10-05 09:35:01 -03:00
archive.md docs: version recent changes (#3367) 2022-09-11 16:54:51 -03:00
artifactory.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
aur.md docs: Mention Gitea explicitly (#3489) 2022-10-21 22:30:54 -03:00
blob.md feat: more templateable fields for blobs (#3461) 2022-10-14 10:17:30 -03:00
build.md feat: build of shared/static libraries (#3511) 2022-11-11 23:35:51 -03:00
changelog.md fix(changelog): group regexps (#3527) 2022-11-07 09:28:52 -03:00
checksum.md docs: rename in the docs goreleaser.yml to goreleaser.yaml (#2784) 2021-12-22 21:52:01 -03:00
dist.md docs: rename in the docs goreleaser.yml to goreleaser.yaml (#2784) 2021-12-22 21:52:01 -03:00
docker_manifest.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
docker_sign.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
docker.md docs: add more podman details 2022-11-08 23:15:12 -03:00
env.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
fury.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
homebrew.md fix: allow to template scoop/brew/krew repo ref (#3521) 2022-11-02 14:54:16 -03:00
hooks.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
includes.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
index.md docs: instruct how to use a pinned version of the jsonschema 2022-11-02 22:14:25 -03:00
krew.md fix: allow to template scoop/brew/krew repo ref (#3521) 2022-11-02 14:54:16 -03:00
milestone.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
monorepo.md docs: update 2022-10-11 22:09:42 -03:00
nfpm.md feat: implement nfpm archlinux packages (#3470) 2022-11-02 15:30:06 -03:00
nightlies.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
partial.md docs: improve partial docs 2022-10-15 19:31:05 -03:00
project.md docs: rename in the docs goreleaser.yml to goreleaser.yaml (#2784) 2021-12-22 21:52:01 -03:00
publishers.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
release.md docs: clarify tags a bit 2022-10-14 00:33:32 -03:00
sbom.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
scoop.md fix: allow to template scoop/brew/krew repo ref (#3521) 2022-11-02 14:54:16 -03:00
sign.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
snapcraft.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
snapshots.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
source.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
templates.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
universalbinaries.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
upload.md docs: improve wording/formatting in several places (#3384) 2022-09-17 00:13:09 -03:00
verifiable_builds.md docs: clarify lack of vcs info when building from proxy 2022-10-25 22:16:32 -03:00