pkg download command and patches
This commit is contained in:
50
assets/var/gnu/slint_pzd.md
Normal file
50
assets/var/gnu/slint_pzd.md
Normal file
@ -0,0 +1,50 @@
|
||||
slint 1.17.1
|
||||
=
|
||||
https://github.com/slint-ui/slint/archive/refs/tags/v1.17.1.tar.gz
|
||||
|
||||
``` sh *** patch ***
|
||||
# Remap путей (будет работать при прямой сборке cargo)
|
||||
cat >> /pkg/gnu/slint/src/.cargo/config.toml << 'EOF'
|
||||
|
||||
[build]
|
||||
rustflags = ["--remap-path-prefix=/pkg/gnu/rustup/registry/src=/src", "--remap-path-prefix=/rustc=/rustc"]
|
||||
EOF
|
||||
```
|
||||
|
||||
``` env *** env ***
|
||||
CARGO_INCREMENTAL=false
|
||||
CARGO_NET_OFFLINE=true
|
||||
```
|
||||
|
||||
``` sh *** build ***
|
||||
cd /pkg/gnu/slint/src
|
||||
|
||||
# Собираем slint-cpp напрямую через Cargo (НЕ через CMake/Corrosion)
|
||||
cargo build --release \
|
||||
-p slint-cpp \
|
||||
--no-default-features \
|
||||
--features "compiler,backend-winit,renderer-software"
|
||||
|
||||
# Генерируем CMake-конфиги и устанавливаем через CMake,
|
||||
# но указываем уже собранный компилятор и библиотеку
|
||||
mkdir -p build && cd build
|
||||
cmake -DCMAKE_INSTALL_PREFIX="$pkgpath" \
|
||||
-DCMAKE_BUILD_TYPE=MinSizeRel \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DSLINT_COMPILER=/pkg/gnu/slint/src/target/release/slint-compiler \
|
||||
-DSLINT_FEATURE_RENDERER_FEMTOVG=OFF \
|
||||
-DSLINT_FEATURE_RENDERER_SOFTWARE=ON \
|
||||
-DSLINT_FEATURE_INTERPRETER=OFF \
|
||||
-DSLINT_FEATURE_ACCESSIBILITY=OFF \
|
||||
-DSLINT_FEATURE_TESTING=OFF \
|
||||
-DSLINT_FEATURE_BACKEND_WINIT_X11=OFF \
|
||||
-DSLINT_FEATURE_BACKEND_WINIT_WAYLAND=ON \
|
||||
-DCMAKE_CXX_FLAGS="-fno-asynchronous-unwind-tables -fno-exceptions -fno-rtti" \
|
||||
-G Ninja ..
|
||||
cmake --build .
|
||||
cmake --install .
|
||||
|
||||
# Копируем статическую библиотеку из cargo target поверх cmake-шной
|
||||
cp /pkg/gnu/slint/src/target/release/libslint_cpp.a "$pkgpath/lib/libslint_cpp.a"
|
||||
```
|
||||
Reference in New Issue
Block a user