xmake工程描述入門

xmake的工程描述文件,擯棄了makefile的繁瑣複雜,借鑑了premake的簡潔明瞭,原生支持lua腳本,使得更加的靈活、方便擴展。c++

工程默認描述文件名爲xmake.lua,支持多級目錄嵌套,也能夠經過如下命令,指定其餘文件做爲工程描述文件:git

xmake -f /tmp/xxx.lua
xmake --file=xxx.lua

下面先來看一個最簡單的例子:github

-- 添加一個名爲demo的目標到工程
add_target("demo")

    -- 設置目標程序類型爲二進制可執行程序,通常爲console的終端命令行程序
    set_kind("binary")

    -- 添加src目錄下的全部c文件
    add_files("src/*.c")

怎麼樣簡單吧,這樣就已經完成了一個最簡單的工程描述。。bash

下面咱們看一個稍微複雜一點的例子,這個例子中對release、debug模式進行了不一樣的設置:函數

-- 若是當前編譯的是debug模式
if modes("debug") then
    
    -- 啓用調試符號
    set_symbols("debug")

    -- 禁用優化
    set_optimize("none")
end

-- 若是當前編譯的是release模式
if modes("release") then

    -- 設置符號可見性爲不可見
    set_symbols("hidden")

    -- 啓用最快優化模式
    set_optimize("fastest")

    -- 去除全部符號信息,包括調試符號
    set_strip("all")
end

-- 添加一個名爲test的目標
add_target("test")

    -- 將test編譯成爲靜態庫類型
    set_kind("static")

    -- 添加全部c++文件,包括子目錄(注:**代表多級遞歸匹配模式)
    add_files("src/**.cpp")

其實也不是很複雜吧,因爲採用lua語法,因此邏輯上更加的靈活,你徹底能夠用lua的分支、循環、函數等語法,進行更加靈活的配置。。優化


相關文章
相關標籤/搜索