From 6e550bbd6b9e52fc83e808a546d00b62cbfd6dcb Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Sat, 7 Oct 2023 14:48:41 -0700 Subject: [PATCH] pkg/libxml2: download using zig package manager --- pkg/libxml2/build.zig | 8 ++++---- pkg/libxml2/build.zig.zon | 7 ++++++- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/pkg/libxml2/build.zig b/pkg/libxml2/build.zig index 979021308..457a504bb 100644 --- a/pkg/libxml2/build.zig +++ b/pkg/libxml2/build.zig @@ -4,7 +4,7 @@ pub fn build(b: *std.Build) !void { const target = b.standardTargetOptions(.{}); const optimize = b.standardOptimizeOption(.{}); - const upstream_root = "../../vendor/libxml2"; + const upstream = b.dependency("libxml2", .{}); const lib = b.addStaticLibrary(.{ .name = "xml2", @@ -13,7 +13,7 @@ pub fn build(b: *std.Build) !void { }); lib.linkLibC(); - lib.addIncludePath(.{ .path = upstream_root ++ "/include" }); + lib.addIncludePath(upstream.path("include")); lib.addIncludePath(.{ .path = "override/include" }); if (target.isWindows()) { lib.addIncludePath(.{ .path = "override/config/win32" }); @@ -96,14 +96,14 @@ pub fn build(b: *std.Build) !void { inline for (srcs) |src| { lib.addCSourceFile(.{ - .file = .{ .path = upstream_root ++ "/" ++ src }, + .file = upstream.path(src), .flags = flags.items, }); } lib.installHeader("override/include/libxml/xmlversion.h", "libxml/xmlversion.h"); lib.installHeadersDirectoryOptions(.{ - .source_dir = .{ .path = upstream_root ++ "/include" }, + .source_dir = upstream.path("include"), .install_dir = .header, .install_subdir = "", .include_extensions = &.{".h"}, diff --git a/pkg/libxml2/build.zig.zon b/pkg/libxml2/build.zig.zon index 403292ca3..5776b429e 100644 --- a/pkg/libxml2/build.zig.zon +++ b/pkg/libxml2/build.zig.zon @@ -1,5 +1,10 @@ .{ .name = "libxml2", .version = "2.11.5", - .dependencies = .{}, + .dependencies = .{ + .libxml2 = .{ + .url = "https://github.com/GNOME/libxml2/archive/refs/tags/v2.11.5.tar.gz", + .hash = "122032442d95c3b428ae8e526017fad881e7dc78eab4d558e9a58a80bfbd65a64f7d", + }, + }, }