Commit Graph

491 Commits

Author SHA1 Message Date
Juan RP 933513adaa Improve how run-time deps (aka "depends") are handled in packages.
Run-time dependencies declared via "${depends}" are now also part of the
build process, but those are not installed to the master directory; rather
those dependencies are only checked if a binary package exists in a
local repository to satisfy the required version.

Thanks to @dominikh for idea and suggestions.
2014-07-30 17:58:17 +02:00
Juan RP 8cefd7e1cc xbps-src: make sure to re-read template for build options.
The issue was that when building dependencies of target pkg, the
template wasn't re-read with defined build options and those were
completely ignored.
2014-07-24 18:40:52 +02:00
Juan RP c49e01fc15 xbps-src: make it possible to override the subpackages list via ${subpackages}.
This overrides the automatic list generated by xbps-src and it's overridable
to change the processing order of subpackages.
2014-07-23 15:44:36 +02:00
Juan RP e372fcc6e0 xbps-src: fix pkg options parsing in package names containing dashes.
When using per-pkg options via etc/conf, all dashes should be replaced by
underscores, i.e:

	XBPS_PKG_OPTIONS_xorg_server=opt,~opt2
2014-07-19 10:39:22 +02:00
Juan RP 67358807ea xbps-src: chroot: remove xbps conf remote repos with -N. 2014-07-14 12:28:08 +02:00
Juan RP 758ea97981 xbps-src: fix -o in chroot (reported by al3hex). 2014-07-12 15:56:40 +02:00
Juan RP 719de35774 xbps-src: print some more details if installation of cross pkgs fails. 2014-07-08 15:09:21 +02:00
Juan RP 4d55b696c3 xbps-src: chroot_init: do not propagate XBPS_MASTERDIR to the generated xbps-src.conf.
Fixes Ypnose issue where he has XBPS_MASTERDIR set in `etc/conf`.
2014-07-05 16:12:14 +02:00
Juan RP aee9d60bec xbps-src: document xbps-install(8) ENXIO rval. 2014-07-02 11:09:41 +02:00
Juan RP 71f0a912ef xbps-src: chroot.sh: XBPS_CONFIG_FILE could be unset, handle it. 2014-07-01 18:47:39 +02:00
Juan RP ff00dc5448 xbps-src: destroy <masterdir>/tmp before entering the chroot. 2014-07-01 15:07:01 +02:00
Juan RP e64f3d8a95 xbps-src: make sure XBPS_CONFIG_FILE is set. 2014-07-01 13:15:52 +02:00
Juan RP c06d1e4d85 xbps-src: partial revert of 871d2fa87.
We can't pass XBPS_OPTIONS to xbps-uchroot(8) as is.
2014-07-01 11:04:34 +02:00
Juan RP 871d2fa873 xbps-src: added -G to enable XBPS_USE_GIT_REVS. 2014-07-01 10:33:54 +02:00
Juan RP 67947330cc xbps-src: set XBPS_HOSTDIR correctly for chroot ops. 2014-06-30 12:03:56 +02:00
Juan RP a5e726c4ec xbps-src: copy XBPS_* settings from etc/conf only if the file exists. 2014-06-30 11:52:52 +02:00
Juan RP 9d34c36e0a Implemented support for permanent pkg build options (globally or per-pkg).
Permanent global pkg build options can be defined via 'XBPS_PKG_OPTIONS' in etc/conf.
Permament per-pkg build options can be defined via 'XBPS_PKG_OPTIONS_<pkgname>' in etc/conf.

Close GH #452.
2014-06-30 11:32:07 +02:00
Juan RP e3246539e7 xbps-src: do not copy x86_64 specific repos to the cross target root. 2014-06-10 09:36:58 +02:00
Juan RP b747269490 xbps-src: make local/remote multilib repos only available on x86_64. 2014-06-10 09:22:18 +02:00
Juan RP fedcbc4423 xbps-src: remove local copy of xbps.conf; it's unnecessary with xbps-0.37. 2014-06-07 06:07:04 +02:00
Juan RP bb2361c130 xbps-src: set correct xbps cachedir for chroot ops. 2014-06-07 05:52:42 +02:00
Juan RP b308d7cfac xbps-src: fix previous correctly for local mode too. 2014-06-06 16:29:50 +02:00
Juan RP f90fe6abb8 xbps-src: fixed repo handling with xbps-0.37 in cross builds. 2014-06-06 16:24:35 +02:00
Juan RP cf76c65be9 xbps-src: use xbps-0.37 config repo dir feature (etc/repo.d). 2014-06-06 16:10:42 +02:00
Juan RP 3ba23bbc4f xbps-src/common.sh: recursively remove all cross pkgs. 2014-05-19 16:45:34 +02:00
Juan RP 14a5ef4503 xbps-src/build_dependencies.sh: in !CHROOT_READY case don't install pkgs with fakeroot. 2014-05-19 12:40:44 +02:00
Juan RP 4d9ed5639f xbps-src/shutils/chroot.sh: unconditionally copy repo conf files into masterdir. 2014-05-05 10:56:00 +02:00
Juan RP 8aa48b07ff xbps-src/shutils/bulk: pass --distdir option to xbps-checkvers(8) instead. 2014-04-17 10:36:45 +02:00
Juan RP ff700d0a40 xbps-src/shutils/chroot: use existing PATH when entering xbps-src cmds.
... otherwise xbps-uchroot might not be found when it's in an uncommon path.
2014-04-14 19:58:32 +02:00
Juan RP 06ac73239f xbps-src/shutils/common: read build_dependencies.sh for check_installed_pkg(). 2014-04-10 14:54:30 +02:00
Juan RP e60eb854e6 xbps-src: move check_installed_pkg() to build_dependencies.sh. 2014-04-10 11:58:06 +02:00
Juan RP 3c79f11a6f xbps-src/shutils/bulk: also add pkgs with no deps. 2014-04-10 11:26:02 +02:00
Juan RP 922d37f590 xbps-src/shutils/bulk: perform topological sort of build-deps. 2014-04-10 11:10:39 +02:00
Juan RP 51882b7ec4 xbps-src: apply sane indentation to all shell code (2/2). 2014-04-09 16:55:58 +02:00
Juan RP d4e4d826e6 xbps-src: new targets: update-bulk and update-sys.
* update-bulk:
	This rebuilds all pkgs in system repositories that are outdated.
	with this xbps-bulk is now considered fully obsolete.

* update-sys:
	This rebuilds all pkgs in system that are oudated and once built,
	updates them via xbps-install(8).

	This target defines a new configuration option "XBPS_SUCMD" that
	is the command to execute to update the system. By default set to
	"sudo sh -c".

CAVEATS
	- need to check if binpkg is in local repo.
	- need to add support to specify alternative rootdir.
	- need to add support to specify system repos.
2014-04-09 16:42:07 +02:00
Juan RP 1af40eb476 xbps-src: apply sane indentation to all shell code. 2014-04-09 16:40:27 +02:00
Juan RP f6f59dec8b xbps-src: make sure that wrksrc is expanded after reading build-options. 2014-03-27 10:06:27 +01:00
Juan RP 0d953db70b xbps-src: 'pkg' target replaces 'build-pkg' but the latter is kept for compat. 2014-03-23 11:27:09 +01:00
Juan RP c343fbf42a xbps-src: make install/remove targets defaults now, but keep previous for compat. 2014-03-22 20:59:39 +01:00
Juan RP 85624c1a6a common/xbps-src/shutils/chroot.sh: prepend /xbps-packages to PATH for the chroot target. 2014-03-22 13:21:04 +01:00
Juan RP 0b95cb8f5d Merge xbps-src code to make it usable in a standalone mode.
The new xbps-src configuration file is `etc/conf` where you can
add your local overrides from defaults set via `etc/defaults.conf`.

To use this xbps-src, run these steps:

	$ make
	$ sudo make setup (to make chroot helper setgid)
	$ ./xbps-src ...
2014-03-22 12:31:42 +01:00