Commit graph

102 commits

Author SHA1 Message Date
Đoàn Trần Công Danh
2af30cdd78 setup: compute gitrev from outside of chroot
Together with previous commit, `xbps-src` is able to support
git-worktree and shared repository by now.
2020-05-23 06:59:24 +00:00
Đoàn Trần Công Danh
2cd2b99e41 setup: export SOURCE_DATE_EPOCH from outside of chroot
git-worktree(1), and Git shared repository can use a plain text file
named `.git` at the root of working tree, containing `gitdir: <path>` to
point to the real directory that has repository.
See: gitrepository-layout(5).

But, that directory is usually inaccessible inside chroot.

In order to support git-worktree(1) and Git shared repository, compute
SOURCE_DATE_EPOCH from outside of chroot, and the chroot will carry it
over to inside chroot.

I've only tested again xbps-uunshare(1).
2020-05-23 06:59:24 +00:00
Đoàn Trần Công Danh
fd61886616 setup/git.sh: prefer git plumbing command
git-ls-files(1) is plumbing command, its output will never change
regardless of configuration, version.

git-status(1) output will be changed depends on configuration.
At least, 986d4dbc7d (common/environment/setup/git.sh: ensure untracked
files are checked., 2017-11-24) was added to address a different output
on `status.showUntrackedFiles`.

By doing this, also reduce a pipe, and a fork-exec.

Technically, git-log(1) is also a porcelain, but I _think_ `%ct` is
stable enough to stay there. If the day has come, that `git-log(1)` can
be replaced with:

    git cat-file commit HEAD |
    sed -ne '/^committer/{s/.* \([0-9]*\) [-+][0-9][0-9][0-9][0-9]$/\1/p;q}'
2020-05-23 06:59:24 +00:00
Đoàn Trần Công Danh
20f9bedefb xbps-src: use $XBPS_GIT_CMD for git 2020-05-23 06:59:24 +00:00
mobinmob
17b5ae8dba common/environment/setup/misc.sh: use https where possible,
remove XORG_HOME variable.
2020-05-18 08:01:34 -07:00
Andrew J. Hesford
596250e4ea xbps-src: remove default python_version
Closes: #21209 [via git-merge-pr]
2020-04-21 18:45:25 -04:00
Leah Neukirchen
915fe2de9f common/environment/setup/python.sh: update to Python 3.8. 2019-12-23 14:11:45 +01:00
Doan Tran Cong Danh
bbce69f036 vsed: reduce number of digest cmd call
For a vsed call to `nf' files and `nr' regex,
the old code will make `2 * nf * nr' digest calls.
the new code will make `nf * (nr + 1)' digest calls.

Refereance: https://github.com/void-linux/void-packages/issues/11238
2019-05-14 16:33:30 +02:00
Doan Tran Cong Danh
9374b6938e vsed: strip non-digest part before comparing
Accidentally, this change also fixs a potential bug
if `XBPS_DIGEST_CMD` is changed to something other than
its current value: `xbps-uhelper digest'.

Because the old code compares:
- non-stripped old digest; and
- stripped new digest
2019-05-14 16:33:30 +02:00
Doan Tran Cong Danh
c384f85d2b vsed: refactor digest variables' name
We don't specify any specific digest function in this function,
and the old variables' name doesn't reflect the fact that they're
a pair of old and new digest built by the same hash function.
2019-05-14 16:33:30 +02:00
Jürgen Buchmüller
f636a5f078
environment/setup/sourcepkg.sh: unset GIR_EXTRA_...
Signed-off-by: Jürgen Buchmüller <pullmoll@t-online.de>
2019-05-07 15:33:47 +02:00
maxice8
df5886d7d7 vsed.sh: use XBPS_DIGEST_CMD instead of sha256sum 2019-04-15 12:18:00 -03:00
Doan Tran Cong Danh
13901bc715 xbps-src: vsv: force linking on forced rebuild
re-run `xbps-src -f install pkg` on packages with service files failed
because the link was created from previous run.
2019-04-15 10:53:55 -03:00
maxice8
c5b6940949 setup/install.sh: remove dirname usage 2019-04-14 06:22:09 -03:00
maxice8
415e6cd701 meta: remove support code for only_for_archs= 2019-03-14 19:20:07 -03:00
maxice8
1ba87eee57 meta: unset the pre_patch() do_patch() post_patch() 2019-02-27 22:56:19 -03:00
maxice8
1bda166a6c
meta: fix unsetting of only_for_archs 2019-02-26 09:45:25 -03:00
Enno Boland
8f6d534cac vsed: make more compatible with sed commandline semantics. 2019-02-18 17:23:52 -03:00
maxice8
dfd0cde930 setup/install.sh: remove support for 'all' special arg. 2019-02-18 08:32:27 -03:00
Enno Boland
38c457e1aa add compatibility code for noarch/only_for_archs 2019-02-15 13:19:44 +01:00
Enno Boland
6eb37e35b2 common: merge only_for_archs and noarch=yes into one.
* noarch=yes is replaced with archs=noarch
* only_for_archs= is renamed to archs=
* archs= allows the use of wildcards and negations; first matching rule applies:
  * archs="*-musl" will build the pkg only for musl-libcs
  * archs="~*-musl" will build the pkg only on non-musl-libc
  * archs="x86_64-musl ~*-musl" will build for x86_64-musl and any non-musl
    arch.
* archs= defaults to "*"
2019-02-15 13:19:44 +01:00
maxice8
5465d131f6
environment/setup/sourcepkg.sh: unset build_helper 2019-01-25 20:44:41 -02:00
maxice8
202b6a7b97 setup/sourcepkg.sh: unset fetch_cmd 2019-01-21 16:17:02 -02:00
maxice8
26eb17f941 setup/sourcepkg.sh: unset more variables that can be set by the template 2019-01-19 23:02:28 -02:00
maxice8
673504e524 meta: add vsed function 2019-01-16 17:25:46 -02:00
maxice8
c714d13f37 setup/install.sh: support bzipped (.bz2) manpages 2018-10-17 11:28:58 -03:00
Alessio Sergi
08408ed943 common/environment/setup/python.sh: always expose py{2,3}_* vars
Their values are static now, so remove the tests.
2018-09-15 01:49:45 +02:00
maxice8
e42406c070
setup/install.sh: transparently deal with gzipped manpages
[ci skip]
2018-08-12 04:21:46 -03:00
Piotr Wójcik
31097aca86 common/environment/fetch/misc.sh: use https for MOZILLA_SITE
Closes #14901.

Signed-off-by: Enno Boland <gottox@voidlinux.eu>
2018-06-05 09:17:45 +02:00
Duncaen
94ed33657b Revert "common/: add support for changelog field."
This reverts commit 8599efd9fd.
2018-05-04 16:46:46 +02:00
maxice8
daf68c6d59 rename vopt_onoff to vopt_bool which returns -D<prop>=true|false
This makes it more generic and allows us to use it freely between
cmake and meson build styles.
2018-05-04 10:56:26 +02:00
maxice8
8599efd9fd common/: add support for changelog field.
This commits allows ./xbps-src show to show the changelog field and for
changelog to be included with the -c/--changelog option via xbps-create.

Closes: #14102 [via git-merge-pr]
2018-05-03 22:58:27 -04:00
Michael Carlberg
d5c58a3c60 xbps-src: new vopt_onoff helper
CMake helper function used to set bool argument values

Usage example:

    configure_args+=" $(vopt_onoff logging WITH_LOGGING)"

    configure_args+=" -DWITH_LOGGING=OFF"
2018-05-03 01:26:32 -04:00
maxice8
babcd991bc common/environment/fetch/misc.sh: add KDE_SITE.
there are 272 occourences of download.kde.org/stable, to avoid
repetition add a KDE_SITE variable to be used instead.
2018-04-22 19:16:50 -04:00
Michael Gehring
b137c5393a xbps-src: ensure GIT_CMD is invoked on the distdir 2018-03-14 15:47:56 +00:00
Michael Gehring
a4a229cf64 xbps-src: use HEAD commit time for SOURCE_DATE_EPOCH
In order to make builds more reproducible SOURCE_DATE_EPOCH was set to
the time of the last commit that touched the template. Since trying to
reproduce a build from a different revision is futile (the most obvious
reason is that the source-revisions property includes the HEAD commit
hash) and looking up the commit in question can take several seconds,
stop wasting time an just use HEAD.

Closes: #12314 [via git-merge-pr]
2018-03-14 12:58:36 +00:00
Alessio Sergi
7cac47c7d5 common/environment/setup/python.sh: hardcode values 2018-01-31 16:38:53 +01:00
Leah Neukirchen
986d4dbc7d common/environment/setup/git.sh: ensure untracked files are checked. 2017-11-24 14:10:00 +01:00
Enno Boland
0d446641e7 build-style/gnu-configure.sh: use generic do_check function 2017-11-19 20:50:48 +01:00
Michael Gehring
a8b8efe636 common/environment/setup/sourcepkg.sh: unset {pre,do,post}_check, checkdepends 2017-11-18 14:24:12 +01:00
Leah Neukirchen
83909fc6b9 common/environment/setup/misc.sh: set CPAN_SITE to www.cpan.org.
cpan.perl.org is currently broken.
2017-08-19 17:29:05 +02:00
Toyam Cox
ef77435890 Merge pull request #6733 from The-Fred/xorg-to-https-and-new-url
xbps-src: use https and new url for XORG_SITE
2017-06-15 00:40:50 -04:00
The_Fred
6ec374fa2d xbps-src: use https and new url for XORG_SITE 2017-06-14 21:11:32 -07:00
The_Fred
95bbfa6a6e xbps-src: use https for FREEDESKTOP_SITE 2017-06-12 09:18:45 -07:00
Toyam Cox
2b19b7eb58 build_style/gnu-makefile: allow good makefiles 2017-04-25 16:20:59 -04:00
Alessio Sergi
49931349ed xbps-src: use https for KERNEL_SITE 2017-03-09 13:51:18 +01:00
Jürgen Buchmüller
272114cd05 xbps-src: trying to fix FFLAGS construction
This still isn't perfect. When the common/xbps-src/shutils/chroot.sh
function chroot_init() is called, the value for $XBPS_FFLAGS, which is
defined in common/build-profiles/bootstrap.sh, is empty.

Put the immediate value into the generated /etc/xbps/xbps-src.conf
file until someone finds out where passing the value of $XBPS_FFLAGS
throughout the scripts is missing.
2017-03-08 17:36:22 +01:00
Alessio Sergi
29c37543cf xbps-src: introduce python_version 2016-11-17 17:42:54 +01:00
Michael Gehring
f82da0a8f7 common/environment/setup/install.sh: quote filename in vinstall
Fixes #5011
2016-10-21 01:46:06 +02:00
Alessio Sergi
4e6576e7a4 xbps-src: add support for python3 pkgs
- python_module build style now builds modules for python2/3 by default
- new python2_module and python3_module build styles for building
  python2-only and python3-only packages respectively
- no more python_versions
- no need to define pycompile_version for Python modules anymore
  (still needed for non-Python modules though)
- Python version and paths are now guessed automatically and a set of
  useful variables can now be used in templates
- #!/usr/bin/python2 and #!/usr/bin/python3 are now the default shebangs
- /usr/bin/foo2 and /usr/bin/foo3 are now the default names for bin
  scripts (for use with alternatives)
2016-10-16 16:59:31 +02:00