Commit Graph

179 Commits

Author SHA1 Message Date
Natanael Copa b0f9ec91f7 abuild: verify names of subpackages
This is to avoid things like:
http://git.alpinelinux.org/cgit/aports/commit/?id=81c0a4bb37e709ebc5add8394331d28209a61b6f
2011-11-01 08:50:20 +00:00
Natanael Copa 990b1f0607 abuild: fix pkgdesc and install_if for -lang packages 2011-10-03 18:36:58 +00:00
Natanael Copa 7fb94045b2 abuild: add warning if /usr/share/local found 2011-10-03 11:19:25 +00:00
Natanael Copa 0b83646614 abuild: implement automatic -lang subpackages 2011-09-30 06:47:28 +00:00
Natanael Copa 43f888ad5e abuild: make it possible to override lang_subpkg
We alos introduce $langdir where you can set other dir to look for
localization dirs.
2011-09-02 09:35:55 +00:00
Natanael Copa 77eb895cc7 abuild: fix install script verification
we might have '.' in pkgname as in gtk+2.0
2011-06-30 07:52:46 +00:00
Natanael Copa f8813c1565 abuild: do not move *.la files to dev package and exit with error if found
To be allowed to keep the .la files you need to add 'libtool' to
$options
2011-06-29 13:47:56 +00:00
Natanael Copa f5a3a48da0 abuild: fix bug in install script detection 2011-06-28 11:31:40 +00:00
Natanael Copa 5fd0c10e8c abuild: implement new format for triggers variable
it contains a list with all triggers for all subpackages.

separate trigger script from path list with '='
separate paths in path list with ':'

example:

pkgname="foo"
subpackages="foo-libs foo-dev"
triggers="foo.trigger=/usr:/usr/lib/foo
	foo-libs.trigger=/usr:/usr/share/foo"
2011-06-27 20:59:30 +00:00
Natanael Copa f597a6e68c abuild: support for new style install scrits
We need to list all install scripts in $install rather than specify it
in subpackage
2011-06-27 20:59:30 +00:00
Natanael Copa 42df5722ee abuild: check sanity of install scripts
we check early that suffix is valid and that we have a matching
pkgname or subpackage
2011-06-27 20:59:29 +00:00
Natanael Copa 529438949e abuild: do debug builds with DEBUG=1 2011-05-18 06:19:18 +00:00
Natanael Copa 7798ed0c5a abuild: be quiet when uninstalling build dependencies
We don't really need to see what packages gets uninstalled, but error
messages might be nice to see. So we are quiet when uninstalling.
2011-05-05 08:36:00 +00:00
Natanael Copa 81b439cec2 abuild: reset triggers for subpackages
only main package has the trigger
2011-04-18 08:34:56 +00:00
Natanael Copa 0a2f9eb582 abuild: fix user creation when group exists 2011-04-17 12:55:51 +00:00
Natanael Copa b027ecf2c7 abuild: fix for REPODEST
we need set the $CARCH in the package destination
needs also to be passed over for recursive action
2011-04-06 09:30:33 +00:00
Natanael Copa c9a1158c79 abuild: remove broken noarch stuff. force CARCH for abuildrepo 2011-04-04 13:52:17 +00:00
Natanael Copa 3ac0a8e082 abuild: move abuildrepo to ~/.cache/abuild/$repo
We no require apk-tools-2.1
2011-04-04 13:00:22 +00:00
Natanael Copa 8f6f8763cf abuild: fix check if abuildindex is up 2 date 2011-04-04 11:18:29 +00:00
Natanael Copa 62a87c97fb Merge branch '2.7' 2011-04-01 13:39:23 +00:00
Natanael Copa 828d8a7e16 abuild: always fail when checksums does not match 2011-04-01 12:24:40 +00:00
Natanael Copa 382e470396 Merge branch '2.7'
Conflicts:
	Makefile
2011-03-31 09:56:47 +00:00
Natanael Copa 701be9224c abuild: add origin in .PKGINFO 2011-03-31 09:49:51 +00:00
Natanael Copa 0f27ed17ab abuild: fix for apk-tools-2.0.x
apk-tools-2.0's apk index will not show the arch so we need to use
tar to find arch if we have old apk. We prefer use apk index since
it will only read first block of file, regardless size, while tar
will read entire file. Reading entire file is slow if file is big.

So we check apk --version and use tar if needed, and apk index if
possible.
2011-03-30 14:20:15 +00:00
Natanael Copa 663aa8bca5 abuild: create $arch and noarch dirs for abuildrepo 2011-03-30 13:54:49 +00:00
Natanael Copa 995797f4a2 Merge branch 'wip' 2011-03-30 09:10:56 +00:00
Natanael Copa 138cfd7027 abuild: wait for lockfile on delete of dependencies 2011-03-30 09:10:11 +00:00
Natanael Copa 99ffea8acd abuild: use $repo/$arch for abuildrepo
This is so apk-tools-2.1 works
2011-03-30 09:06:48 +00:00
Natanael Copa 3af17782ad abuild: fix md5check
we need use "$srcdir"
2011-03-29 13:06:03 +00:00
Natanael Copa d68c2e2912 abuild: fakeroot fix when running as root 2011-03-29 12:23:30 +00:00
Natanael Copa e6b33c688d abuild: use $SUDO instead of 'sudo'
So SUDO="sudo -E" works for http proxy settings
2011-03-29 12:17:35 +00:00
Jeremy Thomerson a632d08fd2 delete remote source files that fail the md5 checksum test
Currently, if the build server downloads a file that fails the md5sum check
for some reason (perhaps interrupted download, etc), the file is never deleted
so the build can not succeed until someone manually deletes the bad file.  This
change deletes any file that is a remote source file / package that fails the
md5sum check.  The subsequent rebuild will then be forced to download the file
again.
2011-03-29 06:02:54 +00:00
Natanael Copa 149521f2dc abuild: do not set noarch for now
Our build infrastruc needs to handle it
2011-03-17 10:10:58 +00:00
Natanael Copa 947681e9d1 abuild: add maintainer info to .PKGBUILD
We can either set maintainer="..." in APKBUILD or use it as comment.
2011-03-08 10:08:01 +00:00
Natanael Copa d3efd64ab1 abuild: add last commit hash to .PKGINFO
This can be useful for package browser.
2011-03-08 09:50:17 +00:00
Natanael Copa a4a64e3f4c abuild: bugfix in dep tracing
due to unintialized and non-local variable the tracing of deps
didnt work as expected when dependencies was provided by the apkbuild
itself. (libgcc ended up depending on libgcj which depended on binutils)
2011-03-04 22:39:49 +00:00
Natanael Copa 37c29649f7 abuild: -f will build even if arch is missing 2011-03-04 22:39:49 +00:00
Natanael Copa 0db502b906 abuild: only warn when we think there should have been noarch
and we dont want -dev packages to be noarch
2011-03-04 22:39:48 +00:00
William Pitcock 0187915cc2 default_doc/default_dev: enhanced pkgdesc 2011-01-27 18:46:43 -06:00
Natanael Copa 5d9012c09a abuild: add support for language packs 2011-01-04 10:32:12 +00:00
Natanael Copa 2182953390 abuild: supporrt for install_if. remove unused 'backup' 2011-01-04 09:15:05 +00:00
Natanael Copa 0472849c0c abuild: implement initdcheck
this check verifies that the *.initd scripts are #!/sbin/runscript
2011-01-04 09:05:54 +00:00
Natanael Copa f580e6657a abuild: support for saveas-* in sourcecheck 2011-01-03 15:59:52 +00:00
Natanael Copa 470f052142 abuild: implement sourcecheck
This subcommand verifies if upstream sources still exists and echoes
an error if it does not.

This is supposed to be used from a script that checks the validity
of source regularily.
2011-01-03 15:38:40 +00:00
Natanael Copa 308a1a27f4 abuild: only set xterm title if USE_COLOR is enabled 2011-01-03 15:29:37 +00:00
Natanael Copa a83cdde510 abuild: only install .makdepends-* if there are deps 2011-01-03 15:02:19 +00:00
Matt Smith 1a67bb56a3 abuild: trivial update to new saveas-*:// support
Removed the asterisk from the beginning of the https check, and moved the
saveas- check above.
2011-01-03 13:41:11 +00:00
Natanael Copa 09ea4c1328 abuild: skip md5sum check if in force mode 2010-12-31 18:53:13 +00:00
Matt Smith 3386818e53 abuild: created 'saveas-*://' URI support
'saveas-*://' URI support has been created for use with the source= line of
APKBUILD files.

It allows for a remote source file to be saved with an arbitrary filename.  This
is useful in situations where the last component of the URI is not the preferred
filename.

Here's how it works.  Say we have the following URI:

  http://oss.example.org/?get=software&ver=1.0

Both Busybox Wget and GNU Wget will save this with the filename:

  ?get=software&ver=1.0

To get around this, we could use cURL to save the file using the filename in the
HTTP response headers:

  $ curl -JO "http://oss.example.org/?get=software&ver=1.0"

Or we could use this 'saveas' hack.  Essentially, the original URI is converted
to read:

  saveas-http://oss.example.org/?get=software&ver=1.0/software-1.0.tar.gz

In the download process, the 'saveas-' portion is removed, and the file is
downloaded from the original URI, but is saved with the filename being the last
component of the URI.  In this case, it will be saved as 'software-1.0.tar.gz'.

It is designed so that it works with any protocol supported by abuild.
For example:

  saveas-ftp://oss.example.org/?get=software&ver=1.0/software-1.0.tar.gz

Check it out and let me know what you think.

Thanks,
Matt
2010-12-30 20:33:02 +00:00
Natanael Copa 21730b7864 abuild: fix check for arch specific binaries
we now fail if noarch is set wrong
2010-12-30 12:53:44 +00:00
Natanael Copa 650c0344ff abuild: set arch to noarch for -doc packages 2010-12-30 10:39:40 +00:00
Natanael Copa 5e41f09733 abuild: post check arch
We check if noarch is properly set
2010-12-30 10:36:42 +00:00
Natanael Copa e524bc68e9 abuild: improve output messages for dep tracing 2010-12-17 18:57:49 +00:00
Natanael Copa 94667e9993 abuild: support arch=all 2010-12-15 13:43:52 +00:00
Natanael Copa 2951b99c70 abuild: look for so dependencies in RPATH too
Some .so files have a rpath where to look for the needed .so. When tracing
package dependencies we also have a look there.

This should fix problem when the .so is not in standard location, /usr/lib
or /lib. (for example freeradius plugins)

While here we also reorganize things so we only call apk info --who-owns
once for each package instead of once for each needed .so. This should
speed up things when there are many needed .so files.
2010-12-15 13:01:13 +00:00
Natanael Copa 59df627613 abuild: multiarch support
- add arch to .PKGINFO
- exit with success if package is not in arch
2010-12-14 13:27:00 +00:00
Natanael Copa a111620bc8 abuid: check that CARCH and CHOST is set 2010-12-13 07:35:09 +00:00
Natanael Copa f9b62b89a6 abuild: automatically add libgcc to depends when libpthread is found
see http://redmine.alpinelinux.org/issues/409
2010-08-31 13:50:06 +00:00
Natanael Copa a5937e5c45 abuild: support for alternative awks
some awk's does not understand -F "\ " and treats that as special space
2010-08-27 13:34:33 +00:00
Natanael Copa 030fa98065 abuild: support for unpacking .tar.xz 2010-08-12 07:08:47 +00:00
Natanael Copa 8bf6428c8f abuild: include vapi and gir-* in -dev package 2010-07-07 18:25:57 +00:00
Natanael Copa c30c346362 abuild: detect and report conflicting dependencies properly 2010-06-30 14:59:07 +00:00
Natanael Copa 3137648228 abuild: move the .so symlinks to -dev packages
Those are needed when linking to the lib and not during runtime.

Having those in the -dev package makes it easier to allow different
versions of same libs to be installed side-by-side.
2010-05-18 12:45:17 +00:00
Natanael Copa a06296168f abuild: allow DISTFILES_MIRROR be a local path
based on patch from Andrew Manison. Thanks!
2010-05-18 09:52:44 +00:00
Natanael Copa e9509e5ffe abuild: support for -c and -m options to enable/disable colors
and make sure those options are passed over when building recursively

Based on patch from Andrew Manison. Thanks!
2010-05-18 09:42:53 +00:00
Natanael Copa 072e93458d abuild: break circular deps when building recursively 2010-05-06 21:02:07 +00:00
Natanael Copa 92417870e6 abuild: properly pass over args when building recursively 2010-05-06 19:37:52 +00:00
Natanael Copa 9d0a812458 abuild: properly add $BUILD_BASE to dependency chain
We want build the toolchain and build tools first
2010-05-06 18:38:13 +00:00
Natanael Copa e3c46369fd abuild: bugfix for versioned dependencies
we need strip all '<>=' chars not only last
2010-05-06 18:31:36 +00:00
Natanael Copa 18c1dde2de abuild: only update abuildrepo index if needed
speeds up abuild -R a bit
2010-05-06 08:20:59 +00:00
Natanael Copa ed0613adda abuild: rename apkcache to abuildrepo
To avoid confusing with the /etc/apk/cache
2010-05-06 07:58:44 +00:00
Natanael Copa 5a3bb63846 abuild: force pkgrel in APKBUILD
its needed for bumping pkgrel with sed and similar
2010-05-04 11:28:44 +00:00
Natanael Copa f795040b6b abuild: support for overriding apk binary
so we can do: APK=apk.static abuild ....
2010-05-04 08:32:22 +00:00
Natanael Copa f4e9b5d3a9 abuild: fix for abuild -R
we only enter dependencies dirs in same repo
2010-05-04 08:28:13 +00:00
Natanael Copa 36d446263c abuild: support for building simple tar.gz files of target
When building with crosscompile to bootstrap a new target it might
be handy to not include the dependencies etc.
2010-04-28 16:04:37 +00:00
Natanael Copa c6f4cb7286 abuild: use fetch_uri_mirror when downloading sources 2010-04-19 13:48:57 +00:00
Natanael Copa 064c0fac8e abuild: only trace dependencies from current repo
This avoids confusion when abuild picks dependencies from testing
when building main.
2010-04-15 15:53:28 +00:00
Natanael Copa a0c0ae76e3 abuild: download from DISTFILES_MIRROR first if set 2010-04-15 15:52:38 +00:00
Natanael Copa 92d947b000 abuild: wait 30 seconds for apk lockfile. improve error reporting 2010-03-02 11:01:15 +00:00
Natanael Copa 3ea1ead589 abuild: dont check version number if nodeps is specified
This option is normally used for bootstrapping a build env. Chances are big
that apk-tools is not around.
2009-12-16 09:25:52 +00:00
Natanael Copa d87b10b9af abuild: implement getpkgver, default_fetch and default_unpack
to make life easier for volatile packages
2009-11-24 10:53:58 +00:00
Natanael Copa 78ca93d237 abuild: use pax-utils's scanelf to find binaries to strip 2009-11-06 09:57:34 +00:00
Natanael Copa 9400ec0152 abuild: fix detection of pkgconfig dependency 2009-11-02 09:26:09 +00:00
Natanael Copa 64d70cc4b3 abuild: exit with error if run as root
override with -F
2009-10-24 21:01:29 +00:00
Natanael Copa 036557c8c0 abuild: make it possible override fakeroot 2009-10-24 20:53:31 +00:00
Natanael Copa f150027100 abuild: fix so APKBUILD env var works properly
We also make sure we source the APKBUILD when we are in the directory
holding the APKBUILD file. Some of the packages sources others
with relative references. (for example kernel 3rd party packages)
2009-10-24 20:37:20 +00:00
Natanael Copa c50ab80bfa abuild: minor bugfix: define $program 2009-10-24 20:11:40 +00:00
Natanael Copa c9616e9d9e newapkbuild: move code from abuild to new script
try keep code in abuild cleaner by moving out creation of new apkbuild
to separate script.
2009-10-24 20:03:06 +00:00
Natanael Copa 74debd67ce abuild: minor cleanup 2009-10-24 19:18:35 +00:00
Natanael Copa 3b7ab34e67 abuild: implement prepare()
prepare is run before build(). this allows uses to do patching before
configuring and building in a separate step.
2009-10-23 16:28:34 +00:00
Natanael Copa f138d6704b abuild: bugfix. allow apkbiudls without build() 2009-10-23 13:12:32 +00:00
Natanael Copa 542b9cf486 abuild: dont run build() in fakeroot if package() exist
fakeroot seems do some kind of locking which kills performance on
multicores processors. We can run "make" and "make install" in 2 steps
with only hte latter in fakeroot.
2009-10-23 09:57:04 +00:00
Natanael Copa c1be67be8a abuild: include repo description and version in temp apk cache 2009-09-03 16:38:07 +00:00
Natanael Copa f24e997104 abuild: strip versions from dependencies when building recursively 2009-08-31 09:12:04 +00:00
Natanael Copa a1bf67a46c abuild: allow pkgver=volatile 2009-08-21 14:25:08 +00:00
Natanael Copa 32f3fce837 abuild: implement pkgusers/pkggroups 2009-08-21 07:54:53 +00:00
Natanael Copa e0f546896f abuild: no missing dependencies might happen 2009-08-17 13:58:26 +00:00
Natanael Copa 5b8d1709da abuild: the -dev pckages should depend on all subpackages 2009-08-17 13:02:37 +00:00
Natanael Copa df8e468f0e abuild: implement triggers
and install scripts should not be in $source
2009-08-14 05:56:34 +00:00
Natanael Copa d8907beacb abuild, alpine.mk: use --repository instead of --repo 2009-08-10 13:05:56 +00:00