-- JsonSerializer 第三方库配置
-- 此文件被主项目通过 includes("jsonserializer") 引入

-- JsonSerializer 库
target("jsonserializer")
    set_kind("static")
        -- C++17 标准
    set_languages("c++17")
    if is_plat("windows") then
        add_defines("UNICODE", "_UNICODE")
    end
    -- 源文件
    add_files("*.cpp")
    add_files("qjsonconverterreg/*.cpp")
    add_files("typeconverters/*.cpp")
    
    add_files("*.h")
--    add_files("qjsonconverterreg/*.h")
    add_files("typeconverters/*.h")
    -- 头文件
    add_headerfiles("*.h")
    add_headerfiles("qjsonconverterreg/*.h")
    add_headerfiles("typeconverters/*.h")
    
    -- 包含目录
    add_includedirs(".", {public = true})
    add_includedirs("..", {public = true})
    
    -- Qt 配置
    add_rules("qt.static")
    
    -- Qt MOC 处理
    add_files("./**/*.h", {rules = "qt.moc"})
    

    
    -- 编译选项
    if is_plat("windows") then
        add_cxflags("/utf-8")
    else
        add_cxflags("-Wall", "-Wextra")
    end
    
target_end()
