Commit Graph

234 Commits

Author SHA1 Message Date
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
Natanael Copa e1dff71595 abuild: initial support for versioned dependencies 2009-08-05 13:55:35 +00:00
Natanael Copa b1f792b023 abuild: implement -d for disable dependency checking
This is needed when bootstrapping the system.
2009-08-03 13:06:38 +00:00
Natanael Copa 15a3f24286 abuild: fix for dynamic dependency detection 2009-07-29 20:01:52 +00:00
Natanael Copa 3c7eb0dff9 abuild: make index readable 2009-07-27 14:28:15 +00:00
Natanael Copa fad6df6eaf abuild: minor bugfix 2009-07-24 14:56:28 +00:00
Natanael Copa 28b7f5d2b1 abuild: add pkgconfig to depends if needed. misc fixes 2009-07-24 09:24:42 +00:00
Natanael Copa 53b17143d2 abuild: use APKINDEX.tar.gz rather than APK_INDEX.gz 2009-07-23 09:46:36 +00:00
Natanael Copa c2a0126ea2 abuild: remove broken links in abuild temp repo. sign the control.tar.gz 2009-07-23 09:32:14 +00:00
Natanael Copa ac09f44927 abuild: sign index with abuild-sign 2009-07-23 08:43:28 +00:00
Natanael Copa be9fa503bc abuild: initial support for new apk format 2009-07-20 14:56:01 +00:00
Natanael Copa bd9f1a415a core/abuild: fix options order to apk add 2009-07-20 12:01:16 +00:00
Natanael Copa 501e5dc8c4 abuild: upgrade dependencies when building recursive 2009-07-13 11:11:15 +00:00
Natanael Copa a3dca8d66a abuild: use apk version --check to verify the pkgver 2009-06-09 11:27:42 +00:00
Natanael Copa 99ae7bd9c3 abuild: force single space be separator when parsing scanelf output
otherwise will awk not detect empty fields
2009-06-04 18:14:47 +00:00
Natanael Copa 44247711a4 abuild: up2date handle apkcache properly
abuild will not consider package up2date unless apk cache is up2date
2009-06-03 21:29:58 +00:00
Natanael Copa 2c907ddc34 abuild: warn if g++ is in makedepends. fix for dynamic deps 2009-06-03 20:55:45 +00:00
Natanael Copa 5b00cca758 abuild: fix for detecting self-provided dependencies 2009-06-03 20:20:59 +00:00
Natanael Copa a878a54660 abuild: bugfix: find deps in subpackages and fail if deps not found 2009-06-03 19:50:06 +00:00
Natanael Copa 2d6f0ab38d abuild: initial support for autodetection of dependencies 2009-06-03 19:23:32 +00:00
Natanael Copa 36080a48f7 abuild: rename abuildrepo to apkcache 2009-06-03 11:26:48 +00:00
Natanael Copa 9d616a1346 abuild: add configurable apk cache 2009-06-03 11:24:29 +00:00
Natanael Copa bdc6182749 abuild: use build-base meta package as hard makedepends 2009-06-03 11:15:55 +00:00
Natanael Copa 027f227852 abuild: pull in makedepends by using virtual packages in abuildrepo
Basicly, let apk-tools deal with the dependencies rather than let abuild do it
2009-06-03 08:37:05 +00:00
Natanael Copa 2219b258cf abuild: use apk index -d to update the abuildrepo index 2009-05-14 14:41:12 +00:00
Natanael Copa 83f9d177ed abuild: create symlink to package in tmprepo
The tmprepo is a temporary repository used by abuild to handle the
dependencies of the newly built packages.
2009-05-08 20:34:30 +02:00
Natanael Copa 2fd4128e20 abuild: rename pkgdirbase to pkgbasedir 2009-05-08 19:19:32 +02:00
Natanael Copa 231d406de6 abuild: create .provides-so file in package dir
This will later be used to figure out the dynamic dependencies.
2009-05-08 19:19:32 +02:00
Natanael Copa ca65c4b791 abuild: prepare pkg dirs/meta files and create packages separately. Dependency speedup.
Run all subpackage functions and prepare the dirs first and create the
package itself later on. This will make it possible to automatically trace
the dependencies.

Also, speed up the detection of which makedeps are installed and which needs
to be built/installed. this requires apk-tools_pre11.
2009-05-08 15:01:14 +00:00
Natanael Copa 3d79fb7036 use .in files for scripts 2009-05-08 13:33:34 +00:00