Specification Files¶
defines¶
Defines files are expected to exist in :/autobuild/. defines files are usually
processed by autobuild script, however acbs also use this file to determine
the building order of a given set of packages.
defines file MUST contain the following variables:
PKGNAMEThe name of the packagePKGSECThe section/group/”genre” of the packagePKGDESThe brief description of the package
This file may also include the following variables:
PKGDEPThe mandatory runtime requirements/dependenciesBUILDDEPThe mandatory compile-time requirements/dependenciesPKGRECOMThe optional runtime requirements/dependencies (for enhancing UX or add new features)EPOCHThe epoch version number of the package
This file might also include autobuild specific controlling values.
Consult Autobuild3 for more information.
spec¶
Specification (spec) files are expected to exist in :/ (root of the top project folder).
defines files are solely processed by acbs to fetch source files and control
acbs how to transfer controls to autobuild.
spec file MUST contain the following variables:
VERThe version of the package, it might be not in semantic versioning scheme.
spec file SHOULD ONLY contain ONE of the following variables:
SRCSExpected format:<VCS_NAME_1>::<OPTIONS_1>::<URI_1> <VCS_NAME_2>::<URI_2> ...See footnote 1 for details about particular behavior.DUMMYSRC(Bool) If set to 1, indicates this package does not require source files or source files processing cannot be handled well by current version ofacbs.
spec file may also contain the following variables:
CHKSUMSExpected format:<ALGO_NAME_1>::<HASH_VALUE_1> <ALGO_NAME_2>::<HASH_VALUE_2> ...If set,acbswill check the checksum of the source files against this value not available if the source is from VCS. 2SUBDIRIf set,acbswill change to specified directory after finishing preparing the source files. (For a list of supported hashing algorithms, see Appendix)SRCTBL(String) [Deprecated] If set, indicates this package requires “zipped” or archived source files.<VCS_NAME>SRC[Deprecated] If set, indicates required source files for this package are in a version controlled repository. (For a list of supported VCS systems, see Appendix)<VCS_NAME>BRCH[Deprecated] If set, indicates required branch of the repository for the package.<VCS_NAME>COMMIT[Deprecated] If set, indicates required commit/revision of the repository for the package.CHKSUM[Deprecated] Expected format:<ALGO_NAME>::<HASH_VALUE>If set,acbswill check the checksum of the source file against this value can be omitted if the source is from VCS.
Details about the SRCS format:
- Each source specification in the array accepts one, two or three parameters:
One parameter only:
<URL>Two parameters:
<VCS_NAME>::<URL>Three parameters:
<VCS_NAME>::<OPTIONS>::<URL>
- Currently supported options:
branch: Name of the branchcommit: Commit hashrename: Rename the source file (including extension name if any)submodule: Automatically fetch submodules in the repository.true: Fetch submodules but not recursively (submodules in the submodules are not fetched).false: Do not fetch submodules.recursive: [Default] Fetch submodules recursively.
repo-copy: Automatically copy the VCS repository to the build directory.true: Copy the VCS repository prior to the building process, replacesacbs_copy_git.false: [Default] Do not copy the VCS repository. However you can still useacbs_copy_git.
To specify multiple options, you can join the options with semicolons (;) like this:
SRCS="git::rename=lmms-git;commit=94363be::https://github.com/LMMS/lmms"
The snippet above will make acbs rename the source directory to lmms-git and checkout the commit 94363be.
- 1
Example:
SRCS="git::git://github.com/AOSC-Dev/acbs git::https://github.com/AOSC-Dev/acbs"
This will make
acbsto download two sets of source files- 2
Example:
CHKSUMS="sha1::a9c55882c935300bec93e209f1ec8a21f75638b7 sha256::4ccdbbd95d4aef058502c8ee07b1abb490f5ef4a4d6ff711440facd0b8eded33"
This will make
acbsto check two sets of source files