]> Repos - portaudio/commitdiff
Ticket #132
authorrob_bielik <rob_bielik@0f58301d-fd10-0410-b4af-bbb618454e57>
Thu, 17 Feb 2011 15:56:04 +0000 (15:56 +0000)
committerrob_bielik <rob_bielik@0f58301d-fd10-0410-b4af-bbb618454e57>
Thu, 17 Feb 2011 15:56:04 +0000 (15:56 +0000)
build/msvc/portaudio.sln
build/msvc/portaudio.vcproj
build/msvc/readme.txt
configure
configure.in
src/common/pa_hostapi.h
src/hostapi/asio/pa_asio.cpp
src/hostapi/dsound/pa_win_ds.c
src/hostapi/wdmks/pa_win_wdmks.c
src/os/win/pa_win_hostapis.c
test/pa_devs.c

index d4cc5dcef71de52fdcf5cf9e4bd8be36e1b672e8..7933517a722c56b5a47d6b02535e6f4f4d585bd1 100644 (file)
@@ -9,6 +9,8 @@ Global
                Debug|x64 = Debug|x64\r
                Release|Win32 = Release|Win32\r
                Release|x64 = Release|x64\r
+               ReleaseMinDependency|Win32 = ReleaseMinDependency|Win32\r
+               ReleaseMinDependency|x64 = ReleaseMinDependency|x64\r
        EndGlobalSection\r
        GlobalSection(ProjectConfigurationPlatforms) = postSolution\r
                {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Debug|Win32.ActiveCfg = Debug|Win32\r
@@ -19,6 +21,10 @@ Global
                {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|Win32.Build.0 = Release|Win32\r
                {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.ActiveCfg = Release|x64\r
                {0A18A071-125E-442F-AFF7-A3F68ABECF99}.Release|x64.Build.0 = Release|x64\r
+               {0A18A071-125E-442F-AFF7-A3F68ABECF99}.ReleaseMinDependency|Win32.ActiveCfg = ReleaseMinDependency|Win32\r
+               {0A18A071-125E-442F-AFF7-A3F68ABECF99}.ReleaseMinDependency|Win32.Build.0 = ReleaseMinDependency|Win32\r
+               {0A18A071-125E-442F-AFF7-A3F68ABECF99}.ReleaseMinDependency|x64.ActiveCfg = ReleaseMinDependency|x64\r
+               {0A18A071-125E-442F-AFF7-A3F68ABECF99}.ReleaseMinDependency|x64.Build.0 = ReleaseMinDependency|x64\r
        EndGlobalSection\r
        GlobalSection(SolutionProperties) = preSolution\r
                HideSolutionNode = FALSE\r
index d7e18f3530fdff08384f79e819aa4b4305c15b11..e969009345cc17366c4df3f4ee34b368d3554ee7 100644 (file)
@@ -54,7 +54,7 @@
                                EnableIntrinsicFunctions="true"\r
                                FavorSizeOrSpeed="1"\r
                                AdditionalIncludeDirectories="..\..\src\common;..\..\include;.\;..\..\src\os\win"\r
-                               PreprocessorDefinitions="WIN32;NDEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO"\r
+                               PreprocessorDefinitions="WIN32;NDEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO;PA_USE_ASIO=0;PA_USE_DS=0;PA_USE_WMME=1;PA_USE_WASAPI=1;PA_USE_WDMKS=1"\r
                                StringPooling="true"\r
                                RuntimeLibrary="2"\r
                                EnableFunctionLevelLinking="true"\r
                                EnableIntrinsicFunctions="true"\r
                                FavorSizeOrSpeed="1"\r
                                AdditionalIncludeDirectories="..\..\src\common;..\..\include;.\;..\..\src\os\win"\r
-                               PreprocessorDefinitions="_WIN64;NDEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO;PA_WDMKS_NO_KSGUID_LIB"\r
+                               PreprocessorDefinitions="_WIN64;NDEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO;PA_WDMKS_NO_KSGUID_LIB;PA_USE_ASIO=0;PA_USE_DS=0;PA_USE_WMME=1;PA_USE_WASAPI=1;PA_USE_WDMKS=1"\r
                                StringPooling="true"\r
                                RuntimeLibrary="2"\r
                                EnableFunctionLevelLinking="true"\r
                                Name="VCCLCompilerTool"\r
                                Optimization="0"\r
                                AdditionalIncludeDirectories="..\..\src\common;..\..\include;.\;..\..\src\os\win"\r
-                               PreprocessorDefinitions="WIN32;_DEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO"\r
+                               PreprocessorDefinitions="WIN32;_DEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO;PA_USE_ASIO=0;PA_USE_DS=0;PA_USE_WMME=1;PA_USE_WASAPI=1;PA_USE_WDMKS=1"\r
                                MinimalRebuild="true"\r
                                BasicRuntimeChecks="3"\r
                                RuntimeLibrary="3"\r
                        />\r
                        <Tool\r
                                Name="VCLinkerTool"\r
-                               AdditionalDependencies="ksuser.lib"\r
+                               AdditionalDependencies="ksguid.lib"\r
                                OutputFile="$(PlatformName)\$(ConfigurationName)\portaudio_x86.dll"\r
                                LinkIncremental="2"\r
                                SuppressStartupBanner="true"\r
                                Name="VCCLCompilerTool"\r
                                Optimization="0"\r
                                AdditionalIncludeDirectories="..\..\src\common,..\..\include,.\,..\..\src\os\win"\r
-                               PreprocessorDefinitions="_WIN64;_DEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO;PA_WDMKS_NO_KSGUID_LIB"\r
+                               PreprocessorDefinitions="_WIN64;_DEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO;PA_WDMKS_NO_KSGUID_LIB;PA_USE_ASIO=0;PA_USE_DS=0;PA_USE_WMME=1;PA_USE_WASAPI=1;PA_USE_WDMKS=1"\r
                                MinimalRebuild="true"\r
                                BasicRuntimeChecks="3"\r
                                RuntimeLibrary="3"\r
                        />\r
                        <Tool\r
                                Name="VCLinkerTool"\r
-                               AdditionalDependencies="ksuser.lib"\r
+                               AdditionalDependencies="ksguid.lib"\r
                                OutputFile="$(PlatformName)\$(ConfigurationName)\portaudio_x64.dll"\r
                                LinkIncremental="2"\r
                                SuppressStartupBanner="true"\r
                                Name="VCPostBuildEventTool"\r
                        />\r
                </Configuration>\r
+               <Configuration\r
+                       Name="ReleaseMinDependency|Win32"\r
+                       OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
+                       IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
+                       ConfigurationType="2"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
+                       UseOfMFC="0"\r
+                       ATLMinimizesCRunTimeLibraryUsage="false"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               MkTypLibCompatible="true"\r
+                               SuppressStartupBanner="true"\r
+                               TargetEnvironment="1"\r
+                               TypeLibraryName=".\Release_x86/portaudio.tlb"\r
+                               HeaderFileName=""\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="2"\r
+                               InlineFunctionExpansion="1"\r
+                               EnableIntrinsicFunctions="true"\r
+                               FavorSizeOrSpeed="1"\r
+                               AdditionalIncludeDirectories="..\..\src\common;..\..\include;.\;..\..\src\os\win"\r
+                               PreprocessorDefinitions="WIN32;NDEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO;PA_USE_ASIO=0;PA_USE_DS=0;PA_USE_WMME=1;PA_USE_WASAPI=1;PA_USE_WDMKS=1"\r
+                               StringPooling="true"\r
+                               RuntimeLibrary="0"\r
+                               EnableFunctionLevelLinking="true"\r
+                               PrecompiledHeaderFile="$(PlatformName)\$(ConfigurationName)/portaudio.pch"\r
+                               AssemblerListingLocation="$(PlatformName)\$(ConfigurationName)\"\r
+                               ObjectFile="$(PlatformName)\$(ConfigurationName)\"\r
+                               ProgramDataBaseFileName="$(PlatformName)\$(ConfigurationName)\"\r
+                               WarningLevel="3"\r
+                               SuppressStartupBanner="true"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               Culture="1033"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalDependencies="ksuser.lib"\r
+                               OutputFile="$(PlatformName)\$(ConfigurationName)\portaudio_x86.dll"\r
+                               LinkIncremental="1"\r
+                               SuppressStartupBanner="true"\r
+                               AdditionalLibraryDirectories=""\r
+                               ModuleDefinitionFile=".\portaudio.def"\r
+                               ProgramDatabaseFile="$(PlatformName)\$(ConfigurationName)\portaudio_x86.pdb"\r
+                               ImportLibrary="$(PlatformName)\$(ConfigurationName)\portaudio_x86.lib"\r
+                               TargetMachine="1"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                               SuppressStartupBanner="true"\r
+                               OutputFile="$(PlatformName)\$(ConfigurationName)\portaudio.bsc"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebDeploymentTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
+               <Configuration\r
+                       Name="ReleaseMinDependency|x64"\r
+                       OutputDirectory="$(PlatformName)\$(ConfigurationName)"\r
+                       IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"\r
+                       ConfigurationType="2"\r
+                       InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"\r
+                       UseOfMFC="0"\r
+                       ATLMinimizesCRunTimeLibraryUsage="false"\r
+                       >\r
+                       <Tool\r
+                               Name="VCPreBuildEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCCustomBuildTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXMLDataGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebServiceProxyGeneratorTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCMIDLTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               MkTypLibCompatible="true"\r
+                               SuppressStartupBanner="true"\r
+                               TargetEnvironment="3"\r
+                               TypeLibraryName=".\Release_x86/portaudio.tlb"\r
+                               HeaderFileName=""\r
+                       />\r
+                       <Tool\r
+                               Name="VCCLCompilerTool"\r
+                               Optimization="2"\r
+                               InlineFunctionExpansion="1"\r
+                               EnableIntrinsicFunctions="true"\r
+                               FavorSizeOrSpeed="1"\r
+                               AdditionalIncludeDirectories="..\..\src\common;..\..\include;.\;..\..\src\os\win"\r
+                               PreprocessorDefinitions="_WIN64;NDEBUG;_USRDLL;PA_ENABLE_DEBUG_OUTPUT;_CRT_SECURE_NO_DEPRECATE;PAWIN_USE_WDMKS_DEVICE_INFO;PA_WDMKS_NO_KSGUID_LIB;PA_USE_ASIO=0;PA_USE_DS=0;PA_USE_WMME=1;PA_USE_WASAPI=1;PA_USE_WDMKS=1"\r
+                               StringPooling="true"\r
+                               RuntimeLibrary="0"\r
+                               EnableFunctionLevelLinking="true"\r
+                               PrecompiledHeaderFile="$(PlatformName)\$(ConfigurationName)\portaudio.pch"\r
+                               AssemblerListingLocation="$(PlatformName)\$(ConfigurationName)\"\r
+                               ObjectFile="$(PlatformName)\$(ConfigurationName)\"\r
+                               ProgramDataBaseFileName="$(PlatformName)\$(ConfigurationName)\"\r
+                               WarningLevel="3"\r
+                               SuppressStartupBanner="true"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManagedResourceCompilerTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCResourceCompilerTool"\r
+                               PreprocessorDefinitions="NDEBUG"\r
+                               Culture="1033"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPreLinkEventTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCLinkerTool"\r
+                               AdditionalDependencies="ksuser.lib"\r
+                               OutputFile="$(PlatformName)\$(ConfigurationName)\portaudio_x64.dll"\r
+                               LinkIncremental="1"\r
+                               SuppressStartupBanner="true"\r
+                               AdditionalLibraryDirectories=""\r
+                               ModuleDefinitionFile=".\portaudio.def"\r
+                               ProgramDatabaseFile="$(PlatformName)\$(ConfigurationName)/portaudio_x64.pdb"\r
+                               ImportLibrary="$(PlatformName)\$(ConfigurationName)/portaudio_x64.lib"\r
+                               TargetMachine="17"\r
+                       />\r
+                       <Tool\r
+                               Name="VCALinkTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCManifestTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCXDCMakeTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCBscMakeTool"\r
+                               SuppressStartupBanner="true"\r
+                               OutputFile="$(PlatformName)\$(ConfigurationName)\portaudio_x64.bsc"\r
+                       />\r
+                       <Tool\r
+                               Name="VCFxCopTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCAppVerifierTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCWebDeploymentTool"\r
+                       />\r
+                       <Tool\r
+                               Name="VCPostBuildEventTool"\r
+                       />\r
+               </Configuration>\r
        </Configurations>\r
        <References>\r
        </References>\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
                                        RelativePath="..\..\src\common\pa_converters.c"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
                                        RelativePath="..\..\src\common\pa_cpuload.c"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
                                        RelativePath="..\..\src\common\pa_debugprint.c"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
                                        RelativePath="..\..\src\common\pa_dither.c"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
                                        RelativePath="..\..\src\common\pa_front.c"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
-                                       RelativePath="..\..\src\common\pa_process.c"\r
+                                       RelativePath="..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c"\r
                                        >\r
                                        <FileConfiguration\r
                                                Name="Release|Win32"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
-                                       RelativePath="..\..\src\common\pa_ringbuffer.c"\r
+                                       RelativePath="..\..\src\common\pa_process.c"\r
                                        >\r
                                        <FileConfiguration\r
                                                Name="Release|Win32"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
-                                       RelativePath="..\..\src\hostapi\skeleton\pa_hostapi_skeleton.c"\r
+                                       RelativePath="..\..\src\common\pa_ringbuffer.c"\r
                                        >\r
                                        <FileConfiguration\r
                                                Name="Release|Win32"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
                                </File>\r
                                <File\r
                                        RelativePath="..\..\src\common\pa_stream.c"\r
                                                        PreprocessorDefinitions=""\r
                                                />\r
                                        </FileConfiguration>\r
-                               </File>\r
-                               <File\r
-                                       RelativePath="..\..\src\common\pa_trace.c"\r
-                                       >\r
                                        <FileConfiguration\r
-                                               Name="Release|Win32"\r
+                                               Name="ReleaseMinDependency|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="ReleaseMinDependency|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                               </File>\r
+                               <File\r
+                                       RelativePath="..\..\src\common\pa_trace.c"\r
+                                       >\r
+                                       <FileConfiguration\r
+                                               Name="Release|Win32"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="Release|x64"\r
+                                               >\r
+                                               <Tool\r
+                                                       Name="VCCLCompilerTool"\r
+                                                       AdditionalIncludeDirectories=""\r
+                                                       PreprocessorDefinitions=""\r
+                                               />\r
+                                       </FileConfiguration>\r
+                                       <FileConfiguration\r
+                                               Name="Debug|Win32"\r
                                                >\r
                                                <Tool\r
                                                        Name="VCCLCompilerTool"\r
                                                />\r
                                        </FileConfiguration>\r
                                        <FileConfiguration\r
-                                               Name="Release|x64"\r
+                                               Name="Debug|x64"\r
                                                >\r
                                                <Tool\r
                                                        Name="VCCLCompilerTool"\r
                                                />\r
                                        </FileConfiguration>\r
                                        <FileConfiguration\r
-                                               Name="Debug|Win32"\r
+                                               Name="ReleaseMinDependency|Win32"\r
                                                >\r
                                                <Tool\r
                                                        Name="VCCLCompilerTool"\r
                                                />\r
                                        </FileConfiguration>\r
                                        <FileConfiguration\r
-                                               Name="Debug|x64"\r
+                                               Name="ReleaseMinDependency|x64"\r
                                                >\r
                                                <Tool\r
                                                        Name="VCCLCompilerTool"\r
                                                                PreprocessorDefinitions=""\r
                                                        />\r
                                                </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|Win32"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|x64"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
                                        </File>\r
                                        <Filter\r
                                                Name="ASIOSDK"\r
                                                                        PreprocessorDefinitions=""\r
                                                                />\r
                                                        </FileConfiguration>\r
-                                               </File>\r
-                                               <File\r
-                                                       RelativePath="..\..\src\hostapi\asio\ASIOSDK\host\ASIOConvertSamples.cpp"\r
-                                                       >\r
-                                                       <FileConfiguration\r
-                                                               Name="Release|Win32"\r
-                                                               ExcludedFromBuild="true"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
-                                                       <FileConfiguration\r
-                                                               Name="Release|x64"\r
-                                                               ExcludedFromBuild="true"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
                                                        <FileConfiguration\r
-                                                               Name="Debug|Win32"\r
-                                                               ExcludedFromBuild="true"\r
+                                                               Name="ReleaseMinDependency|Win32"\r
                                                                >\r
                                                                <Tool\r
                                                                        Name="VCCLCompilerTool"\r
                                                                />\r
                                                        </FileConfiguration>\r
                                                        <FileConfiguration\r
-                                                               Name="Debug|x64"\r
-                                                               ExcludedFromBuild="true"\r
+                                                               Name="ReleaseMinDependency|x64"\r
                                                                >\r
                                                                <Tool\r
                                                                        Name="VCCLCompilerTool"\r
                                                                        PreprocessorDefinitions=""\r
                                                                />\r
                                                        </FileConfiguration>\r
-                                               </File>\r
-                                               <File\r
-                                                       RelativePath="..\..\src\hostapi\asio\ASIOSDK\host\pc\asiolist.cpp"\r
-                                                       >\r
-                                                       <FileConfiguration\r
-                                                               Name="Release|Win32"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
-                                                       <FileConfiguration\r
-                                                               Name="Release|x64"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
-                                                       <FileConfiguration\r
-                                                               Name="Debug|Win32"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
-                                                       <FileConfiguration\r
-                                                               Name="Debug|x64"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
-                                               </File>\r
-                                               <File\r
-                                                       RelativePath="..\..\src\hostapi\asio\ASIOSDK\common\combase.cpp"\r
-                                                       >\r
-                                                       <FileConfiguration\r
-                                                               Name="Release|Win32"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
-                                                       <FileConfiguration\r
-                                                               Name="Release|x64"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
                                                        <FileConfiguration\r
-                                                               Name="Debug|Win32"\r
+                                                               Name="ReleaseMinDependency|Win32"\r
                                                                >\r
                                                                <Tool\r
                                                                        Name="VCCLCompilerTool"\r
                                                                />\r
                                                        </FileConfiguration>\r
                                                        <FileConfiguration\r
-                                                               Name="Debug|x64"\r
+                                                               Name="ReleaseMinDependency|x64"\r
                                                                >\r
                                                                <Tool\r
                                                                        Name="VCCLCompilerTool"\r
                                                        </FileConfiguration>\r
                                                </File>\r
                                                <File\r
-                                                       RelativePath="..\..\src\hostapi\asio\ASIOSDK\common\debugmessage.cpp"\r
+                                                       RelativePath="..\..\src\hostapi\asio\ASIOSDK\host\pc\asiolist.cpp"\r
                                                        >\r
                                                        <FileConfiguration\r
                                                                Name="Release|Win32"\r
                                                                        PreprocessorDefinitions=""\r
                                                                />\r
                                                        </FileConfiguration>\r
-                                               </File>\r
-                                               <File\r
-                                                       RelativePath="..\..\src\hostapi\asio\ASIOSDK\common\register.cpp"\r
-                                                       >\r
-                                                       <FileConfiguration\r
-                                                               Name="Release|Win32"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
-                                                       <FileConfiguration\r
-                                                               Name="Release|x64"\r
-                                                               >\r
-                                                               <Tool\r
-                                                                       Name="VCCLCompilerTool"\r
-                                                                       AdditionalIncludeDirectories="..\..\src\hostapi\asio\ASIOSDK\host;..\..\src\hostapi\asio\ASIOSDK\host\pc;..\..\src\hostapi\asio\ASIOSDK\common"\r
-                                                                       PreprocessorDefinitions=""\r
-                                                               />\r
-                                                       </FileConfiguration>\r
                                                        <FileConfiguration\r
-                                                               Name="Debug|Win32"\r
+                                                               Name="ReleaseMinDependency|Win32"\r
                                                                >\r
                                                                <Tool\r
                                                                        Name="VCCLCompilerTool"\r
                                                                />\r
                                                        </FileConfiguration>\r
                                                        <FileConfiguration\r
-                                                               Name="Debug|x64"\r
+                                                               Name="ReleaseMinDependency|x64"\r
                                                                >\r
                                                                <Tool\r
                                                                        Name="VCCLCompilerTool"\r
                                                                PreprocessorDefinitions=""\r
                                                        />\r
                                                </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|Win32"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|x64"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
                                        </File>\r
                                        <File\r
                                                RelativePath="..\..\src\hostapi\dsound\pa_win_ds_dynlink.c"\r
                                                                PreprocessorDefinitions=""\r
                                                        />\r
                                                </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|Win32"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|x64"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
                                        </File>\r
                                </Filter>\r
                                <Filter\r
                                                                PreprocessorDefinitions=""\r
                                                        />\r
                                                </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|Win32"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|x64"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
                                        </File>\r
                                </Filter>\r
                                <Filter\r
                                                >\r
                                        </File>\r
                                </Filter>\r
+                               <Filter\r
+                                       Name="wdmks"\r
+                                       >\r
+                                       <File\r
+                                               RelativePath="..\..\src\hostapi\wdmks\pa_win_wdmks.c"\r
+                                               >\r
+                                       </File>\r
+                               </Filter>\r
                        </Filter>\r
                        <Filter\r
                                Name="os"\r
                                                                PreprocessorDefinitions=""\r
                                                        />\r
                                                </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|Win32"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|x64"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
                                        </File>\r
                                        <File\r
                                                RelativePath="..\..\src\os\win\pa_win_util.c"\r
                                                                PreprocessorDefinitions=""\r
                                                        />\r
                                                </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|Win32"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|x64"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
                                        </File>\r
                                        <File\r
                                                RelativePath="..\..\src\os\win\pa_win_waveformat.c"\r
                                                                PreprocessorDefinitions=""\r
                                                        />\r
                                                </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|Win32"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
+                                               <FileConfiguration\r
+                                                       Name="ReleaseMinDependency|x64"\r
+                                                       >\r
+                                                       <Tool\r
+                                                               Name="VCCLCompilerTool"\r
+                                                               AdditionalIncludeDirectories=""\r
+                                                               PreprocessorDefinitions=""\r
+                                                       />\r
+                                               </FileConfiguration>\r
                                        </File>\r
                                </Filter>\r
                        </Filter>\r
                        Name="Header Files"\r
                        Filter="h;hpp;hxx;hm;inl"\r
                        >\r
+                       <File\r
+                               RelativePath="..\..\include\pa_asio.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\include\pa_win_ds.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\include\pa_win_wasapi.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\include\pa_win_waveformat.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\include\pa_win_wmme.h"\r
+                               >\r
+                       </File>\r
+                       <File\r
+                               RelativePath="..\..\include\portaudio.h"\r
+                               >\r
+                       </File>\r
                </Filter>\r
        </Files>\r
        <Globals>\r
index b7d2f0beddb61e4f37e4b7efe1f7d62a7c5d1b2c..5fe5e28cdccfb77a022aa59a9773aca00de70439 100644 (file)
@@ -1,8 +1,8 @@
 Hello
 
   This is a small list of steps in order to build portaudio
-(Currently v19-devel) into a VC6 DLL and lib file.
-This DLL contains all 3 current win32 PA APIS (MM/DS/ASIO)
+(Currently v19-devel) into a VS2005 DLL and lib file.
+This DLL contains all 5 current Win32 PA APIS (MME/DS/ASIO/WASAPI/WDMKS)
 
 1)Copy the source dirs that comes with the ASIO SDK inside src\hostapi\asio\ASIOSDK
   so you should now have example:
@@ -29,7 +29,7 @@ This DLL contains all 3 current win32 PA APIS (MM/DS/ASIO)
   Processor Pack(only works with above SP5)
      Latest known URL:
      http://msdn2.microsoft.com/en-us/vstudio/Aa718349.aspx
-        This isnt absolutely required for portaudio, but if you plan on using SSE intrinsics and similar things.
+        This isn't absolutely required for portaudio, but if you plan on using SSE intrinsics and similar things.
         Up to you to decide upon Service pack 5 or 6 depending on your need for intrinsics.
 
   Platform SDK (Feb 2003) : 
@@ -51,8 +51,9 @@ This DLL contains all 3 current win32 PA APIS (MM/DS/ASIO)
   *If you have 7.0(VC.NET/2001) or 7.1(VC.2003) *
   then I suggest you open portaudio.dsp (and convert if needed)
  
-  *If you have Visual Studio 2005*, I suggest you open the portaudio.sln file
-  which contains 4 configurations. Win32/x64 in both Release and Debug variants
+  *If you have Visual Studio 2005 * (or later), I suggest you open the portaudio.sln file
+  which contains 2 projects (portaudio & portaudio_static) each with 6 configurations: Win32/x64 in both Debug, Release and ReleaseMinDependency,
+  last of which removes dependency of all but basic OS system DLLs.
 
   hit compile and hope for the best.
  
@@ -88,22 +89,24 @@ To build PortAudio without ASIO support you need to:
 
   B. Make sure your project doesn't try to build the PortAudio ASIO
      implementation files:
-        src/hostapi/pa_asio.cpp src/hostapi/iasiothiscallresolver.cpp
+             src/hostapi/pa_asio.cpp
+        src/hostapi/iasiothiscallresolver.cpp
      If you're using one of the shipped projects remove them from the project.
 
-  C. Define the PA_NO_ASIO preprocessor symbol in the project properties.
+  C. Set the PA_USE_ASIO preprocessor symbol to zero (i.e. PA_USE_ASIO=0) in the project properties.
      In VS2005 this can be added under
      Project Properties > Configuration Properties > C/C++ > Preprocessor > Preprocessor Definitions
 
-     Defining PA_NO_ASIO stops src/os/win/pa_win_hostapis.c 
+     Setting PA_USE_ASIO=0 stops src/os/win/pa_win_hostapis.c 
      from trying to initialize the PA ASIO implementation.
 
-  D. Remove PaAsio_* entry points from portaudio.def
+  D. Remove PaAsio_* entry points from portaudio.def, or comment them out with ;
+
 
 A similar procedure can be used to omit any of the other host APIs from the 
 build. The relevant preprocessor symbols used by pa_win_hostapis.c are:
-PA_NO_WMME, PA_NO_DS, PA_NO_ASIO, PA_NO_WASAPI and PA_NO_WDMKS
-
+PA_USE_WMME, PA_USE_DSOUND, PA_USE_ASIO, PA_USE_WASAPI and PA_USE_WDMKS
 
 -----
-David Viens, davidv@plogue.com
\ No newline at end of file
+David Viens, davidv@plogue.com
+Robert Bielik, robert@xponaut.se
index 38cea262299a56a837961cd99bf5165a876b1a18..dcf1bdaabcae1dd4c9cac4d7b35cea796f17047f 100755 (executable)
Binary files a/configure and b/configure differ
index b1be08eff963e4c8f55f8b30228ae58be6262564..9f1061d3fac3a73418bb6616cc8df8741b06a7cd 100644 (file)
@@ -223,7 +223,7 @@ case "${host_os}" in
         PADLL="portaudio.dll"
         THREAD_CFLAGS="-mthreads"
         SHARED_FLAGS="-shared"
-        CFLAGS="$CFLAGS -I\$(top_srcdir)/include -DPA_NO_WMME -DPA_NO_ASIO -DPA_NO_WDMKS -DPA_NO_DS -DPA_NO_WASAPI"
+        CFLAGS="$CFLAGS -I\$(top_srcdir)/include -DPA_USE_WMME=0 -DPA_USE_ASIO=0 -DPA_USE_WDMKS=0 -DPA_USE_DS=0 -DPA_USE_WASAPI=0"
 
         if [[ "x$with_directx" = "xyes" ]]; then
             DXDIR="$with_dxdir"
@@ -232,7 +232,7 @@ case "${host_os}" in
             DLL_LIBS="${DLL_LIBS} -lwinmm -lm -L$DXDIR/lib -ldsound -lole32"
             #VC98="\"/c/Program Files/Microsoft Visual Studio/VC98/Include\""
             #CFLAGS="$CFLAGS -I$VC98 -DPA_NO_WMME -DPA_NO_ASIO"
-            CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/win -I$DXDIR/include -UPA_NO_DS"
+            CFLAGS="$CFLAGS -I\$(top_srcdir)/src/os/win -I$DXDIR/include -UPA_USE_DS -DPA_USE_DS=1"
         fi
 
         if [[ "x$with_asio" = "xyes" ]]; then
@@ -240,7 +240,7 @@ case "${host_os}" in
             add_objects src/hostapi/asio/pa_asio.o src/common/pa_ringbuffer.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/hostapi/asio/iasiothiscallresolver.o $ASIODIR/common/asio.o $ASIODIR/host/asiodrivers.o $ASIODIR/host/pc/asiolist.o
             LIBS="-lwinmm -lm -lole32 -luuid"
             DLL_LIBS="${DLL_LIBS} -lwinmm -lm -lole32 -luuid"
-            CFLAGS="$CFLAGS -ffast-math -fomit-frame-pointer -I\$(top_srcdir)/src/common -I\$(top_srcdir)/src/hostapi/asio -I$ASIODIR/host/pc -I$ASIODIR/common -I$ASIODIR/host -UPA_NO_ASIO -DWINDOWS"
+            CFLAGS="$CFLAGS -ffast-math -fomit-frame-pointer -I\$(top_srcdir)/src/common -I\$(top_srcdir)/src/hostapi/asio -I$ASIODIR/host/pc -I$ASIODIR/common -I$ASIODIR/host -UPA_USE_ASIO -DPA_USE_ASIO=1 -DWINDOWS"
             CXXFLAGS="$CFLAGS"
         fi
 
@@ -251,21 +251,21 @@ case "${host_os}" in
             DLL_LIBS="${DLL_LIBS} -lwinmm -lm -L$DXDIR/lib -luuid -lsetupapi -lole32"
             #VC98="\"/c/Program Files/Microsoft Visual Studio/VC98/Include\""
             #CFLAGS="$CFLAGS -I$VC98 -DPA_NO_WMME -DPA_NO_ASIO"
-            CFLAGS="$CFLAGS -I\$(top_srcdir)/src/common -I$DXDIR/include -UPA_NO_WDMKS"
+            CFLAGS="$CFLAGS -I\$(top_srcdir)/src/common -I$DXDIR/include -UPA_USE_WDMKS -DPA_USE_WDMKS=1"
         fi
 
         if [[ "x$with_wmme" = "xyes" ]]; then
             add_objects src/hostapi/wmme/pa_win_wmme.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_waveformat.o
             LIBS="-lwinmm -lm -lole32 -luuid"
             DLL_LIBS="${DLL_LIBS} -lwinmm"
-            CFLAGS="$CFLAGS -I\$(top_srcdir)/src/common -UPA_NO_WMME"
+            CFLAGS="$CFLAGS -I\$(top_srcdir)/src/common -UPA_USE_WMME -DPA_USE_WMME=1"
         fi
 
         if [[ "x$with_wasapi" = "xyes" ]]; then
             add_objects src/hostapi/wasapi/pa_win_wasapi.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_waveformat.o
             LIBS="-lwinmm -lm -lole32 -luuid"
             DLL_LIBS="${DLL_LIBS} -lwinmm"
-            CFLAGS="$CFLAGS -I\$(top_srcdir)/src/common -I\$(top_srcdir)/src/hostapi/wasapi/mingw-include -UPA_NO_WASAPI"
+            CFLAGS="$CFLAGS -I\$(top_srcdir)/src/common -I\$(top_srcdir)/src/hostapi/wasapi/mingw-include -UPA_USE_WASAPI -DPA_USE_WASAPI=1"
         fi
         ;;
 
@@ -273,7 +273,7 @@ case "${host_os}" in
         dnl Cygwin configuration
 
         OTHER_OBJS="src/hostapi/wmme/pa_win_wmme.o src/os/win/pa_win_hostapis.o src/os/win/pa_win_util.o src/os/win/pa_win_waveformat.o"
-        CFLAGS="$CFLAGS -DPA_NO_DS -DPA_NO_WDMKS -DPA_NO_ASIO -DPA_NO_WASAPI"
+        CFLAGS="$CFLAGS -DPA_USE_DS=0 -DPA_USE_WDMKS=0 -DPA_USE_ASIO=0 -DPA_USE_WASAPI=0 -DPA_USE_WMME=1"
         LIBS="-lwinmm -lm"
         PADLL="portaudio.dll"
         THREAD_CFLAGS="-mthreads"
index 7746747827f3fa089ebc07e65434db92e4be545f..4495097e911d15a58a4970869b62a761020df399 100644 (file)
  to manage and communicate with host API implementations.
 */
 
-
 #include "portaudio.h"
 
+/**
+The PA_NO_* host API macros are now deprecated in favor of PA_USE_* macros.
+PA_USE_* indicates whether a particular host API will be initialized by PortAudio.
+An undefined or 0 value indicates that the host API will not be used. A value of 1 
+indicates that the host API will be used. PA_USE_* macros should be left undefined 
+or defined to either 0 or 1.
+
+The code below ensures that PA_USE_* macros are always defined and have value
+0 or 1. Undefined symbols are defaulted to 0. Symbols that are neither 0 nor 1 
+are defaulted to 1.
+*/
+
+#if defined(PA_NO_ASIO) || defined(PA_NO_DS) || defined(PA_NO_WMME) || defined(PA_NO_WASAPI) || defined(PA_NO_WDMKS)
+#error "Portaudio: PA_NO_<APINAME> is no longer supported, please remove definition and use PA_USE_<APINAME> instead"
+#endif
+
+#ifndef PA_USE_ASIO
+#define PA_USE_ASIO 0
+#elif (PA_USE_ASIO != 0) && (PA_USE_ASIO != 1)
+#undef PA_USE_ASIO
+#define PA_USE_ASIO 1
+#endif 
+
+#ifndef PA_USE_DS
+#define PA_USE_DS 0
+#elif (PA_USE_DS != 0) && (PA_USE_DS != 1)
+#undef PA_USE_DS
+#define PA_USE_DS 1
+#endif 
+
+#ifndef PA_USE_WMME
+#define PA_USE_WMME 0
+#elif (PA_USE_WMME != 0) && (PA_USE_WMME != 1)
+#undef PA_USE_WMME
+#define PA_USE_WMME 1
+#endif 
+
+#ifndef PA_USE_WASAPI
+#define PA_USE_WASAPI 0
+#elif (PA_USE_WASAPI != 0) && (PA_USE_WASAPI != 1)
+#undef PA_USE_WASAPI
+#define PA_USE_WASAPI 1
+#endif 
+
+#ifndef PA_USE_WDMKS
+#define PA_USE_WDMKS 0
+#elif (PA_USE_WDMKS != 0) && (PA_USE_WDMKS != 1)
+#undef PA_USE_WDMKS
+#define PA_USE_WDMKS 1
+#endif 
+
 #ifdef __cplusplus
 extern "C"
 {
index 79e778f56c8747dd748f6ef07e033dc67976d2a8..02155032a0cdecd1f36084109ef750e15a77db0e 100644 (file)
@@ -2380,8 +2380,8 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
                reports the added latency separately.
             */
             PA_DEBUG(("PaAsio : ASIO InputLatency = %ld (%ld ms),\n         added buffProc:%ld (%ld ms),\n         added blocking:%ld (%ld ms)\n",
-                stream->inputLatency,
-                (long)( stream->inputLatency * (1000.0 / sampleRate) ),
+                stream->asioInputLatencyFrames,
+                (long)( stream->asioInputLatencyFrames * (1000.0 / sampleRate) ),
                 PaUtil_GetBufferProcessorInputLatency(&stream->bufferProcessor),
                 (long)( PaUtil_GetBufferProcessorInputLatency(&stream->bufferProcessor) * (1000.0 / sampleRate) ),
                 PaUtil_GetBufferProcessorInputLatency(&stream->blockingState->bufferProcessor) + (lBlockingBufferSize / framesPerBuffer - 1) * framesPerBuffer,
@@ -2471,8 +2471,8 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
                reports the added latency separately.
             */
             PA_DEBUG(("PaAsio : ASIO OutputLatency = %ld (%ld ms),\n         added buffProc:%ld (%ld ms),\n         added blocking:%ld (%ld ms)\n",
-                stream->outputLatency,
-                (long)( stream->inputLatency * (1000.0 / sampleRate) ),
+                stream->asioOutputLatencyFrames,
+                (long)( stream->asioOutputLatencyFrames * (1000.0 / sampleRate) ),
                 PaUtil_GetBufferProcessorOutputLatency(&stream->bufferProcessor),
                 (long)( PaUtil_GetBufferProcessorOutputLatency(&stream->bufferProcessor) * (1000.0 / sampleRate) ),
                 PaUtil_GetBufferProcessorOutputLatency(&stream->blockingState->bufferProcessor) + (lBlockingBufferSize / framesPerBuffer - 1) * framesPerBuffer,
@@ -2527,15 +2527,15 @@ static PaError OpenStream( struct PaUtilHostApiRepresentation *hostApi,
         // the code below prints the ASIO latency which doesn't include the
         // buffer processor latency. it reports the added latency separately
         PA_DEBUG(("PaAsio : ASIO InputLatency = %ld (%ld ms), added buffProc:%ld (%ld ms)\n",
-                stream->inputLatency,
-                (long)((stream->inputLatency*1000)/ sampleRate),  
+                stream->asioInputLatencyFrames,
+                (long)((stream->asioInputLatencyFrames*1000)/ sampleRate),  
                 PaUtil_GetBufferProcessorInputLatency(&stream->bufferProcessor),
                 (long)((PaUtil_GetBufferProcessorInputLatency(&stream->bufferProcessor)*1000)/ sampleRate)
                 ));
 
         PA_DEBUG(("PaAsio : ASIO OuputLatency = %ld (%ld ms), added buffProc:%ld (%ld ms)\n",
-                stream->outputLatency,
-                (long)((stream->outputLatency*1000)/ sampleRate), 
+                stream->asioOutputLatencyFrames,
+                (long)((stream->asioOutputLatencyFrames*1000)/ sampleRate), 
                 PaUtil_GetBufferProcessorOutputLatency(&stream->bufferProcessor),
                 (long)((PaUtil_GetBufferProcessorOutputLatency(&stream->bufferProcessor)*1000)/ sampleRate)
                 ));
index b132ce3f3a29f17de9e3406908e01a52d469f434..ca046143f4c9089b21b5a77b4c117bdae68e3a04 100644 (file)
@@ -41,7 +41,6 @@
  @ingroup hostapi_src
 */
 
-
 #include <assert.h>
 #include <stdio.h>
 #include <string.h> /* strlen() */
@@ -76,6 +75,9 @@
 #include "pa_win_waveformat.h"
 #include "pa_win_wdmks_utils.h"
 
+#ifndef PA_USE_WMME
+#error "Portaudio internal error: PA_USE_WMME=0/1 not defined. pa_hostapi.h should ensure that it is."
+#endif
 
 #if (defined(WIN32) && (defined(_MSC_VER) && (_MSC_VER >= 1200))) /* MSC version 6 and above */
 #pragma comment( lib, "dsound.lib" )
@@ -678,7 +680,7 @@ static PaError AddOutputDeviceInfoFromDirectSound(
         else
         {
 
-#ifndef PA_NO_WMME
+#if PA_USE_WMME
             if( caps.dwFlags & DSCAPS_EMULDRIVER )
             {
                 /* If WMME supported, then reject Emulated drivers because they are lousy. */
@@ -894,7 +896,7 @@ static PaError AddInputDeviceInfoFromDirectSoundCapture(
         }
         else
         {
-#ifndef PA_NO_WMME
+#if PA_USE_WMME
             if( caps.dwFlags & DSCAPS_EMULDRIVER )
             {
                 /* If WMME supported, then reject Emulated drivers because they are lousy. */
@@ -2832,5 +2834,3 @@ static signed long GetStreamWriteAvailable( PaStream* s )
     return 0;
 }
 
-
-
index 93032ece1e905a15adba4e7166ebf54f343be4a3..8070dbfeefef0e97752a13ce92a4a5e19635cf52 100644 (file)
     #define DYNAMIC_GUID(data) DYNAMIC_GUID_THUNK(data)
 #endif
 
+#if (defined(WIN32) && (defined(_MSC_VER) && (_MSC_VER >= 1200))) /* MSC version 6 and above */
+#pragma comment( lib, "setupapi.lib" )
+#endif
+
 /* use CreateThread for CYGWIN, _beginthreadex for all others */
 #ifndef __CYGWIN__
 #define CREATE_THREAD (HANDLE)_beginthreadex( 0, 0, ProcessingThreadProc, stream, 0, &stream->processingThreadId )
index 13d6c6f2626c56156a0ee92631f041533c082b60..7deafa1813c1988538a43ab7b37f5ee61b2c8a84 100644 (file)
@@ -42,7 +42,6 @@
     @brief Win32 host API initialization function table.
 */
 
-
 #include "pa_hostapi.h"
 
 #ifdef __cplusplus
@@ -65,27 +64,25 @@ PaError PaWasapi_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiInd
 PaUtilHostApiInitializer *paHostApiInitializers[] =
     {
 
-#ifndef PA_NO_WMME
+#if PA_USE_WMME
         PaWinMme_Initialize,
 #endif
 
-#ifndef PA_NO_DS
+#if PA_USE_DS
         PaWinDs_Initialize,
 #endif
 
-#ifndef PA_NO_ASIO
+#if PA_USE_ASIO
         PaAsio_Initialize,
 #endif
 
-#ifndef PA_NO_WASAPI
+#if PA_USE_WASAPI
                PaWasapi_Initialize,
 #endif
 
-/*
-#ifndef PA_NO_WDMKS
-       PaWinWdm_Initialize,
+#if PA_USE_WDMKS
+        PaWinWdm_Initialize,
 #endif
-*/
 
         //PaSkeleton_Initialize, /* just for testing */
 
index e868952da1b0fd12e712b747c8c7e16d3644548b..4862e6a54a7e844d5911fd8ed6755c5e4e13230c 100644 (file)
@@ -3,7 +3,7 @@
     @brief List available devices, including device information.
        @author Phil Burk http://www.softsynth.com
 
-    @note Define PA_NO_ASIO to compile this code on Windows without
+    @note Define PA_USE_ASIO=0 to compile this code on Windows without
         ASIO support.
 */
 /*
@@ -49,7 +49,7 @@
 #include "portaudio.h"
 
 #ifdef WIN32
-#ifndef PA_NO_ASIO
+#if PA_USE_ASIO
 #include "pa_asio.h"
 #endif
 #endif
@@ -167,7 +167,7 @@ int main(void)
         printf( "Default high output latency = %8.3f\n", deviceInfo->defaultHighOutputLatency  );
 
 #ifdef WIN32
-#ifndef PA_NO_ASIO
+#if PA_USE_ASIO
 /* ASIO specific latency information */
         if( Pa_GetHostApiInfo( deviceInfo->hostApi )->type == paASIO ){
             long minLatency, maxLatency, preferredLatency, granularity;
@@ -184,7 +184,7 @@ int main(void)
             else
                 printf( "ASIO buffer granularity     = %ld\n", granularity  );
         }
-#endif /* !PA_NO_ASIO */
+#endif /* PA_USE_ASIO */
 #endif /* WIN32 */
 
         printf( "Default sample rate         = %8.2f\n", deviceInfo->defaultSampleRate );