From 09b69aa9cc4f11b70b80417475be948273e61d14 Mon Sep 17 00:00:00 2001 From: Sean Du Date: Sat, 27 Jun 2026 21:07:49 +0800 Subject: [PATCH] Add version string to package name Signed-off-by: Sean Du --- Makefile | 13 ++++++++----- README.md | 5 +++-- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/Makefile b/Makefile index 7aac33f..608373b 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,9 @@ BUILD_DIR := build OBJ_DIR := $(BUILD_DIR)/obj PACKAGE_DIR := $(BUILD_DIR)/package PACKAGE_NAME := cgss-dmm-hook +PACKAGE_VERSION := 2.1 PACKAGE_ROOT := $(PACKAGE_DIR)/$(PACKAGE_NAME) +PACKAGE_ZIP := $(PACKAGE_DIR)/$(PACKAGE_NAME)-v$(PACKAGE_VERSION).zip BUILD ?= release CC := x86_64-w64-mingw32-gcc @@ -62,11 +64,11 @@ OBJS := $(C_OBJS) $(CXX_OBJS) $(RC_OBJS) .PHONY: all release debug package clean -all: $(TARGET) $(HELPER_TARGET) $(BUILD_DIR)/libwinpthread-1.dll -release: $(TARGET) $(HELPER_TARGET) $(BUILD_DIR)/libwinpthread-1.dll +all: $(TARGET) $(HELPER_TARGET) $(BUILD_DIR)/libwinpthread-1.dll $(PACKAGE_ZIP) +release: $(TARGET) $(HELPER_TARGET) $(BUILD_DIR)/libwinpthread-1.dll $(PACKAGE_ZIP) debug: $(MAKE) BUILD=debug -package: $(PACKAGE_DIR)/$(PACKAGE_NAME).zip +package: $(PACKAGE_ZIP) $(TARGET): $(OBJS) $(DEF_FILE) @mkdir -p $(dir $@) @@ -80,7 +82,7 @@ $(BUILD_DIR)/libwinpthread-1.dll: @mkdir -p $(dir $@) cp "$(WINPTHREAD_DLL)" "$@" -$(PACKAGE_DIR)/$(PACKAGE_NAME).zip: $(TARGET) $(HELPER_TARGET) $(BUILD_DIR)/libwinpthread-1.dll config.json.example README.md LICENSE THIRD_PARTY_NOTICES.md +$(PACKAGE_ZIP): $(TARGET) $(HELPER_TARGET) $(BUILD_DIR)/libwinpthread-1.dll config.json.example README.md LICENSE THIRD_PARTY_NOTICES.md rm -rf "$(PACKAGE_ROOT)" @mkdir -p "$(PACKAGE_ROOT)" cp "$(TARGET)" "$(PACKAGE_ROOT)/version.dll" @@ -88,7 +90,8 @@ $(PACKAGE_DIR)/$(PACKAGE_NAME).zip: $(TARGET) $(HELPER_TARGET) $(BUILD_DIR)/libw cp "$(BUILD_DIR)/libwinpthread-1.dll" "$(PACKAGE_ROOT)/libwinpthread-1.dll" cp config.json.example "$(PACKAGE_ROOT)/config.json.example" cp README.md LICENSE THIRD_PARTY_NOTICES.md "$(PACKAGE_ROOT)/" - cd "$(PACKAGE_DIR)" && zip -qr "$(PACKAGE_NAME).zip" "$(PACKAGE_NAME)" + rm -f "$(PACKAGE_ZIP)" + cd "$(PACKAGE_DIR)" && zip -qr "$(notdir $(PACKAGE_ZIP))" "$(PACKAGE_NAME)" $(OBJ_DIR)/%.o: %.c @mkdir -p $(dir $@) diff --git a/README.md b/README.md index f65efda..0b41f41 100644 --- a/README.md +++ b/README.md @@ -34,6 +34,7 @@ cmake --build build ```sh make ``` +默认也会同时生成可分发压缩包。 生成可分发压缩包: ```sh @@ -44,7 +45,7 @@ make package - `build/version.dll` - `build/cgss-borderless-helper.exe` - `build/libwinpthread-1.dll` -- `build/package/cgss-dmm-hook.zip` +- `build/package/cgss-dmm-hook-v2.1.zip` **config.json** ```json @@ -74,7 +75,7 @@ make package - 这样更接近 Borderless Gaming 的工作方式,也能减少退出时的干扰。 - `version.dll` 只在 `imascgstage.exe` 主进程中继续启动 hook 和 helper;被其他进程间接加载时会跳过。 - 不要只单独分发 `version.dll`。当前构建依赖 `libwinpthread-1.dll`,如果目标机器缺少它,Windows 会在进入代理代码前直接拒绝加载,此时通常表现为游戏无法启动,且不会生成任何日志。 -- `make package` 会自动把运行所需文件整理到 `build/package/cgss-dmm-hook/`,并生成 `build/package/cgss-dmm-hook.zip`。 +- `make` 和 `make package` 都会自动把运行所需文件整理到 `build/package/cgss-dmm-hook/`,并生成带版本号的压缩包,例如 `build/package/cgss-dmm-hook-v2.1.zip`。 **致谢** - 本项目的 `version.dll` 代理注入思路与运行时 IL2CPP hook 方向,受 `gkms-localify-dmm` 项目启发。