| ... | @@ -1810,6 +1810,22 @@ pub const LibExeObjStep = struct { | ... | @@ -1810,6 +1810,22 @@ pub const LibExeObjStep = struct { |
| 1810 | } | 1810 | } |
| 1811 | } | 1811 | } |
| 1812 | | 1812 | |
| | 1813 | fn makePackageCmd(self: *LibExeObjStep, pkg: Pkg, zig_args: *ArrayList([]const u8)) error{OutOfMemory}!void { |
| | 1814 | const builder = self.builder; |
| | 1815 | |
| | 1816 | try zig_args.append("--pkg-begin"); |
| | 1817 | try zig_args.append(pkg.name); |
| | 1818 | try zig_args.append(builder.pathFromRoot(pkg.path)); |
| | 1819 | |
| | 1820 | if (pkg.dependencies) |dependencies| { |
| | 1821 | for (dependencies) |sub_pkg| { |
| | 1822 | try self.makePackageCmd(sub_pkg, zig_args); |
| | 1823 | } |
| | 1824 | } |
| | 1825 | |
| | 1826 | try zig_args.append("--pkg-end"); |
| | 1827 | } |
| | 1828 | |
| 1813 | fn make(step: *Step) !void { | 1829 | fn make(step: *Step) !void { |
| 1814 | const self = @fieldParentPtr(LibExeObjStep, "step", step); | 1830 | const self = @fieldParentPtr(LibExeObjStep, "step", step); |
| 1815 | const builder = self.builder; | 1831 | const builder = self.builder; |
| ... | @@ -2076,21 +2092,9 @@ pub const LibExeObjStep = struct { | ... | @@ -2076,21 +2092,9 @@ pub const LibExeObjStep = struct { |
| 2076 | try zig_args.append("--test-cmd-bin"); | 2092 | try zig_args.append("--test-cmd-bin"); |
| 2077 | }, | 2093 | }, |
| 2078 | } | 2094 | } |
| 2079 | for (self.packages.span()) |pkg| { | | |
| 2080 | try zig_args.append("--pkg-begin"); | | |
| 2081 | try zig_args.append(pkg.name); | | |
| 2082 | try zig_args.append(builder.pathFromRoot(pkg.path)); | | |
| 2083 | | | |
| 2084 | if (pkg.dependencies) |dependencies| { | | |
| 2085 | for (dependencies) |sub_pkg| { | | |
| 2086 | try zig_args.append("--pkg-begin"); | | |
| 2087 | try zig_args.append(sub_pkg.name); | | |
| 2088 | try zig_args.append(builder.pathFromRoot(sub_pkg.path)); | | |
| 2089 | try zig_args.append("--pkg-end"); | | |
| 2090 | } | | |
| 2091 | } | | |
| 2092 | | 2095 | |
| 2093 | try zig_args.append("--pkg-end"); | 2096 | for (self.packages.span()) |pkg| { |
| | 2097 | try self.makePackageCmd(pkg, &zig_args); |
| 2094 | } | 2098 | } |
| 2095 | | 2099 | |
| 2096 | for (self.include_dirs.span()) |include_dir| { | 2100 | for (self.include_dirs.span()) |include_dir| { |