ports/115471: [ patch ] databases/ruby-bdb fails to build, when BDB version less than 4.4.16
Esa Karkkainen
ejk at iki.fi
Mon Aug 13 16:40:02 UTC 2007
>Number: 115471
>Category: ports
>Synopsis: [ patch ] databases/ruby-bdb fails to build, when BDB version less than 4.4.16
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Mon Aug 13 16:40:00 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Esa Karkkainen
>Release: FreeBSD 6.2-RELEASE-p7 i386
>Organization:
Is in state of disintegration
>Environment:
System: FreeBSD 6.2-RELEASE-p7 Thu Aug 2 17:50:20 EEST 2007
Ports tree cvsupped at Aug 13 18:33:03 EEST 2007
>Description:
# portupgrade ruby18-bdb-0.6.0
---> Upgrading 'ruby18-bdb-0.6.0' to 'ruby18-bdb-0.6.1' (databases/ruby-bdb)
---> Building '/usr/ports/databases/ruby-bdb'
===> Cleaning for ruby18-bdb-0.6.1
===> Extracting for ruby18-bdb-0.6.1
=> MD5 Checksum OK for ruby/bdb-0.6.1.tar.gz.
=> SHA256 Checksum OK for ruby/bdb-0.6.1.tar.gz.
===> ruby18-bdb-0.6.1 depends on file: /usr/local/bin/ruby18 - found
===> Patching for ruby18-bdb-0.6.1
===> ruby18-bdb-0.6.1 depends on file: /usr/local/bin/ruby18 - found
===> ruby18-bdb-0.6.1 depends on file: /usr/local/bin/ruby18 - found
===> ruby18-bdb-0.6.1 depends on shared library: db-4.2.2 - found
===> Configuring for ruby18-bdb-0.6.1
===> Running extconf.rb to configure
extconf.rb: Entering directory `src'
checking for db_version() in -ldb-4.2... no
checking for db_version_4002() in -ldb-4.2... yes
checking for rb_frame_this_func()... no
checking for rb_block_proc()... yes
checking for rb_io_stdio_file()... no
checking for rb_block_call()... no
checking for Array#insert... yes
checking for Array#values_at... yes
creating Makefile
extconf.rb: Leaving directory `src'
===> Building for ruby18-bdb-0.6.1
cc -I. -I. -I/usr/local/lib/ruby/1.8/i386-freebsd6 -I. -DHAVE_RB_BLOCK_PROC -I/usr/local/include/db42 -I/usr/local/include -fPIC -O2 -fno-strict-aliasing -pipe -fPIC -DHAVE_RB_ARY_INSERT -DHAVE_RB_ARY_VALUES_AT -c bdb.c
bdb.c: In function `Init_bdb':
bdb.c:515: error: `DB_REP_IGNORE' undeclared (first use in this function)
bdb.c:515: error: (Each undeclared identifier is reported only once
bdb.c:515: error: for each function it appears in.)
bdb.c:516: error: `DB_REP_JOIN_FAILURE' undeclared (first use in this function)
*** Error code 1
Stop in /usr/ports/databases/ruby-bdb/work/bdb-0.6.1/src.
*** Error code 1
Stop in /usr/ports/databases/ruby-bdb/work/bdb-0.6.1.
*** Error code 1
Stop in /usr/ports/databases/ruby-bdb.
** Command failed [exit code 1]: /usr/bin/script -qa /var/tmp/portupgrade.25339.0 env UPGRADE_TOOL=portupgrade UPGRADE_PORT=ruby18-bdb-0.6.0 UPGRADE_PORT_VER=0.6.0 make FETCH_BEFORE_ARGS=-q
** Fix the problem and try again.
** Listing the failed packages (*:skipped / !:failed)
! databases/ruby-bdb (ruby18-bdb-0.6.0) (compiler error)
---> Packages processed: 0 done, 0 ignored, 0 skipped and 1 failed
# cd /usr/ports/databases/db46
# make extract
# egrep -l 'DB_REP_IGNORE|DB_REP_JOIN_FAILURE' \
work/db-4.6.18/docs/ref/changelog/*.html
work/db-4.6.18/docs/ref/changelog/4.4.16.html
#
>How-To-Repeat:
Make sure that only DBD version you have installed is earlier than 4.4.16.
For example, build databases/p5-BerkeleyDB port using WITH_BDB_VER=42 argument.
>Fix:
This patch may work or it may not. I have not tested this patch in
any shape or form.
diff -ruN /usr/ports/databases/ruby-bdb/Makefile ports/databases/ruby-bdb/Makefile
--- /usr/ports/databases/ruby-bdb/Makefile Fri Aug 10 16:49:14 2007
+++ ports/databases/ruby-bdb/Makefile Mon Aug 13 19:10:12 2007
@@ -20,6 +20,8 @@
CONFLICTS= ${PKGNAMEPREFIX}${PORTNAME}[2-4]*
+INVALID_BDB_VER= 2 3 40 41 42 43
+
USE_RUBY= yes
USE_RUBY_EXTCONF= yes
USE_RUBY_RDOC= yes
or, for example
# portupgrade -o databases/db46 db42-4.2.52_5
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list