mirror of
https://github.com/holub/mame
synced 2025-07-02 00:29:37 +03:00
Add a couple msys2 updated mingw headers to winsdk-override to support linux cross-compile with stock mingw-w64 (nw)
This commit is contained in:
parent
d348747601
commit
f37865b329
93
3rdparty/compat/winsdk-override/roapi.h
vendored
Normal file
93
3rdparty/compat/winsdk-override/roapi.h
vendored
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
/**
|
||||||
|
* This file has no copyright assigned and is placed in the Public Domain.
|
||||||
|
* This file is part of the mingw-w64 runtime package.
|
||||||
|
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||||
|
*/
|
||||||
|
#ifndef __ROAPI_H__
|
||||||
|
#define __ROAPI_H__
|
||||||
|
|
||||||
|
#include <winapifamily.h>
|
||||||
|
#include <windows.h>
|
||||||
|
#include <sdkddkver.h>
|
||||||
|
#include <hstring.h>
|
||||||
|
#include <inspectable.h>
|
||||||
|
#include <activation.h>
|
||||||
|
|
||||||
|
typedef enum RO_INIT_TYPE {
|
||||||
|
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
|
||||||
|
RO_INIT_SINGLETHREADED = 0,
|
||||||
|
#endif
|
||||||
|
RO_INIT_MULTITHREADED = 1
|
||||||
|
} RO_INIT_TYPE;
|
||||||
|
|
||||||
|
typedef struct { } *RO_REGISTRATION_COOKIE;
|
||||||
|
|
||||||
|
typedef HRESULT (WINAPI *PFNGETACTIVATIONFACTORY)(HSTRING, IActivationFactory **);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
HRESULT WINAPI RoActivateInstance(HSTRING activatableClassId, IInspectable **instance);
|
||||||
|
|
||||||
|
HRESULT WINAPI RoGetActivationFactory(HSTRING activatableClassId, REFIID iid, void **factory);
|
||||||
|
|
||||||
|
HRESULT WINAPI RoGetApartmentIdentifier(UINT64 *apartmentIdentifier);
|
||||||
|
|
||||||
|
HRESULT WINAPI RoInitialize(RO_INIT_TYPE initType);
|
||||||
|
|
||||||
|
HRESULT WINAPI RoRegisterActivationFactories(HSTRING *activatableClassIds, PFNGETACTIVATIONFACTORY *activationFactoryCallbacks, UINT32 count, RO_REGISTRATION_COOKIE *cookie);
|
||||||
|
|
||||||
|
void WINAPI RoRevokeActivationFactories(RO_REGISTRATION_COOKIE cookie);
|
||||||
|
|
||||||
|
void WINAPI RoUninitialize(void);
|
||||||
|
|
||||||
|
typedef interface IApartmentShutdown IApartmentShutdown;
|
||||||
|
DECLARE_HANDLE (APARTMENT_SHUTDOWN_REGISTRATION_COOKIE);
|
||||||
|
|
||||||
|
HRESULT WINAPI RoRegisterForApartmentShutdown (IApartmentShutdown *callbackObj, UINT64 *apartmentId, APARTMENT_SHUTDOWN_REGISTRATION_COOKIE *regCookie);
|
||||||
|
|
||||||
|
HRESULT WINAPI RoUnregisterForApartmentShutdown (APARTMENT_SHUTDOWN_REGISTRATION_COOKIE regCookie);
|
||||||
|
|
||||||
|
HRESULT WINAPI RoGetApartmentIdentifier (UINT64 *apartmentId);
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
|
||||||
|
namespace Windows {
|
||||||
|
namespace Foundation {
|
||||||
|
__inline HRESULT Initialize (RO_INIT_TYPE it
|
||||||
|
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
|
||||||
|
= RO_INIT_SINGLETHREADED
|
||||||
|
#endif
|
||||||
|
) { return RoInitialize (it); }
|
||||||
|
__inline void Uninitialize ()
|
||||||
|
{ RoUninitialize (); }
|
||||||
|
|
||||||
|
template<class T> __inline HRESULT GetActivationFactory(HSTRING classid, T **factory) {
|
||||||
|
return RoGetActivationFactory(classid, IID_INS_ARGS(factory));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace ABI {
|
||||||
|
namespace Windows {
|
||||||
|
namespace Foundation {
|
||||||
|
__inline HRESULT Initialze (RO_INIT_TYPE it
|
||||||
|
#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
|
||||||
|
= RO_INIT_SINGLETHREADED
|
||||||
|
#endif
|
||||||
|
) { return RoInitialize (it); }
|
||||||
|
__inline void Uninitialize ()
|
||||||
|
{ RoUninitialize (); }
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T> __inline HRESULT GetActivationFactory(HSTRING classid, T **factory) {
|
||||||
|
return RoGetActivationFactory(classid, IID_INS_ARGS(factory));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
36
3rdparty/compat/winsdk-override/wrl/internal.h
vendored
Normal file
36
3rdparty/compat/winsdk-override/wrl/internal.h
vendored
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/**
|
||||||
|
* This file has no copyright assigned and is placed in the Public Domain.
|
||||||
|
* This file is part of the mingw-w64 runtime package.
|
||||||
|
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _WRL_INTERNAL_H_
|
||||||
|
#define _WRL_INTERNAL_H_
|
||||||
|
|
||||||
|
#include <windows.h>
|
||||||
|
|
||||||
|
namespace Microsoft {
|
||||||
|
namespace WRL {
|
||||||
|
namespace Details {
|
||||||
|
struct BoolStruct {
|
||||||
|
int Member;
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef int BoolStruct::* BoolType;
|
||||||
|
|
||||||
|
inline void DECLSPEC_NORETURN RaiseException(HRESULT hr, DWORD flags = EXCEPTION_NONCONTINUABLE) throw() {
|
||||||
|
::RaiseException(static_cast<DWORD>(hr), flags, 0, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
template <bool b, typename T = void>
|
||||||
|
struct EnableIf {};
|
||||||
|
|
||||||
|
template <typename T>
|
||||||
|
struct EnableIf<true, T> {
|
||||||
|
typedef T type;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
@ -121,12 +121,10 @@ function osdmodulesbuild()
|
|||||||
MAME_DIR .. "3rdparty/compat/mingw",
|
MAME_DIR .. "3rdparty/compat/mingw",
|
||||||
}
|
}
|
||||||
|
|
||||||
if _OPTIONS["MODERN_WIN_API"]~="1" then
|
|
||||||
includedirs {
|
includedirs {
|
||||||
MAME_DIR .. "3rdparty/compat/winsdk-override",
|
MAME_DIR .. "3rdparty/compat/winsdk-override",
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
end
|
|
||||||
|
|
||||||
if _OPTIONS["NO_OPENGL"]=="1" then
|
if _OPTIONS["NO_OPENGL"]=="1" then
|
||||||
defines {
|
defines {
|
||||||
|
Loading…
Reference in New Issue
Block a user