浏览代码

add:终于不需要单独编译lib了!(吐槽xmake的坑真不少......)

Dozingfiretruck 4 年之前
父节点
当前提交
de468a2bd1
共有 10 个文件被更改,包括 78 次插入161 次删除
  1. 二进制
      lib/libapp.a
  2. 二进制
      lib/libblehost.a
  3. 二进制
      lib/libdrivers.a
  4. 二进制
      lib/libos.a
  5. 二进制
      lib/libwmarch.a
  6. 二进制
      lib/libwmcommon.a
  7. 二进制
      lib/libwmsys.a
  8. 0 2
      lib/readme.md
  9. 1 128
      lib/xmake.lua
  10. 77 31
      xmake.lua

二进制
lib/libapp.a


二进制
lib/libblehost.a


二进制
lib/libdrivers.a


二进制
lib/libos.a


二进制
lib/libwmarch.a


二进制
lib/libwmcommon.a


二进制
lib/libwmsys.a


+ 0 - 2
lib/readme.md

@@ -1,6 +1,4 @@
-## lib编译
 
-全部编译比较耗时,因此将lib部分预编译进行使用,平时仅编译app部分即可,当需要改动lib部分时需要在lib目录下执行xmake -j1 -P即可。**注意:编译lib后一定要将build删掉重新编译app**
 
 **注意:libbtcontroller.a libwlan.a libdsp.a这三个静态库无源码,不要删除**
 

+ 1 - 128
lib/xmake.lua

@@ -1,38 +1,7 @@
-set_project("AIR101")
-set_xmakever("2.5.8")
-
-set_version("0.0.2", {build = "%Y%m%d%H%M"})
-add_rules("mode.debug", "mode.release")
 
 local sdkdir = "../"
 
-local sdk_dir = "D:\\csky-elfabiv2-tools-mingw-minilibc\\"
-if is_plat("linux") then
-    sdk_dir = "/opt/csky-elfabiv2-tools/"
-elseif is_plat("windows") then
-    sdk_dir = "E:\\csky-elfabiv2-tools-mingw-minilibc\\"
-end
-
-toolchain("csky_toolchain")
-    set_kind("standalone")
-    set_sdkdir(sdk_dir)
-toolchain_end()
-
-set_toolchains("csky_toolchain")
---add macro defination
-add_defines("GCC_COMPILE=1","TLS_CONFIG_CPU_XT804=1","NIMBLE_FTR=1","__LUATOS__")
--- set warning all as error
-set_warnings("all")
-set_optimize("smallest")
--- set language: c99
-set_languages("c99", "cxx11")
-add_asflags("-DTLS_CONFIG_CPU_XT804=1 -DGCC_COMPILE=1 -mcpu=ck804ef -std=gnu99 -c -mhard-float -Wa,--gdwarf2 -fdata-sections -ffunction-sections")
-add_cflags("-DTLS_CONFIG_CPU_XT804=1 -DGCC_COMPILE=1 -mcpu=ck804ef -std=gnu99 -c -mhard-float -Wall -fdata-sections -ffunction-sections")
-add_cxflags("-DTLS_CONFIG_CPU_XT804=1 -DGCC_COMPILE=1 -mcpu=ck804ef -std=gnu99 -c -mhard-float -Wall -fdata-sections -ffunction-sections")
-
-set_dependir("$(buildir)/.deps")
-set_objectdir("$(buildir)/.objs")
-set_targetdir("$(projectdir)")
+set_targetdir("$(projectdir)/lib")
 
 target("app")
     set_kind("static")
@@ -61,26 +30,6 @@ target("app")
 
 target_end()
 
-target("wmcommon")
-    set_kind("static")
-    set_plat("cross")
-    set_arch("c-sky")
-    
-    add_files(sdkdir.."platform/common/**.c")
-    add_includedirs(sdkdir.."platform/common/params",{public = true})
-    add_includedirs(sdkdir.."platform/inc",{public = true})
-    add_includedirs(sdkdir.."src/app/mbedtls/include",{public = true})
-    add_includedirs(sdkdir.."include",{public = true})
-    add_includedirs(sdkdir.."include/platform",{public = true})
-    add_includedirs(sdkdir.."include/driver",{public = true})
-    add_includedirs(sdkdir.."include/os",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804/csi_core",{public = true})
-    add_includedirs(sdkdir.."src/os/rtos/include",{public = true})
-    add_includedirs(sdkdir.."include/wifi",{public = true})
-
-target_end()
-
 target("wmarch")
     set_kind("static")
     set_plat("cross")
@@ -105,79 +54,3 @@ target("wmarch")
     end)
 
 target_end()
-
-target("blehost")
-    set_kind("static")
-    set_plat("cross")
-    set_arch("c-sky")
-    
-    add_files(sdkdir.."src/bt/blehost/**.c")
-    add_includedirs(os.dirs(path.join(os.scriptdir(),sdkdir.."src/bt/blehost/**")))
-    add_includedirs(sdkdir.."src/app/bleapp",{public = true})
-    add_includedirs(sdkdir.."src/os/rtos/include",{public = true})
-    add_includedirs(sdkdir.."include",{public = true})
-    add_includedirs(sdkdir.."include/bt",{public = true})
-    add_includedirs(sdkdir.."include/platform",{public = true})
-    add_includedirs(sdkdir.."include/os",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804/csi_core",{public = true})
-
-target_end()
-
-target("os")
-    set_kind("static")
-    set_plat("cross")
-    set_arch("c-sky")
-    
-    add_files(sdkdir.."src/os/**.c")
-    add_files(sdkdir.."src/os/**.S")
-    add_includedirs(sdkdir.."src/os/rtos/include",{public = true})
-    add_includedirs(sdkdir.."include",{public = true})
-    add_includedirs(sdkdir.."include/platform",{public = true})
-    add_includedirs(sdkdir.."include/os",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804/csi_core",{public = true})
-
-target_end()
-
-target("drivers")
-    set_kind("static")
-    set_plat("cross")
-    set_arch("c-sky")
-    
-    add_files(sdkdir.."platform/drivers/**.c")
-    add_includedirs(sdkdir.."platform/inc",{public = true})
-    add_includedirs(sdkdir.."include",{public = true})
-    add_includedirs(sdkdir.."include/app",{public = true})
-    add_includedirs(sdkdir.."include/platform",{public = true})
-    add_includedirs(sdkdir.."include/driver",{public = true})
-    add_includedirs(sdkdir.."include/os",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804/csi_core",{public = true})
-    add_includedirs(sdkdir.."include/net",{public = true})
-    add_includedirs(sdkdir.."include/wifi",{public = true})
-    add_includedirs(sdkdir.."demo",{public = true})
-
-target_end()
-
-target("wmsys")
-    set_kind("static")
-    set_plat("cross")
-    set_arch("c-sky")
-    
-    add_files(sdkdir.."platform/sys/*.c")
-
-    add_includedirs(sdkdir.."platform/arch",{public = true})
-    add_includedirs(sdkdir.."include",{public = true})
-    add_includedirs(sdkdir.."include/driver",{public = true})
-    add_includedirs(sdkdir.."include/os",{public = true})
-    add_includedirs(sdkdir.."include/platform",{public = true})
-    add_includedirs(sdkdir.."include/wifi",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804",{public = true})
-    add_includedirs(sdkdir.."include/arch/xt804/csi_core",{public = true})
-    add_includedirs(sdkdir.."include/app",{public = true})
-    add_includedirs(sdkdir.."include/net",{public = true})
-    add_includedirs(sdkdir.."demo",{public = true})
-    add_includedirs(sdkdir.."platform/inc",{public = true})
-
-target_end()

+ 77 - 31
xmake.lua

@@ -39,6 +39,24 @@ add_cxflags(flto .. "-DTLS_CONFIG_CPU_XT804=1 -DGCC_COMPILE=1 -mcpu=ck804ef -std
 set_dependir("$(buildir)/.deps")
 set_objectdir("$(buildir)/.objs")
 
+target("blehost")
+    set_kind("static")
+    set_plat("cross")
+    set_arch("c-sky")
+    
+    add_files("src/bt/blehost/**.c")
+    add_includedirs(os.dirs(path.join(os.scriptdir(),"src/bt/blehost/**")))
+    add_includedirs("src/app/bleapp",{public = true})
+    add_includedirs("src/os/rtos/include",{public = true})
+    add_includedirs("include",{public = true})
+    add_includedirs("include/bt",{public = true})
+    add_includedirs("include/platform",{public = true})
+    add_includedirs("include/os",{public = true})
+    add_includedirs("include/arch/xt804",{public = true})
+    add_includedirs("include/arch/xt804/csi_core",{public = true})
+
+target_end()
+
 target("lvgl")
     set_kind("static")
     set_plat("cross")
@@ -84,44 +102,37 @@ target("air10x")
         if TARGET_CONF == nil then TARGET_NAME = "AIR103" else TARGET_NAME = "AIR101" end
         -- target:add("defines", TARGET_NAME)
         target:set("filename", TARGET_NAME..".elf")
-        target:add("ldflags", flto .. "-Wl,--gc-sections -Wl,-zmax-page-size=1024 -Wl,--whole-archive ./lib/libwmsys.a ./lib/libdrivers.a ./lib/libos.a ./lib/libblehost.a ./lib/libwmarch.a ./lib/libwmcommon.a ./lib/libapp.a ./lib/libgt.a ./lib/libwlan.a ./lib/libdsp.a ./lib/libbtcontroller.a -Wl,--no-whole-archive -mcpu=ck804ef -nostartfiles -mhard-float -lm -Wl,-T./ld/"..TARGET_NAME..".ld -Wl,-ckmap=./build/out/"..TARGET_NAME..".map ",{force = true})
+        target:add("ldflags", flto .. "-Wl,--gc-sections -Wl,-zmax-page-size=1024 -Wl,--whole-archive ./lib/libwmarch.a ./lib/libapp.a ./lib/libgt.a ./lib/libwlan.a ./lib/libdsp.a ./lib/libbtcontroller.a -Wl,--no-whole-archive -mcpu=ck804ef -nostartfiles -mhard-float -lm -Wl,-T./ld/"..TARGET_NAME..".ld -Wl,-ckmap=./build/out/"..TARGET_NAME..".map ",{force = true})
     end)
 
+    add_deps("blehost")
+
     -- add files
     add_files("app/*.c")
     add_files("app/port/*.c")
     add_files("app/custom/*.c")
+    add_files("platform/sys/*.c")
+    add_files("platform/drivers/**.c")
+    add_files("src/os/**.c")
+    add_files("src/os/**.S")
+    add_files("platform/common/**.c")
 
-    add_files(luatos.."lua/src/*.c")
-    add_files(luatos.."luat/modules/*.c")
-    add_files(luatos.."luat/vfs/*.c")
-    del_files(luatos.."luat/vfs/luat_fs_posix.c")
-
-    add_files(luatos.."components/lcd/*.c")
-    add_files(luatos.."components/sfd/*.c")
-    add_files(luatos.."components/nr_micro_shell/*.c")
-    add_files(luatos.."luat/packages/eink/*.c")
-    add_files(luatos.."luat/packages/epaper/*.c")
-    del_files(luatos.."luat/packages/epaper/GUI_Paint.c")
-    add_files(luatos.."luat/packages/iconv/*.c")
-    add_files(luatos.."luat/packages/lfs/*.c")
-    add_files(luatos.."luat/packages/lua-cjson/*.c")
-    add_files(luatos.."luat/packages/minmea/*.c")
-    add_files(luatos.."luat/packages/qrcode/*.c")
-    add_files(luatos.."luat/packages/u8g2/*.c")
-    add_files(luatos.."luat/weak/*.c")
-
-    add_files(luatos.."components/sfud/*.c")
-    add_includedirs(luatos.."components/sfud")
+    add_includedirs("platform/common/params",{public = true})
+    add_includedirs("src/app/mbedtls/include",{public = true})
+    add_includedirs("src/os/rtos/include",{public = true})
+    add_includedirs("platform/arch",{public = true})
+    add_includedirs("include",{public = true})
+    add_includedirs("include/driver",{public = true})
+    add_includedirs("include/os",{public = true})
+    add_includedirs("include/platform",{public = true})
+    add_includedirs("include/wifi",{public = true})
+    add_includedirs("include/arch/xt804",{public = true})
+    add_includedirs("include/arch/xt804/csi_core",{public = true})
+    add_includedirs("include/app",{public = true})
+    add_includedirs("include/net",{public = true})
+    add_includedirs("demo",{public = true})
+    add_includedirs("platform/inc",{public = true})
 
-    add_files(luatos.."components/statem/*.c")
-    add_includedirs(luatos.."components/statem")
-
-    add_files(luatos.."components/coremark/*.c")
-    add_includedirs(luatos.."components/coremark")
-
-    --add_files(luatos.."components/cjson/*.c")
-    add_includedirs(luatos.."components/cjson")
 
     add_includedirs("demo")
     add_includedirs("demo/console")
@@ -145,7 +156,28 @@ target("air10x")
     add_includedirs("src/app/fatfs")
 
     add_includedirs("app/port",{public = true})
-    add_includedirs("include",{public = true})
+
+    add_files(luatos.."lua/src/*.c")
+    add_files(luatos.."luat/modules/*.c")
+    add_files(luatos.."luat/vfs/*.c")
+    del_files(luatos.."luat/vfs/luat_fs_posix.c")
+
+    add_files(luatos.."components/lcd/*.c")
+    add_files(luatos.."components/sfd/*.c")
+    add_files(luatos.."components/nr_micro_shell/*.c")
+    add_files(luatos.."luat/packages/eink/*.c")
+    add_files(luatos.."luat/packages/epaper/*.c")
+    del_files(luatos.."luat/packages/epaper/GUI_Paint.c")
+    add_files(luatos.."luat/packages/iconv/*.c")
+    add_files(luatos.."luat/packages/lfs/*.c")
+    add_files(luatos.."luat/packages/lua-cjson/*.c")
+    add_files(luatos.."luat/packages/minmea/*.c")
+    add_files(luatos.."luat/packages/qrcode/*.c")
+    add_files(luatos.."luat/packages/u8g2/*.c")
+    add_files(luatos.."luat/weak/*.c")
+
+    
+
     add_includedirs(luatos.."lua/include",{public = true})
     add_includedirs(luatos.."luat/include",{public = true})
     add_includedirs(luatos.."components/lcd",{public = true})
@@ -164,6 +196,18 @@ target("air10x")
     add_includedirs(luatos.."luat/packages/qrcode")
     add_includedirs(luatos.."luat/packages/u8g2")
 
+    add_files(luatos.."components/sfud/*.c")
+    add_includedirs(luatos.."components/sfud")
+
+    add_files(luatos.."components/statem/*.c")
+    add_includedirs(luatos.."components/statem")
+
+    add_files(luatos.."components/coremark/*.c")
+    add_includedirs(luatos.."components/coremark")
+
+    --add_files(luatos.."components/cjson/*.c")
+    add_includedirs(luatos.."components/cjson")
+
     -- gtfont
     add_includedirs(luatos.."components/gtfont",{public = true})
     add_files(luatos.."components/gtfont/*.c")
@@ -255,3 +299,5 @@ target("air10x")
         -- os.mv("$(buildir)/out/AIR101_gz.img", "$(buildir)/out/AIR101_ota.img")
     end)
 target_end()
+
+includes("lib")