summaryrefslogtreecommitdiffstats
path: root/abuild.in
Commit message (Collapse)AuthorAgeFilesLines
...
* abuild: don't cd to $builddir unless patches existsNatanael Copa2016-04-051-0/+13
| | | | | some packages don't have patches. We should not error if builddir is not set in this case.
* abuild: rename _builddir to builddirNatanael Copa2016-03-231-1/+2
| | | | | the _ prefix is reserved for APKBUILD. This is to avoid use variable names in APKBUILD that may clash with abuilds internal vars
* abuild: set umaskKaarle Ritvanen2016-03-171-0/+2
| | | | consistent result regardless of current setting
* abuild: allow passing custom flags to patch(1) in prepareSören Tempel2016-03-141-1/+1
| | | | | To do so you need to set the patch_args variable to your desired command line flags.
* abuild: fix getfattr matchTimo Teräs2016-02-221-1/+1
| | | | | it's a regular expression, not shell pattern. empty match will match everything (default is ^user\\.)
* abuild: use gnu find supported way to find suid binariesTimo Teräs2016-02-221-1/+1
|
* abuild: use standard-issue prepare by defaultMichael Zuo2016-02-221-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().
* abuild: Respect $reporev variable when fetching git repositoriesSören Tempel2016-02-111-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.
* abuild: Fix indention of the snapshot() functionMichael Zuo2016-02-111-44/+44
| | | | | The snapshot function was indented with spaces while the rest of the code is indented with tabs.
* abuild: minor speed improvement in symlink compressionNatanael Copa2016-02-031-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.
* abuild: fix finding already compressed manpagesNatanael Copa2016-02-031-2/+3
|
* abuild: avoid compress man pages doubleNatanael Copa2016-02-031-0/+2
| | | | we should not compress man pages that are already compressed.
* abuild: update symlinks before updating hardlinksSören Tempel2016-02-031-7/+7
| | | | | | This should be a minimal performance improvement since hardlinks are replaced with symlinks and should thus already point to the correct file.
* abuild: rewrite hardlink handling when compressing man pagesSören Tempel2016-02-031-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.
* abuild: there is no man page section 9Sören Tempel2016-02-031-3/+3
|
* abuild: use id instead of whoamiSören Tempel2016-02-031-1/+1
| | | | Furthermore compare the UID instead of the username.
* abuild: avoid dupes in provides so:*Natanael Copa2016-01-271-1/+2
| | | | | similar as commit b3174ba76 ("abuild: make sure we don't add dupes of provides", Fri Jun 5 12:56:44 2015 +0000)
* abuild: exclude non-dangling symlinks from dependency resolutionKaarle Ritvanen2015-11-301-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.
* abuild: fix conflict checkingTimo Teräs2015-11-121-4/+10
|
* abuild: do not install itself as a makedependNatanael Copa2015-10-291-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.
* abuild: avoid division by zero when input is zero for calculating human size ↵Christian Kampka2015-10-281-2/+1
| | | | | | for packages This occurs when building meta packages that do not have any package content.
* abuild: fix check_depends_devNatanael Copa2015-10-121-8/+9
|
* abuild: check if depends_dev is set unnecessarilyCarlo Landmeter2015-09-281-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
* abuild: fix issue in maintainer checkCarlo Landmeter2015-09-161-15/+15
| | | | seems the maintainer variable is not set anymore when building .PKGINFO
* abuild: try to validate maintainer addressCarlo Landmeter2015-09-161-2/+17
| | | | abuild will error when the maintainer is set but is not a RFC822 address
* abuild: add -K for keeping tempdirs and depsNatanael Copa2015-09-081-1/+3
|
* abuild: fix fetch lock file on nfsNatanael Copa2015-08-261-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.
* abuild: fix man pages compressionNatanael Copa2015-08-191-3/+24
| | | | | fix handling of hardlinks and symlinks. also compress n man pages and localized man pages
* abuild: add support for sonameprefixNatanael Copa2015-08-181-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:"
* abuild: check correct name for -docNatanael Copa2015-08-181-3/+3
|
* abuild: always check for uncompressed man pagesNatanael Copa2015-08-171-4/+4
|
* abuild: check for /usr/share/{doc,man}Sören Tempel2015-08-171-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.
* abuild: fix dep-scanning when sub and main pkg's arch differsNatanael Copa2015-08-101-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
* abuild: add install_if for -doc packagesNatanael Copa2015-07-201-0/+1
| | | | This lets users 'apk add docs' to always pull in -doc packages.
* abuild: fix circular dependency for symlink depsNatanael Copa2015-06-231-2/+5
| | | | The package should not have itself as dependency.
* abuild: fix deps for versioned pkg-config depsNatanael Copa2015-06-121-1/+1
| | | | | Fix version stripping when filtering out needed pkg-configs that are provided from same (sub)package.
* abuild: fix finding pkg-config deps in subpackagesNatanael Copa2015-06-121-1/+2
| | | | | We strip version from pkg-config dependency when scanning the subpackages.
* abuild: fix provides and install_if in subpackagesNatanael Copa2015-06-111-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.
* abuild: clear inherit provides and install_if for subpackagesNatanael Copa2015-06-081-0/+5
| | | | | Unexpected result will happen if subpackages inherits the provides or install_if from main package. So we clear them.
* abuild: make sure we don't add dupes of providesv2.23.0_rc1Natanael Copa2015-06-051-1/+1
|
* abuild: remove "added pkgconfig (found /usr/lib/pkgconfig)" messageNatanael Copa2015-06-051-1/+0
|
* abuild: normalize path when finding symlink targetsNatanael Copa2015-06-051-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.
* abuild: add warning when depends_dev needs cleanupNatanael Copa2015-06-051-0/+4
|
* abuild: add warning when pc:* provider is missingNatanael Copa2015-06-051-4/+7
| | | | and indicate which package that should provide it and needs a rebuild.
* abuild: fix detection of symlink dependenciesNatanael Copa2015-06-041-2/+6
| | | | | - add as dep when the target is also a symlink - fix handling of absolute path in target
* abuild: fix detection of pkg-config module versionNatanael Copa2015-06-041-1/+1
| | | | | pkg-config will not print version unless dependencies are met so we can not exclude the system modules.
* abuild: autodetect pkg-config dependenciesNatanael Copa2015-06-031-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.
* abuild: fix regression in scanning shared objectsNatanael Copa2015-06-031-1/+1
| | | | | fix regression introduced with commit c70dbf8 (abuild: automatically detect symlink targets in other subpackages)
* abuild: do not exclude depends_devNatanael Copa2015-06-031-1/+1
| | | | | fixes regression introduced with commit 6582be1d (abuild: pull only in needed dependencies for -dev packages)
* abuild: pull only in needed dependencies for -dev packagesNatanael Copa2015-06-031-7/+3
| | | | ref #4109