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