summaryrefslogtreecommitdiff
path: root/abuild.in
AgeCommit message (Collapse)AuthorFilesLines
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
2015-09-28abuild: check if depends_dev is set unnecessarilyCarlo Landmeter1-0/+16
depends_dev are dependencies of the of the developement subpackage it does not need to be set when there is no developement subpackage
2015-09-16abuild: fix issue in maintainer checkCarlo Landmeter1-15/+15
seems the maintainer variable is not set anymore when building .PKGINFO
2015-09-16abuild: try to validate maintainer addressCarlo Landmeter1-2/+17
abuild will error when the maintainer is set but is not a RFC822 address
2015-09-08abuild: add -K for keeping tempdirs and depsNatanael Copa1-1/+3
2015-08-26abuild: fix fetch lock file on nfsNatanael Copa1-68/+1
flock(2) on an NFS mount will on the server side convert the lock to a POSIX lock (fcntl(F_SETLK)). This means that abuild running on NFS server and client will create different locks and they will both try download same file at same time. We fix this by creating a small abuild-fetch application that will create a POSIX lock which works with NFS.
2015-08-19abuild: fix man pages compressionNatanael Copa1-3/+24
fix handling of hardlinks and symlinks. also compress n man pages and localized man pages
2015-08-18abuild: add support for sonameprefixNatanael Copa1-4/+11
This is a feature to prefix all so:* provides with a tag. This was done so that the openjdk8 so depends would only be satisfied by openjdk8 provides and not openjdk7, which might provide same so:lib*.so file. To use it do: sonameprefix="openjdk8:"
2015-08-18abuild: check correct name for -docNatanael Copa1-3/+3
2015-08-17abuild: always check for uncompressed man pagesNatanael Copa1-4/+4
2015-08-17abuild: check for /usr/share/{doc,man}Sören Tempel1-0/+23
Output a warning if those directories exist on a non-doc package. Furthermore, check if uncompressed man pages where installed to /usr/share/man.