Subject: pkg/35218: bad make syntax in mk/apache.mk
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <dholland@eecs.harvard.edu>
List: pkgsrc-bugs
Date: 12/09/2006 07:15:00
>Number:         35218
>Category:       pkg
>Synopsis:       bad make syntax in mk/apache.mk
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Dec 09 07:15:00 +0000 2006
>Originator:     David A. Holland <dholland@eecs.harvard.edu>
>Release:        NetBSD 4.99.3 (pkgsrc of 20061208)
>Organization:
   Harvard EECS
>Environment:
System: NetBSD tanaqui 4.99.3 NetBSD 4.99.3 (TANAQUI) #6: Tue Oct 10 19:32:37 EDT 2006 dholland@tanaqui:/usr/src/sys/arch/i386/compile/TANAQUI i386
Architecture: i386
Machine: i386
>Description:

mk/apache.mk contains a conditional with C syntax, which make appears
to interpret as always true, and so the wrong thing happens.

>How-To-Repeat:

Try building ap-php for apache-1.3 and watch it go and try to install
the apr package for apache 2.2.

I'm not sure if this ends up being harmful or not, because it was
happening on a production machine.

>Fix:

Index: mk/apache.mk
===================================================================
RCS file: /cvsroot/pkgsrc/mk/apache.mk,v
retrieving revision 1.17
diff -u -r1.17 apache.mk
--- mk/apache.mk	8 Dec 2006 23:58:46 -0000	1.17
+++ mk/apache.mk	9 Dec 2006 07:05:40 -0000
@@ -125,8 +125,8 @@
 
 .if (${PKG_APACHE} == "apache2") && !empty(USE_APR:M[yY][eE][sS])
 .  include "../../devel/apr/buildlink3.mk"
-.else if (${PKG_APACHE} == "apache22") && !empty(USE_APR:M[Yy][Ee][Ss])
+.elif (${PKG_APACHE} == "apache22") && !empty(USE_APR:M[Yy][Ee][Ss])
 .  include "../../devel/apr1/buildlink3.mk"
 .endif
 
 .endif	# APACHE_MK