CFEngine 2.2.9 is out. Fix: The following patch updates the port and forces it to use Berkeley DB version that is chosen by the ports infrastructure. The patch works on my systems for a day or so -- no new problems are seen. There is an old one, with 'cfrun' being killed by the SIGALARM, but it was introduced at least in 2.2.8. How-To-Repeat: http://www.cfengine.org/downloads/
Responsible Changed From-To: freebsd-ports-bugs->miwi miwi@ wants his PRs (via the GNATS Auto Assign Tool)
Maintainer of sysutils/cfengine, Please note that PR ports/131040 has just been submitted. If it contains a patch for an upgrade, an enhancement or a bug fix you agree on, reply to this email stating that you approve the patch and a committer will take care of it. The full text of the PR can be found at: http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/131040 -- Edwin Groothuis via the GNATS Auto Assign Tool edwin@FreeBSD.org
State Changed From-To: open->feedback Awaiting maintainers feedback (via the GNATS Auto Assign Tool)
Eygene, can you tell me why the patching of configure is necessary? Upgrading to 2.2.9 is fine, but as it works today it properly uses the version you specify WITH_BDB_VER. In addition, you are making changes to the delivered files like removing the texinfo files. I'll submit a minimal patch tomorrow. On Jan 27, 2009, at 4:11 AM, Eygene Ryabinkin wrote: >> Number: 131040 >> Category: ports >> Synopsis: [patch] sysutils/cfengine: update to 2.2.9 >> Confidential: no >> Severity: non-critical >> Priority: medium >> Responsible: freebsd-ports-bugs >> State: open >> Quarter: >> Keywords: >> Date-Required: >> Class: sw-bug >> Submitter-Id: current-users >> Arrival-Date: Tue Jan 27 12:20:01 UTC 2009 >> Closed-Date: >> Last-Modified: >> Originator: Eygene Ryabinkin >> Release: FreeBSD 7.1-STABLE amd64 >> Organization: > Code Labs >> Environment: > > System: FreeBSD 7.1-STABLE amd64 > >> Description: > > CFEngine 2.2.9 is out. > >> How-To-Repeat: > > http://www.cfengine.org/downloads/ > >> Fix: > > The following patch updates the port and forces it to use Berkeley DB > version that is chosen by the ports infrastructure. The patch works > on > my systems for a day or so -- no new problems are seen. There is an > old > one, with 'cfrun' being killed by the SIGALARM, but it was > introduced at > least in 2.2.8. > > --- sysutils-cfengine-update-to-2.2.9.patch begins here --- > From b5e5608cb81e8780c394b7c70bda636028fc74a7 Mon Sep 17 00:00:00 2001 > From: Eygene Ryabinkin <rea-fbsd@codelabs.ru> > Date: Tue, 27 Jan 2009 11:32:12 +0300 > > And incidentially modify 'configure' script to use BerkeleyDB version > that is specified by the port. > > Signed-off-by: Eygene Ryabinkin <rea-fbsd@codelabs.ru> > --- > sysutils/cfengine/Makefile | 10 ++- > sysutils/cfengine/distinfo | 6 +- > sysutils/cfengine/files/configure-patch.in | 126 ++++++++++++++++ > +++++++++ > sysutils/cfengine/files/patch-doc_Makefile.in | 26 +++--- > 4 files changed, 150 insertions(+), 18 deletions(-) > create mode 100644 sysutils/cfengine/files/configure-patch.in > > diff --git a/sysutils/cfengine/Makefile b/sysutils/cfengine/Makefile > index 8220df7..cb00099 100644 > --- a/sysutils/cfengine/Makefile > +++ b/sysutils/cfengine/Makefile > @@ -6,7 +6,7 @@ > # > > PORTNAME= cfengine > -PORTVERSION= 2.2.8 > +PORTVERSION= 2.2.9 > CATEGORIES= sysutils > MASTER_SITES= http://www.cfengine.org/downloads/ > > @@ -27,7 +27,7 @@ CONFIGURE_ENV+= PTHREAD_CFLAGS=${PTHREAD_CFLAGS} > PTHREAD_LIBS=${PTHREAD_LIBS} \ > BERKELEY_DB_LDFLAGS=-L${BDB_LIB_DIR} \ > BERKELEY_DB_LIB=-l${BDB_LIB_NAME} > .if !defined(NOPORTDOCS) > -INFO= cfengine-Tutorial cfengine-Reference > +INFO= cfengine-Tutorial cfengine-Reference cfengine-Anomalies > .endif > > MAN8= cfagent.8 cfengine.8 cfenvd.8 cfenvgraph.8 cfetoolcheck.8 \ > @@ -36,6 +36,12 @@ MAN8= cfagent.8 cfengine.8 cfenvd.8 cfenvgraph.8 > cfetoolcheck.8 \ > cfrun.8 cfservd.8 cfshow.8 > > post-patch: > + @${SED} \ > + -e's|@@BDB_INCLUDE_DIR@@|${BDB_INCLUDE_DIR}|g' \ > + -e's|@@BDB_LIB_DIR@@|${BDB_LIB_DIR}|g' \ > + -e's|@@BDB_LIB_NAME@@|${BDB_LIB_NAME}|g' \ > + ${FILESDIR}/configure-patch.in | \ > + ${PATCH} -s -p0 -d ${WRKSRC} > @${REINPLACE_CMD} -e s,-pthread,${PTHREAD_CFLAGS},g \ > -e s,-lpthread,${PTHREAD_LIBS},g \ > -e s,lpthread,${PTHREAD_LIBS},g \ > diff --git a/sysutils/cfengine/distinfo b/sysutils/cfengine/distinfo > index 57b2a51..f9dd09c 100644 > --- a/sysutils/cfengine/distinfo > +++ b/sysutils/cfengine/distinfo > @@ -1,3 +1,3 @@ > -MD5 (cfengine-2.2.8.tar.gz) = 8881c3c350f36b35845cdb1e6e53b8a1 > -SHA256 (cfengine-2.2.8.tar.gz) = > 6423ad330057b28524bf4a91b064d459af2be01d5cddb5064c15d8cb1130e7b8 > -SIZE (cfengine-2.2.8.tar.gz) = 2715678 > +MD5 (cfengine-2.2.9.tar.gz) = ce115587078a7a8345dca52891f95513 > +SHA256 (cfengine-2.2.9.tar.gz) = > 98489dd49a15c4e6f2065435d415a4a5d0b79d67b10478eeb0a0de579a6bade2 > +SIZE (cfengine-2.2.9.tar.gz) = 2933246 > diff --git a/sysutils/cfengine/files/configure-patch.in b/sysutils/ > cfengine/files/configure-patch.in > new file mode 100644 > index 0000000..15f2082 > --- /dev/null > +++ b/sysutils/cfengine/files/configure-patch.in > @@ -0,0 +1,126 @@ > +--- configure.orig 2009-01-27 11:01:36.000000000 +0300 > ++++ configure 2009-01-27 11:15:37.000000000 +0300 > +@@ -24100,111 +24100,20 @@ > + > + if test "x$BERKELEY_DB_DIR" = "xdefault" ; then > + > +- for d in $prefix /opt /usr/local /usr; do > +- for v in db-4 db4 db3 db db40; do > +- > +- if test -f "$d/include/$v/db.h" ; then > +- echo "Found header in $d/include/$v " > +- test "x$d" != "x/usr" && BERKELEY_DB_LDFLAGS="- > L$d/lib" > +- BERKELEY_DB_CFLAGS="-I$d/include/$v" > ++ # Dummy loops: we do know where BDB is. > ++ for d in dummy_dir; do > ++ for v in dummy_ver; do > ++ > ++ if test -f "@@BDB_INCLUDE_DIR@@/db.h" ; then > ++ echo "Found header in @@BDB_INCLUDE_DIR@@ " > ++ BERKELEY_DB_LDFLAGS="-L@@BDB_LIB_DIR@@" > ++ BERKELEY_DB_CFLAGS="-I@@BDB_INCLUDE_DIR@@" > + late_LIBS=$LIBS > +- # In RedHat 8, for instance, we have /usr/include/db4 > +- # and libdb-4.0.a. Debian has /usr/lib/libdb-4.1.a, for > +- # instance. Look for the appropriate library. > +- if test $v = db4 -o $v = db40; then > +- save_CFLAGS="$CFLAGS" > +- save_LDFLAGS="$LDFLAGS" > +- CFLAGS="$CFLAGS $BERKELEY_DB_CFLAGS" > +- LDFLAGS="$LDFLAGS $BERKELEY_DB_LDFLAGS" > +- { echo "$as_me:$LINENO: checking for library containing > db_create" >&5 > +-echo $ECHO_N "checking for library containing db_create... > $ECHO_C" >&6; } > +-if test "${ac_cv_search_db_create+set}" = set; then > +- echo $ECHO_N "(cached) $ECHO_C" >&6 > +-else > +- ac_func_search_save_LIBS=$LIBS > +-cat >conftest.$ac_ext <<_ACEOF > +-/* confdefs.h. */ > +-_ACEOF > +-cat confdefs.h >>conftest.$ac_ext > +-cat >>conftest.$ac_ext <<_ACEOF > +-/* end confdefs.h. */ > +- > +-/* Override any GCC internal prototype to avoid an error. > +- Use char because int might match the return type of a GCC > +- builtin and then its argument prototype would still apply. */ > +-#ifdef __cplusplus > +-extern "C" > +-#endif > +-char db_create (); > +-int > +-main () > +-{ > +-return db_create (); > +- ; > +- return 0; > +-} > +-_ACEOF > +-for ac_lib in '' db-4 db4 db-4.7 db-4.6 db-4.5 db-4.4 db-4.3 > db-4.2 db-4.1 db-4.0; do > +- if test -z "$ac_lib"; then > +- ac_res="none required" > +- else > +- ac_res=-l$ac_lib > +- LIBS="-l$ac_lib $ac_func_search_save_LIBS" > +- fi > +- rm -f conftest.$ac_objext conftest$ac_exeext > +-if { (ac_try="$ac_link" > +-case "(($ac_try" in > +- *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; > +- *) ac_try_echo=$ac_try;; > +-esac > +-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 > +- (eval "$ac_link") 2>conftest.er1 > +- ac_status=$? > +- grep -v '^ *+' conftest.er1 >conftest.err > +- rm -f conftest.er1 > +- cat conftest.err >&5 > +- echo "$as_me:$LINENO: \$? = $ac_status" >&5 > +- (exit $ac_status); } && { > +- test -z "$ac_c_werror_flag" || > +- test ! -s conftest.err > +- } && test -s conftest$ac_exeext && > +- $as_test_x conftest$ac_exeext; then > +- ac_cv_search_db_create=$ac_res > +-else > +- echo "$as_me: failed program was:" >&5 > +-sed 's/^/| /' conftest.$ac_ext >&5 > +- > +- > +-fi > +- > +-rm -f core conftest.err conftest.$ac_objext > conftest_ipa8_conftest.oo \ > +- conftest$ac_exeext > +- if test "${ac_cv_search_db_create+set}" = set; then > +- break > +-fi > +-done > +-if test "${ac_cv_search_db_create+set}" = set; then > +- : > +-else > +- ac_cv_search_db_create=no > +-fi > +-rm conftest.$ac_ext > +-LIBS=$ac_func_search_save_LIBS > +-fi > +-{ echo "$as_me:$LINENO: result: $ac_cv_search_db_create" >&5 > +-echo "${ECHO_T}$ac_cv_search_db_create" >&6; } > +-ac_res=$ac_cv_search_db_create > +-if test "$ac_res" != no; then > +- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" > +- BERKELEY_DB_LIB=$ac_cv_search_db_create > +-fi > +- > +- CFLAGS="$save_CFLAGS" > +- LDFLAGS="$save_LDFLAGS" > +- else > +- BERKELEY_DB_LIB="-l$v" > +- fi > ++ # Check for db4, libdb-4.0.a and libdb-4.1.a was > ++ # eliminated: not needed for FreeBSD port. > ++ BERKELEY_DB_LIB="-l@@BDB_LIB_NAME@@" > + LIBS=$late_LIBS > ++ d=@@BDB_INCLUDE_DIR@@ > + { echo "$as_me:$LINENO: result: $d" >&5 > + echo "${ECHO_T}$d" >&6; } > + break > diff --git a/sysutils/cfengine/files/patch-doc_Makefile.in b/ > sysutils/cfengine/files/patch-doc_Makefile.in > index d5a6b15..b4047ed 100644 > --- a/sysutils/cfengine/files/patch-doc_Makefile.in > +++ b/sysutils/cfengine/files/patch-doc_Makefile.in > @@ -1,15 +1,15 @@ > ---- doc/Makefile.in.orig 2008-08-04 21:55:47.000000000 +0400 > -+++ doc/Makefile.in 2008-08-08 02:18:39.000000000 +0400 > -@@ -214,7 +214,7 @@ > +--- doc/Makefile.in.orig 2008-12-24 17:42:47.000000000 +0300 > ++++ doc/Makefile.in 2009-01-27 10:53:50.000000000 +0300 > +@@ -220,7 +220,7 @@ > man_MANS = cfengine.8 cfagent.8 cfenvd.8 cfenvgraph.8 cfexecd.8 > cfkey.8 cfrun.8 cfservd.8 cfshow.8 cfetoolcheck.8 cfetooldump. > 8 cfetoolimport.8 cfetoolupdate.8 cfetoolcreate.8 cfetoolgraph. > 8 cfetoolinfo.8 > > # Info used in building the Info files > --info_TEXINFOS = cfengine-Reference.texinfo cfengine- > Tutorial.texinfo # cfengine-Anomalies.texinfo > +-info_TEXINFOS = cfengine-Reference.texinfo cfengine- > Tutorial.texinfo cfengine-Anomalies.texinfo > +info_TEXINFOS = > infofiles = $(info_TEXINFOS:.texinfo=.info) > - MAKEINFOHTML = $(MAKEINFO) --html --css-include=cfcomdoc.css --no- > split > + MAKEINFOHTML = $(MAKEINFO) --html --no-split --css- > include=cfcomdoc.css > > -@@ -476,6 +476,7 @@ > +@@ -543,6 +543,7 @@ > done > > dist-info: $(INFO_DEPS) > @@ -17,7 +17,7 @@ > @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ > list='$(INFO_DEPS)'; \ > for base in $$list; do \ > -@@ -492,6 +493,7 @@ > +@@ -559,6 +560,7 @@ > else :; fi; \ > done; \ > done > @@ -25,7 +25,7 @@ > > mostlyclean-aminfo: > -rm -rf cfengine-Reference.aux cfengine-Reference.cp cfengine- > Reference.cps \ > -@@ -570,6 +572,7 @@ > +@@ -648,6 +650,7 @@ > done > install-docDATA: $(doc_DATA) > @$(NORMAL_INSTALL) > @@ -33,7 +33,7 @@ > test -z "$(docdir)" || $(MKDIR_P) "$(DESTDIR)$(docdir)" > @list='$(doc_DATA)'; for p in $$list; do \ > if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ > -@@ -577,6 +580,7 @@ > +@@ -655,6 +658,7 @@ > echo " $(docDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(docdir)/$$f'"; \ > $(docDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(docdir)/$$f"; \ > done > @@ -41,7 +41,7 @@ > > uninstall-docDATA: > @$(NORMAL_UNINSTALL) > -@@ -587,6 +591,7 @@ > +@@ -665,6 +669,7 @@ > done > install-htmlDATA: $(html_DATA) > @$(NORMAL_INSTALL) > @@ -49,7 +49,7 @@ > test -z "$(htmldir)" || $(MKDIR_P) "$(DESTDIR)$(htmldir)" > @list='$(html_DATA)'; for p in $$list; do \ > if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ > -@@ -594,6 +599,7 @@ > +@@ -672,6 +677,7 @@ > echo " $(htmlDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(htmldir)/$$f'"; \ > $(htmlDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(htmldir)/$$f"; \ > done > @@ -57,7 +57,7 @@ > > uninstall-htmlDATA: > @$(NORMAL_UNINSTALL) > -@@ -730,6 +736,7 @@ > +@@ -808,6 +814,7 @@ > install-info: install-info-am > > install-info-am: $(INFO_DEPS) > @@ -65,7 +65,7 @@ > @$(NORMAL_INSTALL) > test -z "$(infodir)" || $(MKDIR_P) "$(DESTDIR)$(infodir)" > @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ > -@@ -759,6 +766,7 @@ > +@@ -837,6 +844,7 @@ > install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$ > (infodir)/$$relfile" || :;\ > done; \ > else : ; fi > -- > 1.6.1 > --- sysutils-cfengine-update-to-2.2.9.patch ends here --- >> Release-Note: >> Audit-Trail: >> Unformatted: -- Jo Rhett Net Consonance : consonant endings by net philanthropy, open source and other randomness
Jo, good day. Tue, Jan 27, 2009 at 10:27:24AM -0800, Jo Rhett wrote: > Eygene, can you tell me why the patching of configure is necessary? > Upgrading to 2.2.9 is fine, but as it works today it properly uses the > version you specify WITH_BDB_VER. For some weird reason, this didn't worked for me yesterday. But now I removed configure patch and it works fine. Strange: I think that the configure patch should be removed and if I'll happen to run into the issue again, I'll try to figure our what was wrong. > In addition, you are making > changes to the delivered files like removing the texinfo files. I had just ported patch for doc/Makefile.in to the 2.2.9. As I understand, texinfo files are delivered via the port knob 'INFO', so there is no reasons to do it via Makefile -- port infrastructure does it in the proper way for ports packaging. > I'll submit a minimal patch tomorrow. The minimal one should just drop the stuff for configure-patch.in, as I understand it. -- Eygene _ ___ _.--. # \`.|\..----...-'` `-._.-'_.-'` # Remember that it is hard / ' ` , __.--' # to read the on-line manual )/' _/ \ `-_, / # while single-stepping the kernel. `-'" `"\_ ,_.-;_.-\_ ', fsc/as # _.-'_./ {_.' ; / # -- FreeBSD Developers handbook {_.-``-' {_/ #
On Jan 27, 2009, at 10:24 PM, Eygene Ryabinkin wrote: > I had just ported patch for doc/Makefile.in to the 2.2.9. As I > understand, texinfo files are delivered via the port knob 'INFO', so > there is no reasons to do it via Makefile -- port infrastructure > does it > in the proper way for ports packaging. I don't believe they are installed magically. Can you test to confirm you have the info files? Thanks. -- Jo Rhett Net Consonance : consonant endings by net philanthropy, open source and other randomness
Tue, Jan 27, 2009 at 10:39:28PM -0800, Jo Rhett wrote: > On Jan 27, 2009, at 10:24 PM, Eygene Ryabinkin wrote: > > I had just ported patch for doc/Makefile.in to the 2.2.9. As I > > understand, texinfo files are delivered via the port knob 'INFO', so > > there is no reasons to do it via Makefile -- port infrastructure > > does it > > in the proper way for ports packaging. > > I don't believe they are installed magically. But they are: http://www.freebsd.org/doc/en/books/porters-handbook/makefile-info.html Look at /usr/ports/Mk/bsd.port.mk, search for '^add-plist-info': ----- # Process GNU INFO files at package install/deinstall time .if defined(INFO) .for i in ${INFO} install-info --quiet ${PREFIX}/${INFO_PATH}/$i.info ${PREFIX}/${INFO_PATH}/dir @${ECHO_CMD} "@unexec install-info --quiet --delete %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \ >> ${TMPPLIST} @${LS} ${PREFIX}/${INFO_PATH}/$i.info* | ${SED} -e s:${PREFIX}/::g >> ${TMPPLIST} @${ECHO_CMD} "@exec install-info --quiet %D/${INFO_PATH}/$i.info %D/${INFO_PATH}/dir" \ >> ${TMPPLIST} .endfor ----- > Can you test to confirm you have the info files? Yes: ----- $ pwd /var/db/pkg/cfengine-2.2.9 $ grep '\.info' -- +CONTENTS @unexec install-info --quiet --delete %D/info/cfengine-Tutorial.info %D/info/dir info/cfengine-Tutorial.info @exec install-info --quiet %D/info/cfengine-Tutorial.info %D/info/dir @unexec install-info --quiet --delete %D/info/cfengine-Reference.info %D/info/dir info/cfengine-Reference.info info/cfengine-Reference.info-1 info/cfengine-Reference.info-2 @exec install-info --quiet %D/info/cfengine-Reference.info %D/info/dir @unexec install-info --quiet --delete %D/info/cfengine-Anomalies.info %D/info/dir info/cfengine-Anomalies.info @exec install-info --quiet %D/info/cfengine-Anomalies.info %D/info/dir $ ls /usr/local/info/cfen* /usr/local/info/cfengine-Anomalies.info /usr/local/info/cfengine-Reference.info /usr/local/info/cfengine-Reference.info-1 /usr/local/info/cfengine-Reference.info-2 /usr/local/info/cfengine-Tutorial.info ----- 'port test' works fine too: finds no missing files. -- Eygene _ ___ _.--. # \`.|\..----...-'` `-._.-'_.-'` # Remember that it is hard / ' ` , __.--' # to read the on-line manual )/' _/ \ `-_, / # while single-stepping the kernel. `-'" `"\_ ,_.-;_.-\_ ', fsc/as # _.-'_./ {_.' ; / # -- FreeBSD Developers handbook {_.-``-' {_/ #
Here is a revised patch which is tested and working here locally for several days.
Responsible Changed From-To: miwi->bsam Take over, miwi has ENOTIME ATM.
bsam 2009-02-05 18:17:22 UTC FreeBSD ports repository Modified files: sysutils/cfengine Makefile distinfo sysutils/cfengine/files patch-doc_Makefile.in Log: Update to 2.2.9. PR: ports/131040 Submitted by: Eygene Ryabinkin <rea-fbsd at codelabs.ru> Patch by: Jo Rhett <jrhett at netconsonance.com> (maintainer) Revision Changes Path 1.46 +2 -2 ports/sysutils/cfengine/Makefile 1.17 +3 -3 ports/sysutils/cfengine/distinfo 1.6 +13 -13 ports/sysutils/cfengine/files/patch-doc_Makefile.in _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
State Changed From-To: feedback->closed Committed, thanks!