Juan RP
0337b86f43
xbps-src: return 0 on success, 1 on error and 2 on nocross/broken (ignore).
2015-03-19 10:08:02 +01:00
Juan RP
43258cc391
xbps-src: remove autodeps before running the phase unless -C is set.
...
This should avoid unexpected issues due to building pkgs with dependencies
installed by previous builds.
2015-03-15 10:34:13 +01:00
Juan RP
d8f69bde78
xbps-src: repair 'update-bulk' target ( close #1121 ).
2015-03-14 09:47:56 +01:00
Juan RP
1e6f6edd59
xbps-src: export XBPS_DISTDIR for setup_pkg_depends.
2015-03-14 08:45:53 +01:00
Juan RP
849d22e46d
xbps-src: refactor build logic into its own script (build.sh).
...
The build.sh script is now responsible to handle all the logic to build
a source package and its subpackages, as well as all its required
build dependencies. Thanks to this and subshells, dependencies are now
built into its own child process, creating a process tree that can go
nested as long as your system allows forking and has enough memory :-)
This fixes some issues that have been while building pkgs that have lots
of nested dependencies.
2015-03-14 07:52:29 +01:00
Juan RP
5c177c7b67
Require xbps>=0.44 for xbps-uunshare(8) to simplify code.
2015-03-12 18:56:14 +01:00
Juan RP
d7b027308d
xbps-src: remove stupid check for uid == 0.
...
This is required to make xbps-src work with user namespaces.
2015-03-05 20:27:28 +01:00
Juan RP
7610142c34
xbps-src: only run bootstrap-update with -t.
2015-03-05 10:15:20 +01:00
Juan RP
50a116d27a
xbps-src: set default compiler/preprocessor/linker flags via etc/conf.
...
Rather than setting them in the build profile, just set them in
etc/defaults.conf (overridable via etc/conf) to simplify the code.
- Also enable _FORTIFY_SOURCE=2 in CPPFLAGS.
- Also enable -z,relro in LDFLAGS.
As suggested by @chneukirchen.
2015-03-04 15:18:46 +01:00
Juan RP
fce81cd12e
xbps-src: require gawk for bootstrap, glibc wants it.
2015-03-02 20:33:24 +01:00
Juan RP
9441debf00
xbps-src: run 'bootstrap-update' on the real masterdir with -t.
...
The real masterdir will be cleaned up and always up-to-date before
creating the temporary masterdir.
2015-03-02 15:51:51 +01:00
Juan RP
bdb798fa64
xbps-src: more improvements for -E and -t options.
...
If both options are set, check first if the binpkg exists before
creating the temporary masterdir, and clean this up properly.
2015-03-01 19:29:16 +01:00
Juan RP
2f524cf66a
xbps-src: cleanups for -E and -t.
...
-E also detect noarch binpkgs.
-t make sure to cleanup the temporary masterdirs.
2015-03-01 19:29:16 +01:00
Juan RP
ce425a80c6
xbps-src: silence output with -t.
2015-02-28 10:34:04 +01:00
Juan RP
8ee4a7c257
xbps-src: added -E opt to exit immediately if a binpkg already exists.
...
With -E if there's a binary package in a local repository for the
target pkg, exit immediately. This will be used by the upcoming xbps-fbulk(8).
2015-02-28 10:29:27 +01:00
Juan RP
da2cd34bdb
xbps-src: do not hardlink with -t, it won't work (doh).
...
The reason is that pkgdb could be modified concurrently... not sure
what I was thinking when I added that.
2015-02-28 08:34:21 +01:00
Juan RP
9c8ff5c33a
xbps-src: return error of the target if -t is set.
2015-02-27 23:31:02 +01:00
Juan RP
fcf24b660f
xbps-src: added -t option to create a temporary masterdir.
...
This temporary masterdir contains hardlinks of files stored in a real
masterdir, and once the target has finished will be removed.
Could be useful to create fully up to date and immutable real masterdirs
that are used as base for the temporary masterdirs.
2015-02-27 23:00:55 +01:00
Juan RP
df4c861f97
xbps-src: common/{,environment}/build_style -> common/${,environment}/build-style.
2015-02-21 12:13:07 +01:00
Juan RP
9a21eb0385
xbps-src: set XBPS_TARGET_MACHINE if unset.
2015-02-10 10:38:13 +01:00
Juan RP
f2dc12e29f
xbps-src: require xbps>=0.43.1 for the bootstrap target to work.
2015-01-05 17:12:48 +01:00
Juan RP
6ffc94c857
xbps-src: remove unused vars.
2015-01-04 13:02:02 +01:00
Juan RP
6100f83bcf
Revert "xbps-src: simplify chroot_handler usage."
...
This reverts commit 0e0eb9001a
.
Introduces new issues... revert until it's fixed properly.
2015-01-04 12:14:14 +01:00
Juan RP
0e0eb9001a
xbps-src: simplify chroot_handler usage.
2015-01-04 11:41:22 +01:00
Juan RP
b6fe202a27
xbps-src: repair the bootstrap target for real.
2014-12-26 09:40:41 +01:00
Juan RP
985125a868
xbps-src: do not set -C in the bootstrap target, default confdir is ok.
2014-12-23 09:33:07 +01:00
Juan RP
2fc4905025
xbps-src: use xbps.d in the bootstrap target.
2014-12-22 11:38:34 +01:00
Juan RP
b77c7a6836
xbps-src: update for xbps-0.42 and bump required version.
2014-12-22 11:15:44 +01:00
Juan RP
5929c2458a
xbps-src: remove pkg statedir unless -C is set.
2014-12-13 09:42:11 +01:00
Juan RP
47030ba22c
xbps-src: clean removes {build,dest}dir completely.
2014-12-11 11:11:58 +01:00
Juan RP
6e13dcbaff
xbps-src: introduce XBPS_STATEDIR to store state files, logs and others.
...
XBPS_STATEDIR is created in XBPS_BUILDDIR/.xbps-${sourcepkg}-${version}
and contains logs and state files for all phases, as well as wrappers.
We can now inspect the output from all hooks.
2014-12-11 11:02:22 +01:00
Juan RP
6a20a99cbb
xbps-src: improve clean description.
2014-12-10 18:58:39 +01:00
Juan RP
fc8ec0a799
xbps-src: clean <pkgname> also removes pkg files in destdir.
2014-12-10 18:57:49 +01:00
Juan RP
d1cfb341c2
xbps-src: properly set XBPS_MACHINE after linux32 reexec for x86 builds.
2014-11-22 07:00:50 +01:00
Juan RP
48423eb8fe
xbps-src: remove dead code.
2014-11-18 06:23:27 +01:00
Juan RP
5b9d2f889b
xbps-src: print correct var for invalid targets.
2014-11-18 06:12:52 +01:00
Juan RP
6fdd540de5
xbps-src: fix 'clean' target to remove autodeps if IN_CHROOT is set.
2014-11-17 17:32:30 +01:00
Juan RP
dc9144500c
xbps-src: get rid of CHROOT_CMD and use xbps-uchroot directly.
2014-11-12 09:52:17 +01:00
Juan RP
c2bd01c8d3
xbps-src: introduce build profiles and use it by default.
...
common/build-profiles contains the compilation flags used in native
builds, and are defined per architecture:
- x86_64 (glibc)
- x86_64-musl (musl)
If XBPS_CFLAGS or XBPS_CXXFLAGS are set in `etc/conf`, the settings
from the build profile will be overrided.
2014-11-10 11:17:34 +01:00
Christian Neukirchen
60ac25fd1f
xbps-src: add update-check.
2014-10-31 20:43:35 +01:00
Juan RP
5da744da85
xbps-src: create a ccache dir per arch.
2014-10-26 10:52:11 +01:00
Juan RP
58bbb98712
xbps-src: move ccache/distcc to hostdir, to make them shared by multiple masterdirs.
...
This way a single ccache or distcc directory can be shared by multiple
independent masterdirs.
2014-10-26 10:22:30 +01:00
Juan RP
3fcb1c1382
xbps-src: declare bootstrap vpkg with .conf extension.
2014-10-18 12:40:23 +02:00
Juan RP
033c4ed0f5
xbps-src: remove WIP repo delta support.
...
- it never worked correctly
- it's WIP and looks like it will be stalled forever
- won't be necessary anymore with xbps-0.42
2014-10-14 19:19:07 +02:00
Juan RP
6928b52a4e
xbps-src: full switch to void-packages.
2014-10-11 11:15:02 +02:00
Juan RP
77d1837155
xbps-src: misc tweaks for zap and use void-packages too in chroot ops.
2014-10-11 11:02:57 +02:00
Juan RP
732b483f1c
xbps-src: require xbps>=0.41.
2014-09-30 06:05:27 +02:00
Juan RP
fb83aa9025
xbps-src: a path to the sourcepkg directory can now be used.
...
For example:
$ ./xbps-src install srcpkgs/foo
$ ./xbps-src install /path/to/void-packages/srcpkgs/foo
$ ./xbps-src install foo
$ cd srcpkgs/foo && xbps-src (if void-packages is in PATH)
The basename of the pkgname argument is now used.
2014-09-27 06:53:27 +02:00
Juan RP
1a4dfe87e1
xbps-src: do not check for fakeroot; it's not necessary anymore.
2014-09-25 08:34:37 +02:00
Juan RP
d75238b0d8
xbps-src: remove fakeroot stuff completely.
2014-09-24 20:32:21 +02:00
Juan RP
b96e0ffe0a
xbps-src: cleanup signal handler catching SIGINT and SIGTERM.
...
- catching SIGHUP is meaningless.
- there's no point in clearning wkrsrc or removing autodeps, this is left
intact right now; this could be useful to have.
2014-09-24 20:03:20 +02:00
Juan RP
55f8a4b962
xbps-src: require xbps>=0.38.
2014-09-15 19:17:43 +02:00
Juan RP
b29dfe8ac4
xbps-src: with -C do not remove wrksrc on SIGINT; found by @chneukirchen.
2014-08-29 21:23:07 +02:00
Juan RP
9a6614ae31
xbps-src: install_bbotstrap -> install_bbootstrap.
2014-08-26 10:50:48 +02:00
Juan RP
e582f328b3
xbps-src: repair and improve the bootstrap target (from scratch).
...
- There's no need to install rdeps into the masterdir, just base-files.
- There's no need to exit if XBPS_TARGET_PKG == sourcepkg, just return.
- After building base-chroot, install bootstrap binary packages.
2014-08-26 10:33:15 +02:00
Juan RP
b0aedbb03a
xbps-src: added -D to generate repository binary deltas; disabled for now.
2014-08-14 12:28:27 +02:00
Juan RP
af6ee5374e
xbps-src: s/git/chroot-git/g
2014-07-27 16:29:18 +02:00
Juan RP
6c5c1eb060
Added default void RSA pubkey to avoid interactivity in binary-bootstrap.
2014-07-01 18:44:38 +02:00
Juan RP
d90a622a2b
Revert "xbps-src: do not propagate -H into XBPS_OPTIONS; the hostdir has a fixed path in the chroot."
...
This reverts commit f682eb7ec6
.
2014-07-01 11:04:15 +02:00
Juan RP
f682eb7ec6
xbps-src: do not propagate -H into XBPS_OPTIONS; the hostdir has a fixed path in the chroot.
2014-07-01 10:55:21 +02:00
Juan RP
d6d7e860a6
xbps-src: if etc/conf does not exist fallback to ~/.xbps-src.conf.
2014-07-01 10:40:33 +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
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
1b4e6ecaac
xbps-src: added support for the "tags" variable and require xbps>=0.37.
2014-06-06 20:51:47 +02:00
Juan RP
ecdb3900af
xbps-src: clean target without args removes autodeps/{build,dest}dir now.
2014-05-23 17:14:00 +02:00
Juan RP
3e55e4e30e
xbps-src: add list target to usage().
2014-05-20 10:02:09 +02:00
Juan RP
28ec7358c1
xbps-src: use local repo first for the binary-bootstrap target, append remotes later.
2014-05-20 09:56:20 +02:00
Juan RP
c09b2df7a7
xbps-src: fix bootstrap target with gcc being part of it.
2014-05-19 12:42:43 +02:00
Juan RP
a1f948bc35
xbps-src: wait for child processes before exiting.
2014-05-15 20:45:14 +02:00
Juan RP
5efa970972
xbps-src: only remove autodeps if chroot is ready.
2014-05-15 16:44:47 +02:00
Juan RP
6b1d54f873
xbps-src: remove autodeps before updating bootstrap pkgs.
2014-05-15 16:43:35 +02:00
Juan RP
cf97b1a2b4
xbps-src: apply indentation and avoid XBPS_MASTERDIR in the chroot case.
2014-04-28 23:03:35 +02:00
Juan RP
d5bc654227
xbps-src: repair bootstrap target.
2014-04-28 11:33:13 +02:00
Juan RP
b64fd3fefe
xbps-src: reconfigure pkgs for !native masterdirs.
2014-04-24 14:43:44 +02:00
Juan RP
eaf79d8b78
xbps-src: if ~/.xbps-src.conf exists, read it after etc/conf.
2014-04-23 16:37:02 +02:00
Juan RP
110b50ab24
xbps-src: improve -r description.
2014-04-22 17:11:24 +02:00
Juan RP
74305d33ff
xbps-src: add default local repo for the binary-bootstrap target.
2014-04-22 16:49:33 +02:00
Juan RP
1fb261bb97
xbps-src: use default hostdir if unset; added support for x86 chroots ootb.
...
- If -H (hostdir) is unset, it now defaults to xbps-packages/hostdir. This way
a single hostdir can be shared by multiple masterdirs without any tweak.
- If bootstrap pkg are installed via 'binary-bootstrap arch', add support to
reexec xbps-src with linux32 to allow 32bit builds without any tweak or
additional commands.
2014-04-22 16:01:05 +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
46d302a92a
xbps-src: two new targets merging xbps-bulk functionality.
...
show-repo-updates: prints the list of oudated pkgs in repos.
show-sys-updates: prints the list of oudated pkgs in your system.
2014-04-09 12:11:50 +02:00
Juan RP
ec62e56ef6
xbps-src: new target: show-var <varname> to print the value of <varname>.
2014-04-09 09:52:48 +02:00
Juan RP
576b865cf4
Update for xbps>=0.35 which contains xbps-uchroot.
...
That means that the Makefile and xbps-src generated files are not required
anymore, and the xbps-src script can be used as is.
Bump xbps requirement to 0.35 and enable XBPS_INSTALL_ARGS by default.
2014-04-01 11:29:21 +02:00
Juan RP
c973848606
Removed xbps-src code. It's available on https://github.com/xtraeme/xbps-src .
2011-11-19 00:05:42 +01:00
Juan RP
ccc3eaa70f
Reorganize stuff in repo to make xbps-src an independent package.
2011-11-18 17:36:14 +01:00
Juan RP
eac23f408f
TODO: remove old item.
2011-11-18 16:25:51 +01:00
Juan RP
47a52ce84f
xbps-src: set ETCDIR to PREFIX/etc/xbps by default.
2011-11-18 16:06:11 +01:00
Juan RP
2e53ec2c82
xbps-src: remove unneeded assignment.
2011-11-18 15:59:00 +01:00
Juan RP
9fd0795509
xbps-src: fix usage().
2011-11-18 15:51:46 +01:00
Juan RP
7253423d23
xbps-src: no need to chroot to install xbps-src anymore.
2011-11-18 15:41:49 +01:00
Juan RP
99578ee070
xbps-src: no need to subst shell helpers anymore.
2011-11-18 14:20:00 +01:00
Juan RP
c011a2749b
xbps-src: use XBPS_LIBEXECDIR and XBPS_SHAREDIR in all scripts that need substs.
2011-11-18 14:05:51 +01:00
Juan RP
dd4feb7b41
xbps-src: init_func.sh doesn't need to be sed subst anymore.
2011-11-18 12:51:58 +01:00
Juan RP
c5dd6426ae
xbps-src: use fixed paths for chroot case, unsubst set_defvars.
2011-11-18 12:50:28 +01:00
Juan RP
d7c2cc5513
xbps-src: doinst-helper: we know exact PATH for chroot case, use it.
2011-11-18 12:02:39 +01:00
Juan RP
005be53337
xbps-src: remove getdeps-helper, unused; don't install chroot-helper in chroot.
2011-11-18 11:58:21 +01:00
Juan RP
8795076381
xbps-src: install_pkg: we know exact PATH for chroot case, use it.
2011-11-18 11:52:56 +01:00
Juan RP
b1210b9934
xbps-src: set_defvars: we know exact PATH for chroot case, use it.
2011-11-18 11:47:24 +01:00
Juan RP
a88d12346d
xbps-src: tmpl_func.sh doesn't need to be filtered by sed in installation.
2011-11-18 11:40:00 +01:00
Juan RP
202dfd9c26
xbps-src: 'show-revdeps' now looks for hard deps and rshlibs, even faster.
2011-11-18 10:48:29 +01:00
Juan RP
bc5f57f274
xbps-src: use install_pkg() for configure and build targets too.
2011-11-18 09:33:29 +01:00