Add version string to package name
Signed-off-by: Sean Du <do4suki@gmail.com>
This commit is contained in:
@@ -4,7 +4,9 @@ BUILD_DIR := build
|
|||||||
OBJ_DIR := $(BUILD_DIR)/obj
|
OBJ_DIR := $(BUILD_DIR)/obj
|
||||||
PACKAGE_DIR := $(BUILD_DIR)/package
|
PACKAGE_DIR := $(BUILD_DIR)/package
|
||||||
PACKAGE_NAME := cgss-dmm-hook
|
PACKAGE_NAME := cgss-dmm-hook
|
||||||
|
PACKAGE_VERSION := 2.1
|
||||||
PACKAGE_ROOT := $(PACKAGE_DIR)/$(PACKAGE_NAME)
|
PACKAGE_ROOT := $(PACKAGE_DIR)/$(PACKAGE_NAME)
|
||||||
|
PACKAGE_ZIP := $(PACKAGE_DIR)/$(PACKAGE_NAME)-v$(PACKAGE_VERSION).zip
|
||||||
BUILD ?= release
|
BUILD ?= release
|
||||||
|
|
||||||
CC := x86_64-w64-mingw32-gcc
|
CC := x86_64-w64-mingw32-gcc
|
||||||
@@ -62,11 +64,11 @@ OBJS := $(C_OBJS) $(CXX_OBJS) $(RC_OBJS)
|
|||||||
|
|
||||||
.PHONY: all release debug package clean
|
.PHONY: all release debug package clean
|
||||||
|
|
||||||
all: $(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
|
release: $(TARGET) $(HELPER_TARGET) $(BUILD_DIR)/libwinpthread-1.dll $(PACKAGE_ZIP)
|
||||||
debug:
|
debug:
|
||||||
$(MAKE) BUILD=debug
|
$(MAKE) BUILD=debug
|
||||||
package: $(PACKAGE_DIR)/$(PACKAGE_NAME).zip
|
package: $(PACKAGE_ZIP)
|
||||||
|
|
||||||
$(TARGET): $(OBJS) $(DEF_FILE)
|
$(TARGET): $(OBJS) $(DEF_FILE)
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
@@ -80,7 +82,7 @@ $(BUILD_DIR)/libwinpthread-1.dll:
|
|||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
cp "$(WINPTHREAD_DLL)" "$@"
|
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)"
|
rm -rf "$(PACKAGE_ROOT)"
|
||||||
@mkdir -p "$(PACKAGE_ROOT)"
|
@mkdir -p "$(PACKAGE_ROOT)"
|
||||||
cp "$(TARGET)" "$(PACKAGE_ROOT)/version.dll"
|
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 "$(BUILD_DIR)/libwinpthread-1.dll" "$(PACKAGE_ROOT)/libwinpthread-1.dll"
|
||||||
cp config.json.example "$(PACKAGE_ROOT)/config.json.example"
|
cp config.json.example "$(PACKAGE_ROOT)/config.json.example"
|
||||||
cp README.md LICENSE THIRD_PARTY_NOTICES.md "$(PACKAGE_ROOT)/"
|
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
|
$(OBJ_DIR)/%.o: %.c
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ cmake --build build
|
|||||||
```sh
|
```sh
|
||||||
make
|
make
|
||||||
```
|
```
|
||||||
|
默认也会同时生成可分发压缩包。
|
||||||
|
|
||||||
生成可分发压缩包:
|
生成可分发压缩包:
|
||||||
```sh
|
```sh
|
||||||
@@ -44,7 +45,7 @@ make package
|
|||||||
- `build/version.dll`
|
- `build/version.dll`
|
||||||
- `build/cgss-borderless-helper.exe`
|
- `build/cgss-borderless-helper.exe`
|
||||||
- `build/libwinpthread-1.dll`
|
- `build/libwinpthread-1.dll`
|
||||||
- `build/package/cgss-dmm-hook.zip`
|
- `build/package/cgss-dmm-hook-v2.1.zip`
|
||||||
|
|
||||||
**config.json**
|
**config.json**
|
||||||
```json
|
```json
|
||||||
@@ -74,7 +75,7 @@ make package
|
|||||||
- 这样更接近 Borderless Gaming 的工作方式,也能减少退出时的干扰。
|
- 这样更接近 Borderless Gaming 的工作方式,也能减少退出时的干扰。
|
||||||
- `version.dll` 只在 `imascgstage.exe` 主进程中继续启动 hook 和 helper;被其他进程间接加载时会跳过。
|
- `version.dll` 只在 `imascgstage.exe` 主进程中继续启动 hook 和 helper;被其他进程间接加载时会跳过。
|
||||||
- 不要只单独分发 `version.dll`。当前构建依赖 `libwinpthread-1.dll`,如果目标机器缺少它,Windows 会在进入代理代码前直接拒绝加载,此时通常表现为游戏无法启动,且不会生成任何日志。
|
- 不要只单独分发 `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` 项目启发。
|
- 本项目的 `version.dll` 代理注入思路与运行时 IL2CPP hook 方向,受 `gkms-localify-dmm` 项目启发。
|
||||||
|
|||||||
Reference in New Issue
Block a user