Forwarding this to the list, so that more people can see it.
--
Brane Čibej <brane_at_xbc.nu> http://www.xbc.nu/brane/
attached mail follows:
Branko Čibej wrote:
> Barry Pederson wrote:
>
>> I've been working on getting mod_dav_svn working under win32, and have
>> something that at first glance seems to work (can checkout, commit a
>> change, browse using webfolders).
>
>
> Wow, that's wonderful! I expet you had to cast a spell on the build
> scripts, too. Do you have a patch for that?
No, it was just a matter of coming up with the project file, fixing the
little declaration glitch in mod_dav, and rebuilding libsvn_subr.lib
without APR_DECLARE_STATIC defined in the project file (since Apache has
apr as a DLL, not a static library).
I'll attach the project file I came up with, but it's only configured
for a "Release" build, not a "Debug" build. It assumes you've checked
out Apache2 into the same directory as subversion, so you have a tree
that looks something like:
mystuff
httpd-2.0
modules
dav
include
subversion
subversion
mod_dav_svn
And have built both Apache and SVN in "Release" mode.
To run it, I placed the libdb40.dll in the Apache2\bin directory (where
apache.exe and libapr.dll live), the mod_dav_svn.so in Apache2\modules
(along with all the other apache modules), and added this to the
httpd.conf file:
----
LoadModule dav_svn_module modules/mod_dav_svn.so
<Location /svn/repos>
DAV svn
SVNPath c:/barryp/svn_repos
</Location>
----
(I think you also have to un-comment the LoadModule line for plain
"mod_dav")
I'm really not much of a wizard with Visual Studio, so if there's
something in that project file that seems wrong or weird, it very well
may be. But it's a start that seems to work. Adding a "Debug" version
should be no big deal, just haven't done it yet.
Barry
# Microsoft Developer Studio Project File - Name="mod_dav_svn" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
CFG=mod_dav_svn - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "mod_dav_svn.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "mod_dav_svn.mak" CFG="mod_dav_svn - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "mod_dav_svn - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
!MESSAGE "mod_dav_svn - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
MTL=midl.exe
RSC=rc.exe
!IF "$(CFG)" == "mod_dav_svn - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "MOD_DAV_SVN_EXPORTS" /YX /FD /c
# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\..\httpd-2.0\include" /I "..\..\..\httpd-2.0\srclib\apr\include" /I "..\..\..\httpd-2.0\srclib\apr-util\include" /I "..\..\expat-lite" /I "..\include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "MOD_DAV_SVN_EXPORTS" /YX /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\..\httpd-2.0\Release\libhttpd.lib ..\..\..\httpd-2.0\srclib\apr\Release\libapr.lib ..\..\..\httpd-2.0\srclib\apr-util\Release\libaprutil.lib ..\..\..\httpd-2.0\modules\dav\main\Release\mod_dav.lib ..\..\db4-win32\lib\libdb40.lib ..\..\expat-lite\Release\libexpat.lib ..\libsvn_delta\Release\libsvn_delta.lib ..\libsvn_fs\Release\libsvn_fs.lib ..\libsvn_repos\Release\libsvn_repos.lib ..\libsvn_subr\Release\libsvn_subr.lib /nologo /dll /machine:I386 /out:"Release/mod_dav_svn.so"
!ELSEIF "$(CFG)" == "mod_dav_svn - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "MOD_DAV_SVN_EXPORTS" /YX /FD /GZ /c
# ADD CPP /nologo /MD /W3 /Gm /GX /ZI /Od /I "..\..\..\httpd-2.0\include" /I "..\..\..\httpd-2.0\srclib\apr\include" /I "..\..\..\httpd-2.0\srclib\apr-util\include" /I "..\..\expat-lite" /I "..\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "MOD_DAV_SVN_EXPORTS" /YX /FD /GZ /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
!ENDIF
# Begin Target
# Name "mod_dav_svn - Win32 Release"
# Name "mod_dav_svn - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=.\activity.c
# End Source File
# Begin Source File
SOURCE=.\deadprops.c
# End Source File
# Begin Source File
SOURCE=.\liveprops.c
# End Source File
# Begin Source File
SOURCE=.\log.c
# End Source File
# Begin Source File
SOURCE=.\merge.c
# End Source File
# Begin Source File
SOURCE=.\mod_dav_svn.c
# End Source File
# Begin Source File
SOURCE=.\repos.c
# End Source File
# Begin Source File
SOURCE=.\update.c
# End Source File
# Begin Source File
SOURCE=.\util.c
# End Source File
# Begin Source File
SOURCE=.\version.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=.\dav_svn.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:37:09 2006