summaryrefslogtreecommitdiff
path: root/abuild.in
AgeCommit message (Collapse)AuthorFilesLines
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.
2015-08-10abuild: fix dep-scanning when sub and main pkg's arch differsNatanael Copa1-1/+7
Force dependency scanning when main pkg has noarch but subpackage overrides it. We need to save the arch setting set in split func for later if it differs from main pkg's arch in a temp file because the splitfunc runs in a subprocess. fixes #4491
2015-07-20abuild: add install_if for -doc packagesNatanael Copa1-0/+1
This lets users 'apk add docs' to always pull in -doc packages.
2015-06-23abuild: fix circular dependency for symlink depsNatanael Copa1-2/+5
The package should not have itself as dependency.
2015-06-12abuild: fix deps for versioned pkg-config depsNatanael Copa1-1/+1
Fix version stripping when filtering out needed pkg-configs that are provided from same (sub)package.
2015-06-12abuild: fix finding pkg-config deps in subpackagesNatanael Copa1-1/+2
We strip version from pkg-config dependency when scanning the subpackages.
2015-06-11abuild: fix provides and install_if in subpackagesNatanael Copa1-6/+10
we need to clear provides set in global scope before splitting the subpackages so the subpackage does not inherit main packages' provides. But at the same time, we must not clear the provides/install_if set in the splitfunction itself.
2015-06-08abuild: clear inherit provides and install_if for subpackagesNatanael Copa1-0/+5
Unexpected result will happen if subpackages inherits the provides or install_if from main package. So we clear them.
2015-06-05abuild: make sure we don't add dupes of providesv2.23.0_rc1Natanael Copa1-1/+1
2015-06-05abuild: remove "added pkgconfig (found /usr/lib/pkgconfig)" messageNatanael Copa1-1/+0
2015-06-05abuild: normalize path when finding symlink targetsNatanael Copa1-4/+19
some paths like usr/lib/../../lib/libudev.so.0.13.0 will fail to resolve if usr/lib is does not exist, even if lib/libudev.so.0.13.0 does. To solve thise we normalize out the ../ in path string before we try to resolve it.
2015-06-05abuild: add warning when depends_dev needs cleanupNatanael Copa1-0/+4
2015-06-05abuild: add warning when pc:* provider is missingNatanael Copa1-4/+7
and indicate which package that should provide it and needs a rebuild.
2015-06-04abuild: fix detection of symlink dependenciesNatanael Copa1-2/+6
- add as dep when the target is also a symlink - fix handling of absolute path in target
2015-06-04abuild: fix detection of pkg-config module versionNatanael Copa1-1/+1
pkg-config will not print version unless dependencies are met so we can not exclude the system modules.
2015-06-03abuild: autodetect pkg-config dependenciesNatanael Copa1-2/+65
we create provides for pc:<module>=<version> for pkg-config files and whenever possible we add depends=pc:<module>. We also handle version requirements whenever those are specified.
2015-06-03abuild: fix regression in scanning shared objectsNatanael Copa1-1/+1
fix regression introduced with commit c70dbf8 (abuild: automatically detect symlink targets in other subpackages)
2015-06-03abuild: do not exclude depends_devNatanael Copa1-1/+1
fixes regression introduced with commit 6582be1d (abuild: pull only in needed dependencies for -dev packages)
2015-06-03abuild: pull only in needed dependencies for -dev packagesNatanael Copa1-7/+3
ref #4109