Commit Graph

363 Commits

Author SHA1 Message Date
Łukasz Jendrysik b7c197f20c Removed conflicts= support
Conflicts support in an abuild seems to be uneccessary feature.

Signed-off-by: Łukasz Jendrysik <scadu@yandex.com>
2014-12-29 12:35:02 +00:00
Bartłomiej Piotrowski fa204f8557 abuild: remove *.la files by default
Libtool archives are useless in the most of cases and can be safely
removed. A quick grep shows that *.la files are explicitly removed in
903 APKBUILDs, while intentionally preserved only in 17.

postcheck() is discussable place to perform the deletion, but it's
currently the only function being run for each subpackage, including
the artifact of package().
2014-12-29 12:34:47 +00:00
Natanael Copa f1b0b3de5e abuild: remove debug message
this was added by mistake
2014-10-02 09:21:47 +00:00
Natanael Copa aa74d0eccc abuild: add 'index' subcommand to refresh the abuild repo index
this is a convenience synonym to update_abuildrepo_index
2014-09-25 07:50:19 +00:00
Natanael Copa 046cebc28b abuild: sort commands in helptext alpabetically 2014-09-25 07:49:31 +00:00
Natanael Copa febda24d52 abuild: use cat <<EOF instead of tons of echo for help text
no code changes
2014-09-25 07:49:31 +00:00
Natanael Copa 9842fbe437 abuild: update abuildrepo index after cleanoldpkg 2014-09-25 07:42:01 +00:00
Natanael Copa 7af694c9ad abuild: check for suid binaries
Rais an error when binaries with suid bit set found. You need set
options="suid" to allow it.
2014-09-25 07:34:57 +00:00
Eivind Uggedal 6bc28a2a1c abuild: fix typo in help for -A 2014-06-23 15:47:53 +02:00
Eivind Uggedal cabeb70e10 abuild: compress man pages 2014-06-23 07:47:51 +00:00
Natanael Copa 4738deefdd abuild: show 'prepare' in help text
ref #2878
2014-04-30 13:59:18 +00:00
Natanael Copa ad9db219b8 fix permissions 2014-03-31 11:49:48 +00:00
Natanael Copa 2d9dd59b67 abuild: add -A for print arch 2014-03-31 08:51:50 +00:00
Bartłomiej Piotrowski 3a48923aa5 abuild: fix typo in rpath warning 2014-03-18 13:58:29 +01:00
Carlo Landmeter 7f56562337 abuild: switch to svn co instead of export
Some projects use the svn revision in the version number.
svn co brings back the revision number but increases the archive size.
2014-02-18 08:43:48 +00:00
Carlo Landmeter 9d300d72e4 abuild: fix typo in snapshot help 2014-02-18 08:42:01 +00:00
Natanael Copa 9cb1ad3cff abuild: implement -dbg subpackages
Patch from Andrew Manison.

ref #626
2014-01-16 14:33:45 +01:00
Natanael Copa 8d6009110c abuild: exit with error if pkgrel is unset 2014-01-13 12:38:58 +00:00
Natanael Copa cb2c174100 abuild: filter out empty lines when scanning for SO dependencies
This works around a bug in busybox 1.22.0 that makes 'grep -w ^' hang.
It is triggered when there are no deps. (eg. musl)
2014-01-06 13:32:59 +00:00
Timo Teräs eee827b16b abuild: use posix syntax for find 2014-01-03 23:15:09 +02:00
Natanael Copa 212ba26389 abuild: log repo/pkgname-version 2013-12-16 07:36:00 +00:00
Leslie P. Polzer b4fb3c6a81 abuild: print a message if aborting due to architecture mismatch. 2013-11-15 16:04:04 +00:00
Natanael Copa ef0d32d15a abuild: add support for ABUILD_BLACKLIST
The ABUILD_BLACKLIST can be used to give abuild a list of packages that
is known to fail to build. This can be used to reduce build retries
when building many/all packages recursively.
2013-11-01 09:14:13 +00:00
Natanael Copa a0d3624b05 abuild: remove debug message 2013-11-01 09:01:26 +00:00
Leslie P. Polzer 3ba814494f Fix typo (busbox -> busybox). 2013-10-31 12:55:38 +00:00
Natanael Copa 92a0f2da31 abuild: move /usr/share/help to -doc subpackage 2013-10-31 12:55:23 +00:00
Natanael Copa 46dc398114 abuild: check early for signing keys
fi the signing key is missing we will fail. Rather than fail after
compile we check existance of signing keys before we start.
2013-10-25 08:43:14 +00:00
Natanael Copa 98fe44cb73 abuild: also install 'depends' with 'abuild deps'
fixes #2270
2013-10-25 08:20:21 +00:00
Natanael Copa 4757588caf functions: rename abuild_ver to program_version 2013-10-25 07:26:22 +00:00
Natanael Copa 1822f3f624 functions: rename prog to program 2013-10-25 07:24:46 +00:00
Natanael Copa 0c02afc694 abuild: move various functions to the shared functions.sh
specifically, every script that reads/parses ./APKBUILD needs to set
CARCH.
2013-10-25 07:18:11 +00:00
Natanael Copa 3092986fc6 abuild: add cmake files to -dev 2013-10-04 18:22:51 +00:00
Natanael Copa f95366002f abuild: support qt5 mkspecs 2013-10-04 14:15:17 +00:00
Timo Teräs 9e9e27b1db abuild: fix error message in update_config_sub 2013-09-26 10:22:13 +03:00
Natanael Copa dd3643574f abuild: allow circular makedepends
Some packages like gcc-gnat needs bootstrapping. We need to allow
circular makedepends so we can specify gcc-gnat as makedepends for gcc.
2013-09-10 13:02:01 +00:00
Natanael Copa a2bab13656 abuild: fix recursive building
fixes bug introduced with c6b0de32a (abuild: add makedepends_build and
makedepends_host for crosscompile)
2013-09-10 12:58:56 +00:00
Natanael Copa 23c760b499 abuild: add a cross_compiling helper function
to detect if we cross compile
2013-09-06 11:04:14 +00:00
Natanael Copa 7bda0ceadb abuild: make sure cleanup returns false in native compiling 2013-09-05 08:25:15 +00:00
Timo Teras c6b0de32a2 abuild: add makedepends_build and makedepends_host for crosscompile 2013-09-05 08:21:29 +00:00
Natanael Copa 9f81a14456 abuild: set CTARGET_ARCH and CTARGET_LIBC
For better crosscompile support
2013-09-04 14:06:48 +00:00
Natanael Copa b9305bad3d abuild: post check for /usr/var 2013-09-03 14:08:16 +00:00
Natanael Copa f525e735c2 abuild: export CC properly 2013-09-03 14:07:43 +00:00
Natanael Copa e2838fbb50 abuild: make it configurable what to cleanup and when
allow user specify if they want uninstall deps, remove srcdir and/or
pkgdir on failure or success.

We introduce CLEANUP and ERROR_CLEANUP config options in
/etc/abuild.conf. Valid values are: pkgdir srcdir deps.
2013-08-01 12:16:57 +00:00
Natanael Copa 11d9a7d601 abuild: set and export a default CC
seems like configure thinks we are crosscompiling unless we set CC when
--build and --host are specified.
2013-08-01 08:46:12 +00:00
Natanael Copa 7472b59bb4 abuild: always set CBUILD and CTARGET if unset 2013-08-01 06:36:45 +00:00
Natanael Copa 0190dfaf8f abuild: add safety check so we dont scan elfs outside our pkgdir
this is to catch bugs in abuild itself early
2013-07-30 12:27:03 +00:00
Natanael Copa f43f6d312b abuild: fix ldpath handling
it wrongly scanned /lib instead of $datadir/lib, causing bad things to
happen when scanning provides
2013-07-30 12:16:44 +00:00
Timo Teräs 21fb14d4e1 abuild: only update config.sub if needed
its only arm that needs it
2013-07-29 14:10:38 +00:00
Timo Teräs c07db665ec abuild: only update config.sub if our version is newer
and exit with error if not
2013-07-29 07:33:23 +00:00
Natanael Copa 8f93ada4ac Revert "abuild: export CHOST, CARCH and CLIBC and let config.guess use CHOST"
This reverts commit 4234a10e92.

We will not use config.guess. Instead we will use --build and --host
everywhere.
2013-07-29 06:40:41 +00:00
Natanael Copa cbee419616 abuild: remove post_unpack
instead, provide 'update_config_sub' and let aports that needs replace
config.sub call it.
2013-07-26 11:56:05 +00:00
Natanael Copa 8112d2422a abuild: use deps/undeps instead or installdeps/uninstalldeps 2013-07-26 11:04:40 +00:00
Natanael Copa 728ce0e6de abuild: dont run 'build' from rootpkg
we want be able to run build and rootpkg separately. so you can stop
in the process, fix things, and then continue with 'abuild rootpkg' to
generate the package manually.
2013-07-26 09:18:55 +00:00
Natanael Copa b0ea14135d abuild: check for /usr/lib/charset.alias and error out if found 2013-07-26 07:22:45 +00:00
Natanael Copa 4234a10e92 abuild: export CHOST, CARCH and CLIBC and let config.guess use CHOST 2013-07-25 12:18:35 +00:00
Natanael Copa 3c15749bd0 abuild: microoptimization. call git describe only once
Use a global var for last_commit so we dont need call git for every
subpackage
2013-07-23 07:17:37 +00:00
Natanael Copa 60de2a776a abuild: add support to mask out given CLIBC in options
For example, to mask out musl, add:
options="!libc_musl"
2013-07-22 14:29:56 +00:00
Natanael Copa c20c613230 abuild: fix CARCH/CLIBC
We need set it in global scope as we need it even if we have not called
sanitycheck
2013-07-22 14:14:32 +00:00
Natanael Copa 3935984872 abuild: dont worry about ALPINE_LIBC
we better fix the affected apkbuilds
2013-07-19 12:59:47 +00:00
Timo Teräs d4627112a9 abuild: verify: only check strongest checksum which is present 2013-07-19 11:43:24 +00:00
Timo Teräs b48df6c575 abuild: set CARCH and CLIBC always, guess from CHOST if not set 2013-07-19 11:39:50 +00:00
Natanael Copa ad50945d80 abuild: use versioned depends for -dev subpackage 2013-07-16 09:30:09 +00:00
Dubiousjim 811a215018 various: tweak opening comments, whitespace
Also remove incomplete efforts at listing "Depends on: ..."
2013-07-08 14:49:36 +00:00
Natanael Copa 9e94ea1844 abuild: also look in /lib for .a files for -dev subpackage 2013-07-08 12:46:50 +00:00
Natanael Copa 8c12f9f61e abuild: automatically replace the config.sub with our version
introduce post_unpack that by default will search for config.sub and
config.guess and replace those if found.

we ship our own version of those files
2013-07-02 11:10:04 +02:00
Natanael Copa d1b6da646e abuild: whitespace fixes. use longopts for apk 2013-07-02 09:21:50 +02:00
Natanael Copa 60eb0dc80f abuild: explicitly use so:depends when croscompiling 2013-07-02 09:14:31 +02:00
Natanael Copa 4edf77e50f abuild: crosscompile support for strip 2013-07-02 08:18:47 +02:00
Natanael Copa 076ecdf315 abuild: check for more common spell errors
check for pkguser, pkggroup, subpackage
2013-07-02 08:16:18 +02:00
Natanael Copa 65edee22f2 abuild: run subpackage split functions in a subshell
so subfunctions don't overwrite the global variables like depends, pkgdesc etc.
2013-04-23 06:08:52 +00:00
Natanael Copa 8b3ecdf1f4 abuild: add support for optional remote logging
via ABUILD_LOG_CMD config option

This is supposed to be used on the build servers
2013-04-19 11:22:32 +02:00
Natanael Copa 5fca471ab2 abuild: treat syslinux's .c32 files as shared objects
syslinux switched to elf format from 5.0
2013-02-21 15:30:09 +00:00
Natanael Copa a3fc9a056f abuild: support filename::fileuri in source
This is an alternative to saveas-*:// which should be slightly more
intuitive. It also is similar to what arch linux does.
2013-02-20 13:38:22 +00:00
Natanael Copa 692a31793c abuild: fix warning about md5check 2013-02-13 07:31:00 +00:00
Natanael Copa 5f453f1cde abuild: use REPODEST as abuildrepo if specified
This has the nice effect that we get the index automatically built for
our REPODEST.

Discussion here:
http://lists.alpinelinux.org/alpine-devel/0249.html
2013-02-07 16:03:53 +00:00
Natanael Copa e0217ee520 abuild: update abuild repo index when cleaning packages 2013-02-07 15:29:53 +00:00
Natanael Copa db62857505 abuild: fix spelling in comment 2013-02-07 15:03:48 +00:00
Natanael Copa 36a55af4a0 abuild: verify pkgdesc length
fixes #1477
2013-02-07 14:54:59 +00:00
Carlo Landmeter 3ac1b1294a abuild: add git/svn snapshot hook
ref #1537
2013-01-08 00:45:53 +01:00
Natanael Copa 85cd8c961d abuild: improve sanitycheck to check sanity of all checksums 2012-11-29 13:09:57 +01:00
Natanael Copa 630ec7268a abuild: use sha256 and sha512 sums instead of md5
ref #1484
2012-11-29 11:39:33 +01:00
Natanael Copa 30afd29665 abuild: report error if md5sum exist but no sources 2012-11-29 08:59:37 +01:00
Natanael Copa ad777448b3 abuild: deal with duplicate provides
- remove duplicate provides with so version 0
- exit with error if there are multiple provides with different versions
2012-10-30 15:23:20 +00:00
Natanael Copa f640500e4c abuild: include /usr/share/ri in -doc packages 2012-10-11 18:47:29 +00:00
Natanael Copa f8ac8f3049 abuild: remove predefined mod splitfunc
It is never and should never be used.
2012-10-10 17:48:41 +00:00
Natanael Copa c15218221e abuild: include Qt mkspecs in -dev packages 2012-10-10 17:48:41 +00:00
Natanael Copa d12f8b2583 abuild: add support for predefined libs splitfunc 2012-10-10 17:48:41 +00:00
Natanael Copa a9a17c9a10 abuild: implement somask 2012-10-10 17:24:09 +00:00
Natanael Copa 7ee8dbc044 abuild: postcheck for textrels 2012-10-04 09:42:25 +00:00
Natanael Copa 9b3f778971 abuild: show package size in human readable format 2012-10-04 06:52:19 +00:00
Natanael Copa 1fa61905d1 abuild: add option sover-namecheck
So far only openjdk6 needs it and uclibc cannot have it, so we make
it optional.
2012-10-02 18:38:32 +00:00
Natanael Copa b49589e291 abuild: show all detected dependencies
This will hopefully help detect depends problems early
2012-10-02 18:38:12 +00:00
Natanael Copa df83f78d71 abuild: check is so: provides are provided by own subpackage 2012-10-02 18:36:30 +00:00
Natanael Copa 3bd2388915 abuild: depend on so: provides when available
and fall back to traditional so dependency tracing when not available

also sort the deps
2012-10-02 11:30:14 +00:00
Natanael Copa d02257f0c8 abuild: remove duplicates from provides 2012-09-19 06:18:56 +00:00
Natanael Copa fe6419454b abuild: avoid scanning dirs more than once 2012-09-14 06:09:35 +00:00
Natanael Copa 53fb2f62ab abuild: fix typo of rpaths 2012-09-14 06:09:35 +00:00
Natanael Copa 0af2038168 abuild: add support for option 'ldpath-recursive'
This option will enable recursive search of shared-objects, which is
disable by default.
2012-09-10 11:53:44 +00:00
Natanael Copa c57a9070f2 abuild: dont add .so files with mismatching soname version
Skip .so files without version number in filename when soname has
version number.

This solves issue with libgcj/gcc-java who ships both libgcj_bc.so and
libgcj_bc.so.1.0.0 which both has soname libgcj_bc.so.1
2012-09-08 13:45:34 +00:00
Natanael Copa d15a37b230 abuild: add datadir prefix to ldpath
So we actually scan those dirs
2012-09-08 13:43:59 +00:00
Natanael Copa dfa8e825e7 abuild: error or warn if bad rpaths are found 2012-09-06 13:28:30 +00:00
Natanael Copa c6b7fa8a6a abuild: only scan /lib /usr/lib, $rpath and $ldpath for provides
This is to avoid scan dlopen'ed plugins.

We scan any rpath set by any subpackage from same apkbuild. If it depends
on rpath to other package, developer will have to add that to ldpath.

This change means we have to move generation of .provides-so and .needs-so
til after all .rpaths are generated.
2012-09-06 13:00:54 +00:00
Natanael Copa 14af6a80cf abuild: include correct version number for provides
This changes the format of .provides-so file. We now add a column with
the version number
2012-09-05 12:28:05 +00:00
Natanael Copa a5cc84e229 abuild: use 'so:' as 'namespace' for provides 2012-09-05 11:09:57 +00:00
Natanael Copa 7ca99d75b3 abuild: add version number to provides
So it is not treated as a special 'virtual'
We use version number 0 for now.
2012-09-05 08:10:13 +00:00
Natanael Copa 76e93e602f abuild: add provides information 2012-09-04 13:37:26 +00:00
Natanael Copa 87953c7115 abuild: use scanelf --soname to find the provides-so 2012-09-04 13:35:21 +00:00
Natanael Copa a5f67dcf25 abuild: add support for uncompressed tar archives 2012-05-23 09:42:27 +00:00
Natanael Copa bf0b28da6b abuild: create group before user 2012-04-24 09:01:59 +00:00
Natanael Copa 41e28f11ba abuild: allow skip FHS check
some package (alpine-baselayout) needs to create /usr/local/bin etc.
2012-02-29 16:01:54 +00:00
Natanael Copa cabbc874e6 abuild: check for FHS forbidden dirs 2012-02-29 15:53:42 +00:00
Natanael Copa affb05d446 abuild: use file descriptor 9 instead of 200
POSIX only requires that filedesriptors 0-9 are available for shell
redirections.
2012-02-28 07:27:29 +00:00
Natanael Copa 51dd555cf2 abuild: fix replaces_priority
was totally broke.
2012-02-22 14:23:16 +00:00
Natanael Copa e7574cab44 abuild: always add -k to curl in case http -> https redirects 2012-02-17 15:07:42 +00:00
Natanael Copa dabc0dea8c abuild: add support for replaces_priority 2012-02-17 15:07:25 +00:00
Natanael Copa e76192fa59 abuild: do not create the apk index as root 2012-02-17 14:03:49 +00:00
Natanael Copa 467db44962 abuild: no longer require wget in makedepends if https
we depend on curl instead
2012-02-17 13:51:01 +00:00
Natanael Copa c6263baeb9 abuild: remove dependency of sudo
use the abuild-sudo tool instead

fixes #951
2012-02-17 13:48:11 +00:00
Natanael Copa 817db0ea98 abuild: check for non-PIE suid files
fixes #955
2012-02-14 12:51:33 +00:00
Natanael Copa 7759f5e5df abuild: create the pkgusers/pkggroups as system users 2012-02-13 15:09:38 +00:00
Natanael Copa d66a5ee456 abuild: run postcheck for subpackages as well 2012-02-13 13:49:25 +00:00
Natanael Copa 92af0b8697 abuild: fix post check messages 2012-02-13 13:49:25 +00:00
Natanael Copa f7c56801e9 abuild: warn if world writable directories are found 2012-02-13 13:49:25 +00:00
Natanael Copa dd033763de abuild: warn if chown, chmod or chgrp found in install scripts 2012-02-13 13:49:25 +00:00
Natanael Copa 2f5545cd61 abuild: add msg2(), warning2() and error2()
For a second, indented message line.
2012-02-13 13:49:25 +00:00
Natanael Copa 761472d96b abuild: busybox flock does not support -w 2012-01-20 10:38:30 +01:00
Natanael Copa 01bab6e26d abuild: implement locking of downloaded files
We need locking Since the build servers use a shared download dir
and multiple vservers might want download same file at same time.

fixes #873
2012-01-20 09:22:06 +01:00
Natanael Copa 1187cc5c0a abuild: fail fetch on http 404 errors
curl does not fail by default. it downloads the 404 error page instead
so we need add -f option to curl.
2011-12-20 08:53:10 +01:00
Natanael Copa bea8577c43 abuild: cleanup. remove dead code
Not been used for ages.
2011-12-19 13:10:43 +01:00
Natanael Copa c98b47b7ad abuild: make curl follow redirects 2011-12-16 17:02:16 +01:00
Natanael Copa df05d495b0 abuild: use curl by default. fallback to wget if curl is missing
fixes #871
2011-12-16 16:02:46 +01:00
Natanael Copa ff53e77643 abuild: fix typo 2011-12-14 10:55:53 +01:00
Natanael Copa 36c87807d2 abuild: fix typo and prettify warning message 2011-12-14 10:55:30 +01:00
Natanael Copa 57e05c4c01 abuild: allow override sanitycheck 2011-12-14 09:54:43 +00:00
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