From owner-freebsd-apache@FreeBSD.ORG Fri Aug 24 10:29:10 2012 Return-Path: Delivered-To: freebsd-apache@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9A6A41065670 for ; Fri, 24 Aug 2012 10:29:10 +0000 (UTC) (envelope-from freebsd-apache@herveybayaustralia.com.au) Received: from mail.unitedinsong.com.au (mail.unitedinsong.com.au [150.101.178.33]) by mx1.freebsd.org (Postfix) with ESMTP id ED5AD8FC16 for ; Fri, 24 Aug 2012 10:29:09 +0000 (UTC) Received: from laptop3.herveybayaustralia.com.au (unknown [192.168.0.147]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mail.unitedinsong.com.au (Postfix) with ESMTPSA id 008CC5C29; Fri, 24 Aug 2012 20:44:28 +1000 (EST) Message-ID: <5037576E.30400@herveybayaustralia.com.au> Date: Fri, 24 Aug 2012 20:29:02 +1000 From: Da Rock User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:13.0) Gecko/20120728 Thunderbird/13.0.1 MIME-Version: 1.0 To: olli hauer References: <503625D3.8040005@herveybayaustralia.com.au> <50363B55.2070400@gmx.de> <50364CC4.90609@herveybayaustralia.com.au> <50365344.60901@gmx.de> In-Reply-To: <50365344.60901@gmx.de> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-apache@freebsd.org Subject: Re: dav_lock not enabled? X-BeenThere: freebsd-apache@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Support of apache-related ports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Aug 2012 10:29:10 -0000 On 08/24/12 01:59, olli hauer wrote: > On 2012-08-23 17:31, Da Rock wrote: >> On 08/24/12 00:16, olli hauer wrote: >>> On 2012-08-23 14:45, Da Rock wrote: >>>> I'm attempting to get a working webdav system going on my apache- and I'm having some issues with locking. Apparently my only means of doing this is using mod_dav_lock. And before any nay sayers pipe up, neither openoffice or libreoffice will work without it - just for starters. >>>> >>>> So I finally got to this point after some _major_ digging, and I'm wondering if anyone who is up at the moment might know how to get around it: >>>> >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x123): In function `dav_generic_dbm_new_error': >>>> /usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:227: undefined reference to `dav_new_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x1d0): In function `dav_generic_really_open_lockdb': >>>> /usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:330: undefined reference to `dav_push_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x3f9): In function `dav_generic_save_lock_record': >>>> /usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:449: undefined reference to `dav_new_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x68b):/usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:533: undefined reference to `dav_push_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x7f2): In function `dav_generic_load_lock_record': >>>> /usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:666: undefined reference to `dav_new_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0xe2c): In function `dav_generic_resolve': >>>> /usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:723: undefined reference to `dav_new_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x13e0): In function `dav_generic_get_locks': >>>> /usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:800: undefined reference to `dav_new_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x1617): In function `dav_generic_parse_locktoken': >>>> /usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:266: undefined reference to `dav_new_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x1684):/usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:275: undefined reference to `dav_new_error' >>>> modules/dav/lock/.libs/libmod_dav_lock.a(locks.o)(.text+0x157d):/usr/ports/www/apache22/work/httpd-2.2.22/modules/dav/lock/locks.c:365: more undefined references to `dav_new_error' follow >>>> *** Error code 1 >>>> 1 error >>>> *** Error code 1 >>>> 1 error >>>> *** Error code 1 >>>> >>>> Stop in /usr/ports/www/apache22. >>>> *** Error code 1 >>>> >>>> Stop in /usr/ports/www/apache22. >>>> >>>> A look in the files finds what is needed in modules/dav/main/utils.c, but I cannot find how it is linked in - yet. I'm happy to keep trying to crack this, but if anyone can offer a quick answer it'd be much appreciated. >>>> >>>> Cheers >>> Seems this is a module not already available as option ... (thanks for the hint) >>> >>> A quick patch (worked on my machine) >>> >>> Index: Makefile.modules >>> =================================================================== >>> --- Makefile.modules (revision 303000) >>> +++ Makefile.modules (working copy) >>> @@ -112,5 +112,6 @@ >>> .endif >>> >>> CONFIGURE_ARGS+= --with-mpm=${WITH_MPM:L} >>> +CONFIGURE_ARGS+= --enable-dav_lock=shared >>> >>> >>> >>> >>> $> grep dav_lock buildlog >>> Building shared: mod_dav_lock.la >>> /usr/local/share/apr/build-1/libtool --silent --mode=compile cc -g -I/usr/local/include -O2 -pipe -I/usr/include -fno-strict-aliasing -I. -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/os/unix -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/server/mpm/prefork -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/http -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/filters -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/proxy -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/include -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/generators -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/mappers -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/database -I/usr/local/include/apr-1 -I/usr/local/include -I/usr/local/include/db48 -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/proxy/../generators -I/usr/include >>> -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/ssl -I/usr/svn_ports/www/apache22/work/httpd-2.2.22/modules/dav/main -prefer-pic -c mod_dav_lock.c && touch mod_dav_lock.slo >>> /usr/local/share/apr/build-1/libtool --silent --mode=link cc -g -I/usr/local/include -O2 -pipe -I/usr/include -fno-strict-aliasing -rpath=/usr/lib:/usr/local/lib -L/usr/lib -L/usr/local/lib -L/usr/local/lib/db48 -rpath=/usr/lib:/usr/local/lib -L/usr/lib -o mod_dav_lock.la -rpath /usr/local/libexec/apache22 -module -avoid-version mod_dav_lock.lo locks.lo >>> >>> -- >>> Regards, >>> olli >> That went well (I think), but now I can't install it! It comes up with an error code 1 after installing the rc.d scripts. I did try make distclean but NG. >> >> Oh well. I'll get I think... :/ >> >> Thx >> > Try the attached patch, else pkg-plist will be not correct after install. > > patch can be found also here: http://people.freebsd.org/~ohauer/diffs/apache/mod_dav_lock.diff > > Please note, I have set the option per default to on maybe this change before the patch will be applied to www/apache22 > > -- > Regards, > olli Thanks Olli. I was thinking along those lines, but it was late and I was turning into a pumpkin :) Just couldn't quite get my head around all the details... Cheers for the patch - it appears to all work btw.