Files
MeowOS-For-R3P2/mips-repo/bins/meow_mdns/build.sh
T

32 lines
1.4 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/env bash
#
# build.sh — 自研极简 IPv4-only mDNS 应答器 meow_mdns(mipsel-linux-muslsf,静态)
#
# 背景: 完整 mDNSResponder / SAResponder 两者均需 IPv6(socket AF_INET6 在内核无 IPv6 时 fatal),
# 且完整版 mdnsd 是 IPC 服务型守护进程, 自身不公布主机名 A 记录。
# 故自研本应答器: join 224.0.0.251:5353, 应答 <host>.local A + _ssh._tcp.local PTR/SRV/TXT。
#
# 目标架构 : mipsel (MIPS32r2 little-endian), musl, 静态
# 交叉编译器: ~/Project/R3ProII/.tools/zig-mipsel-cc
# 产物 : bin/meow_mdns
#
# 用法 : ./build.sh # 构建 mipsel 静态(部署版)
# 宿主单测 gcc -O2 -o meow_mdns meow_mdns.c && MEOW_MDNS_PORT=55353 MEOW_MDNS_HOST=ingenic MEOW_MDNS_ADDR=127.0.0.1 ./meow_mdns -v
set -euo pipefail
DIR="$(cd "$(dirname "$0")" && pwd)"
ZIGCC="${ZIGCC:-$HOME/Project/R3ProII/.tools/zig-mipsel-cc}"
echo "==> [1/2] 交叉编译 meow_mdns (zig: mipsel-linux-musleabi, -Os -static)"
"$ZIGCC" -Os -static -o "$DIR/meow_mdns.tmp" "$DIR/meow_mdns.c"
echo "==> [2/2] 放置产物 $DIR/bin/meow_mdns"
mkdir -p "$DIR/bin"
install -m 755 "$DIR/meow_mdns.tmp" "$DIR/bin/meow_mdns"
rm -f "$DIR/meow_mdns.tmp"
file "$DIR/bin/meow_mdns"
echo "字节数: $(stat -c %s "$DIR/bin/meow_mdns")"
echo "MD5 : $(md5sum "$DIR/bin/meow_mdns" | cut -d' ' -f1)"
echo "构建完成: $DIR/bin/meow_mdns"