51 lines
1.1 KiB
Markdown
51 lines
1.1 KiB
Markdown
# shinoa-tdlib
|
|
|
|
Prebuilt TDLib bundles used by `shinoa`.
|
|
|
|
## Bundle Format
|
|
|
|
Release assets are expected to contain a top-level `tdlib/` directory with:
|
|
|
|
- `tdlib/include/`
|
|
- `tdlib/lib/`
|
|
|
|
At minimum, the app build expects:
|
|
|
|
- `tdlib/include/td/telegram/td_json_client.h`
|
|
- `tdlib/include/td/telegram/tdjson_export.h`
|
|
- `tdlib/lib/libtdjson.so`
|
|
- `tdlib/lib/libtdjson.so.<soname>`
|
|
|
|
## Build Locally
|
|
|
|
Build and install TDLib somewhere on your local machine:
|
|
|
|
```bash
|
|
cmake -S /path/to/tdlib -B td-build \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_INSTALL_PREFIX="$PWD/td-install"
|
|
cmake --build td-build -j"$(nproc)"
|
|
cmake --install td-build
|
|
```
|
|
|
|
Package it into the expected archive format:
|
|
|
|
```bash
|
|
./scripts/package-tdlib.sh td-install tdlib-linux-x86_64.tar.gz
|
|
```
|
|
|
|
## Publish Release
|
|
|
|
Publish the archive and checksum to a versioned release tag derived from the TDLib soname,
|
|
for example `v1.8.63`:
|
|
|
|
```bash
|
|
./scripts/publish-release.sh tdlib-linux-x86_64.tar.gz
|
|
```
|
|
|
|
By default the script derives the tag from the archive contents. You can override it:
|
|
|
|
```bash
|
|
RELEASE_TAG=v1.8.63 ./scripts/publish-release.sh tdlib-linux-x86_64.tar.gz
|
|
```
|