mirror of
https://git.freebsd.org/src.git
synced 2026-01-12 06:54:03 +00:00
packages: Set dependency origin in generate-ucl.lua
Commit822fd56067changed the origin of packages from "base" to "base/<package name>", but the old origin was still used for dependencies. Aside from being wrong, this confuses pkg <= 2.3.1 and causes "pkg info -d" to show the dependencies as "<pkgname>-(null)" instead of the correct version string. Remove the explicit origin from dependencies in the UCL files, and instead populate this during the build in generate-ucl.lua. In the (very unlikely) case that an explicit origin is still needed, don't overwrite one if it's already present. MFC after: 1 day Fixes:822fd56067("pkgbase: set origin for each packages as base/FreeBSD-*") Reported by: bapt Reviewed by: cperciva, bapt Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52892
This commit is contained in:
parent
349f4fd382
commit
a507a7026c
26 changed files with 9 additions and 40 deletions
|
|
@ -75,15 +75,15 @@ end
|
|||
-- Add dependencies from SET_DEPENDS.
|
||||
for dep in string.gmatch(pkgdeps, "[^%s]+") do
|
||||
obj["deps"][dep] = {
|
||||
["origin"] = "base"
|
||||
["origin"] = "base/"..dep
|
||||
}
|
||||
end
|
||||
|
||||
-- Add a version key to all dependencies, otherwise pkg doesn't like it.
|
||||
-- Add a version and origin key to all dependencies, otherwise pkg
|
||||
-- doesn't like it.
|
||||
for dep, opts in pairs(obj["deps"]) do
|
||||
if obj["deps"][dep]["version"] == nil then
|
||||
obj["deps"][dep]["version"] = pkgversion
|
||||
end
|
||||
obj["deps"][dep]["origin"] = obj["deps"][dep]["origin"] or "base/"..dep
|
||||
obj["deps"][dep]["version"] = obj["deps"][dep]["version"] or pkgversion
|
||||
end
|
||||
|
||||
-- If there are no dependencies, remove the deps key, otherwise pkg raises an
|
||||
|
|
|
|||
|
|
@ -161,7 +161,7 @@ if add_gen_dep(pkgname, pkggenname) then
|
|||
end
|
||||
obj["deps"][pkggenname] = {
|
||||
["version"] = pkgversion,
|
||||
["origin"] = "base"
|
||||
["origin"] = "base/"..pkgprefix.."-"..pkggenname,
|
||||
}
|
||||
end
|
||||
|
||||
|
|
@ -217,6 +217,8 @@ if pkgprefix ~= nil and obj["deps"] ~= nil then
|
|||
newdeps = {}
|
||||
for dep, opts in pairs(obj["deps"]) do
|
||||
local newdep = pkgprefix .. "-" .. dep
|
||||
-- Make sure origin is set.
|
||||
opts["origin"] = opts["origin"] or "base/"..newdep
|
||||
newdeps[newdep] = opts
|
||||
end
|
||||
obj["deps"] = newdeps
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
name = "${PKG_NAME_PREFIX}-set-${PKGNAME}"
|
||||
prefix = "/"
|
||||
origin = "base"
|
||||
origin = "base/${PKG_NAME_PREFIX}-set-${PKGNAME}"
|
||||
categories = [ base ]
|
||||
version = "${VERSION}"
|
||||
maintainer = "${PKG_MAINTAINER}"
|
||||
|
|
|
|||
|
|
@ -25,10 +25,8 @@ EOD
|
|||
deps {
|
||||
"set-minimal-dbg" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
"set-devel-dbg" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,10 +25,8 @@ EOD
|
|||
deps {
|
||||
"set-minimal-jail-dbg" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
"set-devel-dbg" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,14 +28,11 @@ EOD
|
|||
deps {
|
||||
"set-minimal-jail" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
"set-optional-jail" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
"set-devel" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -31,14 +31,11 @@ EOD
|
|||
deps {
|
||||
"set-minimal" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
"set-optional" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
"set-devel" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,6 +26,5 @@ EOD
|
|||
deps {
|
||||
"set-minimal-dbg" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,6 +26,5 @@ EOD
|
|||
deps {
|
||||
"set-minimal-jail-dbg" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,6 +29,5 @@ EOD
|
|||
deps {
|
||||
"set-minimal-jail" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,6 +28,5 @@ EOD
|
|||
deps {
|
||||
"set-minimal" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,13 +20,11 @@ deps {
|
|||
# atrun relies on cron to work.
|
||||
"cron" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
|
||||
# at(1) passes the command to /bin/sh
|
||||
"runtime" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,6 @@ deps {
|
|||
# rfcomm_pppd(8) uses ppp(8)
|
||||
"ppp" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,6 +20,5 @@ deps {
|
|||
# bsdconfig is written in shell script, so it needs /bin/sh
|
||||
"runtime" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,6 +20,5 @@ deps {
|
|||
# bsdinstall is written in shell script, so it needs /bin/sh
|
||||
"runtime" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
deps {
|
||||
"certctl": {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
scripts: {
|
||||
|
|
|
|||
|
|
@ -19,6 +19,5 @@
|
|||
deps {
|
||||
"openssl": {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,9 @@
|
|||
deps {
|
||||
"lld" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
|
||||
"libcompiler_rt-dev" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,6 +20,5 @@ deps {
|
|||
# devd uses /bin/sh to invoke hooks.
|
||||
"runtime" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,6 +2,5 @@ deps {
|
|||
# newsyslog uses bzip2 to compress log files.
|
||||
"bzip2" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,6 +19,5 @@
|
|||
deps {
|
||||
"cron" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,7 +19,6 @@
|
|||
deps {
|
||||
"runtime": {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,7 +20,6 @@ deps {
|
|||
# The RPC daemons require rpcbind.
|
||||
"utilities" {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,6 +20,5 @@ deps {
|
|||
# sendmail requires make to build its configuration file.
|
||||
"bmake": {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -27,20 +27,17 @@ deps {
|
|||
# Nearly all the tests require atf to run.
|
||||
"atf": {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
|
||||
# The test framework requires Kyua.
|
||||
"kyua": {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
},
|
||||
|
||||
# Since the purpose of the tests is to test the base system, the base
|
||||
# system must be installed.
|
||||
"set-base": {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -20,6 +20,5 @@ deps {
|
|||
# YP requires bmake to rebuild the database.
|
||||
"bmake": {
|
||||
version = "${VERSION}"
|
||||
origin = "base"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue