ports/92928: devel/ldconfig_compat broken under 4.8
Charles Sprickman
spork at bway.net
Tue Feb 7 00:20:08 UTC 2006
>Number: 92928
>Category: ports
>Synopsis: devel/ldconfig_compat broken under 4.8
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Tue Feb 07 00:20:04 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator: Charles Sprickman
>Release: 4.8
>Organization:
Spork, LLC
>Environment:
FreeBSD xena.net 4.8-RELEASE-p24 FreeBSD 4.8-RELEASE-p24 #0: Sun Sep 19 08:44:43 GMT 2004 root@:/usr/obj/usr/src/sys/XENA i386
>Description:
ldconfig_compat is used by various ports, including mysql40-client. Something in bsd.ldconfig.mk included with that fork is not compatible with the version of "make" in use in 4.8.
The tests around line 7 in that file are for 6.x and 7.x, and removing them does allow the port to build.
I only found one other reference to this here:
http://groups.google.com/group/list.freebsd.questions/browse_thread/thread/39606281a5ddd41/1c44a22413657210
>How-To-Repeat:
build mysql40-client:
root at xena[/usr/ports/databases/mysql40-client]# make
"/usr/ports/misc/ldconfig_compat/bsd.ldconfig.mk", line 7: warning: String comparison operator should be either == or !=
"/usr/ports/misc/ldconfig_compat/bsd.ldconfig.mk", line 7: Malformed conditional (${OSVERSION} < 504105 || (${OSVERSION} >= 700000 && ${OSVERSION} < 700012) || (${OSVERSION} >= 600000 && ${OSVERSION} < 600104))
"/usr/ports/misc/ldconfig_compat/bsd.ldconfig.mk", line 7: Missing dependency operator
"/usr/ports/databases/mysql40-client/../mysql40-server/Makefile", line 196: if-less endif
"/usr/ports/databases/mysql40-client/../mysql40-server/Makefile", line 196: Need an operator
make: fatal errors encountered -- cannot continue
>Fix:
Don't know enough about make to fix it, but the problem is in this conditional section of /usr/ports/devel/ldconfig_compat/bsd.ldconfig.mk:
.if defined(USE_LDCONFIG) || defined(USE_LDCONFIG32)
.if ${OSVERSION} < 504105 || \
(${OSVERSION} >= 700000 && ${OSVERSION} < 700012) || \
(${OSVERSION} >= 600000 && ${OSVERSION} < 600104)
RUN_DEPENDS+= ${LOCALBASE}/${LDCONFIG_DIR}:${PORTSDIR}/misc/ldconfig_compat
.endif
.endif
If I take out that nested if statement and just set the RUN_DEPENDS, I have no problems.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list