[ports-amd64@pointyhat-west.isc.freebsd.org:
ap13-mod_bandwidth-2.1.0 failed on amd64 7.4-release]
olli hauer
ohauer at gmx.de
Tue Jan 18 20:25:16 UTC 2011
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
More information about the freebsd-apache
mailing list