mirror of
https://github.com/2dust/v2rayN.git
synced 2025-12-01 04:03:00 +00:00
50 lines
1.5 KiB
Makefile
Executable file
50 lines
1.5 KiB
Makefile
Executable file
#!/usr/bin/make -f
|
||
|
||
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
|
||
export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
||
|
||
# 推断目标 RID(按构建机架构)
|
||
DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
|
||
ifeq ($(DEB_HOST_ARCH),amd64)
|
||
RID := linux-x64
|
||
else ifeq ($(DEB_HOST_ARCH),arm64)
|
||
RID := linux-arm64
|
||
else
|
||
$(error Unsupported architecture $(DEB_HOST_ARCH))
|
||
endif
|
||
|
||
# 预编译产物期望位置(随源包一起上传)
|
||
PREBUILT_DIR := packaging/prebuilt/$(RID)
|
||
OUT_DIR := build/out
|
||
|
||
%:
|
||
dh $@
|
||
|
||
override_dh_auto_build:
|
||
@echo "[info] 使用预编译产物重打包: $(PREBUILT_DIR)"
|
||
test -d "$(PREBUILT_DIR)" || { \
|
||
echo "[error] 未找到预编译目录 $(PREBUILT_DIR)"; \
|
||
echo "请在打包前将 dotnet publish 的输出放入该目录 (参考 README)"; \
|
||
exit 1; \
|
||
}
|
||
rm -rf "$(OUT_DIR)" && mkdir -p "$(OUT_DIR)"
|
||
cp -a "$(PREBUILT_DIR)/"* "$(OUT_DIR)/"
|
||
|
||
override_dh_auto_install:
|
||
# 安装主体到 /usr/lib/v2rayn
|
||
mkdir -p debian/v2rayn/usr/lib/v2rayn
|
||
cp -a "$(OUT_DIR)/"* debian/v2rayn/usr/lib/v2rayn/
|
||
|
||
# 包装启动器到 /usr/bin
|
||
install -Dm0755 debian/scripts/v2rayn debian/v2rayn/usr/bin/v2rayn
|
||
|
||
# 安装 desktop 条目与图标
|
||
install -Dm0644 debian/v2rayn.desktop debian/v2rayn/usr/share/applications/v2rayN.desktop
|
||
# 优先使用构建输出中的图标
|
||
if [ -f "$(OUT_DIR)/v2rayN.png" ]; then \
|
||
install -Dm0644 "$(OUT_DIR)/v2rayN.png" debian/v2rayn/usr/share/icons/hicolor/256x256/apps/v2rayN.png; \
|
||
fi
|
||
|
||
override_dh_auto_clean:
|
||
rm -rf "$(OUT_DIR)"
|
||
|