EAPI 5-progress Also see the official EAPI 5-progress Specification.
Helpers
master_repositories New master_repositories function prints space-separated list of master repositories for specified repository.
repository_path New repository_path function prints path to specified repository.
available_eclasses New available_eclasses function prints space-separated list of available eclasses for current repository.
eclass_path New eclass_path function prints path to specified eclass for current repository.
license_path New license_path function prints path to specified license for current repository.
package_manager_build_user New package_manager_build_user function prints name of user used by package manager in build phases.
package_manager_build_group New package_manager_build_group function prints name of group used by package manager in build phases.
Extended default list of extensions in dohtml dohtml by default additionally installs files with .ico, .svg, .xhtml and .xml extensions.
Helpers Banned in Global Scope diropts docompress exeopts insopts keepdir libopts use use_enable use_with useq usev usex
Metadata
Support for Period Characters in Package Names The "." character is allowed in package names.
Support for Period Characters in USE Flags The "." character is allowed in USE flags.
Repository Dependencies Repository dependencies are supported in atoms in DEPEND, PDEPEND and RDEPEND and atoms passed to best_version and has_version functions. Repository dependency is specified by two colons followed by repository name. Repository Dependency Examples Atom dev-lang/python::progress >=dev-lang/python-3.2::progress dev-lang/python:3.2::progress dev-lang/python::progress[xml] dev-lang/python:3.2::progress[xml]
Automatic Unpack Dependencies Dependencies on packages required to unpack archives specified in SRC_URI are automatically appended to DEPEND. These dependencies are calculated from filename extensions of archives specified in SRC_URI. Dependencies (for ebuilds using given EAPI) corresponding to given filename extensions are configured in ${repository_path}/profiles/unpack_dependencies/${EAPI} files. Unpack Dependencies Configuration Examples bz2 app-arch/bzip2 gz app-arch/gzip tar app-arch/tar tar.bz2 app-arch/tar app-arch/bzip2 tar.gz app-arch/tar app-arch/gzip zip app-arch/unzip
globstar shell option enabled by default globstar shell option is enabled by default, which enables recursive expansion of ** pattern in pathname expansion context.
Variables
REPOSITORY Variable The new REPOSITORY variable is set in ebuild environment. This variable contains name of repository, which contains currently used ebuild.
Extended Repository-Level Configuration Repository-level configuration in ${repository_path}/profiles is supported for the following files: make.defaults package.use package.use.force package.use.mask package.use.stable.force package.use.stable.mask use.force use.mask use.stable.force use.stable.mask
Directories Allowed for Profile-Level and Repository-Level Configuration The following files can be directories: package.mask package.use package.use.force package.use.mask package.use.stable.force package.use.stable.mask use.force use.mask use.stable.force use.stable.mask
USE Flag Aliases USE flag aliases are supported to allow to satisfy dependencies of packages from other repositories, which require differently named USE flags. USE flag aliases are defined in ${repository_path}/profiles/use.aliases and ${repository_path}/profiles/package.use.aliases files. use.aliases Example real_flag1 alias1 alias2 real_flag2 alias3 alias4
package.use.aliases Example category/package1 real_flag1 alias1 alias2 category/package1 real_flag2 alias3 alias4 =category/package2-1* real_flag3 alias5 alias6 =category/package2-2* real_flag4 alias5 alias6