Github messages for voidlinux
 help / color / mirror / Atom feed
From: pullmoll <pullmoll@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] ccache: update to 4.0
Date: Tue, 20 Oct 2020 16:57:36 +0200	[thread overview]
Message-ID: <20201020145736.0GD8mVRbY0CpW3v76Aecl0HxcVH3RR14fdgCX3QX_t4@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-25724@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 651 bytes --]

There is an updated pull request by pullmoll against master on the void-packages repository

https://github.com/pullmoll/void-packages ccache
https://github.com/void-linux/void-packages/pull/25724

ccache: update to 4.0
This release changes from using autoconf to cmake which is why
we need to remove the bootstrap=yes (N.B.: cmake is not bootstrap=yes).

I think we cannot turn `cmake` into a `bootstrap=yes` package.
Should we create a (legacy) chroot-ccache with a < 4.0 version?

There seems to be no way to build `ccache` >= 4.0 with just autoconf.

A patch file from https://github.com/void-linux/void-packages/pull/25724.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-ccache-25724.patch --]
[-- Type: text/x-diff, Size: 7293 bytes --]

From 29c5d5afd7574c6796e606be5e561ccf3e4837f5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Sun, 18 Oct 2020 22:01:57 +0200
Subject: [PATCH 1/6] ccache: update to 4.0

This release changes from using autoconf to cmake.
---
 srcpkgs/ccache/template | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/srcpkgs/ccache/template b/srcpkgs/ccache/template
index 481c4466199..6e109e8ccdb 100644
--- a/srcpkgs/ccache/template
+++ b/srcpkgs/ccache/template
@@ -1,11 +1,10 @@
 # Template file for 'ccache'
 pkgname=ccache
-version=3.7.12
+version=4.0
 revision=1
 bootstrap=yes
-build_style=gnu-configure
-make_check_args="CC=gcc"
-makedepends="zlib-devel"
+build_style=cmake
+makedepends="libzstd-devel zlib-devel"
 checkdepends="perl"
 short_desc="Fast C/C++ Compiler Cache"
 maintainer="Enno Boland <gottox@voidlinux.org>"
@@ -13,7 +12,18 @@ license="GPL-3.0-or-later"
 homepage="https://ccache.samba.org/"
 changelog="https://ccache.dev/releasenotes.html"
 distfiles="https://github.com/ccache/ccache/releases/download/v${version}/${pkgname}-${version}.tar.xz"
-checksum=a02f4e8360dc6618bc494ca35b0ae21cea080f804a4898eab1ad3fcd108eb400
+checksum=ac1b82fe0a5e39905945c4d68fcb24bd0f32344869faf647a1b8d31e544dcb88
+
+if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+	makedepends+=" libatomic-devel"
+fi
+
+pre_configure() {
+	if [ "$XBPS_TARGET_NO_ATOMIC8" ]; then
+		vsed -i src/CMakeLists.txt \
+			-e "/add_library/a target_link_libraries(ccache_lib PRIVATE atomic)"
+	fi
+}
 
 post_install() {
 	vmkdir usr/lib/ccache/bin

From aebb11c7b6dde192d5eeeecf1dcc09b60f81cfb5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Tue, 20 Oct 2020 16:54:52 +0200
Subject: [PATCH 2/6] expat: make it a bootstrap=yes package

---
 srcpkgs/expat/template | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/expat/template b/srcpkgs/expat/template
index 3c94508f4d5..ccff695dfac 100644
--- a/srcpkgs/expat/template
+++ b/srcpkgs/expat/template
@@ -1,7 +1,8 @@
 # Template file for 'expat'
 pkgname=expat
 version=2.2.10
-revision=1
+revision=2
+bootstrap=yes
 build_style=gnu-configure
 short_desc="XML parser library written in C"
 maintainer="Leah Neukirchen <leah@vuxu.org>"

From 6dba86952be1bbbbde58a63af8fdd8afd2cd3e57 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Tue, 20 Oct 2020 16:24:51 +0200
Subject: [PATCH 3/6] cmake: conflict w/ chroot-cmake

---
 srcpkgs/cmake/template | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/srcpkgs/cmake/template b/srcpkgs/cmake/template
index 808d69caec6..f230b49520b 100644
--- a/srcpkgs/cmake/template
+++ b/srcpkgs/cmake/template
@@ -1,7 +1,7 @@
 # Template file for 'cmake'
 pkgname=cmake
 version=3.18.2
-revision=1
+revision=2
 build_style=configure
 configure_args="--prefix=/usr --mandir=/share/man --docdir=/share/doc/cmake
  --system-libs --no-system-jsoncpp ${XBPS_MAKEJOBS:+--parallel=$XBPS_MAKEJOBS}"
@@ -15,6 +15,7 @@ license="LGPL-2.1-or-later, BSD-3-Clause"
 homepage="https://www.cmake.org"
 distfiles="https://www.cmake.org/files/v${version%.*}/${pkgname}-${version}.tar.gz"
 checksum=5d4e40fc775d3d828c72e5c45906b4d9b59003c9433ff1b36a1cb552bbd51d7e
+conflicts="chroot-cmake>=0"
 
 if [ "$CROSS_BUILD" ]; then
 	# XXX ugly :-)

From c04435edf08e91a7421891ff818f836f80a920ee Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Tue, 20 Oct 2020 13:29:34 +0200
Subject: [PATCH 4/6] New package: chroot-cmake-3.18.2

Required for building ccache>=4.0.
---
 srcpkgs/chroot-cmake/template | 44 +++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)
 create mode 100644 srcpkgs/chroot-cmake/template

diff --git a/srcpkgs/chroot-cmake/template b/srcpkgs/chroot-cmake/template
new file mode 100644
index 00000000000..b108452a5be
--- /dev/null
+++ b/srcpkgs/chroot-cmake/template
@@ -0,0 +1,44 @@
+# Template file for 'chroot-cmake'
+pkgname=chroot-cmake
+version=3.18.2
+revision=1
+wrksrc="${pkgname#chroot-}-${version}"
+bootstrap=yes
+build_style=configure
+configure_args="--prefix=/usr
+ --mandir=/share/man
+ --docdir=/share/doc/cmake
+ --no-system-curl
+ --system-expat
+ --no-system-jsoncpp
+ --system-zlib
+ --system-bzip2
+ --system-liblzma
+ --no-system-nghttp2
+ --system-zstd
+ --system-libarchive
+ --no-system-librhash
+ --no-system-libuv
+ ${XBPS_MAKEJOBS:+--parallel=$XBPS_MAKEJOBS}"
+makedepends="libarchive-devel expat-devel ncurses-devel"
+short_desc="Cross-platform, open-source build system (chroot version)"
+maintainer="Jürgen Buchmüller <pullmoll@t-online.de>"
+license="LGPL-2.1-or-later, BSD-3-Clause"
+homepage="https://www.cmake.org"
+distfiles="https://www.cmake.org/files/v${version%.*}/${pkgname#chroot-}-${version}.tar.gz"
+checksum=5d4e40fc775d3d828c72e5c45906b4d9b59003c9433ff1b36a1cb552bbd51d7e
+conflicts="cmake>=0"
+
+if [ "$CROSS_BUILD" ]; then
+	build_style=cmake
+	hostmakedepends="gcc-fortran"
+fi
+
+post_install() {
+	rm -rf ${DESTDIR}/usr/share/doc
+	rm -rf ${DESTDIR}/usr/share/cmake-${version%.*}/Help
+	# TODO: strip usr/share/cmake-${version%.*}/Modules/Compiler we don't need
+	vlicense Copyright.txt
+	vlicense Utilities/KWIML/Copyright.txt KWIML-Copyright.txt
+	vlicense Utilities/cmzlib/Copyright.txt cmzlib-Copyright.txt
+}

From 6a926b3a4377ca2b9942854ac1d3dcf1c412656c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Tue, 20 Oct 2020 13:35:22 +0200
Subject: [PATCH 5/6] build-style cmake: depend only if $CHROOT_READY

---
 common/environment/build-style/cmake.sh | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/common/environment/build-style/cmake.sh b/common/environment/build-style/cmake.sh
index 41f758a69a6..5512c902d5d 100644
--- a/common/environment/build-style/cmake.sh
+++ b/common/environment/build-style/cmake.sh
@@ -1 +1,3 @@
-hostmakedepends+=" cmake"
+if [ "$CHROOT_READY" ]; then
+	hostmakedepends+=" cmake"
+fi

From edaba738f187425aa7f2e07ff9d860cda7db30bc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=BCrgen=20Buchm=C3=BCller?= <pullmoll@t-online.de>
Date: Sun, 18 Oct 2020 22:03:25 +0200
Subject: [PATCH 6/6] base-chroot: add chroot-cmake dependency

Because ccache >= 4.0 now is built using cmake we need
a chroot-cmake as bootstrap=yes package.
---
 srcpkgs/base-chroot/template | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/srcpkgs/base-chroot/template b/srcpkgs/base-chroot/template
index 78f6d0cc2a1..7f72c945b61 100644
--- a/srcpkgs/base-chroot/template
+++ b/srcpkgs/base-chroot/template
@@ -1,7 +1,7 @@
 # Template file for 'base-chroot'
 pkgname=base-chroot
 version=0.66
-revision=3
+revision=4
 bootstrap=yes
 build_style=meta
 short_desc="Minimal set of packages required for chroot with xbps-src"
@@ -18,5 +18,5 @@ depends+="
  base-files binutils gcc gcc-ada libada-devel
  patch sed findutils diffutils make gzip coreutils
  file bsdtar ccache xbps mpfr ncurses libreadline8
- chroot-bash chroot-grep chroot-gawk chroot-distcc
- chroot-util-linux chroot-git"
+ chroot-bash chroot-grep chroot-gawk chroot-cmake
+ chroot-distcc chroot-util-linux chroot-git"

  parent reply	other threads:[~2020-10-20 14:57 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-18 20:38 [PR PATCH] " pullmoll
2020-10-19  1:59 ` sgn
2020-10-19  4:21 ` pullmoll
2020-10-19  4:52 ` [PR PATCH] [Updated] " pullmoll
2020-10-19  4:56 ` pullmoll
2020-10-20 11:19 ` pullmoll
2020-10-20 11:28 ` sgn
2020-10-20 11:31 ` sgn
2020-10-20 11:34 ` sgn
2020-10-20 11:42 ` [PR PATCH] [Updated] " pullmoll
2020-10-20 11:45 ` pullmoll
2020-10-20 11:55 ` pullmoll
2020-10-20 14:19 ` [PR PATCH] [Updated] " pullmoll
2020-10-20 14:22 ` pullmoll
2020-10-20 14:54 ` [PR REVIEW] " sgn
2020-10-20 14:57 ` pullmoll [this message]
2020-10-20 14:59 ` [PR PATCH] [Updated] " pullmoll
2020-10-20 15:00 ` pullmoll
2020-10-20 15:05 ` pullmoll
2020-10-20 15:11 ` sgn
2020-10-20 15:30 ` pullmoll
2020-10-20 15:30 ` [PR PATCH] [Closed]: " pullmoll

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201020145736.0GD8mVRbY0CpW3v76Aecl0HxcVH3RR14fdgCX3QX_t4@z \
    --to=pullmoll@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).