Commit graph

1020 commits

Author SHA1 Message Date
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