Skip to content

Commit 8f52ecf

Browse files
taglib: add package (#7302)
* taglib: add package * fix links order * Fixup MinGW `on_test` --------- Co-authored-by: Saikari <[email protected]>
1 parent 9a21102 commit 8f52ecf

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

packages/t/taglib/xmake.lua

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package("taglib")
2+
set_homepage("http://taglib.org/")
3+
set_description("TagLib Audio Meta-Data Library")
4+
set_license("LGPL-2.1")
5+
6+
add_urls("https://github.com/taglib/taglib/archive/refs/tags/$(version).tar.gz",
7+
"https://github.com/taglib/taglib.git", {submodules = false})
8+
9+
add_versions("v2.1", "95b788b39eaebab41f7e6d1c1d05ceee01a5d1225e4b6d11ed8976e96ba90b0c")
10+
11+
add_deps("cmake")
12+
add_deps("utfcpp", "zlib")
13+
14+
add_links("tag_c", "tag")
15+
16+
on_install(function (package)
17+
io.replace("bindings/c/tag_c.h", [[#define TAGLIB_TAG_C]], [[#define TAGLIB_TAG_C
18+
#include <stddef.h>]], {plain = true})
19+
if not package:config("shared") then
20+
package:add("defines", "TAGLIB_STATIC")
21+
end
22+
23+
local configs = {"-DBUILD_TESTING=OFF"}
24+
table.insert(configs, "-DCMAKE_BUILD_TYPE=" .. (package:is_debug() and "Debug" or "Release"))
25+
table.insert(configs, "-DBUILD_SHARED_LIBS=" .. (package:config("shared") and "ON" or "OFF"))
26+
import("package.tools.cmake").install(package, configs)
27+
end)
28+
29+
on_test(function (package)
30+
assert(package:has_cfuncs("taglib_set_strings_unicode", {includes = "taglib/tag_c.h"}))
31+
end)

0 commit comments

Comments
 (0)