- Partly rewrite SysAudio as it is no longer required to store client specific information per connection since wdmaud just opens one connection
- Verify all audio handles at incoming irp
svn path=/trunk/; revision=41371
added tools/rbuild/backend/mingw/compilers
added tools/rbuild/backend/mingw/compilers/gcc.mak
added tools/rbuild/backend/mingw/compilers/msc.mak
added tools/rbuild/backend/mingw/linkers
added tools/rbuild/backend/mingw/linkers/ld.mak
added tools/rbuild/backend/mingw/linkers/mslink.mak
modified tools/rbuild/backend/mingw/mingw.cpp
modified tools/rbuild/backend/mingw/modulehandler.cpp
modified tools/rbuild/backend/mingw/rules.mak
modified tools/rbuild/rbuild.h
Moved linker and compiler rules in separate files
Renamed compiler rules to more generic names
New compiler rules for dependencies and preprocessor modes
Rules for Microsoft C/C++ Compiler
Linker rule file stubs
modified tools/rbuild/module.cpp
modified tools/rbuild/project.cpp
All elements now support "compilerset" and "linkerset" conditional attributes
svn path=/trunk/; revision=41368
deleted tools/msc_helper/msc_helper.cpp
deleted tools/msc_helper/msc_helper.rbuild
added tools/rbuild_helper
deleted tools/rbuild_helper/msc_helper.cpp
deleted tools/rbuild_helper/msc_helper.rbuild
added tools/rbuild_helper/rbuild_helper.rbuild
msc_helper renamed to rbuild_helper, because it could be useful to more than just Visual C++
added tools/rbuild_helper/rbuild_helper.cpp
Allow rbuild_helper to override any environment variable, given an override prefix (e.g., %VAR% will be replaced by %<override prefix>VAR%)
modified tools/tools.rbuild
Build rbuild_helper by default
svn path=/trunk/; revision=41366
- Pass a create item and use an object class when creating an object header
- Return zero mixer count when wdmaud fails to enumerate virtual device count
- Should fix high cpu usage after installing audio drivers
svn path=/trunk/; revision=41357
- Create a KSTOPOLOGY struct when creating the subdevice descriptor and pass the struct to KsTopologyPropertyHandler
- Implement enumerating mixer devices
- Change handle array to contain the target device type. Mixer handles are not real handles, they are just pseudo handles
- Forward KSPROPSETID_Topology request to portcls (sysaudio)
svn path=/trunk/; revision=41352
- Call MiniportCoRequest in connection-oriented miniports
- Now our NDIS loads all the way to the ASSERT for unsupported media on XP
svn path=/trunk/; revision=41348
- Now XP's intermediate miniport drivers can load on ROS's NDIS
- More work still needs to be done to get them working though
svn path=/trunk/; revision=41346
modified tools/rbuild/backend/mingw/mingw.h
From now on, the MinGW back-end will also support the Microsoft command line C/C++ compiler (cl) and incremental linker (link). Support is currently limited to detecting the tools, and invoking them with the wrong arguments. Only Windows hosts are currently supported
added tools/rbuild/backend/mingw/mstools_detection.cpp
modified tools/rbuild/rbuild.mak
Auto-detection of Microsoft compiler and linker: if rbuild finds them in the path, it will use those. Otherwise, it will look for the highest version installed by any of the supported Microsoft products. Supported Microsoft products are Visual Studio 2005 and higher, Visual C++ Express and Windows DDK version 6001 and higher. Optimizing versions of the compiler will take precedence over "standard edition" compilers, regardless of version number
modified tools/rbuild/configuration.cpp
modified tools/rbuild/rbuild.cpp
modified tools/rbuild/rbuild.h
New command line options for rbuild to choose the tools set for the MinGW back-end: -Mc<compiler set>, -Ml<linker set>, -M<build tools set>. Defaults to -Mgnu, so that support for Microsoft tools has to be opted into
svn path=/trunk/; revision=41343
- Create the pin on the correct filter by using the filters object class
- Remove filter object class before performing actual create request
- Remove object header from audio filter when closing
- Retrieve internal object class name with internal IOCTL_KS_OBJECT_CLASS
- Avoid using interface name as ReactOS doesn't support it
- Store object class name when creating the object header for the audio sub device
- Implement IPortFilterTopology interface
- Activate pin property handle for port topology driver
- There is no need to create a handle to sysaudio for each application opening wdmaud, use only one connection per driver basis
- Pass object create class to pin creation method by duplicating KsCreatePin
- Audio devices should now be accessible again
svn path=/trunk/; revision=41341