diff --git a/packages/b/bcg729/xmake.lua b/packages/b/bcg729/xmake.lua new file mode 100644 index 000000000..f6a560856 --- /dev/null +++ b/packages/b/bcg729/xmake.lua @@ -0,0 +1,35 @@ +package("bcg729") + set_homepage("http://linphone.org") + set_description("Bcg729 is an opensource implementation of both encoder and decoder of the ITU G729 Annex A/B speech codec.") + + add_urls("https://github.com/BelledonneCommunications/bcg729/archive/refs/tags/$(version).tar.gz", + "https://github.com/BelledonneCommunications/bcg729.git") + add_versions("1.0.4", "94b3542a06cbd96306efc19f959f9febae62806a22599063f82a8c33e989d48b") + add_versions("1.1.1", "68599a850535d1b182932b3f86558ac8a76d4b899a548183b062956c5fdc916d") + + add_deps("cmake") + + on_load(function (package) + if not package:config("shared") then + package:add("defines", "BCG729_STATIC") + end + end) + + on_install(function (package) + local configs = {"-DENABLE_TESTS=OFF"} + table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:debug() and "Debug" or "Release")) + if package:config("shared") then + table.insert(configs, "-DENABLE_SHARED=ON") + table.insert(configs, "-DENABLE_STATIC=OFF") + else + table.insert(configs, "-DENABLE_SHARED=OFF") + table.insert(configs, "-DENABLE_STATIC=ON") + end + + import("package.tools.cmake").install(package, configs) + end) + + on_test(function (package) + assert(package:has_cfuncs("bcg729Decoder", {includes = "bcg729/decoder.h"})) + assert(package:has_cfuncs("bcg729Encoder", {includes = "bcg729/encoder.h"})) + end)