Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Jan 2011 20:58:45 +0100
From:      olli hauer <ohauer@gmx.de>
To:        "Philip M. Gollucci" <pgollucci@p6m7g8.com>
Cc:        ohauer@FreeBSD.org, Erwin Lansing <erwin@FreeBSD.org>, apache@FreeBSD.org
Subject:   Re: [ports-amd64@pointyhat-west.isc.freebsd.org: ap13-mod_bandwidth-2.1.0 failed on amd64 7.4-release]
Message-ID:  <4D35F0F5.8020701@gmx.de>
In-Reply-To: <4D34CAE2.3080502@p6m7g8.com>
References:  <20110115150734.GS67325@droso.net> <4D322B65.6060707@p6m7g8.com> <4D34BBD1.7030301@FreeBSD.org> <4D34CAE2.3080502@p6m7g8.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2011-01-18 00:04, Philip M. Gollucci wrote:
> If the only source of the .c is clement and he is not active, then I'd
> say upstream is gone.  I'd be tempted to mark it deprecated/expires.
> 
> However, if this works, I'm fine with it too.
> 
>>  post-install:
>> +       @${ECHO} "@unexec ${SED} -i '' '/AddModule mod_bandwidth.c/d'
>> %D/etc/apache/httpd.conf" >> ${TMPPLIST}
>>         @${INSTALL_SCRIPT} ${WRKSRC}/cleanlink.pl ${LOCALBASE}/sbin
> Why did the pkg-plist change ?  There's better ways to do this anyway,
> see the other mod_ ports in www/.
> 

Hm, lets take a look what happened with apache13 httpd.conf if we install
a module (for apache20/22 you have already fixed a similar issue PR 133704)

Maybe I'm wrong since I haven't used apache13 for the last five years ...


We do a fresh apache13 install

# diff -u1s /usr/local/etc/apache/httpd.conf /usr/local/etc/apache/httpd.conf-dist
Files /usr/local/etc/apache/httpd.conf and /usr/local/etc/apache/httpd.conf-dist
are identical


Now we install for example mod_bandwidth or a random other "mod_*" port.

# diff -u1s /usr/local/etc/apache/httpd.conf /usr/local/etc/apache/httpd.conf-dist
--- /usr/local/etc/apache/httpd.conf
+++ /usr/local/etc/apache/httpd.conf-dist
@@ -237,3 +237,2 @@
 LoadModule setenvif_module    libexec/apache/mod_setenvif.so
-#LoadModule bandwidth_module   libexec/apache/mod_bandwidth.so

@@ -277,3 +276,2 @@
 AddModule mod_setenvif.c
-#AddModule mod_bandwidth.c


OK, the module directives are added to the httpd.conf, now we will deinstall the
module.

# make deinstall
# diff -u1s /usr/local/etc/apache/httpd.conf /usr/local/etc/apache/httpd.conf-dist
--- /usr/local/etc/apache/httpd.conf
+++ /usr/local/etc/apache/httpd.conf-dist
@@ -276,3 +276,2 @@
 AddModule mod_setenvif.c
-#AddModule mod_bandwidth.c


Bingo, we have a leftover in httpd.conf.
The leftover will not be shown in tinderbox since the following line exists in
"tinderbox/scripts/lib/buildscript"

cat > /tmp/mtree.(pre|build)exclude <<EOF
...
./${L}/etc/apache
...
EOF


Now lets take a look into bsd.apache.mk.
If we add the following line, then I suspect we can remove the exclude
directives in tinderbox.
(The issue is present for every port which installs a module to apache13)

# diff -u5 bsd.apache.mk.orig bsd.apache.mk
--- bsd.apache.mk.orig
+++ bsd.apache.mk
@@ -393,10 +393,11 @@
 ap-gen-plist:
 .if defined(AP_GENPLIST)
 .   if !exists(${PLIST})
        @${ECHO} "===>  Generating apache plist"
        @${ECHO} "@unexec ${SED} -i '' '/LoadModule %%AP_NAME%%_module/d'
%D/%%APACHEETCDIR%%/httpd.conf" >> ${PLIST}
+       @${ECHO} "@unexec ${SED} -i '' '/AddModule mod_%%AP_NAME%%.c/d'
%D/%%APACHEETCDIR%%/httpd.conf" >> ${PLIST}
        @${ECHO} "%%APACHEMODDIR%%/%%AP_MODULE%%" >> ${PLIST}
        @${ECHO} "@exec %D/sbin/apxs -e -A -n %%AP_NAME%% %D/%F" >> ${PLIST}
        @${ECHO} "@unexec echo \"Don't forget to remove all
${MODULENAME}-related directives in your httpd.conf\"">> ${PLIST}
 .   endif
 .else


Let's fix it manually.
# sed -i '' '/AddModule mod_bandwidth.c/d' /usr/local/etc/apache/httpd.conf
# diff -u1s /usr/local/etc/apache/httpd.conf /usr/local/etc/apache/httpd.conf-dist
Files /usr/local/etc/apache/httpd.conf and /usr/local/etc/apache/httpd.conf-dist
are identical


Now you know the reason I fixed this with the additional line in TMPPLIST.
I don't know if the build clusters have the same exclude directives like
tinderbox, and I can only
test with clean VM's at the moment since my tinderbox machine is broken.

--
Regards,
olli



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