From owner-freebsd-apache@FreeBSD.ORG Thu Aug 23 15:59:03 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 4C5F2106564A for ; Thu, 23 Aug 2012 15:59:03 +0000 (UTC) (envelope-from ohauer@gmx.de) Received: from mailout-de.gmx.net (mailout-de.gmx.net [213.165.64.22]) by mx1.freebsd.org (Postfix) with SMTP id B90848FC08 for ; Thu, 23 Aug 2012 15:59:02 +0000 (UTC) Received: (qmail invoked by alias); 23 Aug 2012 15:59:01 -0000 Received: from hu5.abaxx.de (EHLO [10.6.25.100]) [213.61.170.110] by mail.gmx.net (mp004) with SMTP; 23 Aug 2012 17:59:01 +0200 X-Authenticated: #1956535 X-Provags-ID: V01U2FsdGVkX19El+8NqLNEa8t7nfb4UaGaxRZPAvi/sfQZerdIPb 9xVfoNpeQxdvlk Message-ID: <50365344.60901@gmx.de> Date: Thu, 23 Aug 2012 17:59:00 +0200 From: olli hauer User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20120713 Thunderbird/14.0 MIME-Version: 1.0 To: freebsd-apache@freebsd.org References: <503625D3.8040005@herveybayaustralia.com.au> <50363B55.2070400@gmx.de> <50364CC4.90609@herveybayaustralia.com.au> In-Reply-To: <50364CC4.90609@herveybayaustralia.com.au> X-Enigmail-Version: 1.4.3 Content-Type: multipart/mixed; boundary="------------010805060602000805040607" X-Y-GMX-Trusted: 0 Cc: 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: Thu, 23 Aug 2012 15:59:03 -0000 This is a multi-part message in MIME format. --------------010805060602000805040607 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit 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 --------------010805060602000805040607 Content-Type: text/plain; charset=windows-1252; name="mod_dav_lock.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="mod_dav_lock.diff" Index: Makefile.options =================================================================== --- Makefile.options (revision 303013) +++ Makefile.options (working copy) @@ -9,7 +9,7 @@ AUTHZ_MODULES= AUTHZ_HOST AUTHZ_GROUPFILE AUTHZ_USER AUTHZ_DBM \ AUTHZ_OWNER AUTHZ_DEFAULT CACHE_MODULES= CACHE DISK_CACHE FILE_CACHE MEM_CACHE -DAV_MODULES= DAV DAV_FS +DAV_MODULES= DAV DAV_FS DAV_LOCK EXPERIMENTAL_MODULES= BUCKETEER CASE_FILTER CASE_FILTER_IN EXT_FILTER \ LOG_FORENSIC OPTIONAL_HOOK_EXPORT OPTIONAL_HOOK_IMPORT \ OPTIONAL_FN_IMPORT OPTIONAL_FN_EXPORT @@ -60,6 +60,7 @@ MEM_CACHE "mod_mem_cache" off \ DAV "mod_dav" on \ DAV_FS "mod_dav_fs" on \ + DAV_LOCK "mod_dav_lock" on \ BUCKETEER "mod_bucketeer" off \ CASE_FILTER "mod_case_filter" off \ CASE_FILTER_IN "mod_case_filter_in" off \ Index: pkg-plist =================================================================== --- pkg-plist (revision 303013) +++ pkg-plist (working copy) @@ -125,6 +125,7 @@ %%MOD_CHARSET_LITE%%libexec/apache22/mod_charset_lite.so %%MOD_DAV%%libexec/apache22/mod_dav.so %%MOD_DAV_FS%%libexec/apache22/mod_dav_fs.so +%%MOD_DAV_LOCK%%libexec/apache22/mod_dav_lock.so %%MOD_DBD%%libexec/apache22/mod_dbd.so %%MOD_DEFLATE%%libexec/apache22/mod_deflate.so %%MOD_DIR%%libexec/apache22/mod_dir.so --------------010805060602000805040607--