On Sat, Nov 04, 2017 at 07:49:20PM +0000, Stuart Henderson wrote:
> On 2017/11/04 20:38, Andreas Kusalananda Kähäri wrote:
> > On Sat, Nov 04, 2017 at 08:15:48PM +0100, Andreas Kusalananda Kähäri wrote:
> > > On Sat, Nov 04, 2017 at 07:23:01PM +0100, Marc Espie wrote:
> > > > On Sat, Nov 04, 2017 at 05:46:26PM +0100, Andreas Kusalananda Kähäri 
> > > > wrote:
> > > > > Hi,
> > > > > 
> > > > > I tried using dpb(1) with ccache today by adding USE_CCACHE=Yes and
> > > > > pointing CCACHE_DIR to a sensible location owned by _pbuild:
> > > > > 
> > > > > USE_CCACHE=    Yes
> > > > > CCACHE_DIR=    /extra/ccache
> > > > > 
> > > > > However, it seems as if this causes dpb to just quickly run though all
> > > > > the ports in my list without buiding anything, or even checking the 
> > > > > port
> > > > > signatures.
> > > > > 
> > > > > I'm running dpb like this:
> > > > > 
> > > > >     doas /usr/ports/infrastructure/bin/dpb -p4 -suUR -J0 -P 
> > > > > "$HOME/packages.txt"
> > > > > 
> > > > > Is it possible to enable ccache at all for dpb?  I'm using dpb since 
> > > > > it
> > > > > makes it easy to keep ports up to date on -current, and I'd really 
> > > > > want
> > > > > to have the ability to run with ccache to speed up the rebuilding of 
> > > > > some
> > > > > of the larger ports.
> > > > 
> > > > I'm not going  to go debug that from scratch.
> > > > 
> > > > It's likely dpb produced at least some output, like some logs.
> > > > So there might be an indication of why it doesn't work.
> > > > 
> > > 
> > > Sorry, the summary log, which I don't fully uderstand, seems to say
> > > nothing is being built because of circular dependencies between ccache
> > > and xz(?):
> > > 
> > > x11/dbus not built textproc/xmlto -> misc/gnugetopt -> 
> > > devel/gettext-tools -> archivers/xz -> devel/ccache -> 
> > > devel/autoconf/2.69 -> devel/help2man -> archivers/xz
> > 
> > There's a dependency cycle in the build dependencies for ccache whek
> > USE_CCACHE is set to "Yes":
> > 
> > $ make print-build-depends
> > This port requires package(s) "tsort: cycle in data
> > tsort: devel/autoconf/2.69
> > tsort: devel/ccache
> > tsort: cycle in data
> > tsort: devel/ccache
> > tsort: devel/metaauto
> > autoconf-2.69p2 ccache-3.3.4p0 metaauto-1.0p1 xz-5.2.3p0" to build.
> > 
> > 
> > My guess is that all of those port ought to have NO_CCACHE=Yes.
> 
> This was just a mistake when bulk-fixing autoconf scripts wih nested
> functions shortly before 6.2.
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/ccache/Makefile,v
> retrieving revision 1.39
> diff -u -p -r1.39 Makefile
> --- Makefile  25 Sep 2017 19:55:19 -0000      1.39
> +++ Makefile  4 Nov 2017 19:47:47 -0000
> @@ -17,9 +17,9 @@ WANTLIB += c m z
>  
>  MASTER_SITES =       http://samba.org/ftp/ccache/
>  
> -CONFIGURE_STYLE =    autoconf
> -AUTOCONF_VERSION =   2.69
> +CONFIGURE_STYLE =    gnu
>  
> +# This port should not have dependencies.
>  NO_CCACHE =          Yes
>  
>  .include <bsd.port.mk>
> Index: patches/patch-configure
> ===================================================================
> RCS file: patches/patch-configure
> diff -N patches/patch-configure
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-configure   4 Nov 2017 19:47:47 -0000
> @@ -0,0 +1,18 @@
> +$OpenBSD$
> +
> +Index: configure
> +--- configure.orig
> ++++ configure
> +@@ -4544,10 +4544,11 @@ else
> +     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
> + /* end confdefs.h.  */
> + #include <stdlib.h>
> ++        void test_fn(void) { qsort(NULL, 0, 0, (__compar_fn_t)NULL); }
> + int
> + main ()
> + {
> +-void test_fn(void) { qsort(NULL, 0, 0, (__compar_fn_t)NULL); }
> ++
> +   ;
> +   return 0;
> + }
> Index: patches/patch-configure_ac
> ===================================================================
> RCS file: patches/patch-configure_ac
> diff -N patches/patch-configure_ac
> --- patches/patch-configure_ac        25 Sep 2017 19:55:19 -0000      1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,17 +0,0 @@
> -$OpenBSD: patch-configure_ac,v 1.1 2017/09/25 19:55:19 sthen Exp $
> -
> -Index: configure.ac
> ---- configure.ac.orig
> -+++ configure.ac
> -@@ -65,8 +65,9 @@ AC_CHECK_FUNCS(utimes)
> - 
> - AC_CACHE_CHECK([for compar_fn_t in stdlib.h],ccache_cv_COMPAR_FN_T, [
> -     AC_TRY_COMPILE(
> --        [#include <stdlib.h>],
> --        [void test_fn(void) { qsort(NULL, 0, 0, (__compar_fn_t)NULL); }],
> -+        [#include <stdlib.h>
> -+        void test_fn(void) { qsort(NULL, 0, 0, (__compar_fn_t)NULL); }],
> -+    [],
> -         ccache_cv_COMPAR_FN_T=yes,
> -         ccache_cv_COMPAR_FN_T=no)])
> - if test x"$ccache_cv_COMPAR_FN_T" = x"yes"; then
Obvious okay espie@

Reply via email to