ExtractArchiveToContainer: Add update support

Add an alwaysUpdate parameter like the ExtractArchiveTo{Image,Package}
rules have and do the handling in the base rule.
This commit is contained in:
Ingo Weinhold
2011-07-17 16:54:58 +02:00
parent 319b1a7b3b
commit fd03be4838
2 changed files with 13 additions and 11 deletions
+12 -9
View File
@@ -339,7 +339,7 @@ rule AddWifiFirmwareToContainer container : driver : package : archive : extract
local dirTokens = $(systemDirTokens) data firmware $(driver) ;
if $(extract) = true || $(extract) = 1 {
ExtractArchiveToContainer $(container) : $(dirTokens)
: $(firmwareArchive) : $(package) ;
: $(firmwareArchive) : : $(package) ;
} else {
AddFilesToContainer $(container) : $(dirTokens) : $(firmwareArchive) ;
}
@@ -347,10 +347,17 @@ rule AddWifiFirmwareToContainer container : driver : package : archive : extract
rule ExtractArchiveToContainer container : directoryTokens : archiveFile
: extractedSubDir
: alwaysUpdate : extractedSubDir
{
# ExtractArchiveToContainer <container> : <directory> : <archiveFile>
# : <extractedSubDir> ;
# : <alwaysUpdate> : <extractedSubDir> ;
# If the container shall only be updated, we extract only, if explicitely
# requested.
if [ on $(container) return $(HAIKU_CONTAINER_UPDATE_ONLY) ]
&& ! $(alwaysUpdate) {
return ;
}
local directory = [ AddDirectoryToContainer $(container)
: $(directoryTokens) ] ;
@@ -815,12 +822,8 @@ rule ExtractArchiveToHaikuImage dirTokens : archiveFile : alwaysUpdate
# ExtractArchiveToHaikuImage <dirTokens> : <archiveFile> : <alwaysUpdate>
# : <extractedSubDir> ;
# If the image shall only be updated, we extract only, if explicitely
# requested.
if ! [ IsUpdateHaikuImageOnly ] || $(alwaysUpdate) {
ExtractArchiveToContainer $(HAIKU_IMAGE_CONTAINER_NAME) : $(dirTokens)
: $(archiveFile) : $(extractedSubDir) ;
}
ExtractArchiveToContainer $(HAIKU_IMAGE_CONTAINER_NAME) : $(dirTokens)
: $(archiveFile) : $(alwaysUpdate) : $(extractedSubDir) ;
}
rule AddDriversToHaikuImage relativeDirectoryTokens : targets
+1 -2
View File
@@ -400,9 +400,8 @@ rule AddWifiFirmwareToPackage driver : subDirToExtract : archive
rule ExtractArchiveToPackage dirTokens : archiveFile : alwaysUpdate
: extractedSubDir
{
# TODO: Update support?
ExtractArchiveToContainer $(HAIKU_CURRENTLY_BUILT_HAIKU_PACKAGE)
: $(dirTokens) : $(archiveFile) : $(extractedSubDir) ;
: $(dirTokens) : $(archiveFile) : $(alwaysUpdate) : $(extractedSubDir) ;
}