2013/6/8 Rafaël Carré <fun...@videolan.org>: > --- > mingw-w64-crt/Makefile.am | 6 ++-- > mingw-w64-crt/Makefile.in | 4 ++- > .../lib32/api-ms-win-core-winrt-l1-1-0.def | 9 +++++ > mingw-w64-crt/lib32/libruntimeobject.a | 1 + > .../lib64/api-ms-win-core-winrt-l1-1-0.def | 9 +++++ > mingw-w64-crt/lib64/libruntimeobject.a | 1 + > mingw-w64-headers/include/roapi.h | 42 > ++++++++++++++++++++++ > 7 files changed, 69 insertions(+), 3 deletions(-) > create mode 100644 mingw-w64-crt/lib32/api-ms-win-core-winrt-l1-1-0.def > create mode 100644 mingw-w64-crt/lib64/api-ms-win-core-winrt-l1-1-0.def > create mode 100644 mingw-w64-headers/include/roapi.h > > diff --git a/mingw-w64-crt/Makefile.am b/mingw-w64-crt/Makefile.am > index af5db9f..d14c75c 100644 > --- a/mingw-w64-crt/Makefile.am > +++ b/mingw-w64-crt/Makefile.am > @@ -543,7 +543,8 @@ lib32_DATA = \ > lib32/libd3dx10.a lib32/libd3dx11.a lib32/libd3dcsxd.a \ > lib32/libd3dcompiler.a lib32/libwinhttp.a lib32/libmsvcr110.a \ > lib32/libdevmgr.a lib32/libdevobj.a lib32/libdevrtl.a \ > - lib32/libapi-ms-win-core-winrt-string-l1-1-0.a lib32/libruntimeobject.a > + lib32/libapi-ms-win-core-winrt-string-l1-1-0.a lib32/libruntimeobject.a \ > + lib32/libapi-ms-win-core-winrt-l1-1-0.a > > if ! W32API > lib32_DATA += lib32/libglut.a > @@ -1045,7 +1046,8 @@ lib64_DATA = \ > lib64/libxapofx.a lib64/libx3daudio.a lib64/libd3dx9.a \ > lib64/libd3dx10.a lib64/libd3dx11.a lib64/libd3dcsxd.a \ > lib64/libd3dcompiler.a lib64/libwinhttp.a lib64/libmsvcr110.a \ > - lib64/libapi-ms-win-core-winrt-string-l1-1-0.a lib64/libruntimeobject.a > + lib64/libapi-ms-win-core-winrt-string-l1-1-0.a lib64/libruntimeobject.a \ > + lib64/libapi-ms-win-core-winrt-l1-1-0.a > > lib64/libcrtdll.a lib64/libmsvcrt.a lib64/libmsvcr80.a: lib64/lib%.a: > lib64/%.def > $(DTDEF64) $< --dllname $*.dll > diff --git a/mingw-w64-crt/Makefile.in b/mingw-w64-crt/Makefile.in > index 39ad3d5..a6dc416 100644 > --- a/mingw-w64-crt/Makefile.in > +++ b/mingw-w64-crt/Makefile.in > @@ -4152,6 +4152,7 @@ src_intrincs32 = \ > @LIB32_TRUE@ lib32/libmsvcr110.a lib32/libdevmgr.a \ > @LIB32_TRUE@ lib32/libdevobj.a lib32/libdevrtl.a \ > @LIB32_TRUE@ lib32/libapi-ms-win-core-winrt-string-l1-1-0.a > lib32/libruntimeobject.a \ > +@LIB32_TRUE@ lib32/libapi-ms-win-core-winrt-l1-1-0.a \ > @LIB32_TRUE@ $(am__append_4) > > # End 32-bit runtime > @@ -4528,7 +4529,8 @@ src_intrincs32 = \ > @LIB64_TRUE@ lib64/libxapofx.a lib64/libx3daudio.a > lib64/libd3dx9.a \ > @LIB64_TRUE@ lib64/libd3dx10.a lib64/libd3dx11.a > lib64/libd3dcsxd.a \ > @LIB64_TRUE@ lib64/libd3dcompiler.a lib64/libwinhttp.a > lib64/libmsvcr110.a \ > -@LIB64_TRUE@ lib64/libapi-ms-win-core-winrt-string-l1-1-0.a > lib64/libruntimeobject.a > +@LIB64_TRUE@ lib64/libapi-ms-win-core-winrt-string-l1-1-0.a > lib64/libruntimeobject.a \ > +@LIB64_TRUE@ lib64/libapi-ms-win-core-winrt-l1-1-0.a > > > # Don't compile these, but install as is: > diff --git a/mingw-w64-crt/lib32/api-ms-win-core-winrt-l1-1-0.def > b/mingw-w64-crt/lib32/api-ms-win-core-winrt-l1-1-0.def > new file mode 100644 > index 0000000..3c66e9b > --- /dev/null > +++ b/mingw-w64-crt/lib32/api-ms-win-core-winrt-l1-1-0.def > @@ -0,0 +1,9 @@ > +LIBRARY "api-ms-win-core-winrt-l1-1-0.dll" > +EXPORTS > +RoActivateInstance@8 > +RoGetActivationFactory@12 > +RoGetApartmentIdentifier@4 > +RoInitialize@4 > +RoRegisterActivationFactories@16 > +RoRevokeActivationFactories@4 > +RoUninitialize > diff --git a/mingw-w64-crt/lib32/libruntimeobject.a > b/mingw-w64-crt/lib32/libruntimeobject.a > index 8501a16..bc33fdd 100644 > --- a/mingw-w64-crt/lib32/libruntimeobject.a > +++ b/mingw-w64-crt/lib32/libruntimeobject.a > @@ -1 +1,2 @@ > INPUT(libapi-ms-win-core-winrt-string-l1-1-0.a) > +INPUT(libapi-ms-win-core-winrt-l1-1-0.a) > diff --git a/mingw-w64-crt/lib64/api-ms-win-core-winrt-l1-1-0.def > b/mingw-w64-crt/lib64/api-ms-win-core-winrt-l1-1-0.def > new file mode 100644 > index 0000000..4ae91ba > --- /dev/null > +++ b/mingw-w64-crt/lib64/api-ms-win-core-winrt-l1-1-0.def > @@ -0,0 +1,9 @@ > +LIBRARY "api-ms-win-core-winrt-l1-1-0.dll" > +EXPORTS > +RoActivateInstance > +RoGetActivationFactory > +RoGetApartmentIdentifier > +RoInitialize > +RoRegisterActivationFactories > +RoRevokeActivationFactories > +RoUninitialize > diff --git a/mingw-w64-crt/lib64/libruntimeobject.a > b/mingw-w64-crt/lib64/libruntimeobject.a > index 8501a16..bc33fdd 100644 > --- a/mingw-w64-crt/lib64/libruntimeobject.a > +++ b/mingw-w64-crt/lib64/libruntimeobject.a > @@ -1 +1,2 @@ > INPUT(libapi-ms-win-core-winrt-string-l1-1-0.a) > +INPUT(libapi-ms-win-core-winrt-l1-1-0.a) > diff --git a/mingw-w64-headers/include/roapi.h > b/mingw-w64-headers/include/roapi.h > new file mode 100644 > index 0000000..34f0a50 > --- /dev/null > +++ b/mingw-w64-headers/include/roapi.h > @@ -0,0 +1,42 @@ > +/** > + * 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 <windows.h> > +#include <sdkddkver.h> > +#include <hstring.h> > +#include <inspectable.h> > +#include <activation.h> > + > +#if _WIN32_WINNT >= _WIN32_WINNT_WIN8 > + > +typedef enum RO_INIT_TYPE { > + RO_INIT_MULTITHREADED = 1 > +} RO_INIT_TYPE; > + > +typedef struct {}* RO_REGISTRATION_COOKIE; > + > +typedef HRESULT (WINAPI * PFNGETACTIVATIONFACTORY)(HSTRING, > IActivationFactory **); > + > +/* */ > + > +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); > + > +#endif > +#endif > -- > 1.8.1.2
Patch is ok. the ro-part need some more love, but as starting point patch is ok. Thanks, Kai ------------------------------------------------------------------------------ How ServiceNow helps IT people transform IT departments: 1. A cloud service to automate IT design, transition and operations 2. Dashboards that offer high-level views of enterprise services 3. A single system of record for all IT processes http://p.sf.net/sfu/servicenow-d2d-j _______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public