Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Jul 2014 08:31:42 -0700
From:      Cy Schubert <Cy.Schubert@komquats.com>
To:        Baptiste Daroussin <bapt@FreeBSD.org>
Cc:        Cy Schubert <Cy.Schubert@komquats.com>, svn-ports-head@freebsd.org, svn-ports-all@freebsd.org, ports-committers@freebsd.org, Cy Schubert <cy@FreeBSD.org>
Subject:   Re: svn commit: r363477 - head/sysutils/cfengine36
Message-ID:  <201407301531.s6UFVg4e004528@slippy.cwsent.com>
In-Reply-To: Message from Baptiste Daroussin <bapt@FreeBSD.org> of "Wed, 30 Jul 2014 16:41:01 %2B0200." <20140730144101.GK37672@ivaldir.etoilebsd.net>

next in thread | previous in thread | raw e-mail | index | archive | help
In message <20140730144101.GK37672@ivaldir.etoilebsd.net>, Baptiste 
Daroussin w
rites:
> On Wed, Jul 30, 2014 at 07:19:34AM -0700, Cy Schubert wrote:
> > In message <20140730135450.GJ37672@ivaldir.etoilebsd.net>, Baptiste=20
> > Daroussin w
> > rites:
> > > On Wed, Jul 30, 2014 at 03:21:51PM +0200, Baptiste Daroussin wrote:
> > > > On Wed, Jul 30, 2014 at 01:17:12PM +0000, Cy Schubert wrote:
> > > > > Author: cy
> > > > > Date: Wed Jul 30 13:17:12 2014
> > > > > New Revision: 363477
> > > > > URL: http://svnweb.freebsd.org/changeset/ports/363477
> > > > > QAT: https://qat.redports.org/buildarchive/r363477/
> > > > >=3D20
> > > > > Log:
> > > > >   Make poudriere happy.
> > > > >=3D20
> > > > > Modified:
> > > > >   head/sysutils/cfengine36/Makefile
> > > > >=3D20
> > > > > Modified: head/sysutils/cfengine36/Makefile
> > > > > =3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=
> =3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D
> > > =3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=
> =3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D
> > > =3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=
> =3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D3D=3D
> > > =3D3D=3D3D=3D3D=3D3D=3D3D
> > > > > --- head/sysutils/cfengine36/Makefile	Wed Jul 30 13:15:40 2014
> > > 	(r363476)
> > > > > +++ head/sysutils/cfengine36/Makefile	Wed Jul 30 13:17:12 2014
> > > 	(r363477)
> > > > > @@ -42,6 +42,7 @@ CONFIGURE_ARGS=3D3D	--docdir=3D3D${DOCSDIR} \
> > > > >  		--with-lmdb=3D3D${LOCALBASE} \
> > > > >  		--enable-fhs
> > > > > =3D20
> > > > > +BUILD_DEPENDS+=3D3D	${LOCALBASE}/include/pcre.h:${PORTSDIR}/devel/p
> > > cre
> > > > >  LIB_DEPENDS+=3D3D	libpcre.so:${PORTSDIR}/devel/pcre \
> > > > >  		liblmdb.so:${PORTSDIR}/databases/lmdb
> > > > > =3D20
> > > >=3D20
> > > > This is 100% noop and changes nothing that won't make poudriere more =
> happ=3D
> > > y then
> > > > before.
> > > >=3D20
> > >=20
> > > This ports have multiple problem due to patch-m4-strndup.m4
> > > when building locally it works because you might have autotools install=
> ed
> > > locally and configrue automatically run aclocal because the m4 file has=
>  cha=3D
> > > nged.
> > > But that breaks USES=3D3Dlibtool hence the libexec/cfengine/libpromises=
> =2Eso.3 =3D
> > > not
> > > being created fixed by your addition of post-install
> > >=20
> > > on the cluster you are in a clean env so aclocal is not there given you=
>  did=3D
> > >  not
> > > asked it to be there.
> > >=20
> > > You have 2 possibility either remove patch-m4-strndup.m4, add
> > > CPPFLAGS=3D3D-I${LOCALBASE}/include, remove your new BUILD_DEPENDS and =
> remove=3D
> > >  your
> > > post-install
> > >=20
> > > or keep your patch-m4-stdndup.m4 and regenerate configure with USE_AUTO=
> TOOLS
> > > macros, add CPPFLAGS=3D3D-I${LOCALBASE}/include, remove your new BUILD_=
> DEPEND=3D
> > > S and remove your
> > > post-install
> > >=20
> > > There is no point in patching m4 macros if you do not regenerate the au=
> toto=3D
> > > ols
> > >=20
> > > This patch http://people.freebsd.org/~bapt/cfengine36.diff does the fir=
> st t=3D
> > > hing.
> >=20
> >=20
> > Try this.
> >=20
> > Index: Makefile
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > --- Makefile	(revision 363480)
> > +++ Makefile	(working copy)
> > @@ -68,8 +68,4 @@
> >  LIB_DEPENDS+=3D		libvirt.so:${PORTSDIR}/devel/libvirt
> >  .endif
> > =20
> > -post-install:
> > -	@cd ${STAGEDIR}${PREFIX}/libexec/cfengine && \
> > -		${LN} -s libpromises.so.3.0.6 libpromises.so.3
> > -
> >  .include <bsd.port.post.mk>
> > Index: files/patch-aclocal.m4
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > --- files/patch-aclocal.m4	(revision 0)
> > +++ files/patch-aclocal.m4	(working copy)
> > @@ -0,0 +1,7 @@
> > +--- aclocal.m4.orig	2014-07-30 07:15:47.380055000 -0700
> > ++++ aclocal.m4	2014-07-30 07:16:24.011844671 -0700
> > +@@ -1118,4 +1118,3 @@
> > + m4_include([m4/lt~obsolete.m4])
> > + m4_include([m4/old-autoconf.m4])
> > + m4_include([m4/snprintf.m4])
> > +-m4_include([m4/strndup.m4])
> >=20
> > Property changes on: files/patch-aclocal.m4
> > ___________________________________________________________________
> > Added: fbsd:nokeywords
> > ## -0,0 +1 ##
> > +yes
> > \ No newline at end of property
> > Added: svn:eol-style
> > ## -0,0 +1 ##
> > +native
> > \ No newline at end of property
> > Added: svn:mime-type
> > ## -0,0 +1 ##
> > +text/plain
> > \ No newline at end of property
> > Index: files/patch-m4-strndup.m4
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > --- files/patch-m4-strndup.m4	(revision 363347)
> > +++ files/patch-m4-strndup.m4	(working copy)
> > @@ -1,54 +0,0 @@
> > ---- /dev/null	2014-07-29 08:00:54.000000000 -0700
> > -+++ m4/strndup.m4	2014-07-29 08:01:42.499328796 -0700
> > -@@ -0,0 +1,51 @@
> > -+# strndup.m4 serial 21
> > -+dnl Copyright (C) 2002-2003, 2005-2013 Free Software Foundation, Inc.
> > -+dnl This file is free software; the Free Software Foundation
> > -+dnl gives unlimited permission to copy and/or distribute it,
> > -+dnl with or without modifications, as long as this notice is preserved.
> > -+
> > -+AC_DEFUN([cf3_FUNC_STRNDUP],
> > -+[
> > -+  AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
> > -+  AC_CHECK_DECLS([strndup])
> > -+  AC_REPLACE_FUNCS([strndup])
> > -+  if test $ac_cv_have_decl_strndup =3D no; then
> > -+    HAVE_DECL_STRNDUP=3D0
> > -+  fi
> > -+
> > -+  if test $ac_cv_func_strndup =3D yes; then
> > -+    HAVE_STRNDUP=3D1
> > -+    # AIX 5.3 has a function that tries to copy the entire range specif=
> ied
> > -+    # by n, instead of just the length of src.
> > -+    AC_CACHE_CHECK([for working strndup], [cf3_cv_func_strndup_works],
> > -+      [AC_RUN_IFELSE([
> > -+         AC_LANG_PROGRAM([[#include <string.h>
> > -+                           #include <stdlib.h>]], [[
> > -+#if !HAVE_DECL_STRNDUP
> > -+  extern
> > -+  #ifdef __cplusplus
> > -+  "C"
> > -+  #endif
> > -+  char *strndup (const char *, size_t);
> > -+#endif
> > -+  char *s;
> > -+  // Will crash if strndup tries to traverse all 2GB.
> > -+  s =3D strndup ("string", 2000000000);
> > -+  return 0;]])],
> > -+         [cf3_cv_func_strndup_works=3Dyes],
> > -+         [cf3_cv_func_strndup_works=3Dno],
> > -+         [
> > -+changequote(,)dnl
> > -+          case $host_os in
> > -+            aix | aix[3-6]*) cf3_cv_func_strndup_works=3D"guessing no";;
> > -+            *)               cf3_cv_func_strndup_works=3D"guessing yes"=
> ;;
> > -+          esac
> > -+changequote([,])dnl
> > -+         ])])
> > -+    case $cf3_cv_func_strndup_works in
> > -+      *no) AC_LIBOBJ([strndup]) ;;
> > -+    esac
> > -+  else
> > -+    HAVE_STRNDUP=3D0
> > -+  fi
> > -+])
> > Index: pkg-plist
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > --- pkg-plist	(revision 363347)
> > +++ pkg-plist	(working copy)
> > @@ -1,5 +1,4 @@
> >  libexec/cfengine/libpromises.so
> > -libexec/cfengine/libpromises.so.3
> 
> No this should not be removed at all if you end up not having this file it =
> means
> that something is getting wrong and probably autotools are again regenerati=
> ng
> things they shouldn't.

Removing the strndup.m4 patch and making the corresponding change to 
aclocal.m4 to not reference the file that was not included in the original 
tarball causes autotools to loop forever. I had to get strndup.m4 from 
their repo to get it to configure in the first place. I think that for this 
release only I may consider regeneration of autotools and revert back next 
release (assuming the upline has fixed this issue by then). This should fix 
the libpromises.so.3 issue.

Try building it yourself without strndup.m4 and with it. Either way it 
looks like regeneration of autotools will need to be done.


-- 
Cheers,
Cy Schubert <Cy.Schubert@komquats.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  http://www.FreeBSD.org

	The need of the many outweighs the greed of the few.





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201407301531.s6UFVg4e004528>