Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Nov 2005 17:30:22 GMT
From:      Scot Hetzel <swhetzel@gmail.com>
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   Re: ports/89023: USE_BDB doesn't set name of Berkely dB, or location of the include directory
Message-ID:  <200511141730.jAEHUMJx044290@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/89023; it has been noted by GNATS.

From: Scot Hetzel <swhetzel@gmail.com>
To: FreeBSD-gnats-submit@freebsd.org, freebsd-ports-bugs@freebsd.org
Cc: vsevolod@FreeBSD.org, ume@FreeBSD.org, kde@FreeBSD.org
Subject: Re: ports/89023: USE_BDB doesn't set name of Berkely dB, or location of the include directory
Date: Mon, 14 Nov 2005 11:27:48 -0600

 ------=_Part_13442_26910303.1131989268005
 Content-Type: text/plain; charset=ISO-8859-1
 Content-Transfer-Encoding: quoted-printable
 Content-Disposition: inline
 
 Attached is the patch to bsd.database.mk for USE_BDB to provide the
 BDB_LIB_NAME and BDB_INCLUDE_DIR variables.  As well as dealing with
 the WITH_BDB_VER variable.
 
 Also, attached are patches to two ports that make use of the changes
 provided in the bsd.database.mk patch.
 
 I've CC the maintaines of these ports so that they can see how this
 change affects their ports.
 --
 DISCLAIMER:
 No electrons were mamed while sending this message. Only slightly bruised.
 
 ------=_Part_13442_26910303.1131989268005
 Content-Type: text/plain; name=database-patch; charset=us-ascii
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment; filename="database-patch"
 
 Index: Mk/bsd.database.mk
 ===================================================================
 RCS file: /home/ncvs/ports/Mk/bsd.database.mk,v
 retrieving revision 1.2
 diff -u -r1.2 bsd.database.mk
 --- Mk/bsd.database.mk	11 Nov 2005 10:29:21 -0000	1.2
 +++ Mk/bsd.database.mk	13 Nov 2005 12:00:59 -0000
 @@ -52,6 +52,15 @@
  #                 by the user via defined variable), try to find the
  #                 currently installed version.  Fall back to default if
  #                 necessary (db41+).
 +# BROKEN_WITH_BDB	- This variable can be defined when the port doesn't support
 +#			  one or more versions of Berkley DB.
 +# WITH_BDB_VER		- User defined variable to set Berkely DB version.
 +# BDB_LIB_NAME		- This variable is automatically set to the name of the
 +#			  Berkley DB library (default: db41)
 +# BDB_INCLUDE_DIR	- This variable is automatically set to the location of
 +#			  the Berkley DB include directory.
 +#			  (default: ${LOCALBASE}/include/db41)
 +#
  ##
  # USE_SQLITE	- Add dependency on sqlite library. Valid values are:
  #				  3 and 2. If version is not specified directly then
 @@ -170,6 +179,13 @@
  _DB_41P=	41 42 43
  _DB_42P=	42 43
  
 +.if defined(WITH_BDB_VER)
 +. if ${WITH_BDB_VER} == 4
 +USE_BDB=	40
 +. elif ${WITH_BDB_VER} != "yes" && ${WITH_BDB_VER} != 1
 +USE_BDB=	${WITH_BDB_VER}
 +. endif
 +.endif
  _WANT_BDB_VER=	${USE_BDB}
  
  # Assume the default bdb version as 41
 @@ -179,26 +195,24 @@
  
  # Detect bdb version
  _FOUND=	no
 +_BDB_BROKEN= no
  
  .for bdb in ${_DB_PORTS}
  .if ${_WANT_BDB_VER} == "${bdb}" && ${_FOUND} == "no"
  _MATCHED_DB_VER:=	${bdb:S/+//}
  . if ${_MATCHED_DB_VER} == "${bdb}"
  # USE_BDB is exactly specified
 -LIB_DEPENDS+=	${db${bdb}_DEPENDS}
 -_FOUND=	yes
 +_FOUND=	${bdb}
  .else
  # USE_BDB is specified as VER+
  .  for db4 in ${_DB_${_MATCHED_DB_VER}P}
  .   if exists(${db${db4}_FIND}) && ${_FOUND} == "no"
 -LIB_DEPENDS+=   ${db${db4}_DEPENDS}
 -_FOUND=	yes
 +_FOUND=	${db4}
  .   endif
  .  endfor
  .  if ${_FOUND} == "no"
  # No existing db4 version is detected in system
 -LIB_DEPENDS+=	${db${_MATCHED_DB_VER}_DEPENDS}
 -_FOUND=	yes
 +_FOUND=	${_MATCHED_DB_VER}
  .  endif
  . endif
  .endif
 @@ -207,6 +221,31 @@
  # USE_BDB is specified incorrectly, so mark this as IGNORE
  .if ${_FOUND} == "no"
  IGNORE=	"Unknown bdb version: ${USE_BDB}"
 +.else
 +# Now check if we can use it
 +. if defined(BROKEN_WITH_BDB)
 +.  for VER in ${BROKEN_WITH_BDB}
 +.   if ${_FOUND} == "${VER}"
 +_BDB_BROKEN=	yes
 +.   endif
 +.  endfor
 +. endif
 +. if ${_BDB_BROKEN} == "yes"
 +IGNORE= "Does not work with Berkley DB ${_FOUND} \(${BROKEN_WITH_BDB} not supported\)"
 +. else
 +# Now add the dependancy on Berkley DB ${_FOUND) version
 +LIB_DEPENDS+=	${db${_FOUND}_DEPENDS}
 +.  if ${_FOUND} == 40
 +BDB_LIB_NAME=	db4
 +BDB_INCLUDE_DIR=	${LOCALBASE}/include/db4
 +.  elif ${_FOUND} == 42
 +BDB_LIB_NAME=	db-4.2
 +.  elif ${_FOUND} == 43
 +BDB_LIB_NAME=	db-4.3
 +.  endif
 +BDB_LIB_NAME?=	db${_FOUND}
 +BDB_INCLUDE_DIR?=	${LOCALBASE}/include/db${_FOUND}
 +. endif
  .endif
  
  .endif # USE_BDB
 
 
 
 
 
 ------=_Part_13442_26910303.1131989268005
 Content-Type: text/plain; name=sasl2-patch; charset=us-ascii
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment; filename="sasl2-patch"
 
 Index: Makefile
 ===================================================================
 RCS file: /home/ncvs/ports/security/cyrus-sasl2/Makefile,v
 retrieving revision 1.120
 diff -u -r1.120 Makefile
 --- Makefile	8 Nov 2005 16:51:08 -0000	1.120
 +++ Makefile	13 Nov 2005 12:06:55 -0000
 @@ -54,20 +54,11 @@
  		--with-saslauthd=${SASLAUTHD_RUNPATH}
  
  .if defined(WITH_BDB_VER)
 -.if ${WITH_BDB_VER} == 4
 -USE_BDB=	40
 -.elif ${WITH_BDB_VER} == 42
 -BDB_SUFFIX=	-4.2
 -.elif ${WITH_BDB_VER} == 43
 -BDB_SUFFIX=	-4.3
 -.elif ${WITH_BDB_VER} != 3 && ${WITH_BDB_VER} != 41
 -BROKEN=		"WITH_BDB_VER must be 3, 4, 41, 42 or 43"
 -.endif
 -USE_BDB?=	${WITH_BDB_VER}
 -BDB_SUFFIX?=	${WITH_BDB_VER}
 +USE_BDB=	40+
 +BROKEN_WITH_BDB=	2
  CONFIGURE_ARGS+=--with-dblib=berkeley --with-bdb-libdir=${LOCALBASE}/lib \
 -		--with-bdb-incdir=${LOCALBASE}/include/db${WITH_BDB_VER} \
 -		--with-bdb=db${BDB_SUFFIX}
 +		--with-bdb-incdir=${BDB_INCLUDE_DIR} \
 +		--with-bdb=${BDB_LIB_NAME}
  SASLDB_NAME=	sasldb2
  .else
  CONFIGURE_ARGS+=--with-dblib=ndbm
 
 
 
 
 
 ------=_Part_13442_26910303.1131989268005
 Content-Type: text/plain; name=kdesdk3-patch; charset=us-ascii
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment; filename="kdesdk3-patch"
 
 Index: Makefile
 ===================================================================
 RCS file: /home/ncvs/ports/devel/kdesdk3/Makefile,v
 retrieving revision 1.50
 diff -u -r1.50 Makefile
 --- Makefile	5 Nov 2005 11:19:28 -0000	1.50
 +++ Makefile	14 Nov 2005 04:51:08 -0000
 @@ -16,8 +16,7 @@
  COMMENT=	KDE Software Development Kit
  
  RUN_DEPENDS=	bash:${PORTSDIR}/shells/bash
 -LIB_DEPENDS=	db4:${PORTSDIR}/databases/db4 \
 -		svn_client-1.0:${PORTSDIR}/devel/subversion
 +LIB_DEPENDS=	svn_client-1.0:${PORTSDIR}/devel/subversion
  
  CONFLICTS=	umbrello-[0-9]* kcachegrind-[0-9]*
  
 @@ -33,8 +32,12 @@
  INSTALLS_SHLIB=	yes
  LDCONFIG_DIRS=	%%PREFIX%%/lib %%PREFIX%%/lib/kde3
  
 -CONFIGURE_ARGS+=--with-db-include-dir=/usr/local/include/db4 \
 -		--with-db-lib-dir=/usr/local/lib --with-db-name=db4 \
 +USE_BDB=	40+
 +BROKEN_WITH_BDB=	2 3
 +
 +CONFIGURE_ARGS+=--with-db-include-dir=${BDB_INCLUDE_DIR} \
 +		--with-db-lib-dir=${LOCALBASE}/lib \
 +		--with-db-name=${BDB_LIB_NAME} \
  		--with-apr-config=${LOCALBASE}/bin/apr-1-config \
  		--with-apu-config=${LOCALBASE}/bin/apu-1-config
  
 
 
 
 
 
 ------=_Part_13442_26910303.1131989268005--



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