Add build profile action update-packages
Equivalent to "jam <list of all hpkgs> && jam @... <list of all hpkgs>", i.e. it makes sure all hpkgs that are supposed to be in the image are rebuilt respectively downloaded and copied to the image. It doesn't remove old packages nor the activation files -- that still has to be done manually.
This commit is contained in:
parent
eee120f987
commit
7c092d4d86
@ -928,6 +928,9 @@ rule InstallOptionalHaikuImagePackage url : dirTokens : isCDPackage
|
||||
local archiveFile = [ DownloadFile $(package) : $(url) ] ;
|
||||
|
||||
if $(package:S) = .hpkg {
|
||||
if $(HAIKU_UPDATE_ALL_PACKAGES) {
|
||||
HAIKU_INCLUDE_IN_IMAGE on $(archiveFile) = 1 ;
|
||||
}
|
||||
AddFilesToHaikuImage $(dirTokens) : $(archiveFile) ;
|
||||
} else if ( $(isCDPackage) = true || $(isCDPackage) = 1 )
|
||||
&& $(HAIKU_CD_NAME) {
|
||||
|
@ -407,6 +407,12 @@ rule DefineBuildProfile name : type : path {
|
||||
HAIKU_INCLUDE_IN_PACKAGES = 1 ;
|
||||
}
|
||||
|
||||
case "update-packages" : {
|
||||
JAM_TARGETS = $(buildTarget) ;
|
||||
SetUpdateHaikuImageOnly 1 ;
|
||||
HAIKU_UPDATE_ALL_PACKAGES = 1 ;
|
||||
}
|
||||
|
||||
case "mount" : {
|
||||
if $(type) in "install" "cd-image" {
|
||||
Exit "Build action \"mount\" not supported for profile type"
|
||||
|
@ -279,6 +279,8 @@ rule HaikuPackage package
|
||||
HAIKU_CONTAINER_UPDATE_ONLY on $(package) = 1 ;
|
||||
HAIKU_CONTAINER_INHERIT_UPDATE_VARIABLE on $(package)
|
||||
= HAIKU_INCLUDE_IN_IMAGE ;
|
||||
} else if $(HAIKU_UPDATE_ALL_PACKAGES) {
|
||||
HAIKU_INCLUDE_IN_IMAGE on $(package) = 1 ;
|
||||
}
|
||||
|
||||
HAIKU_CONTAINER_ALWAYS_CREATE_DIRECTORIES on $(package) = 1 ;
|
||||
|
Loading…
Reference in New Issue
Block a user