Branko Äibej wrote:
William A. Rowe, Jr. wrote:
Branko,
we did NOT mean to build a dynamic libapriconv.dll...
...there is no reason not to compile this module static into libaprutil.
Why not? I can imagine people using apr-iconv, but not apr-util.
I'd rather be consistent with the other APR libs, as far as the naming scheme goes, and add another project file that creates a static lib but links with APR dynamically, and use that with libaprutil.
It's always been so that apr* projects create statically linked static libs, and libapr* projects create dynamincally linked DLLs. I'd suggest "dynapriconv" to indicate a dynamically linked static lib, then. (The fourth combination doesn't make sense (yet).)
Anyway ... even though I vowed I'd keep away from this ...
Try this patch. It does what you want, while still keeping the behaviour I want. The dynapriconv.dsp should be added to the apr-iconv sources; apr-util.patch teaches libaprutil to use it, and httpd.patch is for the Apache build
-- Brane Äibej <[EMAIL PROTECTED]> http://www.xbc.nu/brane/
Index: aprutil.dsw =================================================================== RCS file: /home/cvs/apr-util/aprutil.dsw,v retrieving revision 1.3 diff -u -p -r1.3 aprutil.dsw --- aprutil.dsw 26 Jul 2001 23:12:58 -0000 1.3 +++ aprutil.dsw 23 Jul 2002 23:02:46 -0000 @@ -66,7 +66,7 @@ Package=<4> ############################################################################### -Project: "libapriconv"="..\apr-iconv\libapriconv.dsp" - Package Owner=<4> +Project: "dynapriconv"="..\apr-iconv\dynapriconv.dsp" - Package Owner=<4> Package=<5> {{{ @@ -99,7 +99,7 @@ Package=<4> Project_Dep_Name xml End Project Dependency Begin Project Dependency - Project_Dep_Name libapriconv + Project_Dep_Name dynapriconv End Project Dependency }}} Index: libaprutil.dsp =================================================================== RCS file: /home/cvs/apr-util/libaprutil.dsp,v retrieving revision 1.41 diff -u -p -r1.41 libaprutil.dsp --- libaprutil.dsp 23 Jul 2002 01:45:04 -0000 1.41 +++ libaprutil.dsp 23 Jul 2002 23:02:46 -0000 @@ -43,7 +43,7 @@ RSC=rc.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /MD /W3 /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FD /c -# ADD CPP /nologo /MD /W3 /O2 /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "APU_DECLARE_EXPORT" /D "APU_USE_SDBM" /Fd"Release\aprutil" /FD /c +# ADD CPP /nologo /MD /W3 /O2 /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "APU_DECLARE_EXPORT" /D "API_DECLARE_STATIC" /D "APU_USE_SDBM" /Fd"Release\aprutil" /FD /c # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL" # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o /win32 "NUL" # ADD BASE RSC /l 0x409 /d "NDEBUG" @@ -69,7 +69,7 @@ LINK32=link.exe # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /MDd /W3 /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /c -# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /I "./expat/lib" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "APU_DECLARE_EXPORT" /D "APU_USE_SDBM" /Fd"Debug\aprutil" /FD /c +# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /I "./include" /I "../apr/include" /I "./include/private" /I "../apr-iconv/include" /I "./dbm/sdbm" /I "./xml/expat/lib" /I "./expat/lib" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "APU_DECLARE_EXPORT" /D "API_DECLARE_STATIC" /D "APU_USE_SDBM" /Fd"Debug\aprutil" /FD /c # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL" # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o /win32 "NUL" # ADD BASE RSC /l 0x409 /d "_DEBUG"
Index: Apache.dsw =================================================================== RCS file: /home/cvspublic/httpd-2.0/Apache.dsw,v retrieving revision 1.84 diff -u -p -r1.84 Apache.dsw --- Apache.dsw 20 Jul 2002 23:57:26 -0000 1.84 +++ Apache.dsw 23 Jul 2002 23:00:34 -0000 @@ -402,7 +402,7 @@ Package=<4> ############################################################################### -Project: "libapriconv"=".\srclib\apr-iconv\libapriconv.dsp" - Package Owner=<4> +Project: "dynapriconv"=".\srclib\apr-iconv\dynapriconv.dsp" - Package Owner=<4> Package=<5> {{{ @@ -429,7 +429,7 @@ Package=<4> Project_Dep_Name libapr End Project Dependency Begin Project Dependency - Project_Dep_Name libapriconv + Project_Dep_Name dynapriconv End Project Dependency Begin Project Dependency Project_Dep_Name gen_uri_delims @@ -453,7 +453,7 @@ Package=<4> Project_Dep_Name libapr End Project Dependency Begin Project Dependency - Project_Dep_Name libapriconv + Project_Dep_Name dynapriconv End Project Dependency Begin Project Dependency Project_Dep_Name libaprutil Index: Makefile.win =================================================================== RCS file: /home/cvspublic/httpd-2.0/Makefile.win,v retrieving revision 1.113 diff -u -p -r1.113 Makefile.win --- Makefile.win 21 Jul 2002 00:24:32 -0000 1.113 +++ Makefile.win 23 Jul 2002 23:00:34 -0000 @@ -176,7 +176,7 @@ _build: cd ..\.. cd srclib\apr-iconv $(MAKE) $(MAKEOPT) -f apriconv.mak CFG="apriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET) - $(MAKE) $(MAKEOPT) -f libapriconv.mak CFG="libapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f dynapriconv.mak CFG="dynapriconv - Win32 $(LONG)" RECURSE=0 $(CTARGET) cd ..\.. cd srclib\apr-util\uri $(MAKE) $(MAKEOPT) -f gen_uri_delims.mak CFG="gen_uri_delims - Win32 $(LONG)" RECURSE=0 $(CTARGET)
# Microsoft Developer Studio Project File - Name="dynapriconv" - Package Owner=<4> # Microsoft Developer Studio Generated Build File, Format Version 6.00 # ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Static Library" 0x0104 CFG=dynapriconv - 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 "dynapriconv.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 "dynapriconv.mak" CFG="dynapriconv - Win32 Debug" !MESSAGE !MESSAGE Possible choices for configuration are: !MESSAGE !MESSAGE "dynapriconv - Win32 Release" (based on "Win32 (x86) Static Library") !MESSAGE "dynapriconv - Win32 Debug" (based on "Win32 (x86) Static Library") !MESSAGE # Begin Project # PROP AllowPerConfigDependencies 0 # PROP Scc_ProjName "" # PROP Scc_LocalPath "" CPP=cl.exe RSC=rc.exe !IF "$(CFG)" == "dynapriconv - Win32 Release" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 0 # PROP BASE Output_Dir "DynLibR" # PROP BASE Intermediate_Dir "DynLibR" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 0 # PROP Output_Dir "DynLibR" # PROP Intermediate_Dir "DynLibR" # PROP Target_Dir "" # ADD BASE CPP /nologo /MD /W3 /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FD /c # ADD CPP /nologo /MD /W3 /O2 /I "../apr/include" /D "NDEBUG" /D "API_DECLARE_STATIC" /D "WIN32" /D "_WINDOWS" /Fd"LibR\dynapriconv" /FD /c # ADD BASE RSC /l 0x409 # ADD RSC /l 0x409 BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo # ADD LIB32 /nologo !ELSEIF "$(CFG)" == "dynapriconv - Win32 Debug" # PROP BASE Use_MFC 0 # PROP BASE Use_Debug_Libraries 1 # PROP BASE Output_Dir "LibD" # PROP BASE Intermediate_Dir "DynLibD" # PROP BASE Target_Dir "" # PROP Use_MFC 0 # PROP Use_Debug_Libraries 1 # PROP Output_Dir "LibD" # PROP Intermediate_Dir "DynLibD" # PROP Ignore_Export_Lib 0 # PROP Target_Dir "" # ADD BASE CPP /nologo /MDd /W3 /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FD /c # ADD CPP /nologo /MDd /W3 /GX /ZI /Od /I "../apr/include" /D "_DEBUG" /D "API_DECLARE_STATIC" /D "WIN32" /D "_WINDOWS" /Fd"LibD\dynapriconv" /FD /c # ADD BASE RSC /l 0x409 # ADD RSC /l 0x409 BSC32=bscmake.exe # ADD BASE BSC32 /nologo # ADD BSC32 /nologo LIB32=link.exe -lib # ADD BASE LIB32 /nologo # ADD LIB32 /nologo !ENDIF # Begin Target # Name "dynapriconv - Win32 Release" # Name "dynapriconv - Win32 Debug" # Begin Group "Source Files" # PROP Default_Filter ".c" # Begin Group "lib" # PROP Default_Filter "" # Begin Source File SOURCE=.\lib\iconv.c # End Source File # Begin Source File SOURCE=.\lib\iconv_ces.c # End Source File # Begin Source File SOURCE=.\lib\iconv_ces_euc.c # End Source File # Begin Source File SOURCE=.\lib\iconv_ces_iso2022.c # End Source File # Begin Source File SOURCE=.\lib\iconv_int.c # End Source File # Begin Source File SOURCE=.\lib\iconv_module.c # End Source File # Begin Source File SOURCE=.\lib\iconv_uc.c # End Source File # End Group # End Group # Begin Group "Header Files" # PROP Default_Filter ".h" # Begin Source File SOURCE=.\lib\iconv.h # End Source File # End Group # End Target # End Project