haiku/build/jam/HaikuPackages
Augustin Cavalier 63b76faeea Break translators out of haiku.hpkg into a separate haiku_datatranslators.hpkg.
Translators and media-plugins are the main source of dependencies in haiku.hpkg,
and thus the main source of packages being pulled into chroots, especially
HaikuPorter chroots. (FFmpeg pulls in a rather large array of sub-
dependencies, itself.) So, here we break all the translators into their
own sub-package.

For now, haiku.hpkg is declared to depend on haiku_datatranslators,
so that users will not suddenly update and have no translators.
In the future, this will be dropped.

Note that this is only done for the primary arch at present.
Secondary architecture translators remain in the main secondary package
for now.

Change-Id: Id0b352f34f7110b79ec7787792bf3ae0edab4054
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4477
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-09-30 16:38:36 +00:00

67 lines
1.4 KiB
Plaintext

# The packages we build. Each is defined in its own file in the packages/
# subdirectory.
local packages = [ FFilterByBuildFeatures
HaikuDevel
HaikuDataTranslators
HaikuExtras
HaikuLoader
HaikuSource
HaikuUserguide
HaikuWelcome
MakefileEngine
NetFS
UserlandFS
]
;
if $(HAIKU_BUILD_TYPE) = bootstrap {
packages += HaikuBootstrap ;
} else {
packages += Haiku ;
}
local archDependentPackages =
HaikuCrossDevel
WebPositive
;
local secondaryArchPackages =
HaikuDevelSecondary
;
if $(HAIKU_BUILD_TYPE) = bootstrap {
secondaryArchPackages += HaikuSecondaryBootstrap ;
} else {
secondaryArchPackages += HaikuSecondary ;
}
packages = $(packages:G=package-rules) ;
archDependentPackages = $(archDependentPackages:G=package-rules) ;
secondaryArchPackages = $(secondaryArchPackages:G=package-rules) ;
SEARCH on $(packages) $(archDependentPackages) $(secondaryArchPackages)
= [ FDirName $(HAIKU_BUILD_RULES_DIR) packages ] ;
local package ;
for package in $(packages) {
include $(package) ;
}
for package in $(archDependentPackages) {
local architectureObject ;
for architectureObject in [ MultiArchSubDirSetup ] {
on $(architectureObject) {
include $(package) ;
}
}
}
for package in $(secondaryArchPackages) {
local architectureObject ;
for architectureObject in
[ MultiArchSubDirSetup $(TARGET_PACKAGING_ARCHS[2-]) ] {
on $(architectureObject) {
include $(package) ;
}
}
}