Juan RP
a5e248c730
xbps-src: require automake, libtool and pkg-config in the host for bootstrap.
...
This fixes bootstrapping of libarchive. Close #4516 .
2016-07-28 08:02:37 +02:00
Enno Boland
05ff430223
xbps-src: Preprocess arguments using getopt in order to allow options before and after XBPS_TARGET.
2016-07-04 16:38:22 +02:00
Juan RP
af11e6c891
xbps-src: set XBPS_CHROOT_CMD=uchroot with -t; improve desc for -a.
2016-04-27 17:03:24 +02:00
Juan RP
561ab61608
xbps-src: make i686 masterdirs (glibc) work on x86_64/musl hosts.
2016-04-13 08:07:02 +02:00
Enno Boland
096aac3603
xbps-src: add consistency check
...
`xbps-src consistency-check` iterates over all templates and looks for
potentially broken dependencies.
2016-03-22 00:36:30 +01:00
Enno Boland
16050ad3f2
hooks/pre-pkg: fixed mtime support for packages.
...
overwrites the mtime of all files in a package with the commit-date
of the package.
2016-02-19 16:21:56 +01:00
Steve Prybylski
f18def49cd
xbps-src: export XBPS_ALLOW_RESTRICTED.
2015-12-27 02:19:02 -05:00
Juan RP
e69b2491b7
xbps-src: fix -t by appending to XBPS_CHROOT_CMD_ARGS instead.
2015-12-12 10:13:22 +01:00
Juan RP
0a58fd0c01
Revert "xbps-src: fix uchroot chroot-style to not overwrite XBPS_CHROOT_CMD_ARGS."
...
This reverts commit ba4bba2031
.
2015-12-12 10:12:33 +01:00
Juan RP
ba4bba2031
xbps-src: fix uchroot chroot-style to not overwrite XBPS_CHROOT_CMD_ARGS.
2015-12-12 10:03:41 +01:00
Juan RP
c9dede4e23
xbps-src: force glibc locale generation on musl hosts.
...
localedef is only available with glibc, so that defer locale creation
once the chroot is ready.
This fixes installing bootstrap glibc pkgs on musl hosts.
2015-12-12 07:35:30 +01:00
Jürgen Buchmüller
7e72db86c6
xerces-c: set DISABLE_CCACHE=yes for i686
...
Re-enable the shared CCACHE_DIR which was not the root
cause of the problems.
2015-11-19 16:11:43 +01:00
Jürgen Buchmüller
9bd521e9bd
xerces-c: no need to disable PIE for i686
...
It seems that sharing a common CCACHE_DIR for all compilers
is problematic between at least x86_64 and i686 in some cases.
Revert to using per architecture ccache directories.
2015-11-19 15:18:35 +01:00
Juan RP
60110c0c2f
xbps-src: the 'show-var' target now sources native build-profile too.
2015-11-14 11:51:45 +01:00
Juan RP
2d9b01bce5
xbps-src: make 'show-var' source environment/setup.
...
This makes XXX_SITE vars work.
2015-11-14 10:25:39 +01:00
Juan RP
cacdf5e724
xbps-src: use host git(1) to detect current branch.
...
This now guesses correctly the current git branch when the target
masterdir does not match the host architecture.
2015-11-13 10:54:14 +01:00
Juan RP
eae488d3c4
xbps-src: typo fix for zap.
2015-11-02 20:32:12 +01:00
Juan RP
5f030fe2f1
xbps-src: force reconfiguration of bootstrap pkgs on chroot setup.
...
Right now ca-certificates internally requires the `openssl` utility
to generate /etc/ssl/certs. Certainly we need to perform this task
only once and iff we are within the chroot, because the host might
not have it in PATH.
This should fix the travis issue seen since xbps-0.48 was released.
2015-11-02 20:25:16 +01:00
Juan RP
8e7b21a472
xbps-src: force reconfiguration of ca-certificates.
2015-10-31 08:19:09 +01:00
Juan RP
0cd87b3cdd
xbps-src: perform bootstrapping in two phases.
...
- binary-bootstrap unpacks all pkgs and configure base-files.
- after accessing the chroot for the first time all pkgs are configured.
This should fix the issue of ca-certificates not generating the certs.
2015-10-31 07:59:06 +01:00
Juan RP
3a64a0f770
xbps-src: remove ca-certificates workaround; will be fixed correctly.
2015-10-31 07:51:56 +01:00
Juan RP
7e92158bbd
xbps-src: only reconfigure ca-certificates if /etc/ssl/certs does not exist.
2015-10-30 15:54:13 +01:00
Juan RP
c7611a9292
xbps-src: document ca-certificates stupid kludge.
2015-10-30 15:36:43 +01:00
Juan RP
0d55d32ba0
xbps-src: force reconfiguration of ca-certificates only in the chroot.
2015-10-30 15:33:57 +01:00
Juan RP
64f6a3af72
xbps-src: force reconfiguration of ca-certificates also in "bootstrap-update".
2015-10-30 15:20:18 +01:00
Juan RP
f9eec82888
xbps-src: force reconfiguration of ca-certificates if it's there.
2015-10-30 15:19:46 +01:00
Juan RP
f45746714d
xbps-src: bootstrap needs GNU make too.
2015-10-24 11:15:45 +02:00
Juan RP
08efa2cca1
xbps-src: -f <phase> now works for configure/build/install/pkg phases.
2015-09-24 15:45:47 +02:00
Juan RP
465e481b70
xbps-src: cleanup masterdir/tmp in the 'clean' target too.
2015-09-03 07:36:27 +02:00
Jürgen Buchmüller
793a156a0f
Implement XBPS_DISTFILES_MIRROR (second try)
...
The idea is to remove some burden from the original download
locations for distfiles by specifying one or more mirror locations.
+ Works with http:// or ftp:// mirrors for all $XBPS_CHROOT_CMD variants
+ Works with file:// mirrors together with uchroot and proot
2015-08-31 15:48:22 +02:00
Juan RP
cef388f07b
xbps-src: introduce a new target: "sort-dependencies".
...
This expects a variable argument list with package names that will be
returned to stdout topologically sorted.
$ ./xbps-src sort-dependencies libarchive-devel liblzma-devel libxbps zlib-devel bzip2-devel
bzip2
xz
zlib
libarchive
xbps
2015-08-16 10:47:35 +02:00
Juan RP
45bc2bea04
xbps-src: use $XBPS_INSTALL_CMD in binary-bootstrap.
...
This way local repo is always preferred rather than remote repos declared
via XBPS_INSTALL_ARGS.
2015-08-05 11:59:58 +02:00
Juan RP
472bf5092a
xbps-src: print supported cross targets by inspecting the cross-profiles dir.
2015-07-14 12:07:15 +02:00
Juan RP
d24e75514f
xbps-src: document xbps-0.46 signing and require 0.46.
2015-07-12 10:05:39 +02:00
Juan RP
95538529b4
xbps-src: XBPS_MAKEJOBS cannot be readonly, it's overwritten later.
2015-07-11 20:51:15 +02:00
jbu
919afe94fc
xbps-src: Add purge-distfiles command
...
Closes #1970
2015-07-06 10:02:25 +02:00
jbu
b30cbd9870
xbps-src: implement a by_sha256 hash cache
2015-07-04 11:18:46 +02:00
Juan RP
21e8243ce5
xbps-src: use XBPS_INSTALL_ARGS to repair bootstrap-update.
2015-06-09 09:23:06 +02:00
Juan RP
08fac2d108
xbps-src: detect musl hosts correctly in 'binary-bootstrap'.
2015-06-07 10:21:08 +02:00
Juan RP
3493f3c229
xbps-src: requires xbps>=0.45 now.
2015-06-03 11:32:47 +02:00
Juan RP
49bb3056a5
xbps-src: handle old base-files pkgs too.
2015-06-03 10:50:57 +02:00
Juan RP
428c34d1f0
xbps-src: reconfigure base-files not base-directories.
2015-06-03 10:44:58 +02:00
jbu
b1af6a413e
xbps-src: unified ccache directory
...
- I turns out that ccache is very well capable of recognizing different
compilers and using only files stored to the cache by each compiler.
- To avoid large parts of a cache becoming useless just because a compiler
was rebuilt during some (bootstrap) stage, rely on the contents of
the compiler binary for identification instead of mtime + size.
2015-05-18 20:27:09 +02:00
Juan RP
ef097888c0
xbps-src: get native arch via `xbps-uhelper arch` not `uname -m`.
...
This will detect void hosts running with musl.
2015-05-14 11:22:19 +02:00
Juan RP
92fd6e7fec
xbps-src: unbreak binary-bootstrap arch.
2015-05-11 09:03:03 +02:00
Juan RP
c7bf669b74
xbps-src: make binary-bootstrap skip remote repos with -N.
2015-05-11 08:34:29 +02:00
Juan RP
7494f7d07f
xbps-src: binary-bootstrap now prefers XBPS_INSTALL_ARGS.
...
... and fallsback to the local repository otherwise.
2015-05-10 09:35:19 +02:00
Juan RP
ee55b1081e
xbps-src: fix regression: -I does not remove autodeps.
2015-05-06 11:21:59 +02:00
Juan RP
3de7c66fbf
xbps-src: make 'bootstrap' target more reliable.
...
- Ignore additional arguments, i.e './xbps-src bootstrap -j2'.
- Do not sync remote repos.
2015-05-05 11:52:17 +02:00
Juan RP
39115d823d
xbps-src: respect -C for the origin pkg.
2015-05-04 06:07:31 +02:00
jbu
e4900a7e80
xbps-src: Use CCACHE_PREFIX for ccache+distcc
...
closes #1468
2015-05-02 17:09:37 +02:00
Juan RP
dbf77e4dcd
xbps-src: added support to cross compile for MIPS32 (r2, be, sf) with musl.
2015-05-02 05:56:12 +02:00
Juan RP
6e905b4a17
xbps-src: mention -a armv5te in usage.
2015-05-01 12:58:42 +02:00
Juan RP
8396a3d898
xbps-src: use xbps-query -i in the !chroot case; fixes -EN.
2015-04-16 11:53:43 +02:00
Juan RP
e575f44389
xbps-src: fix previous test for -t.
2015-04-16 11:40:37 +02:00
Juan RP
f09798e802
xbps-src: -t requires XBPS_CHROOT_CMD=uchroot and xbps>=0.45.
2015-04-16 11:35:58 +02:00
Juan RP
d07d3a72c9
xbps-src: new target: show-avail and returns 0 if pkg can be built.
2015-04-16 08:38:32 +02:00
Juan RP
559dc396a9
xbps-src: clean up masterdir in bootstrap-update too.
2015-04-09 19:52:21 +02:00
Juan RP
e2e7b10b0d
xbps-src: repair bootstrap-update in the !chroot case.
2015-04-09 19:45:59 +02:00
Juan RP
f56e44389c
xbps-src: do not remove autodeps with -I to make chris2 happy.
2015-04-04 17:52:43 +02:00
Juan RP
1d1e4baf25
xbps-src: mention aarch64{-musl} in usage.
2015-03-31 19:18:44 +02:00
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