haiku/build/jam/ReleaseBuildProfiles
Ingo Weinhold 98c6dfa41e Switch build system from optional package to repositories
* Build libsolv and the dependency solver part of the package kit for
  the build platform.
* Add build tool get_package_dependencies. Given a list of package files
  and a list of repository files it determines the additional packages
  that need to be retrieved from the repositories and prints their URLs.
* Add rules to work with external repositories in the build system
  (build/jam/RepositoryRules):
  - PackageRepository declares an external repository with all its
    packages. The URL of the repository file isn't specified. It is
    computed from a given base URL and the SHA256 hash of the list of
    package files.
  - GeneratedRepositoryPackageList generates a file containing the file
    names of all packages in a repository.
  - IsPackageAvailable returns whether a package is available in any
    repository.
  - PackageURL returns the URL for a package.
* Declare the HaikuPorts repository for x86_gcc2
  (build/jam/repositories/HaikuPorts/x86_gcc2).
* Add rule AddHaikuImagePackages to add a package to the image and rule
  IsHaikuImagePackageAdded to determine whether a package has been
  added.
* OptionalPackages: Remove all entries that just downloaded and
  installed an external package. AddHaikuImagePackages can be used
  instead and is used in the remaining entries. Also move the remaining
  optional package dependency declarations from
  OptionalPackageDependencies here.
* ExtractBuildFeatureArchives: Instead of the URL parameter a package
  name must be specified now. This allows to simplify BuildFeatures
  significantly, since there's no dealing with URLs anymore. "if" out
  the entries that aren't supported yet.
* build_haiku_image: For the packages installed in system and common
  resolve their dependencies and download and install them as well.
2013-07-05 10:51:42 +02:00

90 lines
1.9 KiB
Plaintext

DefineBuildProfile alpha-raw : image : "haiku-alpha.image" ;
DefineBuildProfile alpha-vmware : vmware-image : "haiku-alpha.vmdk" ;
DefineBuildProfile alpha-cd : cd-image : "haiku-alpha.iso" ;
DefineBuildProfile alpha-anyboot : anyboot-image
: "haiku-alpha-anyboot.image" ;
DefineBuildProfile nightly-raw : image : "haiku-nightly.image" ;
DefineBuildProfile nightly-vmware : vmware-image : "haiku-nightly.vmdk" ;
DefineBuildProfile nightly-cd : cd-image : "haiku-nightly.iso" ;
DefineBuildProfile nightly-anyboot : anyboot-image
: "haiku-nightly-anyboot.image" ;
switch $(HAIKU_BUILD_PROFILE) {
case "alpha-*" : {
Echo Building Haiku R1/alpha ;
HAIKU_ROOT_USER_NAME = user ;
HAIKU_ROOT_USER_REAL_NAME = "Yourself" ;
AddGroupToHaikuImage party : 101 : user sshd ;
HAIKU_IMAGE_HOST_NAME = shredder ;
HAIKU_STRIP_DEBUG_FROM_OPTIONAL_PACKAGES = 1 ;
HAIKU_IMAGE_SIZE = 800 ;
AddHaikuImagePackages
openssl
wpa_supplicant
:
system
;
AddHaikuImagePackages
bepdf
cvs
keymapswitcher
man
mercurial
nano
openssh
p7zip
pe
python
subversion
timgmsoundfont
vision
wonderbrush
wqy_microhei
xz_utils
;
AddOptionalHaikuImagePackages BeBook Development Git WebPositive
Welcome ;
}
case "beta-*" : {
Echo You wish. ;
}
case "nightly-*" : {
Echo Building Haiku Nightly ;
HAIKU_ROOT_USER_NAME = user ;
HAIKU_ROOT_USER_REAL_NAME = "Yourself" ;
AddGroupToHaikuImage party : 101 : user sshd ;
HAIKU_STRIP_DEBUG_FROM_OPTIONAL_PACKAGES = 1 ;
HAIKU_IMAGE_HOST_NAME = shredder ;
HAIKU_IMAGE_SIZE = 600 ;
AddHaikuImagePackages
openssl
wpa_supplicant
:
system
;
AddHaikuImagePackages
man
nano
openssh
p7zip
pe
vision
xz_utils
;
AddOptionalHaikuImagePackages Development Git WebPositive ;
}
}
# Uncomment in official release branch.
#HAIKU_DEFINES += HAIKU_OFFICIAL_RELEASE ;
#TARGET_DEFINES += HAIKU_OFFICIAL_RELEASE ;