summaryrefslogtreecommitdiffstats
path: root/abuild.in
Commit message (Collapse)AuthorAgeFilesLines
* abuild: fix dependency tracing for cross buildscross-buildTimo Teräs2016-07-271-8/+15
|
* abuild: unify dependency installation and removal codeTimo Teräs2016-07-271-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"
* abuild: check both build and host dependencies firstTimo Teräs2016-07-271-2/+5
| | | | | So we don't waste time installing dependencies on builder if the host dependencies are not satisfiable.
* abuild: display target arch in xterm title for cross buildTimo Teräs2016-07-271-1/+1
|
* abuild: use subpkgarch to construct the package paths everywhereTimo Teräs2016-07-271-58/+81
|
* abuild: remove PKGDEST and install_after featuresTimo Teräs2016-07-271-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.
* abuild: use proper strip for each subpkg according to it's archTimo Teräs2016-07-271-11/+12
|
* abuild: support subpackages="pkg:split:arch" syntaxTimo Teräs2016-07-271-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.
* abuild: improve cross compiling supportTimo Teräs2016-07-271-0/+4
|
* abuild: don't set and reset xterm title when splitting subpkgTimo Teräs2016-07-271-2/+2
| | | | | it's annoying flickering, and results the title being unset for the time when last split is executed and packages are created.
* abuild: treat subpackages items as colon separated listsTimo Teräs2016-07-261-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.
* abuild: use apk --no-scripts for target sysrootTimo Teräs2016-07-231-3/+3
| | | | | we probably will not be able to run the scripts as it can be incompatible system type
* Fix src buildsPaul Lorenz2016-07-201-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
* abuild: rename distfile copy when checksum does not matchTimo Teräs2016-07-081-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.
* abuild: support arch="all !armhf"Timo Teräs2016-07-071-1/+10
| | | | | this allows blacklisting architectures instead of just whitelisting them. useful when more architectures comeabout.
* abuild: perform unzip operations quietlySören Tempel2016-07-061-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.
* abuild: fix cross compilation undeps()Timo Teräs2016-07-051-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.
* abuild: fix apk_up2date checkNatanael Copa2016-06-131-1/+1
| | | | fix check that all subpackages exists, not only main package
* 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.