确实厉害,到哪一步了? |
不明觉厉 |
---占楼结束--- |
---未完成--- 11. lvgl 接管 grub2 gfxmenu 12. 实现鼠标支持 |
---未完成--- 10. 用lvgl实现grub2 boot_menu 和 terminal_box 组件 |
本帖最后由 wintoflash 于 2022-10-1 13:37 编辑 4. 导入 LVGL 源码 在 grub-core 下建立 lvgl 文件夹 将 LVGL 源码目录下的 src 目录复制到 grub-core/lvgl/ 将 LVGL 源码目录下的 lvgl.h 复制到 grub-core/lvgl/lvgl.h 创建文件夹 grub-core/lvgl/port 将 LVGL 源码目录下的 lv_conf_template.h 复制到 grub-core/lvgl/port/lv_conf.h 创建文件 grub-core/lvgl/port/module.c
修改 conf/Makefile.common,添加
修改 grub-core/Makefile.core.def,添加
编辑 grub-core/lvgl/port/lv_conf.h,参考编译配置:
5. 创建测试模块 grub-core/Makefile.core.def
grub-core/commands/lvgltest.c
|
本帖最后由 wintoflash 于 2022-10-1 13:38 编辑 2. 改造 GRUB2 posix_wrap 库 修改 grub-core/lib/posix_wrap/sys/types.h,添加以下内容:
修改 grub-core/lib/posix_wrap/limits.h,添加以下内容:
修改 grub-core/lib/posix_wrap/inttypes.h:
修改 grub-core/lib/posix_wrap/stdint.h,添加以下内容:
修改 grub-core/lib/posix_wrap/string.h, 添加以下函数:
3. 修改 GRUB2 compiler-rt 由于 LVGL 中使用到了 64 位整数除法,因此要在 i386 架构下添加 __udivmoddi4 和 __divmoddi4 这两个符号。 修改 include/grub/misc.h:
改为
修改 gentpl.py:
改为
修改 include/grub/compiler-rt.h,在 #if defined(GRUB_DIVISION_IN_SOFTWARE) && GRUB_DIVISION_IN_SOFTWARE 条件里面加入
修改 grub-core/kern/compiler-rt.c,在对应条件下加入
|
Powered by Discuz! X3.3
© 2001-2017 Comsenz Inc.