Skip to content

Commit 9acebf7

Browse files
committed
update
1 parent 4abe3b7 commit 9acebf7

File tree

11 files changed

+61
-32
lines changed

11 files changed

+61
-32
lines changed

packages/c/cairo/xmake.lua

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ package("cairo")
99
add_versions("1.17.6", "a2227afc15e616657341c42af9830c937c3a6bfa63661074eabef13600e8936f")
1010
add_versions("1.17.8", "b4ed6d33037171d4c6594345b42d81796f335a6995fdf5638db0d306c17a0d3e")
1111
add_versions("1.18.0", "39a78afdc33a435c0f2ab53a5ec2a693c3c9b6d2ec9783ceecb2b94d54d942b0")
12+
add_versions("1.18.4", "2f3e6e665dbbb420809102b71ad7d0f7ce870a0b1bf8b34c073f06aefb511fc6")
1213

1314
add_patches("1.18.0", path.join(os.scriptdir(), "patches", "1.18.0", "alloca.patch"), "55f8577929537d43eed9f74241560821001b6c8613d6a7a21cff83f8431c6a70")
1415

@@ -34,14 +35,14 @@ package("cairo")
3435
add_syslinks("pthread")
3536
end
3637

37-
if is_plat("windows") then
38-
add_syslinks("gdi32", "msimg32", "user32", "ole32")
38+
if is_plat("windows", "mingw", "msys", "cygwin") then
39+
add_syslinks("gdi32", "msimg32", "user32", "ole32", "windowscodecs")
3940
elseif is_plat("macosx") then
4041
add_frameworks("CoreGraphics", "CoreFoundation", "CoreText", "Foundation")
4142
end
4243

43-
on_load("windows|x64", "windows|x86", "macosx", "linux", function (package)
44-
if package:is_plat("windows") and not package:config("shared") then
44+
on_load(function (package)
45+
if package:is_plat("windows", "mingw", "msys", "cygwin") and not package:config("shared") then
4546
package:add("defines", "CAIRO_WIN32_STATIC_BUILD=1")
4647
end
4748
if package:config("freetype") then
@@ -58,7 +59,7 @@ package("cairo")
5859
end
5960
end)
6061

61-
on_install("windows|x64", "windows|x86", "macosx", "linux", function (package)
62+
on_install(function (package)
6263
import("package.tools.meson")
6364

6465
local configs = {
@@ -77,7 +78,11 @@ package("cairo")
7778
io.replace("meson.build", "subdir('fuzzing')", "", {plain = true})
7879
io.replace("meson.build", "subdir('docs')", "", {plain = true})
7980
io.replace("meson.build", "'CoreFoundation'", "'CoreFoundation', 'Foundation'", {plain = true})
80-
local envs = meson.buildenvs(package, {packagedeps = {"libintl", "libiconv", "lzo"}})
81+
local cflags = {}
82+
if package:is_plat("iphoneos") then
83+
table.insert(cflags, "-DHAVE_CTIME_R")
84+
end
85+
local envs = meson.buildenvs(package, {cflags = cflags, packagedeps = {"libintl", "libiconv", "lzo"}})
8186
if package:is_plat("windows") then
8287
envs.PATH = package:dep("pkgconf"):installdir("bin") .. path.envsep() .. envs.PATH
8388
end

packages/f/fontconfig/xmake.lua

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,8 @@ package("fontconfig")
33
set_homepage("https://www.freedesktop.org/wiki/Software/fontconfig/")
44
set_description("A library for configuring and customizing font access.")
55

6-
set_urls("https://www.freedesktop.org/software/fontconfig/release/fontconfig-$(version).tar.gz")
7-
add_versions("2.13.1", "9f0d852b39d75fc655f9f53850eb32555394f36104a044bb2b2fc9e66dbbfa7f")
8-
add_versions("2.13.93", "0f302a18ee52dde0793fe38b266bf269dfe6e0c0ae140e30d72c6cca5dc08db5")
9-
add_versions("2.13.94", "246d1640a7e54fba697b28e4445f4d9eb63dda1b511d19986249368ee7191882")
10-
add_versions("2.14.0", "b8f607d556e8257da2f3616b4d704be30fd73bd71e367355ca78963f9a7f0434")
11-
add_versions("2.14.2", "3ba2dd92158718acec5caaf1a716043b5aa055c27b081d914af3ccb40dce8a55")
6+
set_urls("https://gitlab.freedesktop.org/fontconfig/fontconfig/-/archive/$(version)/fontconfig-$(version).tar.gz")
7+
add_versions("2.17.0", "741416e1cc5132f5df533a96070453c0e0fdd137de60e0adb684bb52d06f0e05")
128

139
-- fix the build issue with --enable-static
1410
add_patches("2.13.1", "https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/8208f99fa1676c42bfd8d74de3e9dac5366c150c.diff",
@@ -17,12 +13,12 @@ package("fontconfig")
1713
add_configs("nls", {description = "Enable Native Language Support (NLS)", default = false, type = "boolean"})
1814

1915
add_deps("meson", "ninja", "freetype", "expat", "gperf")
20-
add_deps("python 3.x", {kind = "binary"})
16+
-- add_deps("python 3.x", {kind = "binary"})
2117
if is_plat("linux") then
2218
add_deps("pkg-config")
2319
end
2420

25-
on_load("windows", "linux", "macosx", function (package)
21+
on_load(function (package)
2622
if package:config("nls") and not package:is_plat("linux") then
2723
package:add("deps", "libintl")
2824
end
@@ -32,7 +28,7 @@ package("fontconfig")
3228
end
3329
end)
3430

35-
on_install("windows", "linux", "macosx", function (package)
31+
on_install(function (package)
3632
if package:is_plat("windows") then
3733
io.replace("meson.build", "c_args = []", "c_args = ['-DXML_STATIC']", {plain = true})
3834
end

packages/f/freetype/xmake.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,15 @@ package("freetype")
88
add_urls("https://gitlab.freedesktop.org/freetype/freetype.git",
99
"https://github.com/freetype/freetype.git", {alias = "git"})
1010

11+
add_versions("archive:2.13.3", "5c3a8e78f7b24c20b25b54ee575d6daa40007a5f4eea2845861c3409b3021747")
1112
add_versions("archive:2.13.1", "0b109c59914f25b4411a8de2a506fdd18fa8457eb86eca6c7b15c19110a92fa5")
1213
add_versions("archive:2.13.0", "a7aca0e532a276ea8d85bd31149f0a74c33d19c8d287116ef8f5f8357b4f1f80")
1314
add_versions("archive:2.12.1", "efe71fd4b8246f1b0b1b9bfca13cfff1c9ad85930340c27df469733bbb620938")
1415
add_versions("archive:2.11.1", "f8db94d307e9c54961b39a1cc799a67d46681480696ed72ecf78d4473770f09b")
1516
add_versions("archive:2.11.0", "a45c6b403413abd5706f3582f04c8339d26397c4304b78fa552f2215df64101f")
1617
add_versions("archive:2.10.4", "5eab795ebb23ac77001cfb68b7d4d50b5d6c7469247b0b01b2c953269f658dac")
1718
add_versions("archive:2.9.1", "ec391504e55498adceb30baceebd147a6e963f636eb617424bcfc47a169898ce")
19+
add_versions("git:2.13.3", "VER-2-13-3")
1820
add_versions("git:2.13.1", "VER-2-13-1")
1921
add_versions("git:2.13.0", "VER-2-13-0")
2022
add_versions("git:2.12.1", "VER-2-12-1")

packages/f/fribidi/xmake.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ package("fribidi")
4040
import("package.tools.autoconf").install(package, configs)
4141
end)
4242

43-
on_install("windows|x86", "windows|x64", "mingw", "msys", "wasm", "cross", function (package)
43+
on_install("windows", "mingw", "msys", "wasm", "cross", "android", "iphoneos", function (package)
4444
local configs = {"-Ddocs=false", "-Dtests=false"}
4545
table.insert(configs, "-Ddefault_library=" .. (package:config("shared") and "shared" or "static"))
4646
import("package.tools.meson").install(package, configs)

packages/g/glib/xmake.lua

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,17 @@ package("glib")
4040
elseif is_plat("macosx") then
4141
add_deps("libiconv", {system = true})
4242
add_deps("libintl")
43-
elseif is_plat("windows", "mingw") then
43+
elseif is_plat("android") then
44+
add_deps("libiconv")
45+
add_deps("libintl")
46+
elseif is_plat("windows", "mingw", "cygwin") then
4447
add_deps("libintl")
45-
if is_subhost("windows") then
46-
add_deps("pkgconf")
47-
else
48-
add_deps("pkg-config")
49-
end
48+
end
49+
50+
if is_subhost("windows") then
51+
add_deps("pkgconf")
52+
elseif is_host("bsd") then
53+
add_deps("pkg-config")
5054
end
5155

5256
add_includedirs("include/glib-2.0", "lib/glib-2.0/include")
@@ -75,6 +79,11 @@ package("glib")
7579
end
7680
end)
7781

82+
on_check("android", function (package)
83+
local ndkver = package:toolchain("ndk"):config("ndkver")
84+
assert(ndkver and tonumber(ndkver) > 22, "package(glib): need ndk version > 22")
85+
end)
86+
7887
on_load(function (package)
7988
if package:gitref() or package:version():ge("2.74.0") then
8089
package:add("deps", "pcre2")
@@ -83,7 +92,7 @@ package("glib")
8392
end
8493
end)
8594

86-
on_install("windows", "macosx", "linux", "cross", "mingw", function (package)
95+
on_install(function (package)
8796
local configs = {"-Dbsymbolic_functions=false",
8897
"-Ddtrace=false",
8998
"-Dman=false",

packages/g/gperf/xmake.lua

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,11 @@ package("gperf")
2828
on_install("@macosx", "@linux", "@bsd", "@msys", function (package)
2929
io.replace("lib/getline.cc", "register", "", {plain = true})
3030
io.replace("lib/getopt.c", "register", "", {plain = true})
31-
import("package.tools.autoconf").install(package)
31+
local cflags = {}
32+
if package:version():le("3.1") then
33+
table.insert(cflags, "-std=c99")
34+
end
35+
import("package.tools.autoconf").install(package, {}, {cflags = cflags})
3236
end)
3337

3438
on_test(function (package)

packages/l/libffi/port/xmake.lua

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -151,12 +151,12 @@ target("ffi")
151151
add_files("src/x86/ffi64.c", "src/x86/ffiw64.c", "src/x86/win64_intel.S")
152152
add_includedirs("src/x86")
153153
add_headerfiles("src/x86/ffitarget.h")
154-
elseif is_arch("arm") then
154+
elseif is_arch("arm", "armeabi.*") then
155155
add_files("src/arm/ffi.c")
156156
add_files(is_plat("windows") and "src/arm/sysv_msvc_arm32.S" or "src/arm/sysv.S")
157157
add_includedirs("src/arm")
158158
add_headerfiles("src/arm/ffitarget.h")
159-
elseif is_arch("arm64") then
159+
elseif is_arch("arm64.*", "aarch64") then
160160
add_files("src/aarch64/ffi.c")
161161
add_files(is_plat("windows") and "src/aarch64/win64_armasm.S" or "src/aarch64/sysv.S")
162162
add_includedirs("src/aarch64")

packages/l/libffi/xmake.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ package("libffi")
3333
end
3434
end)
3535

36-
on_install("windows", "iphoneos", "cross", function (package)
36+
on_install("windows", "iphoneos", "cross", "android", "wasm", function (package)
3737
io.gsub("fficonfig.h.in", "# *undef (.-)\n", "${define %1}\n")
3838
os.cp(path.join(os.scriptdir(), "port", "xmake.lua"), "xmake.lua")
3939
import("package.tools.xmake").install(package, {

packages/l/libpng/xmake.lua

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,11 @@ package("libpng")
7373
end
7474
os.cp("scripts/pnglibconf.h.prebuilt", "pnglibconf.h")
7575
end
76+
local version = try { function() return io.readfile("scripts/libpng-config-head.in"):match("version=(%S+)") end }
77+
version = version or (package:version() and package:version_str():gsub("^v", "")) or "1.0.0"
78+
utils.dump("version", version)
7679
io.writefile("xmake.lua", format([[
80+
set_version("%s")
7781
add_rules("mode.debug", "mode.release")
7882
add_requires("zlib")
7983
target("png")
@@ -82,10 +86,11 @@ package("libpng")
8286
%s
8387
add_headerfiles("*.h")
8488
add_packages("zlib")
89+
-- add_rules("utils.install.pkgconfig_importfiles")
8590
if is_kind("shared") and is_plat("windows") then
8691
add_defines("PNG_BUILD_DLL")
8792
end
88-
]], src_include))
93+
]], version, src_include))
8994
import("package.tools.xmake").install(package)
9095
end)
9196

packages/p/pango/xmake.lua

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ package("pango")
66

77
add_urls("https://gitlab.gnome.org/GNOME/pango/-/archive/$(version)/pango-$(version).tar.gz")
88
add_urls("https://gitlab.gnome.org/GNOME/pango.git")
9+
add_versions("1.56.3", "7a059664dcd1c517979e2db2e71dc9a3550acf5a8cf76a1aadb6526d9d4b90f1")
910
add_versions("1.51.1", "ea92cd570cdba62ca52cc0a7c9ea3cd311b6da3f0328a5aa8a4a81b0a74944a5")
1011
add_versions("1.50.3", "4a8b0cf33d5f9ecaa9cd99dd72703d5c4c53bc58df64dd9538493bb4356ab691")
1112

@@ -27,9 +28,14 @@ package("pango")
2728
end
2829
add_includedirs("include", "include/pango-1.0")
2930

30-
on_install("windows|x64", "windows|x86", "macosx", "linux", function (package)
31+
on_check("android", function (package)
32+
local ndkver = package:toolchain("ndk"):config("ndkver")
33+
assert(ndkver and tonumber(ndkver) > 22, "package(pango): require ndk version > 22")
34+
end)
35+
36+
on_install(function (package)
3137
import("package.tools.meson")
32-
local configs = {"-Dintrospection=disabled", "-Dgtk_doc=false", "-Dfontconfig=enabled"}
38+
local configs = {"-Dintrospection=disabled", "-Dfontconfig=enabled"}
3339

3440
table.insert(configs, "-Ddefault_library=" .. (package:config("shared") and "shared" or "static"))
3541
io.gsub("meson.build", "subdir%('tests'%)", "")
@@ -50,7 +56,9 @@ package("pango")
5056

5157
local envs = meson.buildenvs(package, {packagedeps = {"fontconfig", "freetype", "harfbuzz", "fribidi", "cairo", "glib", "pcre2", "libintl", "libiconv", "libthai", "libdatrie"}})
5258
-- workaround for https://github.com/xmake-io/xmake/issues/4412
53-
envs.LDFLAGS = string.gsub(envs.LDFLAGS, "%-libpath:", "/libpath:")
59+
if envs.LDFLAGS and envs.LDFLAGS ~= "" then
60+
envs.LDFLAGS = string.gsub(envs.LDFLAGS, "%-libpath:", "/libpath:")
61+
end
5462
meson.install(package, configs, {envs = envs})
5563
end)
5664

0 commit comments

Comments
 (0)