summaryrefslogtreecommitdiff
path: root/abuild.in
AgeCommit message (Collapse)AuthorFilesLines
2017-01-09abuild: remove noarch files from CARCH target directTimo Teräs1-1/+1
this is where it is built too
2016-12-21abuild: pass --arch to apk whenever sysroot is usedxentec1-5/+5
so we can crosscompile for different architectures
2016-12-04abuild: make default_prepare() always end up in "$builddir"Przemyslaw Pawelczyk1-1/+1
So far default_prepare() ended up in "$builddir" only if there were any patches. It's better to be more consistent and make such change always.
2016-11-23abuild: change shebang to /bin/ashJakub Jirutka1-1/+1
This script uses variable expansion / pattern replacement, which is not defined in POSIX-sh. Also APKBUILDs are not required to be strictly POSIX-sh compatible. If someone run abuild on system with e.g. dash as /bin/sh, then it fails (and someone reported exactly that on IRC today). Therefore abuild should explicitly use /bin/ash in shebang and not /bin/sh.
2016-10-31abuild: properly detect failure of dependency installationTimo Teräs1-2/+4
2016-09-02abuild: set default builddir when not defined in APKBUILDJakub Jirutka1-2/+3
2016-08-23indent heredocs when possibleJakub Jirutka1-60/+60
2016-08-18abuild: don't overwrite existing files when using unzip in unpackSören Tempel1-1/+1
Default is asking for each file.
2016-08-12abuild: add update_config_guessCarlo Landmeter1-0/+17
2016-08-11abuild: ash only always local in functions these daysSören Tempel1-1/+0
2016-08-01abuild: fix dependency tracing for cross buildsTimo Teräs1-8/+15
2016-08-01abuild: unify dependency installation and removal codeTimo Teräs1-44/+43
this fixes cross deps such as "CHOST=armhf abuild deps" to work properly. if makedepends is not defined the following default will be used (as that's the definition cross-build aware apkbuilds use): makedepends="$makedepends_build $makedepends_host"
2016-08-01abuild: check both build and host dependencies firstTimo Teräs1-2/+5
So we don't waste time installing dependencies on builder if the host dependencies are not satisfiable.
2016-08-01abuild: display target arch in xterm title for cross buildTimo Teräs1-1/+1
2016-08-01abuild: use subpkgarch to construct the package paths everywhereTimo Teräs1-58/+81
2016-08-01abuild: remove PKGDEST and install_after featuresTimo Teräs1-104/+43
supporting these features with cross building is non-trivial and they do are generally not useful features, so remove them. as result the abuildrepo is also removed to write out paths. all package generation paths now use $REPODEST/$repo/$CARCH which allows easily writing packages to correct $subpkgarch in future commits.
2016-08-01abuild: use proper strip for each subpkg according to it's archTimo Teräs1-11/+12
2016-08-01abuild: support subpackages="pkg:split:arch" syntaxTimo Teräs1-39/+47
For proper cross-build support, the subpackage arch needs to be known before invoking the split function. This implements a way to do that. This also changes to write the actual subpkg arch to .PKGINFO - apk index --rewrite-arch still overwrites index to have machine arch for noarch packages.
2016-08-01abuild: improve cross compiling supportTimo Teräs1-0/+4
2016-07-27abuild: don't set and reset xterm title when splitting subpkgTimo Teräs1-2/+2
it's annoying flickering, and results the title being unset for the time when last split is executed and packages are created.
2016-07-26abuild: treat subpackages items as colon separated listsTimo Teräs1-15/+19
This is in preparation to support subpackages="pkg:split:arch" syntax, and just makes the current code ignore anything after the second colon if it exists. This allows to use the new syntax in aports git without running experimental abuild on the official builders.
2016-07-23abuild: use apk --no-scripts for target sysrootTimo Teräs1-3/+3
we probably will not be able to run the scripts as it can be incompatible system type
2016-07-20Fix src buildsPaul Lorenz1-1/+19
Fix filename_from_uri call Ensure remote sources are fetched Include remote sources in source package Include pre/post scripts Include trigger scripts
2016-07-08abuild: rename distfile copy when checksum does not matchTimo Teräs1-4/+7
The previous deletion of file did not work properly at all. Fix this instead to rename the file, so we keep the previous download. This allows builders to redownload upstream file if the checksum has been changed in aports.
2016-07-07abuild: support arch="all !armhf"Timo Teräs1-1/+10
this allows blacklisting architectures instead of just whitelisting them. useful when more architectures comeabout.
2016-07-06abuild: perform unzip operations quietlySören Tempel1-1/+1
unzip(1) is verbose by default since we don't run tar(1) in verbose mode we should run unzip with -q for consistency.
2016-07-05abuild: fix cross compilation undeps()Timo Teräs1-1/+1
"apk del" now returns error if the package name does not exist. Thus when cross compiling, always install the virtual .makedepends-$pkgname name for chroot also since undeps() will try to uninstall it always.
2016-06-13abuild: fix apk_up2date checkNatanael Copa1-1/+1
fix check that all subpackages exists, not only main package
2016-04-05abuild: don't cd to $builddir unless patches existsNatanael Copa1-0/+13
some packages don't have patches. We should not error if builddir is not set in this case.
2016-03-23abuild: rename _builddir to builddirNatanael Copa1-1/+2
the _ prefix is reserved for APKBUILD. This is to avoid use variable names in APKBUILD that may clash with abuilds internal vars
2016-03-17abuild: set umaskKaarle Ritvanen1-0/+2
consistent result regardless of current setting
2016-03-14abuild: allow passing custom flags to patch(1) in prepareSören Tempel1-1/+1
To do so you need to set the patch_args variable to your desired command line flags.
2016-02-22abuild: fix getfattr matchTimo Teräs1-1/+1
it's a regular expression, not shell pattern. empty match will match everything (default is ^user\\.)
2016-02-22abuild: use gnu find supported way to find suid binariesTimo Teräs1-1/+1
2016-02-22abuild: use standard-issue prepare by defaultMichael Zuo1-1/+14
A majority of APKBUILDs currently use exactly the prepare() provided by newapkbuild verbatim, even for packages where no patches exist, which has created the expectation that patches listed as sources are applied by default. This rev simply adds that default prepare() to abuild (and exposes it as default_prepare), with no configurability. If needed, default behaviour can be overridden by providing explicitly prepare().
2016-02-11abuild: Respect $reporev variable when fetching git repositoriesSören Tempel1-1/+2
For git repositories the $reporev variable is not really used since the $_rev variable is passed to git and $_rev was only set when $reporev was empty.
2016-02-11abuild: Fix indention of the snapshot() functionMichael Zuo1-44/+44
The snapshot function was indented with spaces while the rest of the code is indented with tabs.
2016-02-03abuild: minor speed improvement in symlink compressionNatanael Copa1-2/+2
instead of forking stat once force every file with one file argument, we fork it once with all the files as arg. This reduces number of forks.
2016-02-03abuild: fix finding already compressed manpagesNatanael Copa1-2/+3
2016-02-03abuild: avoid compress man pages doubleNatanael Copa1-0/+2
we should not compress man pages that are already compressed.
2016-02-03abuild: update symlinks before updating hardlinksSören Tempel1-7/+7
This should be a minimal performance improvement since hardlinks are replaced with symlinks and should thus already point to the correct file.
2016-02-03abuild: rewrite hardlink handling when compressing man pagesSören Tempel1-18/+22
The problem is that gzip refuses to run if it detects that a file has more than 1 link. Our existing solution (removing hardlinks, compressing the man page and recreating the hardlinks) made certain assumptions about inode order that are only given on Unix v7 like filesystems meaning it didn't work properly on 'tree-based' filesystems like BTRFS or ZFS. This patch has a different more bulletproof approach: It simply replaces all hardlinks with symlinks. This is way easier because symlinks (unlike hardlinks) can point to a file that doesn't exist, therefore we can update all links before compressing the file in an easy way.
2016-02-03abuild: there is no man page section 9Sören Tempel1-3/+3
2016-02-03abuild: use id instead of whoamiSören Tempel1-1/+1
Furthermore compare the UID instead of the username.
2016-01-27abuild: avoid dupes in provides so:*Natanael Copa1-1/+2
similar as commit b3174ba76 ("abuild: make sure we don't add dupes of provides", Fri Jun 5 12:56:44 2015 +0000)
2015-11-30abuild: exclude non-dangling symlinks from dependency resolutionKaarle Ritvanen1-10/+13
This commit also fixes incorrect behavior in case where an absolute symlink points to a file installed on the build host but which is missing from the package.
2015-11-12abuild: fix conflict checkingTimo Teräs1-4/+10
2015-10-29abuild: do not install itself as a makedependNatanael Copa1-7/+4
we might need add $pkgname as a dependency for $pkgname-dev and then we should not install ourselves in case makedepends="$depends_dev" This is needed foor bootstraping.
2015-10-28abuild: avoid division by zero when input is zero for calculating human size ↵Christian Kampka1-2/+1
for packages This occurs when building meta packages that do not have any package content.
2015-10-12abuild: fix check_depends_devNatanael Copa1-8/+9