diff --git a/awtk_config.py b/awtk_config.py index b123a83de..b9dd0f0fe 100644 --- a/awtk_config.py +++ b/awtk_config.py @@ -8,8 +8,14 @@ from awtk_config_common import joinPath, toWholeArchive, genIdlAndDefEx, setEnvS from awtk_config_common import OS_FLAGS, OS_LIBS, OS_LIBPATH, OS_CPPPATH, OS_LINKFLAGS, OS_SUBSYSTEM_CONSOLE, OS_SUBSYSTEM_WINDOWS, OS_PROJECTS, COMMON_CFLAGS WIN32_AWTK_RES = 'win32_res/awtk.res' +if TARGET_ARCH == 'x86': + WIN32_AWTK_RES = 'win32_res/awtk_x86.res' + if not os.path.exists(WIN32_AWTK_RES): - WIN32_AWTK_RES = os.path.join(TK_ROOT, 'win32_res/awtk.res') + if TARGET_ARCH == 'x86': + WIN32_AWTK_RES = os.path.join(TK_ROOT, 'win32_res/awtk_x86.res') + else: + WIN32_AWTK_RES = os.path.join(TK_ROOT, 'win32_res/awtk.res') AWTK_STATIC_LIBS = ['awtk_global', 'extwidgets', 'widgets', 'base', 'gpinyin', 'fribidi', 'linebreak'] diff --git a/docs/changes.md b/docs/changes.md index b90aaeb9e..eb4a602a0 100644 --- a/docs/changes.md +++ b/docs/changes.md @@ -1,5 +1,8 @@ # 最新动态 +2022/07/14 + * win32_res兼容x86平台编译(感谢雨欣提供补丁) + 2022/07/13 * 重构 widget\_add\_child * 完善 pages 动态增加子控件。 diff --git a/win32_res/README.md b/win32_res/README.md index 205847ff9..da75e8904 100644 --- a/win32_res/README.md +++ b/win32_res/README.md @@ -5,7 +5,7 @@ 1. 用 VC 创建的 .res 文件代替 awtk.res, 2. 用 [ResEdit](http://rsdt.free.fr/ResEdit-x64.7z) 直接编辑 awtk.res 文件。 -兼容 mingw 的话: +## 生成兼容 mingw 的 res 1. awtk.rc 转为 utf8(或者 utf8 with BOM) 的编码。 2. 注释 rc 文件中的 #include "targetver.h" 代码 @@ -14,3 +14,11 @@ ```bash windres awtk.rc -O coff awtk.res ``` + +## 生成兼容 mingw 的 x86 格式 res + +步骤与上一小节一致,但最后使用 windres 工具导出 res 文件时,需要加上 `--target=pe-i386` 参数,命令如下: + +```bash +windres awtk.rc -O coff awtk_x86.res --target=pe-i386 +``` diff --git a/win32_res/awtk_x86.res b/win32_res/awtk_x86.res new file mode 100644 index 000000000..7dddc9ada Binary files /dev/null and b/win32_res/awtk_x86.res differ