i had some trouble building mod_jk for apache 1.3 from the latest tomcat 3.3 build with the supplied devstudio project file (mod_jk.dsp). so, i generated a nmake makefile. others may find this makefile useful, so i've attached it. there are instructions for use at the top of it. regards, -kevin.
# Microsoft Developer Studio Generated NMAKE File, Based on mod_jk.dsp # # to use, set APACHE1_HOME and JAVA_HOME appropriately, then run # nmake /f mod_jk.mka CFG=mod_jk_release # or # nmake /f mod_jk.mka CFG=mod_jk_debug # !IF "$(CFG)" == "" CFG=mod_jk_debug !MESSAGE No configuration specified. Defaulting to mod_jk_debug. !ENDIF !IF "$(CFG)" != "mod_jk_release" && "$(CFG)" != "mod_jk_debug" !MESSAGE Invalid configuration "$(CFG)" specified. !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_jk.mak" CFG="mod_jk_debug" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE !MESSAGE "mod_jk_release" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "mod_jk_debug" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE !ERROR An invalid configuration is specified. !ENDIF !IF "$(OS)" == "Windows_NT" NULL= !ELSE NULL=nul !ENDIF !IF "$(CFG)" == "mod_jk_release" OUTDIR=.\Release INTDIR=.\Release # Begin Custom Macros OutDir=.\Release # End Custom Macros ALL : "$(OUTDIR)\mod_jk.dll" CLEAN : -@erase "$(INTDIR)\jk_ajp12_worker.obj" -@erase "$(INTDIR)\jk_ajp13.obj" -@erase "$(INTDIR)\jk_ajp13_worker.obj" -@erase "$(INTDIR)\jk_connect.obj" -@erase "$(INTDIR)\jk_jni_worker.obj" -@erase "$(INTDIR)\jk_lb_worker.obj" -@erase "$(INTDIR)\jk_map.obj" -@erase "$(INTDIR)\jk_msg_buff.obj" -@erase "$(INTDIR)\jk_nwmain.obj" -@erase "$(INTDIR)\jk_pool.obj" -@erase "$(INTDIR)\jk_sockbuf.obj" -@erase "$(INTDIR)\jk_uri_worker_map.obj" -@erase "$(INTDIR)\jk_util.obj" -@erase "$(INTDIR)\jk_worker.obj" -@erase "$(INTDIR)\mod_jk.obj" -@erase "$(INTDIR)\vc60.idb" -@erase "$(OUTDIR)\mod_jk.dll" -@erase "$(OUTDIR)\mod_jk.exp" -@erase "$(OUTDIR)\mod_jk.lib" "$(OUTDIR)" : if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)" CPP=cl.exe CPP_PROJ=/nologo /MT /W3 /GX /O2 /I "$(JAVA_HOME)/include" /I "$(JAVA_HOME)/include/win32" /I "$(APACHE1_HOME)/src/include" /I "../common" /D "EAPI" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "MOD_JK_EXPORTS" /Fp"$(INTDIR)\mod_jk.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c .c{$(INTDIR)}.obj:: $(CPP) @<< $(CPP_PROJ) $< << .cpp{$(INTDIR)}.obj:: $(CPP) @<< $(CPP_PROJ) $< << .cxx{$(INTDIR)}.obj:: $(CPP) @<< $(CPP_PROJ) $< << .c{$(INTDIR)}.sbr:: $(CPP) @<< $(CPP_PROJ) $< << .cpp{$(INTDIR)}.sbr:: $(CPP) @<< $(CPP_PROJ) $< << .cxx{$(INTDIR)}.sbr:: $(CPP) @<< $(CPP_PROJ) $< << MTL=midl.exe MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /win32 RSC=rc.exe BSC32=bscmake.exe BSC32_FLAGS=/nologo /o"$(OUTDIR)\mod_jk.bsc" BSC32_SBRS= \ LINK32=link.exe LINK32_FLAGS=ApacheCore.lib wsock32.lib 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 /incremental:no /pdb:"$(OUTDIR)\mod_jk.pdb" /machine:I386 /out:"$(OUTDIR)\mod_jk.dll" /implib:"$(OUTDIR)\mod_jk.lib" /libpath:"$(APACHE1_HOME)/src/CoreR" LINK32_OBJS= \ "$(INTDIR)\jk_ajp12_worker.obj" \ "$(INTDIR)\jk_ajp13.obj" \ "$(INTDIR)\jk_ajp13_worker.obj" \ "$(INTDIR)\jk_connect.obj" \ "$(INTDIR)\jk_jni_worker.obj" \ "$(INTDIR)\jk_lb_worker.obj" \ "$(INTDIR)\jk_map.obj" \ "$(INTDIR)\jk_msg_buff.obj" \ "$(INTDIR)\jk_nwmain.obj" \ "$(INTDIR)\jk_pool.obj" \ "$(INTDIR)\jk_sockbuf.obj" \ "$(INTDIR)\jk_uri_worker_map.obj" \ "$(INTDIR)\jk_util.obj" \ "$(INTDIR)\jk_worker.obj" \ "$(INTDIR)\mod_jk.obj" "$(OUTDIR)\mod_jk.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS) $(LINK32) @<< $(LINK32_FLAGS) $(LINK32_OBJS) << !ELSEIF "$(CFG)" == "mod_jk_debug" OUTDIR=.\Debug INTDIR=.\Debug # Begin Custom Macros OutDir=.\Debug # End Custom Macros ALL : "$(OUTDIR)\mod_jk.dll" CLEAN : -@erase "$(INTDIR)\jk_ajp12_worker.obj" -@erase "$(INTDIR)\jk_ajp13.obj" -@erase "$(INTDIR)\jk_ajp13_worker.obj" -@erase "$(INTDIR)\jk_connect.obj" -@erase "$(INTDIR)\jk_jni_worker.obj" -@erase "$(INTDIR)\jk_lb_worker.obj" -@erase "$(INTDIR)\jk_map.obj" -@erase "$(INTDIR)\jk_msg_buff.obj" -@erase "$(INTDIR)\jk_nwmain.obj" -@erase "$(INTDIR)\jk_pool.obj" -@erase "$(INTDIR)\jk_sockbuf.obj" -@erase "$(INTDIR)\jk_uri_worker_map.obj" -@erase "$(INTDIR)\jk_util.obj" -@erase "$(INTDIR)\jk_worker.obj" -@erase "$(INTDIR)\mod_jk.obj" -@erase "$(INTDIR)\vc60.idb" -@erase "$(INTDIR)\vc60.pdb" -@erase "$(OUTDIR)\mod_jk.dll" -@erase "$(OUTDIR)\mod_jk.exp" -@erase "$(OUTDIR)\mod_jk.ilk" -@erase "$(OUTDIR)\mod_jk.lib" -@erase "$(OUTDIR)\mod_jk.pdb" "$(OUTDIR)" : if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)" CPP=cl.exe CPP_PROJ=/nologo /MTd /W3 /Gm /GX /ZI /Od /I "$(JAVA_HOME)/include" /I "$(JAVA_HOME)/include/win32" /I "$(APACHE1_HOME)/src/include" /I "../common" /D "EAPI" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "MOD_JK_EXPORTS" /Fp"$(INTDIR)\mod_jk.pch" /YX /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c .c{$(INTDIR)}.obj:: $(CPP) @<< $(CPP_PROJ) $< << .cpp{$(INTDIR)}.obj:: $(CPP) @<< $(CPP_PROJ) $< << .cxx{$(INTDIR)}.obj:: $(CPP) @<< $(CPP_PROJ) $< << .c{$(INTDIR)}.sbr:: $(CPP) @<< $(CPP_PROJ) $< << .cpp{$(INTDIR)}.sbr:: $(CPP) @<< $(CPP_PROJ) $< << .cxx{$(INTDIR)}.sbr:: $(CPP) @<< $(CPP_PROJ) $< << MTL=midl.exe MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /win32 RSC=rc.exe BSC32=bscmake.exe BSC32_FLAGS=/nologo /o"$(OUTDIR)\mod_jk.bsc" BSC32_SBRS= \ LINK32=link.exe LINK32_FLAGS=ApacheCore.lib wsock32.lib 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 /incremental:yes /pdb:"$(OUTDIR)\mod_jk.pdb" /debug /machine:I386 /out:"$(OUTDIR)\mod_jk.dll" /implib:"$(OUTDIR)\mod_jk.lib" /pdbtype:sept /libpath:"$(APACHE1_HOME)/src/CoreD" LINK32_OBJS= \ "$(INTDIR)\jk_ajp12_worker.obj" \ "$(INTDIR)\jk_ajp13.obj" \ "$(INTDIR)\jk_ajp13_worker.obj" \ "$(INTDIR)\jk_connect.obj" \ "$(INTDIR)\jk_jni_worker.obj" \ "$(INTDIR)\jk_lb_worker.obj" \ "$(INTDIR)\jk_map.obj" \ "$(INTDIR)\jk_msg_buff.obj" \ "$(INTDIR)\jk_nwmain.obj" \ "$(INTDIR)\jk_pool.obj" \ "$(INTDIR)\jk_sockbuf.obj" \ "$(INTDIR)\jk_uri_worker_map.obj" \ "$(INTDIR)\jk_util.obj" \ "$(INTDIR)\jk_worker.obj" \ "$(INTDIR)\mod_jk.obj" "$(OUTDIR)\mod_jk.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS) $(LINK32) @<< $(LINK32_FLAGS) $(LINK32_OBJS) << !ENDIF !IF "$(CFG)" == "mod_jk_release" || "$(CFG)" == "mod_jk_debug" SOURCE=..\common\jk_ajp12_worker.c "$(INTDIR)\jk_ajp12_worker.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_ajp13.c "$(INTDIR)\jk_ajp13.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_ajp13_worker.c "$(INTDIR)\jk_ajp13_worker.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_connect.c "$(INTDIR)\jk_connect.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_jni_worker.c "$(INTDIR)\jk_jni_worker.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_lb_worker.c "$(INTDIR)\jk_lb_worker.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_map.c "$(INTDIR)\jk_map.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_msg_buff.c "$(INTDIR)\jk_msg_buff.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_nwmain.c "$(INTDIR)\jk_nwmain.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_pool.c "$(INTDIR)\jk_pool.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_sockbuf.c "$(INTDIR)\jk_sockbuf.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_uri_worker_map.c "$(INTDIR)\jk_uri_worker_map.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_util.c "$(INTDIR)\jk_util.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=..\common\jk_worker.c "$(INTDIR)\jk_worker.obj" : $(SOURCE) "$(INTDIR)" $(CPP) $(CPP_PROJ) $(SOURCE) SOURCE=mod_jk.c "$(INTDIR)\mod_jk.obj" : $(SOURCE) "$(INTDIR)" !ENDIF