-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
41 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,45 @@ | ||
# TagLib statically cross-compiled | ||
|
||
[![Last Release](https://img.shields.io/github/v/release/navidrome/cross-taglib?logo=github&label=latest&style=flat-square)](https://github.com/navidrome/cross-taglib/releases) | ||
![Build](https://img.shields.io/github/actions/workflow/status/navidrome/cross-taglib/ci.yml?branch=main&logo=github&style=flat-square) | ||
[![TagLib](https://img.shields.io/badge/dynamic/toml?url=https%3A%2F%2Fraw.githubusercontent.com%2Fnavidrome%2Fcross-taglib%2Fmaster%2F.version&query=%24.TAGLIB_VERSION&label=TagLib&color=brightgreen)](https://github.com/taglib/taglib/releases) | ||
[![Last Release](https://img.shields.io/github/v/release/navidrome/cross-taglib?logo=github&label=latest&style=flat-square)](https://github.com/navidrome/cross-taglib/releases) | ||
|
||
## Purpose | ||
|
||
This repository provides a statically cross-compiled version of [TagLib](https://taglib.org), a library for reading and | ||
editing metadata of several popular audio formats. This project requires [Docker or Docker Desktop](https://docker.com) | ||
to work locally | ||
|
||
## Supported platforms | ||
This table shows the platforms and architectures supported by this project. To build for a specific platform, use | ||
the `make build` command with the `PLATFORM` variable set to the desired platform | ||
|
||
| Platform | Param to `make` | | ||
|---------------|-----------------| | ||
| Linux AMD64 | linux/amd64 | | ||
| Linux 386 | linux/386 | | ||
| Linux ARM64 | linux/arm64 | | ||
| Linux ARMv7 | linux/arm/v7 | | ||
| Linux ARMv6 | linux/arm/v6 | | ||
| Linux ARMv5 | linux/arm/v5 | | ||
| Windows AMD64 | windows/amd64 | | ||
| Windows 386 | windows/386 | | ||
| macOS AMD64 | darwin/amd64 | | ||
| macOS ARM64 | darwin/arm64 | | ||
|
||
|
||
## Tasks | ||
|
||
### Build locally | ||
|
||
- `make build` - Will build for all supported platforms | ||
- `make build PLATFORM=linux/amd64` - Will build for a specific platform | ||
- `make update` - Will update the TagLib version in the `.version` file. After updating, you should build locally to | ||
ensure everything is working, and then commit and push the changes. | ||
|
||
### Release | ||
|
||
To release a new version, just push a new tag in the format `vX.Y.Z-C`. This will trigger a GitHub Actions workflow that | ||
will build and release the binaries for all supported platforms. | ||
|
||
This repository contains a Dockerfile to build a statically cross-compiled version of [TagLib](https://taglib.org) for | ||
multiple platforms. | ||
The version represents the TagLib version + a counter. For example, `v2.0.2-1` represents the first release based on | ||
TagLib 2.0.2. |