Name the generated HPKG files properly

* rule AddPackageFilesToHaikuImage: Add "flags" parameter. The only
  supported flag is "nameFromMetaInfo". It causes the packages to be
  copied under their canonical file name onto the image.
* Use the new flag for all generated packages save haiku_loader.hpkg.
This commit is contained in:
Ingo Weinhold
2013-10-09 03:48:26 +02:00
parent 16c8373026
commit a27d687e2a
5 changed files with 31 additions and 5 deletions
+14 -2
View File
@@ -1009,14 +1009,26 @@ rule AddBootModuleSymlinksToHaikuImage targets
: $(targets) ; : $(targets) ;
} }
rule AddPackageFilesToHaikuImage location : packages rule AddPackageFilesToHaikuImage location : packages : flags
{ {
# AddPackageFilesToHaikuImage <location> : <packages> : <flags>
#
# Supported flags:
# nameFromMetaInfo - determine the target file name from the package meta
# info
packages = [ FFilterByBuildFeatures $(packages) ] ; packages = [ FFilterByBuildFeatures $(packages) ] ;
HAIKU_PACKAGES_IN_IMAGE on $(HAIKU_IMAGE_CONTAINER_NAME) HAIKU_PACKAGES_IN_IMAGE on $(HAIKU_IMAGE_CONTAINER_NAME)
= [ on $(HAIKU_IMAGE_CONTAINER_NAME) return $(HAIKU_PACKAGES_IN_IMAGE) ] = [ on $(HAIKU_IMAGE_CONTAINER_NAME) return $(HAIKU_PACKAGES_IN_IMAGE) ]
$(packages) ; $(packages) ;
HAIKU_PACKAGE_INSTALLATION_LOCATION on $(packages) = $(location) ; HAIKU_PACKAGE_INSTALLATION_LOCATION on $(packages) = $(location) ;
AddFilesToHaikuImage $(location) packages : $(packages) ;
if nameFromMetaInfo in $(flags) {
AddFilesToHaikuImage $(location) packages : $(packages)
: packageFileName : computeName ;
} else {
AddFilesToHaikuImage $(location) packages : $(packages) ;
}
} }
rule AddOptionalHaikuImagePackages packages rule AddOptionalHaikuImagePackages packages
+7 -3
View File
@@ -146,6 +146,8 @@ if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ]
haiku_devel.hpkg haiku_devel.hpkg
haiku_$(TARGET_PACKAGING_ARCHS[2-])_devel.hpkg haiku_$(TARGET_PACKAGING_ARCHS[2-])_devel.hpkg
makefile_engine.hpkg makefile_engine.hpkg
:
nameFromMetaInfo
; ;
} }
@@ -271,7 +273,8 @@ if [ IsOptionalHaikuImagePackageAdded WebPositive ] {
for architectureObject in [ MultiArchSubDirSetup ] { for architectureObject in [ MultiArchSubDirSetup ] {
on $(architectureObject) { on $(architectureObject) {
if [ FIsBuildFeatureEnabled webpositive ] { if [ FIsBuildFeatureEnabled webpositive ] {
AddPackageFilesToHaikuImage system : webpositive.hpkg ; AddPackageFilesToHaikuImage system : webpositive.hpkg
: nameFromMetaInfo ;
InstallOptionalHaikuImagePackage InstallOptionalHaikuImagePackage
$(baseURL)/WebPositiveBookmarks-2012-02-18.zip $(baseURL)/WebPositiveBookmarks-2012-02-18.zip
: home config settings WebPositive ; : home config settings WebPositive ;
@@ -284,8 +287,9 @@ if [ IsOptionalHaikuImagePackageAdded WebPositive ] {
# Welcome # Welcome
if [ IsOptionalHaikuImagePackageAdded Welcome ] { if [ IsOptionalHaikuImagePackageAdded Welcome ] {
AddPackageFilesToHaikuImage system : haiku_userguide.hpkg ; AddPackageFilesToHaikuImage system : haiku_userguide.hpkg
AddPackageFilesToHaikuImage system : haiku_welcome.hpkg ; : nameFromMetaInfo ;
AddPackageFilesToHaikuImage system : haiku_welcome.hpkg : nameFromMetaInfo ;
AddSymlinkToHaikuImage home Desktop : /boot/system/bin/welcome AddSymlinkToHaikuImage home Desktop : /boot/system/bin/welcome
: Welcome ; : Welcome ;
+2
View File
@@ -218,6 +218,8 @@ include [ FDirName $(HAIKU_BUILD_RULES_DIR) HaikuPackages ] ;
AddPackageFilesToHaikuImage system : AddPackageFilesToHaikuImage system :
haiku.hpkg haiku.hpkg
haiku_$(TARGET_PACKAGING_ARCHS[2-]).hpkg haiku_$(TARGET_PACKAGING_ARCHS[2-]).hpkg
:
nameFromMetaInfo
; ;
AddPackageFilesToHaikuImage system : haiku_loader.hpkg ; AddPackageFilesToHaikuImage system : haiku_loader.hpkg ;
+2
View File
@@ -175,6 +175,8 @@ include [ FDirName $(HAIKU_BUILD_RULES_DIR) HaikuPackages ] ;
AddPackageFilesToHaikuImage system : AddPackageFilesToHaikuImage system :
haiku.hpkg haiku.hpkg
haiku_$(TARGET_PACKAGING_ARCHS[2-]).hpkg haiku_$(TARGET_PACKAGING_ARCHS[2-]).hpkg
:
nameFromMetaInfo
; ;
AddPackageFilesToHaikuImage system : haiku_loader.hpkg ; AddPackageFilesToHaikuImage system : haiku_loader.hpkg ;
+6
View File
@@ -219,6 +219,12 @@ downloadFile()
} }
packageFileName()
{
$package info -f "%fileName%" "$1"
}
mkdir -p $tmpDir mkdir -p $tmpDir
copyrightsFile=$tmpDir/copyrights copyrightsFile=$tmpDir/copyrights
$rmAttrs -f $copyrightsFile $rmAttrs -f $copyrightsFile