summaryrefslogtreecommitdiff
path: root/third_party/packages/c/cjson/xmake.lua
blob: 71931212dca0f9e146147f4111399f32c1718218 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package("cjson")

set_homepage("https://github.com/DaveGamble/cJSON")
set_description("Ultralightweight JSON parser in ANSI C.")
set_license("MIT")

set_urls("https://github.com/DaveGamble/cJSON/archive/v$(version).zip",
         "https://github.com/DaveGamble/cJSON.git")

add_versions("1.7.17", "51f3b07aece8d1786e74b951fd92556506586cb36670741b6bfb79bf5d484216")

add_deps("cmake")

on_install("windows", "macosx", "linux", "mingw", "iphoneos", "android", function(package)
    local configs = { "-DENABLE_CJSON_TEST=OFF" }
    table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release"))
    table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF"))
    import("package.tools.cmake").install(package, configs)
end)

on_test(function(package)
    assert(package:has_cfuncs("cJSON_malloc", { includes = "cjson/cJSON.h" }))
end)