mirror of
https://github.com/id-Software/DOOM-3-BFG.git
synced 2024-12-03 09:22:45 +00:00
Fixed compile and linker problems on Windows 7 with Visual C++ 2010 Express Edition
This commit is contained in:
parent
ac30c96ccb
commit
1c08bda8dd
5 changed files with 104 additions and 17 deletions
|
@ -655,7 +655,11 @@ void I_InitSoundChannel( int channel, int numOutputChannels_ ) {
|
|||
activeSound_t *soundchannel = &activeSounds[ channel ];
|
||||
|
||||
// RB: fixed non-aggregates cannot be initialized with initializer list
|
||||
#if (_WIN32_WINNT >= 0x0602 /*_WIN32_WINNT_WIN8*/)
|
||||
X3DAUDIO_VECTOR ZeroVector( 0.0f, 0.0f, 0.0f );
|
||||
#else
|
||||
X3DAUDIO_VECTOR ZeroVector = { 0.0f, 0.0f, 0.0f };
|
||||
#endif
|
||||
// RB end
|
||||
|
||||
// Set up emitter parameters
|
||||
|
@ -721,7 +725,11 @@ void I_InitSound() {
|
|||
int i;
|
||||
|
||||
// RB: non-aggregates cannot be initialized with initializer list
|
||||
#if (_WIN32_WINNT >= 0x0602 /*_WIN32_WINNT_WIN8*/)
|
||||
X3DAUDIO_VECTOR ZeroVector( 0.0f, 0.0f, 0.0f );
|
||||
#else
|
||||
X3DAUDIO_VECTOR ZeroVector = { 0.0f, 0.0f, 0.0f };
|
||||
#endif
|
||||
// RB end
|
||||
|
||||
// Set up listener parameters
|
||||
|
|
|
@ -879,6 +879,7 @@ if(MSVC)
|
|||
dxguid
|
||||
#dxerr
|
||||
Xinput
|
||||
xaudio2.lib
|
||||
)
|
||||
add_definitions(-DUSE_XINPUT)
|
||||
else()
|
||||
|
@ -888,18 +889,6 @@ if(MSVC)
|
|||
endif()
|
||||
|
||||
if(USE_MFC_TOOLS)
|
||||
# find_package(MFC REQUIRED)
|
||||
# if(MFC_FOUND)
|
||||
# include_directories(${MFC_INCLUDE_DIR})
|
||||
# link_directories(${MFC_LIBRARY_DIR})
|
||||
# endif()
|
||||
|
||||
# find_package(ATL REQUIRED)
|
||||
# if(ATL_FOUND)
|
||||
# include_directories(${ATL_INCLUDE_DIR})
|
||||
# link_directories(${ATL_LIBRARY_DIR})
|
||||
# add_definitions(-DUSE_MFC6_WITH_ATL7)
|
||||
# endif()
|
||||
|
||||
include_directories(libs/atlmfc/include)
|
||||
if(CMAKE_CL_64)
|
||||
|
@ -957,6 +946,5 @@ if(MSVC)
|
|||
iphlpapi
|
||||
winmm
|
||||
wsock32.lib
|
||||
xaudio2.lib
|
||||
)
|
||||
endif()
|
||||
|
|
|
@ -17,15 +17,17 @@ if(WIN32)
|
|||
find_library(DirectX_DINPUT8_LIBRARY NAMES dinput8 HINTS $ENV{DXSDK_DIR} PATH_SUFFIXES ${DirectX_LIBPATH_SUFFIX})
|
||||
find_library(DirectX_DSOUND_LIBRARY NAMES dsound HINTS $ENV{DXSDK_DIR} PATH_SUFFIXES ${DirectX_LIBPATH_SUFFIX})
|
||||
find_library(DirectX_DXGUID_LIBRARY NAMES dxguid HINTS $ENV{DXSDK_DIR} PATH_SUFFIXES ${DirectX_LIBPATH_SUFFIX})
|
||||
find_library(DirectX_DXERR_LIBRARY NAMES dxerr HINTS $ENV{DXSDK_DIR} PATH_SUFFIXES ${DirectX_LIBPATH_SUFFIX})
|
||||
#find_library(DirectX_DXERR_LIBRARY NAMES dxerr HINTS $ENV{DXSDK_DIR} PATH_SUFFIXES ${DirectX_LIBPATH_SUFFIX})
|
||||
find_library(DirectX_XINPUT_LIBRARY NAMES Xinput HINTS $ENV{DXSDK_DIR} PATH_SUFFIXES ${DirectX_LIBPATH_SUFFIX})
|
||||
find_library(DirectX_X3DAUDIO_LIBRARY NAMES x3daudio HINTS $ENV{DXSDK_DIR} PATH_SUFFIXES ${DirectX_LIBPATH_SUFFIX})
|
||||
|
||||
set(DirectX_LIBRARIES
|
||||
${DirectX_DINPUT8_LIBRARY}
|
||||
${DirectX_DSOUND_LIBRARY}
|
||||
${DirectX_DXGUID_LIBRARY}
|
||||
${DirectX_DXERR_LIBRARY}
|
||||
#${DirectX_DXERR_LIBRARY}
|
||||
${DirectX_XINPUT_LIBRARY}
|
||||
${DirectX_X3DAUDIO_LIBRARY}
|
||||
)
|
||||
|
||||
# handle the QUIETLY and REQUIRED arguments and set DirectX_FOUND to TRUE if
|
||||
|
@ -37,8 +39,9 @@ if(WIN32)
|
|||
DirectX_DINPUT8_LIBRARY
|
||||
DirectX_DSOUND_LIBRARY
|
||||
DirectX_DXGUID_LIBRARY
|
||||
DirectX_DXERR_LIBRARY
|
||||
#DirectX_DXERR_LIBRARY
|
||||
DirectX_XINPUT_LIBRARY
|
||||
DirectX_X3DAUDIO_LIBRARY
|
||||
)
|
||||
|
||||
mark_as_advanced(DirectX_LIBRARIES DirectX_INCLUDE_DIR)
|
||||
|
|
80
neo/sys/win32/win_nanoafx.h
Normal file
80
neo/sys/win32/win_nanoafx.h
Normal file
|
@ -0,0 +1,80 @@
|
|||
#ifndef __WIN_NANOAFX_HPP__
|
||||
#define __WIN_NANOAFX_HPP__
|
||||
|
||||
#define _T(n) L##n
|
||||
|
||||
class CComBSTR : public _bstr_t
|
||||
{
|
||||
public:
|
||||
inline CComBSTR( const wchar_t* str ) : _bstr_t( str )
|
||||
{
|
||||
}
|
||||
|
||||
inline CComBSTR( const char* str ) : _bstr_t( str )
|
||||
{
|
||||
}
|
||||
};
|
||||
|
||||
class CComVariant : public tagVARIANT
|
||||
{
|
||||
};
|
||||
|
||||
template<class T>
|
||||
class CComPtr
|
||||
{
|
||||
private:
|
||||
T* _ptr;
|
||||
|
||||
public:
|
||||
inline CComPtr()
|
||||
{
|
||||
_ptr = NULL;
|
||||
}
|
||||
|
||||
inline CComPtr( T* ptr )
|
||||
{
|
||||
if( ptr )
|
||||
{
|
||||
ptr->AddRef();
|
||||
_ptr = ptr;
|
||||
}
|
||||
}
|
||||
|
||||
inline ~CComPtr()
|
||||
{
|
||||
if( _ptr )
|
||||
_ptr->Release();
|
||||
_ptr = NULL;
|
||||
}
|
||||
|
||||
inline CComPtr& operator = ( T* ptr )
|
||||
{
|
||||
if( ptr )
|
||||
{
|
||||
ptr->AddRef();
|
||||
_ptr = ptr;
|
||||
}
|
||||
}
|
||||
|
||||
inline bool operator == ( T* ptr )
|
||||
{
|
||||
return _ptr == ptr;
|
||||
}
|
||||
|
||||
inline T* operator -> ()
|
||||
{
|
||||
return _ptr;
|
||||
}
|
||||
|
||||
inline T** operator & ()
|
||||
{
|
||||
return &_ptr;
|
||||
}
|
||||
|
||||
inline operator T* ()
|
||||
{
|
||||
return _ptr;
|
||||
}
|
||||
};
|
||||
|
||||
#endif
|
|
@ -41,12 +41,20 @@ If you have questions concerning this license or the applicable additional terms
|
|||
#undef StrCmpN
|
||||
#undef StrCmpNI
|
||||
#undef StrCmpI
|
||||
#include <atlbase.h>
|
||||
|
||||
|
||||
#include <comdef.h>
|
||||
#include <comutil.h>
|
||||
#include <Wbemidl.h>
|
||||
|
||||
// RB: no <atlbase.h> with Visual C++ 2010 Express
|
||||
#if defined(USE_MFC_TOOLS)
|
||||
#include <atlbase.h>
|
||||
#else
|
||||
#include "win_nanoafx.h"
|
||||
#endif
|
||||
// RB end
|
||||
|
||||
#pragma comment (lib, "wbemuuid.lib")
|
||||
|
||||
#pragma warning(disable:4740) // warning C4740: flow in or out of inline asm code suppresses global optimization
|
||||
|
|
Loading…
Reference in a new issue