Define _MIDL_USE_GUIDDEF_, this causes __decspec(selectany) to be used on the iids. This way we don't need any linker flags to silence warnings and it also fixes errors when linking later.
svn path=/branches/cmake-bringup/; revision=50573
The old uuid library was one file containing all the uuids, generated from the psdk headers, which results in all GUIDs being linked, as soon as a single one is used. Also while widl creates DEFINE_GUID() entries in the header files, midl only creates "extern GUID", so this didn't work on MSVC. The new version uses iid files generated from the idl files and some extra C files. This works with both midl and widl, reduces overhead when linking uuids and is much closer to MS uuid lib.
svn path=/branches/cmake-bringup/; revision=50569
Fix crt/bootcdregtest regression, due to _USER32_WSPRINTF.
add_definitions does not apply to target, but current directory.
svn path=/branches/cmake-bringup/; revision=50535
On MSVC mark abs, labs and strcmp as intrinsics (needed when compiling with /O2+) and disable a warning that they are not intrinsics (when compiled with /O1)
svn path=/branches/cmake-bringup/; revision=50494
- Delete an unneeded lib.mak
- Don't build bin2c, we don't seem to need it.
- A minor cleanup, no functionality change intended.
svn path=/branches/cmake-bringup/; revision=50308
Add a number of GUIDs. They are duplicated from idl generated headers, because of a small difference between widl and midl. widl generates "DEFINE_GUID" entries for each interface, while midl generates "extern GUID" only. The latter matching MS SDK headers. If someone can think of a more elegant way of solving this, let me know.
svn path=/branches/cmake-bringup/; revision=49837
- Use ___readcr4 instead of __readcr4, because MSVC doesn't like this intrinsic to be redefined.
- Add _ftol2
svn path=/branches/cmake-bringup/; revision=49679
- Add #pragma function to a number of intrisics that we implement to avoid a compiler error of MSVC
- Add a workaround to prevent some functions from being inlined
- Move sqrtf out of i386 directory
- Convert a number of inline assembly functions to raw assembly
svn path=/branches/cmake-bringup/; revision=49534
- Make all x86assembly ML compatible
- Remove memcpy, it was duplicated from memmove, copy the label instead
- Guard some code against compilation on msvc, as these functions are intrinsics on MSVC and cannot be implemented
- Fix some x64 assembly (don't modify stack below rsp)
svn path=/branches/cmake-bringup/; revision=49421