added mingw-w64-angleproject
This commit is contained in:
parent
d26b05d6df
commit
4369019dc7
|
@ -0,0 +1,152 @@
|
|||
# Maintainer: Martchus <martchus@gmx.net>
|
||||
# Contributor: ant32 <antreimer@gmail.com>
|
||||
# Contributor: Filip Brcic <brcha@gna.org>
|
||||
# Contributor: xantares
|
||||
# Contributor: jellysheep <max DOT mail AT dameweb DOT de>
|
||||
|
||||
pkgname=mingw-w64-angleproject
|
||||
pkgver=2.1.r5571.7a533f7
|
||||
pkgrel=1
|
||||
pkgdesc='Angle project (mingw-w64)'
|
||||
arch=('any')
|
||||
url='https://chromium.googlesource.com/angle/angle/+/master/README.md'
|
||||
license=('BSD')
|
||||
depends=('mingw-w64-crt')
|
||||
makedepends=('mingw-w64-gcc' 'git' 'gyp-git' 'python')
|
||||
options=('!strip' '!buildflags' 'staticlibs')
|
||||
source=('angleproject::git+https://chromium.googlesource.com/angle/angle#commit=7a533f7'
|
||||
0000-build-fix.patch
|
||||
angleproject-export-shader-symbols.patch
|
||||
angleproject-include-import-library-and-use-def-file.patch
|
||||
libEGL_mingw32.def
|
||||
libGLESv2_mingw32.def
|
||||
d3d11sdklayers.h
|
||||
versionhelpers.h
|
||||
d3d10_1.h
|
||||
dxgi1_2.h
|
||||
sdkddkver.h
|
||||
d3d11.h
|
||||
dcomp{,types}.h
|
||||
dcompanimation.h)
|
||||
md5sums=('SKIP'
|
||||
'3caf19560f2b8cac70f4a27b23093775'
|
||||
'70615a5e327a53fd60cc4dec916842c0'
|
||||
'2ca332d9c13bae82300d417595e1d48d'
|
||||
'232a2f50c3b55247f95fecfab1bec60e'
|
||||
'f5519fd7fc7f654c0805fbd802a5722d'
|
||||
'02bef8272f7df5b8e7fc4bee89cf3c52'
|
||||
'3cff6bdf031418eb81caa831f24b118a'
|
||||
'b620d8418c7b5115621cfb89b8d3dc2b'
|
||||
'f3b66ecb8cb5af6cb71a71de9234d26f'
|
||||
'454393b36ee27e127dfa5fbf5d0adb0e'
|
||||
'f376a93018814607ed6d52489177e952'
|
||||
'9510881e40ee68377c07b144f1137398'
|
||||
'66bb469db698d338d2ab614d08f88344'
|
||||
'1bea7a037831f6762fc41b944fd97cf2')
|
||||
_architectures="i686-w64-mingw32 x86_64-w64-mingw32"
|
||||
|
||||
#pkgver() {
|
||||
# cd "$srcdir/angleproject"
|
||||
# grep -E "^#define ANGLE_M..OR_VERSION [0-9]+$" src/common/version.h | sed 's/#define ANGLE_M..OR_VERSION //' | tr '\n' '.'
|
||||
# printf "r%s.%s\n" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
|
||||
#}
|
||||
|
||||
prepare() {
|
||||
cd "${srcdir}/angleproject"
|
||||
|
||||
# install additional .def files
|
||||
cp ../libGLESv2_mingw32.def src/libGLESv2/
|
||||
cp ../libEGL_mingw32.def src/libEGL/
|
||||
|
||||
# provide recent versions of some mingw-w64 header files
|
||||
mkdir sysinclude
|
||||
cp ../{d3d11sdklayers,dxgi1_2,versionhelpers,d3d10_1,sdkddkver,d3d11,dcomp,dcomptypes,dcompanimation}.h sysinclude/
|
||||
cp sysinclude/{versionhelpers,VersionHelpers}.h
|
||||
|
||||
# remove .git directory to prevent: No rule to make target '../build-i686-w64-mingw32/.git/index', needed by 'out/Debug/obj/gen/angle/id/commit.h'.
|
||||
rm -r .git
|
||||
|
||||
# patches from Fedora
|
||||
patch -p1 -i "${srcdir}/0000-build-fix.patch"
|
||||
|
||||
# make sure an import library is created and the correct .def file is used during the build
|
||||
patch -p1 -i "${srcdir}/angleproject-include-import-library-and-use-def-file.patch"
|
||||
|
||||
# WebKit depends on symbols which are used in the static library called translator_hlsl
|
||||
# This static library is linked into the libGLESv2 shared library
|
||||
# To allow building WebKit export the required symbols in the libGLESv2 shared library
|
||||
patch -p1 -i "${srcdir}/angleproject-export-shader-symbols.patch"
|
||||
|
||||
# executing .bat scripts on Linux is a no-go so make this a no-op
|
||||
echo "" > src/copy_compiler_dll.bat
|
||||
chmod +x src/copy_compiler_dll.bat
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "${srcdir}/angleproject"
|
||||
|
||||
export CFLAGS="-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4"
|
||||
export CXXFLAGS="$CFLAGS -std=c++11 -msse2 -DUNICODE -D_UNICODE -g -I${srcdir}/angleproject/sysinclude -I${srcdir}/angleproject/src -I${srcdir}/angleproject/include"
|
||||
unset LDFLAGS
|
||||
|
||||
for _arch in ${_architectures}; do
|
||||
mkdir -p build-${_arch} && pushd build-${_arch}
|
||||
|
||||
export CXX="${_arch}-g++"
|
||||
export AR="${_arch}-ar"
|
||||
|
||||
if [[ ${_arch} == i686-w64-mingw32 ]]; then
|
||||
target="win32"
|
||||
else
|
||||
target="win64"
|
||||
fi
|
||||
|
||||
gyp -D OS=win -D TARGET=$target --format make -D MSVS_VERSION="" --depth . -I ../build/common.gypi ../src/angle.gyp
|
||||
|
||||
# forcing non-concurrent build seems to be required
|
||||
make -j1 V=1
|
||||
|
||||
# also build static libraries (which are needed by the static Qt build)
|
||||
# (had to adjust the selection from Fedora, I hope I picked the right objects here)
|
||||
${AR} rcs libGLESv2.a out/Debug/obj.target/src/common/*.o \
|
||||
out/Debug/obj.target/src/compiler/translator/*.o \
|
||||
out/Debug/obj.target/src/compiler/translator/depgraph/*.o \
|
||||
out/Debug/obj.target/src/compiler/translator/timing/*.o \
|
||||
out/Debug/obj.target/src/compiler/preprocessor/*.o \
|
||||
out/Debug/obj.target/src/third_party/compiler/*.o \
|
||||
out/Debug/obj.target/src/third_party/murmurhash/*.o \
|
||||
out/Debug/obj.target/src/third_party/systeminfo/*.o \
|
||||
out/Debug/obj.target/src/libGLESv2/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/d3d/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/d3d/d3d9/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/d3d/d3d11/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/d3d/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/d3d/d3d9/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/d3d/d3d11/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/gl/*.o \
|
||||
out/Debug/obj.target/src/libANGLE/renderer/gl/wgl/*.o
|
||||
|
||||
${AR} rcs libEGL.a out/Debug/obj.target/src/common/*.o \
|
||||
out/Debug/obj.target/src/libEGL/*.o
|
||||
|
||||
popd
|
||||
done
|
||||
}
|
||||
|
||||
package() {
|
||||
for _arch in ${_architectures}; do
|
||||
cd "${srcdir}/angleproject/build-${_arch}"
|
||||
mkdir -p "${pkgdir}/usr/${_arch}/"{bin,lib,include}
|
||||
install out/Debug/src/libGLESv2.so "${pkgdir}/usr/${_arch}/bin/libGLESv2.dll"
|
||||
install out/Debug/src/libEGL.so "${pkgdir}/usr/${_arch}/bin/libEGL.dll"
|
||||
install libGLESv2.a "${pkgdir}/usr/${_arch}/lib/"
|
||||
install libEGL.a "${pkgdir}/usr/${_arch}/lib/"
|
||||
install libGLESv2.dll.a "${pkgdir}/usr/${_arch}/lib/"
|
||||
install libEGL.dll.a "${pkgdir}/usr/${_arch}/lib/"
|
||||
cp -Rv ../include/* "${pkgdir}/usr/${_arch}/include/"
|
||||
|
||||
${_arch}-strip --strip-unneeded "${pkgdir}/usr/${_arch}/bin/"*.dll
|
||||
${_arch}-strip -g "${pkgdir}/usr/${_arch}/lib/"*.a
|
||||
done
|
||||
}
|
|
@ -0,0 +1,54 @@
|
|||
--- angle/src/libGLESv2/libGLESv2.def.orig 2014-12-30 12:59:07.560620988 +0100
|
||||
+++ angle/src/libGLESv2/libGLESv2.def 2014-12-30 13:00:22.381399755 +0100
|
||||
@@ -144,6 +144,7 @@
|
||||
glViewport @142
|
||||
|
||||
; Extensions
|
||||
+ glTexImage3DOES @143
|
||||
glBlitFramebufferANGLE @149
|
||||
glRenderbufferStorageMultisampleANGLE @150
|
||||
glDeleteFencesNV @151
|
||||
@@ -291,3 +292,25 @@
|
||||
ANGLEPlatformCurrent @290
|
||||
ANGLEPlatformInitialize @291
|
||||
ANGLEPlatformShutdown @292
|
||||
+
|
||||
+ ; EGL dependencies
|
||||
+ glCreateContext @144 NONAME
|
||||
+ glDestroyContext @145 NONAME
|
||||
+ glMakeCurrent @146 NONAME
|
||||
+ glGetCurrentContext @147 NONAME
|
||||
+ glGetProcAddress @148 NONAME
|
||||
+ glBindTexImage @158 NONAME
|
||||
+ glCreateRenderer @177 NONAME
|
||||
+ glDestroyRenderer @178 NONAME
|
||||
+
|
||||
+ ; WebKit dependencies
|
||||
+ ShInitBuiltInResources @300 NONAME
|
||||
+ ShInitialize @301 NONAME
|
||||
+ ShDestruct @302 NONAME
|
||||
+ ShGetInfo @303 NONAME
|
||||
+ ShGetInfoLog @304 NONAME
|
||||
+ ShGetVariableInfo @305 NONAME
|
||||
+ ShGetObjectCode @306 NONAME
|
||||
+ ShCompile @307 NONAME
|
||||
+ ShConstructCompiler @308 NONAME
|
||||
+
|
||||
--- angle/src/libGLESv2/libGLESv2_mingw32.def.orig 2014-12-30 12:59:07.561620998 +0100
|
||||
+++ angle/src/libGLESv2/libGLESv2_mingw32.def 2014-12-30 13:01:37.782182097 +0100
|
||||
@@ -294,3 +294,15 @@
|
||||
glBindTexImage@4 @158 NONAME
|
||||
glCreateRenderer @177 NONAME
|
||||
glDestroyRenderer @178 NONAME
|
||||
+
|
||||
+ ; WebKit dependencies
|
||||
+ ShInitBuiltInResources @300 NONAME
|
||||
+ ShInitialize @301 NONAME
|
||||
+ ShDestruct @302 NONAME
|
||||
+ ShGetInfo @303 NONAME
|
||||
+ ShGetInfoLog @304 NONAME
|
||||
+ ShGetVariableInfo @305 NONAME
|
||||
+ ShGetObjectCode @306 NONAME
|
||||
+ ShCompile @307 NONAME
|
||||
+ ShConstructCompiler @308 NONAME
|
||||
+
|
|
@ -0,0 +1,38 @@
|
|||
--- angleproject/src/libEGL.gypi.orig 2015-07-10 11:42:08.230786800 +0300
|
||||
+++ angleproject/src/libEGL.gypi 2015-07-10 11:44:01.168491900 +0300
|
||||
@@ -48,7 +48,16 @@
|
||||
{
|
||||
'msvs_enable_winphone' : '1',
|
||||
}],
|
||||
+ ['TARGET=="win32"', {
|
||||
+ 'ldflags': [ '-Wl,--out-implib,libEGL.dll.a' ],
|
||||
+ }],
|
||||
+ ['TARGET=="win64"', {
|
||||
+ 'ldflags': [ '-Wl,--out-implib,libEGL.dll.a' ],
|
||||
+ }],
|
||||
],
|
||||
+ 'libraries': [
|
||||
+ '-ldxguid -ld3d9 -lgdi32'
|
||||
+ ]
|
||||
},
|
||||
],
|
||||
}
|
||||
--- angleproject/src/libGLESv2.gypi.orig 2015-07-10 11:41:58.223787600 +0300
|
||||
+++ angleproject/src/libGLESv2.gypi 2015-07-10 11:44:36.585949800 +0300
|
||||
@@ -826,7 +826,16 @@
|
||||
{
|
||||
'msvs_enable_winphone' : '1',
|
||||
}],
|
||||
+ ['TARGET=="win32"', {
|
||||
+ 'ldflags': [ '-Wl,--out-implib,libGLESv2.dll.a' ],
|
||||
+ }],
|
||||
+ ['TARGET=="win64"', {
|
||||
+ 'ldflags': [ '-Wl,--out-implib,libGLESv2.dll.a' ],
|
||||
+ }],
|
||||
],
|
||||
+ 'libraries': [
|
||||
+ '-ldxguid -ld3d9 -lgdi32'
|
||||
+ ]
|
||||
},
|
||||
],
|
||||
}
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,287 @@
|
|||
/**
|
||||
* 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 _DCOMP_H_
|
||||
#define _DCOMP_H_
|
||||
|
||||
#include <d2dbasetypes.h>
|
||||
#ifndef D3DMATRIX_DEFINED
|
||||
#include <d3d9types.h>
|
||||
#endif
|
||||
#include <d2d1_1.h>
|
||||
#include <winapifamily.h>
|
||||
|
||||
#include <dcomptypes.h>
|
||||
#include <dcompanimation.h>
|
||||
|
||||
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionSurface
|
||||
DECLARE_INTERFACE_IID_(IDCompositionSurface,IUnknown,"bb8a4953-2c99-4f5a-96f5-4819027fa3ac")
|
||||
{
|
||||
STDMETHOD(BeginDraw)(THIS_ const RECT*,REFIID,void**,POINT*) PURE;
|
||||
STDMETHOD(EndDraw)(THIS) PURE;
|
||||
STDMETHOD(SuspendDraw)(THIS) PURE;
|
||||
STDMETHOD(ResumeDraw)(THIS) PURE;
|
||||
STDMETHOD(Scroll)(THIS_ const RECT*,const RECT*,int,int) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionVirtualSurface
|
||||
DECLARE_INTERFACE_IID_(IDCompositionVirtualSurface,IDCompositionSurface,"ae471c51-5f53-4a24-8d3e-d0c39c30b3f0")
|
||||
{
|
||||
STDMETHOD(Resize)(THIS_ UINT,UINT) PURE;
|
||||
STDMETHOD(Trim)(THIS_ const RECT*,UINT) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionEffect
|
||||
DECLARE_INTERFACE_IID_(IDCompositionEffect,IUnknown,"ec81b08f-bfcb-4e8d-b193-a915587999e8")
|
||||
{
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionTransform3D
|
||||
DECLARE_INTERFACE_IID_(IDCompositionTransform3D,IDCompositionEffect,"71185722-246b-41f2-aad1-0443f7f4bfc2")
|
||||
{
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionTransform
|
||||
DECLARE_INTERFACE_IID_(IDCompositionTransform,IDCompositionTransform3D,"fd55faa7-37e0-4c20-95d2-9be45bc33f55")
|
||||
{
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionTranslateTransform
|
||||
DECLARE_INTERFACE_IID_(IDCompositionTranslateTransform,IDCompositionTransform,"06791122-c6f0-417d-8323-269e987f5954")
|
||||
{
|
||||
STDMETHOD(SetOffsetX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetOffsetX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetOffsetY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetOffsetY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionScaleTransform
|
||||
DECLARE_INTERFACE_IID_(IDCompositionScaleTransform,IDCompositionTransform,"71fde914-40ef-45ef-bd51-68b037c339f9")
|
||||
{
|
||||
STDMETHOD(SetScaleX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetScaleX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetScaleY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetScaleY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionRotateTransform
|
||||
DECLARE_INTERFACE_IID_(IDCompositionRotateTransform,IDCompositionTransform,"641ed83c-ae96-46c5-90dc-32774cc5c6d5")
|
||||
{
|
||||
STDMETHOD(SetAngle)(THIS_ float) PURE;
|
||||
STDMETHOD(SetAngle)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionSkewTransform
|
||||
DECLARE_INTERFACE_IID_(IDCompositionSkewTransform,IDCompositionTransform,"e57aa735-dcdb-4c72-9c61-0591f58889ee")
|
||||
{
|
||||
STDMETHOD(SetAngleX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetAngleX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetAngleY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetAngleY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionMatrixTransform
|
||||
DECLARE_INTERFACE_IID_(IDCompositionMatrixTransform,IDCompositionTransform,"16cdff07-c503-419c-83f2-0965c7af1fa6")
|
||||
{
|
||||
STDMETHOD(SetMatrix)(THIS_ const D2D_MATRIX_3X2_F&) PURE;
|
||||
STDMETHOD(SetMatrixElement)(THIS_ int,int,float) PURE;
|
||||
STDMETHOD(SetMatrixElement)(THIS_ int,int,IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionTranslateTransform3D
|
||||
DECLARE_INTERFACE_IID_(IDCompositionTranslateTransform3D,IDCompositionTransform3D,"91636d4b-9ba1-4532-aaf7-e3344994d788")
|
||||
{
|
||||
STDMETHOD(SetOffsetX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetOffsetX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetOffsetY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetOffsetY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetOffsetZ)(THIS_ float) PURE;
|
||||
STDMETHOD(SetOffsetZ)(THIS_ IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionScaleTransform3D
|
||||
DECLARE_INTERFACE_IID_(IDCompositionScaleTransform3D,IDCompositionTransform3D,"2a9e9ead-364b-4b15-a7c4-a1997f78b389")
|
||||
{
|
||||
STDMETHOD(SetScaleX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetScaleX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetScaleY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetScaleY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetScaleZ)(THIS_ float) PURE;
|
||||
STDMETHOD(SetScaleZ)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterZ)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterZ)(THIS_ IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionRotateTransform3D
|
||||
DECLARE_INTERFACE_IID_(IDCompositionRotateTransform3D,IDCompositionTransform3D,"d8f5b23f-d429-4a91-b55a-d2f45fd75b18")
|
||||
{
|
||||
STDMETHOD(SetAngle)(THIS_ float) PURE;
|
||||
STDMETHOD(SetAngle)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetAxisX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetAxisX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetAxisY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetAxisY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetAxisZ)(THIS_ float) PURE;
|
||||
STDMETHOD(SetAxisZ)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetCenterZ)(THIS_ float) PURE;
|
||||
STDMETHOD(SetCenterZ)(THIS_ IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionMatrixTransform3D
|
||||
DECLARE_INTERFACE_IID_(IDCompositionMatrixTransform3D,IDCompositionTransform3D,"4b3363f0-643b-41b7-b6e0-ccf22d34467c")
|
||||
{
|
||||
STDMETHOD(SetMatrix)(THIS_ const D3DMATRIX&) PURE;
|
||||
STDMETHOD(SetMatrixElement)(THIS_ int,int,float) PURE;
|
||||
STDMETHOD(SetMatrixElement)(THIS_ int,int,IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionEffectGroup
|
||||
DECLARE_INTERFACE_IID_(IDCompositionEffectGroup,IDCompositionEffect,"a7929a74-e6b2-4bd6-8b95-4040119ca34d")
|
||||
{
|
||||
STDMETHOD(SetOpacity)(THIS_ float) PURE;
|
||||
STDMETHOD(SetOpacity)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetTransform3D)(THIS_ IDCompositionTransform3D*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionClip
|
||||
DECLARE_INTERFACE_IID_(IDCompositionClip,IUnknown,"64ac3703-9d3f-45ec-a109-7cac0e7a13a7")
|
||||
{
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionRectangleClip
|
||||
DECLARE_INTERFACE_IID_(IDCompositionRectangleClip,IDCompositionClip,"9842ad7d-d9cf-4908-aed7-48b51da5e7c2")
|
||||
{
|
||||
STDMETHOD(SetLeft)(THIS_ float) PURE;
|
||||
STDMETHOD(SetLeft)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetTop)(THIS_ float) PURE;
|
||||
STDMETHOD(SetTop)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetRight)(THIS_ float) PURE;
|
||||
STDMETHOD(SetRight)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetBottom)(THIS_ float) PURE;
|
||||
STDMETHOD(SetBottom)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetTopLeftRadiusX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetTopLeftRadiusX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetTopLeftRadiusY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetTopLeftRadiusY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetTopRightRadiusX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetTopRightRadiusX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetTopRightRadiusY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetTopRightRadiusY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetBottomLeftRadiusX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetBottomLeftRadiusX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetBottomLeftRadiusY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetBottomLeftRadiusY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetBottomRightRadiusX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetBottomRightRadiusX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetBottomRightRadiusY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetBottomRightRadiusY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionTarget
|
||||
DECLARE_INTERFACE_IID_(IDCompositionTarget,IUnknown,"eacdd04c-117e-4e17-88f4-d1b12b0e3d89")
|
||||
{
|
||||
STDMETHOD(SetRoot)(THIS_ IDCompositionVisual*) PURE;
|
||||
};
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionDevice
|
||||
DECLARE_INTERFACE_IID_(IDCompositionDevice,IUnknown,"c37ea93a-e7aa-450d-b16f-9746cb0407f3")
|
||||
{
|
||||
STDMETHOD(Commit)(THIS) PURE;
|
||||
STDMETHOD(WaitForCommitCompletion)(THIS) PURE;
|
||||
STDMETHOD(GetFrameStatistics)(THIS_ DCOMPOSITION_FRAME_STATISTICS*) PURE;
|
||||
STDMETHOD(CreateTargetForHwnd)(THIS_ HWND,BOOL,IDCompositionTarget**) PURE;
|
||||
STDMETHOD(CreateVisual)(THIS_ IDCompositionVisual**) PURE;
|
||||
STDMETHOD(CreateSurface)(THIS_ UINT,UINT,DXGI_FORMAT,DXGI_ALPHA_MODE,IDCompositionSurface**) PURE;
|
||||
STDMETHOD(CreateVirtualSurface)(THIS_ UINT,UINT,DXGI_FORMAT,DXGI_ALPHA_MODE,IDCompositionVirtualSurface**) PURE;
|
||||
STDMETHOD(CreateSurfaceFromHandle)(THIS_ HANDLE,IUnknown**) PURE;
|
||||
STDMETHOD(CreateSurfaceFromHwnd)(THIS_ HWND,IUnknown**) PURE;
|
||||
STDMETHOD(CreateTranslateTransform)(THIS_ IDCompositionTranslateTransform**) PURE;
|
||||
STDMETHOD(CreateScaleTransform)(THIS_ IDCompositionScaleTransform**) PURE;
|
||||
STDMETHOD(CreateRotateTransform)(THIS_ IDCompositionRotateTransform**) PURE;
|
||||
STDMETHOD(CreateSkewTransform)(THIS_ IDCompositionSkewTransform**) PURE;
|
||||
STDMETHOD(CreateMatrixTransform)(THIS_ IDCompositionMatrixTransform**) PURE;
|
||||
STDMETHOD(CreateTransformGroup)(THIS_ IDCompositionTransform**,UINT,IDCompositionTransform**) PURE;
|
||||
STDMETHOD(CreateTranslateTransform3D)(THIS_ IDCompositionTranslateTransform3D**) PURE;
|
||||
STDMETHOD(CreateScaleTransform3D)(THIS_ IDCompositionScaleTransform3D**) PURE;
|
||||
STDMETHOD(CreateRotateTransform3D)(THIS_ IDCompositionRotateTransform3D**) PURE;
|
||||
STDMETHOD(CreateMatrixTransform3D)(THIS_ IDCompositionMatrixTransform3D**) PURE;
|
||||
STDMETHOD(CreateTransform3DGroup)(THIS_ IDCompositionTransform3D**,UINT,IDCompositionTransform3D**) PURE;
|
||||
STDMETHOD(CreateEffectGroup)(THIS_ IDCompositionEffectGroup**) PURE;
|
||||
STDMETHOD(CreateRectangleClip)(THIS_ IDCompositionRectangleClip**) PURE;
|
||||
STDMETHOD(CreateAnimation)(THIS_ IDCompositionAnimation**) PURE;
|
||||
STDMETHOD(CheckDeviceState)(THIS_ BOOL*) PURE;
|
||||
};
|
||||
|
||||
#ifdef __CRT_UUID_DECL
|
||||
__CRT_UUID_DECL(IDCompositionDevice,0xc37ea93a,0xe7aa,0x450d,0xb1,0x6f,0x97,0x46,0xcb,0x04,0x07,0xf3);
|
||||
#endif
|
||||
|
||||
#undef INTERFACE
|
||||
#define INTERFACE IDCompositionVisual
|
||||
DECLARE_INTERFACE_IID_(IDCompositionVisual,IUnknown,"4d93059d-097b-4651-9a60-f0f25116e2f3")
|
||||
{
|
||||
STDMETHOD(SetOffsetX)(THIS_ float) PURE;
|
||||
STDMETHOD(SetOffsetX)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetOffsetY)(THIS_ float) PURE;
|
||||
STDMETHOD(SetOffsetY)(THIS_ IDCompositionAnimation*) PURE;
|
||||
STDMETHOD(SetTransform)(THIS_ const D2D_MATRIX_3X2_F&) PURE;
|
||||
STDMETHOD(SetTransform)(THIS_ IDCompositionTransform*) PURE;
|
||||
STDMETHOD(SetTransformParent)(THIS_ IDCompositionVisual*) PURE;
|
||||
STDMETHOD(SetEffect)(THIS_ IDCompositionEffect*) PURE;
|
||||
STDMETHOD(SetBitmapInterpolationMode)(THIS_ DCOMPOSITION_BITMAP_INTERPOLATION_MODE) PURE;
|
||||
STDMETHOD(SetBorderMode)(THIS_ DCOMPOSITION_BORDER_MODE) PURE;
|
||||
STDMETHOD(SetClip)(THIS_ const D2D_RECT_F&) PURE;
|
||||
STDMETHOD(SetClip)(THIS_ IDCompositionClip*) PURE;
|
||||
STDMETHOD(SetContent)(THIS_ IUnknown*) PURE;
|
||||
STDMETHOD(AddVisual)(THIS_ IDCompositionVisual*,BOOL,IDCompositionVisual*) PURE;
|
||||
STDMETHOD(RemoveVisual)(THIS_ IDCompositionVisual*) PURE;
|
||||
STDMETHOD(RemoveAllVisuals)(THIS_) PURE;
|
||||
STDMETHOD(SetCompositeMode)(THIS_ DCOMPOSITION_COMPOSITE_MODE) PURE;
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif /* _DCOMP_H_ */
|
|
@ -0,0 +1,250 @@
|
|||
/*** Autogenerated by WIDL 1.6 from include/dcompanimation.idl - Do not edit ***/
|
||||
|
||||
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
||||
#define __REQUIRED_RPCNDR_H_VERSION__ 475
|
||||
#endif
|
||||
|
||||
#include <rpc.h>
|
||||
#include <rpcndr.h>
|
||||
|
||||
#ifndef COM_NO_WINDOWS_H
|
||||
#include <windows.h>
|
||||
#include <ole2.h>
|
||||
#endif
|
||||
|
||||
#ifndef __dcompanimation_h__
|
||||
#define __dcompanimation_h__
|
||||
|
||||
/* Forward declarations */
|
||||
|
||||
#ifndef __IDCompositionAnimation_FWD_DEFINED__
|
||||
#define __IDCompositionAnimation_FWD_DEFINED__
|
||||
typedef interface IDCompositionAnimation IDCompositionAnimation;
|
||||
#endif
|
||||
|
||||
/* Headers for imported files */
|
||||
|
||||
#include <wtypes.h>
|
||||
#include <unknwn.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*****************************************************************************
|
||||
* IDCompositionAnimation interface
|
||||
*/
|
||||
#ifndef __IDCompositionAnimation_INTERFACE_DEFINED__
|
||||
#define __IDCompositionAnimation_INTERFACE_DEFINED__
|
||||
|
||||
DEFINE_GUID(IID_IDCompositionAnimation, 0xcbfd91d9, 0x51b2, 0x45e4, 0xb3,0xde, 0xd1,0x9c,0xcf,0xb8,0x63,0xc5);
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
MIDL_INTERFACE("cbfd91d9-51b2-45e4-b3de-d19ccfb863c5")
|
||||
IDCompositionAnimation : public IUnknown
|
||||
{
|
||||
virtual HRESULT STDMETHODCALLTYPE Reset(
|
||||
) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE SetAbsoluteBeginTime(
|
||||
LARGE_INTEGER a) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE AddCubic(
|
||||
double a,
|
||||
float b,
|
||||
float c,
|
||||
float d,
|
||||
float e) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE AddSinusoidal(
|
||||
double a,
|
||||
float b,
|
||||
float c,
|
||||
float d,
|
||||
float e) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE AddRepeat(
|
||||
double a,
|
||||
double b) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE End(
|
||||
double a,
|
||||
float b) = 0;
|
||||
|
||||
};
|
||||
#ifdef __CRT_UUID_DECL
|
||||
__CRT_UUID_DECL(IDCompositionAnimation, 0xcbfd91d9, 0x51b2, 0x45e4, 0xb3,0xde, 0xd1,0x9c,0xcf,0xb8,0x63,0xc5)
|
||||
#endif
|
||||
#else
|
||||
typedef struct IDCompositionAnimationVtbl {
|
||||
BEGIN_INTERFACE
|
||||
|
||||
/*** IUnknown methods ***/
|
||||
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
||||
IDCompositionAnimation* This,
|
||||
REFIID riid,
|
||||
void **ppvObject);
|
||||
|
||||
ULONG (STDMETHODCALLTYPE *AddRef)(
|
||||
IDCompositionAnimation* This);
|
||||
|
||||
ULONG (STDMETHODCALLTYPE *Release)(
|
||||
IDCompositionAnimation* This);
|
||||
|
||||
/*** IDCompositionAnimation methods ***/
|
||||
HRESULT (STDMETHODCALLTYPE *Reset)(
|
||||
IDCompositionAnimation* This);
|
||||
|
||||
HRESULT (STDMETHODCALLTYPE *SetAbsoluteBeginTime)(
|
||||
IDCompositionAnimation* This,
|
||||
LARGE_INTEGER a);
|
||||
|
||||
HRESULT (STDMETHODCALLTYPE *AddCubic)(
|
||||
IDCompositionAnimation* This,
|
||||
double a,
|
||||
float b,
|
||||
float c,
|
||||
float d,
|
||||
float e);
|
||||
|
||||
HRESULT (STDMETHODCALLTYPE *AddSinusoidal)(
|
||||
IDCompositionAnimation* This,
|
||||
double a,
|
||||
float b,
|
||||
float c,
|
||||
float d,
|
||||
float e);
|
||||
|
||||
HRESULT (STDMETHODCALLTYPE *AddRepeat)(
|
||||
IDCompositionAnimation* This,
|
||||
double a,
|
||||
double b);
|
||||
|
||||
HRESULT (STDMETHODCALLTYPE *End)(
|
||||
IDCompositionAnimation* This,
|
||||
double a,
|
||||
float b);
|
||||
|
||||
END_INTERFACE
|
||||
} IDCompositionAnimationVtbl;
|
||||
interface IDCompositionAnimation {
|
||||
CONST_VTBL IDCompositionAnimationVtbl* lpVtbl;
|
||||
};
|
||||
|
||||
#ifdef COBJMACROS
|
||||
#ifndef WIDL_C_INLINE_WRAPPERS
|
||||
/*** IUnknown methods ***/
|
||||
#define IDCompositionAnimation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
||||
#define IDCompositionAnimation_AddRef(This) (This)->lpVtbl->AddRef(This)
|
||||
#define IDCompositionAnimation_Release(This) (This)->lpVtbl->Release(This)
|
||||
/*** IDCompositionAnimation methods ***/
|
||||
#define IDCompositionAnimation_Reset(This) (This)->lpVtbl->Reset(This)
|
||||
#define IDCompositionAnimation_SetAbsoluteBeginTime(This,a) (This)->lpVtbl->SetAbsoluteBeginTime(This,a)
|
||||
#define IDCompositionAnimation_AddCubic(This,a,b,c,d,e) (This)->lpVtbl->AddCubic(This,a,b,c,d,e)
|
||||
#define IDCompositionAnimation_AddSinusoidal(This,a,b,c,d,e) (This)->lpVtbl->AddSinusoidal(This,a,b,c,d,e)
|
||||
#define IDCompositionAnimation_AddRepeat(This,a,b) (This)->lpVtbl->AddRepeat(This,a,b)
|
||||
#define IDCompositionAnimation_End(This,a,b) (This)->lpVtbl->End(This,a,b)
|
||||
#else
|
||||
/*** IUnknown methods ***/
|
||||
static FORCEINLINE HRESULT IDCompositionAnimation_QueryInterface(IDCompositionAnimation* This,REFIID riid,void **ppvObject) {
|
||||
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
||||
}
|
||||
static FORCEINLINE ULONG IDCompositionAnimation_AddRef(IDCompositionAnimation* This) {
|
||||
return This->lpVtbl->AddRef(This);
|
||||
}
|
||||
static FORCEINLINE ULONG IDCompositionAnimation_Release(IDCompositionAnimation* This) {
|
||||
return This->lpVtbl->Release(This);
|
||||
}
|
||||
/*** IDCompositionAnimation methods ***/
|
||||
static FORCEINLINE HRESULT IDCompositionAnimation_Reset(IDCompositionAnimation* This) {
|
||||
return This->lpVtbl->Reset(This);
|
||||
}
|
||||
static FORCEINLINE HRESULT IDCompositionAnimation_SetAbsoluteBeginTime(IDCompositionAnimation* This,LARGE_INTEGER a) {
|
||||
return This->lpVtbl->SetAbsoluteBeginTime(This,a);
|
||||
}
|
||||
static FORCEINLINE HRESULT IDCompositionAnimation_AddCubic(IDCompositionAnimation* This,double a,float b,float c,float d,float e) {
|
||||
return This->lpVtbl->AddCubic(This,a,b,c,d,e);
|
||||
}
|
||||
static FORCEINLINE HRESULT IDCompositionAnimation_AddSinusoidal(IDCompositionAnimation* This,double a,float b,float c,float d,float e) {
|
||||
return This->lpVtbl->AddSinusoidal(This,a,b,c,d,e);
|
||||
}
|
||||
static FORCEINLINE HRESULT IDCompositionAnimation_AddRepeat(IDCompositionAnimation* This,double a,double b) {
|
||||
return This->lpVtbl->AddRepeat(This,a,b);
|
||||
}
|
||||
static FORCEINLINE HRESULT IDCompositionAnimation_End(IDCompositionAnimation* This,double a,float b) {
|
||||
return This->lpVtbl->End(This,a,b);
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
HRESULT STDMETHODCALLTYPE IDCompositionAnimation_Reset_Proxy(
|
||||
IDCompositionAnimation* This);
|
||||
void __RPC_STUB IDCompositionAnimation_Reset_Stub(
|
||||
IRpcStubBuffer* This,
|
||||
IRpcChannelBuffer* pRpcChannelBuffer,
|
||||
PRPC_MESSAGE pRpcMessage,
|
||||
DWORD* pdwStubPhase);
|
||||
HRESULT STDMETHODCALLTYPE IDCompositionAnimation_SetAbsoluteBeginTime_Proxy(
|
||||
IDCompositionAnimation* This,
|
||||
LARGE_INTEGER a);
|
||||
void __RPC_STUB IDCompositionAnimation_SetAbsoluteBeginTime_Stub(
|
||||
IRpcStubBuffer* This,
|
||||
IRpcChannelBuffer* pRpcChannelBuffer,
|
||||
PRPC_MESSAGE pRpcMessage,
|
||||
DWORD* pdwStubPhase);
|
||||
HRESULT STDMETHODCALLTYPE IDCompositionAnimation_AddCubic_Proxy(
|
||||
IDCompositionAnimation* This,
|
||||
double a,
|
||||
float b,
|
||||
float c,
|
||||
float d,
|
||||
float e);
|
||||
void __RPC_STUB IDCompositionAnimation_AddCubic_Stub(
|
||||
IRpcStubBuffer* This,
|
||||
IRpcChannelBuffer* pRpcChannelBuffer,
|
||||
PRPC_MESSAGE pRpcMessage,
|
||||
DWORD* pdwStubPhase);
|
||||
HRESULT STDMETHODCALLTYPE IDCompositionAnimation_AddSinusoidal_Proxy(
|
||||
IDCompositionAnimation* This,
|
||||
double a,
|
||||
float b,
|
||||
float c,
|
||||
float d,
|
||||
float e);
|
||||
void __RPC_STUB IDCompositionAnimation_AddSinusoidal_Stub(
|
||||
IRpcStubBuffer* This,
|
||||
IRpcChannelBuffer* pRpcChannelBuffer,
|
||||
PRPC_MESSAGE pRpcMessage,
|
||||
DWORD* pdwStubPhase);
|
||||
HRESULT STDMETHODCALLTYPE IDCompositionAnimation_AddRepeat_Proxy(
|
||||
IDCompositionAnimation* This,
|
||||
double a,
|
||||
double b);
|
||||
void __RPC_STUB IDCompositionAnimation_AddRepeat_Stub(
|
||||
IRpcStubBuffer* This,
|
||||
IRpcChannelBuffer* pRpcChannelBuffer,
|
||||
PRPC_MESSAGE pRpcMessage,
|
||||
DWORD* pdwStubPhase);
|
||||
HRESULT STDMETHODCALLTYPE IDCompositionAnimation_End_Proxy(
|
||||
IDCompositionAnimation* This,
|
||||
double a,
|
||||
float b);
|
||||
void __RPC_STUB IDCompositionAnimation_End_Stub(
|
||||
IRpcStubBuffer* This,
|
||||
IRpcChannelBuffer* pRpcChannelBuffer,
|
||||
PRPC_MESSAGE pRpcMessage,
|
||||
DWORD* pdwStubPhase);
|
||||
|
||||
#endif /* __IDCompositionAnimation_INTERFACE_DEFINED__ */
|
||||
|
||||
/* Begin additional prototypes for all interfaces */
|
||||
|
||||
|
||||
/* End additional prototypes */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __dcompanimation_h__ */
|
|
@ -0,0 +1,44 @@
|
|||
/**
|
||||
* 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 _DCOMPTYPES_H_
|
||||
#define _DCOMPTYPES_H_
|
||||
|
||||
#include <dxgitype.h>
|
||||
#include <dxgi1_2.h>
|
||||
#include <winapifamily.h>
|
||||
|
||||
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
||||
|
||||
enum DCOMPOSITION_BITMAP_INTERPOLATION_MODE {
|
||||
DCOMPOSITION_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0,
|
||||
DCOMPOSITION_BITMAP_INTERPOLATION_MODE_LINEAR = 1,
|
||||
DCOMPOSITION_BITMAP_INTERPOLATION_MODE_INHERIT = 0xffffffff
|
||||
};
|
||||
|
||||
enum DCOMPOSITION_BORDER_MODE {
|
||||
DCOMPOSITION_BORDER_MODE_SOFT = 0,
|
||||
DCOMPOSITION_BORDER_MODE_HARD = 1,
|
||||
DCOMPOSITION_BORDER_MODE_INHERIT = 0xffffffff
|
||||
};
|
||||
|
||||
enum DCOMPOSITION_COMPOSITE_MODE {
|
||||
DCOMPOSITION_COMPOSITE_MODE_SOURCE_OVER = 0,
|
||||
DCOMPOSITION_COMPOSITE_MODE_DESTINATION_INVERT = 1,
|
||||
DCOMPOSITION_COMPOSITE_MODE_MIN_BLEND = 2,
|
||||
DCOMPOSITION_COMPOSITE_MODE_INHERIT = 0xffffffff
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
LARGE_INTEGER lastFrameTime;
|
||||
DXGI_RATIONAL currentCompositionRate;
|
||||
LARGE_INTEGER currentTime;
|
||||
LARGE_INTEGER timeFrequency;
|
||||
LARGE_INTEGER nextEstimatedFrameTime;
|
||||
} DCOMPOSITION_FRAME_STATISTICS;
|
||||
|
||||
#endif
|
||||
#endif /* _DCOMPTYPES_H_ */
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,53 @@
|
|||
LIBRARY libEGL
|
||||
EXPORTS
|
||||
eglBindAPI@4 @14
|
||||
eglBindTexImage@12 @20
|
||||
eglChooseConfig@20 @7
|
||||
eglCopyBuffers@12 @33
|
||||
eglCreateContext@16 @23
|
||||
eglCreatePbufferFromClientBuffer@20 @18
|
||||
eglCreatePbufferSurface@12 @10
|
||||
eglCreatePixmapSurface@16 @11
|
||||
eglCreateWindowSurface@16 @9
|
||||
eglDestroyContext@8 @24
|
||||
eglDestroySurface@8 @12
|
||||
eglGetConfigAttrib@16 @8
|
||||
eglGetConfigs@16 @6
|
||||
eglGetCurrentContext@0 @26
|
||||
eglGetCurrentDisplay@0 @28
|
||||
eglGetCurrentSurface@4 @27
|
||||
eglGetDisplay@4 @2
|
||||
eglGetError@0 @1
|
||||
eglGetProcAddress@4 @34
|
||||
eglInitialize@12 @3
|
||||
eglMakeCurrent@16 @25
|
||||
eglQueryAPI@0 @15
|
||||
eglQueryContext@16 @29
|
||||
eglQueryString@8 @5
|
||||
eglQuerySurface@16 @13
|
||||
eglReleaseTexImage@12 @21
|
||||
eglReleaseThread@0 @17
|
||||
eglSurfaceAttrib@16 @19
|
||||
eglSwapBuffers@8 @32
|
||||
eglSwapInterval@8 @22
|
||||
eglTerminate@4 @4
|
||||
eglWaitClient@0 @16
|
||||
eglWaitGL@0 @30
|
||||
eglWaitNative@4 @31
|
||||
|
||||
; Extensions
|
||||
eglGetPlatformDisplayEXT@12 @35
|
||||
eglQuerySurfacePointerANGLE@16 @36
|
||||
eglPostSubBufferNV@24 @37
|
||||
|
||||
; 1.5 entry points
|
||||
eglCreateSync@12 @38
|
||||
eglDestroySyn@8 @39
|
||||
eglClientWaitSync@16 @40
|
||||
eglGetSyncAttrib@16 @41
|
||||
eglCreateImage@20 @42
|
||||
eglDestroyImage@8 @43
|
||||
eglGetPlatformDisplay@12 @44
|
||||
eglCreatePlatformWindowSurface@16 @45
|
||||
eglCreatePlatformPixmapSurface@16 @46
|
||||
eglWaitSync@12 @47
|
|
@ -0,0 +1,304 @@
|
|||
LIBRARY libGLESv2
|
||||
EXPORTS
|
||||
glActiveTexture@4 @1
|
||||
glAttachShader@8 @2
|
||||
glBindAttribLocation@12 @3
|
||||
glBindBuffer@8 @4
|
||||
glBindFramebuffer@8 @5
|
||||
glBindRenderbuffer@8 @6
|
||||
glBindTexture@8 @7
|
||||
glBlendColor@16 @8
|
||||
glBlendEquation@4 @9
|
||||
glBlendEquationSeparate@8 @10
|
||||
glBlendFunc@8 @11
|
||||
glBlendFuncSeparate@16 @12
|
||||
glBufferData@16 @13
|
||||
glBufferSubData@16 @14
|
||||
glCheckFramebufferStatus@4 @15
|
||||
glClear@4 @16
|
||||
glClearColor@16 @17
|
||||
glClearDepthf@4 @18
|
||||
glClearStencil@4 @19
|
||||
glColorMask@16 @20
|
||||
glCompileShader@4 @21
|
||||
glCompressedTexImage2D@32 @22
|
||||
glCompressedTexSubImage2D@36 @23
|
||||
glCopyTexImage2D@32 @24
|
||||
glCopyTexSubImage2D@32 @25
|
||||
glCreateProgram@0 @26
|
||||
glCreateShader@4 @27
|
||||
glCullFace@4 @28
|
||||
glDeleteBuffers@8 @29
|
||||
glDeleteFramebuffers@8 @30
|
||||
glDeleteProgram@4 @32
|
||||
glDeleteRenderbuffers@8 @33
|
||||
glDeleteShader@4 @34
|
||||
glDeleteTextures@8 @31
|
||||
glDepthFunc@4 @36
|
||||
glDepthMask@4 @37
|
||||
glDepthRangef@8 @38
|
||||
glDetachShader@8 @35
|
||||
glDisable@4 @39
|
||||
glDisableVertexAttribArray@4 @40
|
||||
glDrawArrays@12 @41
|
||||
glDrawElements@16 @42
|
||||
glEnable@4 @43
|
||||
glEnableVertexAttribArray@4 @44
|
||||
glFinish@0 @45
|
||||
glFlush@0 @46
|
||||
glFramebufferRenderbuffer@16 @47
|
||||
glFramebufferTexture2D@20 @48
|
||||
glFrontFace@4 @49
|
||||
glGenBuffers@8 @50
|
||||
glGenFramebuffers@8 @52
|
||||
glGenRenderbuffers@8 @53
|
||||
glGenTextures@8 @54
|
||||
glGenerateMipmap@4 @51
|
||||
glGetActiveAttrib@28 @55
|
||||
glGetActiveUniform@28 @56
|
||||
glGetAttachedShaders@16 @57
|
||||
glGetAttribLocation@8 @58
|
||||
glGetBooleanv@8 @59
|
||||
glGetBufferParameteriv@12 @60
|
||||
glGetError@0 @61
|
||||
glGetFloatv@8 @62
|
||||
glGetFramebufferAttachmentParameteriv@16 @63
|
||||
glGetIntegerv@8 @64
|
||||
glGetProgramInfoLog@16 @66
|
||||
glGetProgramiv@12 @65
|
||||
glGetRenderbufferParameteriv@12 @67
|
||||
glGetShaderInfoLog@16 @69
|
||||
glGetShaderPrecisionFormat@16 @70
|
||||
glGetShaderSource@16 @71
|
||||
glGetShaderiv@12 @68
|
||||
glGetString@4 @72
|
||||
glGetTexParameterfv@12 @73
|
||||
glGetTexParameteriv@12 @74
|
||||
glGetUniformLocation@8 @77
|
||||
glGetUniformfv@12 @75
|
||||
glGetUniformiv@12 @76
|
||||
glGetVertexAttribPointerv@12 @80
|
||||
glGetVertexAttribfv@12 @78
|
||||
glGetVertexAttribiv@12 @79
|
||||
glHint@8 @81
|
||||
glIsBuffer@4 @82
|
||||
glIsEnabled@4 @83
|
||||
glIsFramebuffer@4 @84
|
||||
glIsProgram@4 @85
|
||||
glIsRenderbuffer@4 @86
|
||||
glIsShader@4 @87
|
||||
glIsTexture@4 @88
|
||||
glLineWidth@4 @89
|
||||
glLinkProgram@4 @90
|
||||
glPixelStorei@8 @91
|
||||
glPolygonOffset@8 @92
|
||||
glReadPixels@28 @93
|
||||
glReleaseShaderCompiler@0 @94
|
||||
glRenderbufferStorage@16 @95
|
||||
glSampleCoverage@8 @96
|
||||
glScissor@16 @97
|
||||
glShaderBinary@20 @98
|
||||
glShaderSource@16 @99
|
||||
glStencilFunc@12 @100
|
||||
glStencilFuncSeparate@16 @101
|
||||
glStencilMask@4 @102
|
||||
glStencilMaskSeparate@8 @103
|
||||
glStencilOp@12 @104
|
||||
glStencilOpSeparate@16 @105
|
||||
glTexImage2D@36 @106
|
||||
glTexParameterf@12 @107
|
||||
glTexParameterfv@12 @108
|
||||
glTexParameteri@12 @109
|
||||
glTexParameteriv@12 @110
|
||||
glTexSubImage2D@36 @111
|
||||
glUniform1f@8 @112
|
||||
glUniform1fv@12 @113
|
||||
glUniform1i@8 @114
|
||||
glUniform1iv@12 @115
|
||||
glUniform2f@12 @116
|
||||
glUniform2fv@12 @117
|
||||
glUniform2i@12 @118
|
||||
glUniform2iv@12 @119
|
||||
glUniform3f@16 @120
|
||||
glUniform3fv@12 @121
|
||||
glUniform3i@16 @122
|
||||
glUniform3iv@12 @123
|
||||
glUniform4f@20 @124
|
||||
glUniform4fv@12 @125
|
||||
glUniform4i@20 @126
|
||||
glUniform4iv@12 @127
|
||||
glUniformMatrix2fv@16 @128
|
||||
glUniformMatrix3fv@16 @129
|
||||
glUniformMatrix4fv@16 @130
|
||||
glUseProgram@4 @131
|
||||
glValidateProgram@4 @132
|
||||
glVertexAttrib1f@8 @133
|
||||
glVertexAttrib1fv@8 @134
|
||||
glVertexAttrib2f@12 @135
|
||||
glVertexAttrib2fv@8 @136
|
||||
glVertexAttrib3f@16 @137
|
||||
glVertexAttrib3fv@8 @138
|
||||
glVertexAttrib4f@20 @139
|
||||
glVertexAttrib4fv@8 @140
|
||||
glVertexAttribPointer@24 @141
|
||||
glViewport@16 @142
|
||||
|
||||
; Extensions
|
||||
glTexImage3DOES@40 @143
|
||||
glBlitFramebufferANGLE@40 @149
|
||||
glRenderbufferStorageMultisampleANGLE@20 @150
|
||||
glDeleteFencesNV@8 @151
|
||||
glFinishFenceNV@4 @152
|
||||
glGenFencesNV@8 @153
|
||||
glGetFenceivNV@12 @154
|
||||
glIsFenceNV@4 @155
|
||||
glSetFenceNV@8 @156
|
||||
glTestFenceNV@4 @157
|
||||
glGetTranslatedShaderSourceANGLE@16 @159
|
||||
glTexStorage2DEXT@20 @160
|
||||
glGetGraphicsResetStatusEXT@0 @161
|
||||
glReadnPixelsEXT@32 @162
|
||||
glGetnUniformfvEXT@16 @163
|
||||
glGetnUniformivEXT@16 @164
|
||||
glGenQueriesEXT@8 @165
|
||||
glDeleteQueriesEXT@8 @166
|
||||
glIsQueryEXT@4 @167
|
||||
glBeginQueryEXT@8 @168
|
||||
glEndQueryEXT@4 @169
|
||||
glGetQueryivEXT@12 @170
|
||||
glGetQueryObjectuivEXT@12 @171
|
||||
glVertexAttribDivisorANGLE@8 @172
|
||||
glDrawArraysInstancedANGLE@16 @173
|
||||
glDrawElementsInstancedANGLE@20 @174
|
||||
glProgramBinaryOES@16 @175
|
||||
glGetProgramBinaryOES@20 @176
|
||||
glDrawBuffersEXT@8 @179
|
||||
glMapBufferOES@8 @285
|
||||
glUnmapBufferOES@4 @286
|
||||
glGetBufferPointervOES@12 @287
|
||||
glMapBufferRangeEXT@16 @288
|
||||
glFlushMappedBufferRangeEXT@12 @289
|
||||
|
||||
; GLES 3.0 Functions
|
||||
glReadBuffer@4 @180
|
||||
glDrawRangeElements@24 @181
|
||||
glTexImage3D@40 @182
|
||||
glTexSubImage3D@44 @183
|
||||
glCopyTexSubImage3D@36 @184
|
||||
glCompressedTexImage3D@36 @185
|
||||
glCompressedTexSubImage3D@44 @186
|
||||
glGenQueries@8 @187
|
||||
glDeleteQueries@8 @188
|
||||
glIsQuery@4 @189
|
||||
glBeginQuery@8 @190
|
||||
glEndQuery@4 @191
|
||||
glGetQueryiv@12 @192
|
||||
glGetQueryObjectuiv@12 @193
|
||||
glUnmapBuffer@4 @194
|
||||
glGetBufferPointerv@12 @195
|
||||
glDrawBuffers@8 @196
|
||||
glUniformMatrix2x3fv@16 @197
|
||||
glUniformMatrix3x2fv@16 @198
|
||||
glUniformMatrix2x4fv@16 @199
|
||||
glUniformMatrix4x2fv@16 @200
|
||||
glUniformMatrix3x4fv@16 @201
|
||||
glUniformMatrix4x3fv@16 @202
|
||||
glBlitFramebuffer@40 @203
|
||||
glRenderbufferStorageMultisample@20 @204
|
||||
glFramebufferTextureLayer@20 @205
|
||||
glMapBufferRange@16 @206
|
||||
glFlushMappedBufferRange@12 @207
|
||||
glBindVertexArray@4 @208
|
||||
glDeleteVertexArrays@8 @209
|
||||
glGenVertexArrays@8 @210
|
||||
glIsVertexArray@4 @211
|
||||
glGetIntegeri_v@12 @212
|
||||
glBeginTransformFeedback@4 @213
|
||||
glEndTransformFeedback@0 @214
|
||||
glBindBufferRange@20 @215
|
||||
glBindBufferBase@12 @216
|
||||
glTransformFeedbackVaryings@16 @217
|
||||
glGetTransformFeedbackVarying@28 @218
|
||||
glVertexAttribIPointer@20 @219
|
||||
glGetVertexAttribIiv@12 @220
|
||||
glGetVertexAttribIuiv@12 @221
|
||||
glVertexAttribI4i@20 @222
|
||||
glVertexAttribI4ui@20 @223
|
||||
glVertexAttribI4iv@8 @224
|
||||
glVertexAttribI4uiv@8 @225
|
||||
glGetUniformuiv@12 @226
|
||||
glGetFragDataLocation@8 @227
|
||||
glUniform1ui@8 @228
|
||||
glUniform2ui@12 @229
|
||||
glUniform3ui@16 @230
|
||||
glUniform4ui@20 @231
|
||||
glUniform1uiv@12 @232
|
||||
glUniform2uiv@12 @233
|
||||
glUniform3uiv@12 @234
|
||||
glUniform4uiv@12 @235
|
||||
glClearBufferiv@12 @236
|
||||
glClearBufferuiv@12 @237
|
||||
glClearBufferfv@12 @238
|
||||
glClearBufferfi@16 @239
|
||||
glGetStringi@8 @240
|
||||
glCopyBufferSubData@20 @241
|
||||
glGetUniformIndices@16 @242
|
||||
glGetActiveUniformsiv@20 @243
|
||||
glGetUniformBlockIndex@8 @244
|
||||
glGetActiveUniformBlockiv@16 @245
|
||||
glGetActiveUniformBlockName@20 @246
|
||||
glUniformBlockBinding@12 @247
|
||||
glDrawArraysInstanced@16 @248
|
||||
glDrawElementsInstanced@20 @249
|
||||
glFenceSync@8 @250
|
||||
glIsSync@4 @251
|
||||
glDeleteSync@4 @252
|
||||
glClientWaitSync@16 @253
|
||||
glWaitSync@16 @254
|
||||
glGetInteger64v@8 @255
|
||||
glGetSynciv@20 @256
|
||||
glGetInteger64i_v@12 @257
|
||||
glGetBufferParameteri64v@12 @258
|
||||
glGenSamplers@8 @259
|
||||
glDeleteSamplers@8 @260
|
||||
glIsSampler@4 @261
|
||||
glBindSampler@8 @262
|
||||
glSamplerParameteri@12 @263
|
||||
glSamplerParameteriv@12 @264
|
||||
glSamplerParameterf@12 @265
|
||||
glSamplerParameterfv@12 @266
|
||||
glGetSamplerParameteriv@12 @267
|
||||
glGetSamplerParameterfv@12 @268
|
||||
glVertexAttribDivisor@8 @269
|
||||
glBindTransformFeedback@8 @270
|
||||
glDeleteTransformFeedbacks@8 @271
|
||||
glGenTransformFeedbacks@8 @272
|
||||
glIsTransformFeedback@4 @273
|
||||
glPauseTransformFeedback@0 @274
|
||||
glResumeTransformFeedback@0 @275
|
||||
glGetProgramBinary@20 @276
|
||||
glProgramBinary@16 @277
|
||||
glProgramParameteri@12 @278
|
||||
glInvalidateFramebuffer@12 @279
|
||||
glInvalidateSubFramebuffer@28 @280
|
||||
glTexStorage2D@20 @281
|
||||
glTexStorage3D@24 @282
|
||||
glGetInternalformativ@20 @283
|
||||
|
||||
; Setting up TRACE macro callbacks
|
||||
SetTraceFunctionPointers @284
|
||||
|
||||
; ANGLE Platform Implementation
|
||||
ANGLEPlatformCurrent @290
|
||||
ANGLEPlatformInitialize @291
|
||||
ANGLEPlatformShutdown @292
|
||||
|
||||
; EGL dependencies
|
||||
glCreateContext @144 NONAME
|
||||
glDestroyContext @145 NONAME
|
||||
glMakeCurrent @146 NONAME
|
||||
glGetCurrentContext @147 NONAME
|
||||
glGetProcAddress@4 @148 NONAME
|
||||
glBindTexImage@4 @158 NONAME
|
||||
glCreateRenderer @177 NONAME
|
||||
glDestroyRenderer @178 NONAME
|
|
@ -0,0 +1,201 @@
|
|||
/**
|
||||
* sdkddkver.h: Version definitions for SDK and DDK. Originally
|
||||
* from ReactOS PSDK/DDK, this file is in the public domain:
|
||||
*
|
||||
* 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 _INC_SDKDDKVER
|
||||
#define _INC_SDKDDKVER
|
||||
|
||||
/* _WIN32_WINNT */
|
||||
#define _WIN32_WINNT_NT4 0x0400
|
||||
#define _WIN32_WINNT_WIN2K 0x0500
|
||||
#define _WIN32_WINNT_WINXP 0x0501
|
||||
#define _WIN32_WINNT_WS03 0x0502
|
||||
#define _WIN32_WINNT_WIN6 0x0600
|
||||
#define _WIN32_WINNT_VISTA 0x0600
|
||||
#define _WIN32_WINNT_WS08 0x0600
|
||||
#define _WIN32_WINNT_LONGHORN 0x0600
|
||||
#define _WIN32_WINNT_WIN7 0x0601
|
||||
#define _WIN32_WINNT_WIN8 0x0602
|
||||
#define _WIN32_WINNT_WINBLUE 0x0603
|
||||
|
||||
/* _WIN32_IE */
|
||||
#define _WIN32_IE_IE20 0x0200
|
||||
#define _WIN32_IE_IE30 0x0300
|
||||
#define _WIN32_IE_IE302 0x0302
|
||||
#define _WIN32_IE_IE40 0x0400
|
||||
#define _WIN32_IE_IE401 0x0401
|
||||
#define _WIN32_IE_IE50 0x0500
|
||||
#define _WIN32_IE_IE501 0x0501
|
||||
#define _WIN32_IE_IE55 0x0550
|
||||
#define _WIN32_IE_IE60 0x0600
|
||||
#define _WIN32_IE_IE60SP1 0x0601
|
||||
#define _WIN32_IE_IE60SP2 0x0603
|
||||
#define _WIN32_IE_IE70 0x0700
|
||||
#define _WIN32_IE_IE80 0x0800
|
||||
#define _WIN32_IE_IE90 0x0900
|
||||
#define _WIN32_IE_IE100 0x0a00
|
||||
|
||||
/* Mappings Between IE Version and Windows Version */
|
||||
#define _WIN32_IE_NT4 _WIN32_IE_IE20
|
||||
#define _WIN32_IE_NT4SP1 _WIN32_IE_IE20
|
||||
#define _WIN32_IE_NT4SP2 _WIN32_IE_IE20
|
||||
#define _WIN32_IE_NT4SP3 _WIN32_IE_IE302
|
||||
#define _WIN32_IE_NT4SP4 _WIN32_IE_IE401
|
||||
#define _WIN32_IE_NT4SP5 _WIN32_IE_IE401
|
||||
#define _WIN32_IE_NT4SP6 _WIN32_IE_IE50
|
||||
#define _WIN32_IE_WIN98 _WIN32_IE_IE401
|
||||
#define _WIN32_IE_WIN98SE _WIN32_IE_IE50
|
||||
#define _WIN32_IE_WINME _WIN32_IE_IE55
|
||||
#define _WIN32_IE_WIN2K _WIN32_IE_IE501
|
||||
#define _WIN32_IE_WIN2KSP1 _WIN32_IE_IE501
|
||||
#define _WIN32_IE_WIN2KSP2 _WIN32_IE_IE501
|
||||
#define _WIN32_IE_WIN2KSP3 _WIN32_IE_IE501
|
||||
#define _WIN32_IE_WIN2KSP4 _WIN32_IE_IE501
|
||||
#define _WIN32_IE_XP _WIN32_IE_IE60
|
||||
#define _WIN32_IE_XPSP1 _WIN32_IE_IE60SP1
|
||||
#define _WIN32_IE_XPSP2 _WIN32_IE_IE60SP2
|
||||
#define _WIN32_IE_WS03 0x0602
|
||||
#define _WIN32_IE_WS03SP1 _WIN32_IE_IE60SP2
|
||||
#define _WIN32_IE_WIN6 _WIN32_IE_IE70
|
||||
#define _WIN32_IE_LONGHORN _WIN32_IE_IE70
|
||||
#define _WIN32_IE_WIN7 _WIN32_IE_IE80
|
||||
#define _WIN32_IE_WIN8 _WIN32_IE_IE100
|
||||
#define _WIN32_IE_WINBLUE _WIN32_IE_IE100
|
||||
|
||||
/* NTDDI_VERSION */
|
||||
#ifndef NTDDI_WIN2K
|
||||
#define NTDDI_WIN2K 0x05000000
|
||||
#endif
|
||||
#ifndef NTDDI_WIN2KSP1
|
||||
#define NTDDI_WIN2KSP1 0x05000100
|
||||
#endif
|
||||
#ifndef NTDDI_WIN2KSP2
|
||||
#define NTDDI_WIN2KSP2 0x05000200
|
||||
#endif
|
||||
#ifndef NTDDI_WIN2KSP3
|
||||
#define NTDDI_WIN2KSP3 0x05000300
|
||||
#endif
|
||||
#ifndef NTDDI_WIN2KSP4
|
||||
#define NTDDI_WIN2KSP4 0x05000400
|
||||
#endif
|
||||
|
||||
#ifndef NTDDI_WINXP
|
||||
#define NTDDI_WINXP 0x05010000
|
||||
#endif
|
||||
#ifndef NTDDI_WINXPSP1
|
||||
#define NTDDI_WINXPSP1 0x05010100
|
||||
#endif
|
||||
#ifndef NTDDI_WINXPSP2
|
||||
#define NTDDI_WINXPSP2 0x05010200
|
||||
#endif
|
||||
#ifndef NTDDI_WINXPSP3
|
||||
#define NTDDI_WINXPSP3 0x05010300
|
||||
#endif
|
||||
#ifndef NTDDI_WINXPSP4
|
||||
#define NTDDI_WINXPSP4 0x05010400
|
||||
#endif
|
||||
|
||||
#define NTDDI_WS03 0x05020000
|
||||
#define NTDDI_WS03SP1 0x05020100
|
||||
#define NTDDI_WS03SP2 0x05020200
|
||||
#define NTDDI_WS03SP3 0x05020300
|
||||
#define NTDDI_WS03SP4 0x05020400
|
||||
|
||||
#define NTDDI_WIN6 0x06000000
|
||||
#define NTDDI_WIN6SP1 0x06000100
|
||||
#define NTDDI_WIN6SP2 0x06000200
|
||||
#define NTDDI_WIN6SP3 0x06000300
|
||||
#define NTDDI_WIN6SP4 0x06000400
|
||||
|
||||
#define NTDDI_VISTA NTDDI_WIN6
|
||||
#define NTDDI_VISTASP1 NTDDI_WIN6SP1
|
||||
#define NTDDI_VISTASP2 NTDDI_WIN6SP2
|
||||
#define NTDDI_VISTASP3 NTDDI_WIN6SP3
|
||||
#define NTDDI_VISTASP4 NTDDI_WIN6SP4
|
||||
#define NTDDI_LONGHORN NTDDI_VISTA
|
||||
|
||||
#define NTDDI_WS08 NTDDI_WIN6SP1
|
||||
#define NTDDI_WS08SP2 NTDDI_WIN6SP2
|
||||
#define NTDDI_WS08SP3 NTDDI_WIN6SP3
|
||||
#define NTDDI_WS08SP4 NTDDI_WIN6SP4
|
||||
|
||||
#define NTDDI_WIN7 0x06010000
|
||||
#define NTDDI_WIN8 0x06020000
|
||||
#define NTDDI_WINBLUE 0x06030000
|
||||
|
||||
/* Version Fields in NTDDI_VERSION */
|
||||
#define OSVERSION_MASK 0xFFFF0000U
|
||||
#define SPVERSION_MASK 0x0000FF00
|
||||
#define SUBVERSION_MASK 0x000000FF
|
||||
|
||||
/* Macros to Extract Version Fields From NTDDI_VERSION */
|
||||
#define OSVER(Version) ((Version) & OSVERSION_MASK)
|
||||
#define SPVER(Version) (((Version) & SPVERSION_MASK) >> 8)
|
||||
#define SUBVER(Version) (((Version) & SUBVERSION_MASK))
|
||||
|
||||
/* Macros to get the NTDDI for a given WIN32 */
|
||||
#define NTDDI_VERSION_FROM_WIN32_WINNT2(Version) Version##0000
|
||||
#define NTDDI_VERSION_FROM_WIN32_WINNT(Version) NTDDI_VERSION_FROM_WIN32_WINNT2(Version)
|
||||
|
||||
/* Select Default WIN32_WINNT Value */
|
||||
#if !defined(_WIN32_WINNT) && !defined(_CHICAGO_)
|
||||
#define _WIN32_WINNT _WIN32_WINNT_WS03
|
||||
#endif
|
||||
|
||||
/* Choose NTDDI Version */
|
||||
#ifndef NTDDI_VERSION
|
||||
#ifdef _WIN32_WINNT
|
||||
#define NTDDI_VERSION NTDDI_VERSION_FROM_WIN32_WINNT(_WIN32_WINNT)
|
||||
#else
|
||||
#define NTDDI_VERSION NTDDI_WS03
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Choose WINVER Value */
|
||||
#ifndef WINVER
|
||||
#ifdef _WIN32_WINNT
|
||||
#define WINVER _WIN32_WINNT
|
||||
#else
|
||||
#define WINVER 0x0502
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Choose IE Version */
|
||||
#ifndef _WIN32_IE
|
||||
#ifdef _WIN32_WINNT
|
||||
#if (_WIN32_WINNT <= _WIN32_WINNT_NT4)
|
||||
#define _WIN32_IE _WIN32_IE_IE50
|
||||
#elif (_WIN32_WINNT <= _WIN32_WINNT_WIN2K)
|
||||
#define _WIN32_IE _WIN32_IE_IE501
|
||||
#elif (_WIN32_WINNT <= _WIN32_WINNT_WINXP)
|
||||
#define _WIN32_IE _WIN32_IE_IE60
|
||||
#elif (_WIN32_WINNT <= _WIN32_WINNT_WS03)
|
||||
#define _WIN32_IE _WIN32_IE_WS03
|
||||
#elif (_WIN32_WINNT <= _WIN32_WINNT_VISTA)
|
||||
#define _WIN32_IE _WIN32_IE_LONGHORN
|
||||
#elif (_WIN32_WINNT <= _WIN32_WINNT_WIN7)
|
||||
#define _WIN32_IE _WIN32_IE_WIN7
|
||||
#elif (_WIN32_WINNT <= _WIN32_WINNT_WIN8)
|
||||
#define _WIN32_IE _WIN32_IE_WIN8
|
||||
#else
|
||||
#define _WIN32_IE 0x0a00
|
||||
#endif
|
||||
#else
|
||||
#define _WIN32_IE 0x0700
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Make Sure NTDDI_VERSION and _WIN32_WINNT Match */
|
||||
#if ((OSVER(NTDDI_VERSION) == NTDDI_WIN2K) && (_WIN32_WINNT != _WIN32_WINNT_WIN2K)) || \
|
||||
((OSVER(NTDDI_VERSION) == NTDDI_WINXP) && (_WIN32_WINNT != _WIN32_WINNT_WINXP)) || \
|
||||
((OSVER(NTDDI_VERSION) == NTDDI_WS03) && (_WIN32_WINNT != _WIN32_WINNT_WS03)) || \
|
||||
((OSVER(NTDDI_VERSION) == NTDDI_WINXP) && (_WIN32_WINNT != _WIN32_WINNT_WINXP))
|
||||
#error NTDDI_VERSION and _WIN32_WINNT mismatch!
|
||||
#endif
|
||||
|
||||
#endif /* _INC_SDKDDKVER */
|
|
@ -0,0 +1,79 @@
|
|||
/**
|
||||
* This file is part of the mingw-w64 runtime package.
|
||||
* No warranty is given; refer to the file DISCLAIMER within this package.
|
||||
*/
|
||||
|
||||
#ifndef _INC_VERSIONHELPERS
|
||||
#define _INC_VERSIONHELPERS
|
||||
|
||||
#include <winapifamily.h>
|
||||
|
||||
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && !defined(__WIDL__)
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define VERSIONHELPERAPI inline bool
|
||||
#else
|
||||
#define VERSIONHELPERAPI FORCEINLINE BOOL
|
||||
#endif
|
||||
|
||||
VERSIONHELPERAPI IsWindowsVersionOrGreater(WORD major, WORD minor, WORD servpack)
|
||||
{
|
||||
OSVERSIONINFOEXW vi = {sizeof(vi),major,minor,0,0,{0},servpack};
|
||||
return VerifyVersionInfoW(&vi, VER_MAJORVERSION|VER_MINORVERSION|VER_SERVICEPACKMAJOR,
|
||||
VerSetConditionMask(VerSetConditionMask(VerSetConditionMask(0,
|
||||
VER_MAJORVERSION,VER_GREATER_EQUAL),
|
||||
VER_MINORVERSION,VER_GREATER_EQUAL),
|
||||
VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL));
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindowsXPOrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WINXP), LOBYTE(_WIN32_WINNT_WINXP), 0);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindowsXPSP1OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WINXP), LOBYTE(_WIN32_WINNT_WINXP), 1);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindowsXPSP2OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WINXP), LOBYTE(_WIN32_WINNT_WINXP), 2);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindowsXPSP3OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WINXP), LOBYTE(_WIN32_WINNT_WINXP), 3);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindowsVistaOrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_VISTA), LOBYTE(_WIN32_WINNT_VISTA), 0);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindowsVistaSP1OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_VISTA), LOBYTE(_WIN32_WINNT_VISTA), 1);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindowsVistaSP2OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_VISTA), LOBYTE(_WIN32_WINNT_VISTA), 2);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindows7OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WIN7), LOBYTE(_WIN32_WINNT_WIN7), 0);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindows7SP1OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WIN7), LOBYTE(_WIN32_WINNT_WIN7), 1);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindows8OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WIN8), LOBYTE(_WIN32_WINNT_WIN8), 0);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindows8Point1OrGreater(void) {
|
||||
return IsWindowsVersionOrGreater(HIBYTE(_WIN32_WINNT_WINBLUE), LOBYTE(_WIN32_WINNT_WINBLUE), 0);
|
||||
}
|
||||
|
||||
VERSIONHELPERAPI IsWindowsServer(void) {
|
||||
OSVERSIONINFOEXW vi = {sizeof(vi),0,0,0,0,{0},0,0,0,VER_NT_WORKSTATION};
|
||||
return !VerifyVersionInfoW(&vi, VER_PRODUCT_TYPE, VerSetConditionMask(0, VER_PRODUCT_TYPE, VER_EQUAL));
|
||||
}
|
||||
|
||||
#endif
|
||||
#endif
|
|
@ -226,4 +226,20 @@ OTHER_FILES += \
|
|||
ghostscript/mingw-w64/libspectre.patch \
|
||||
ghostscript/mingw-w64/mingw-build.patch \
|
||||
lcms2/mingw-w64/PKGBUILD \
|
||||
lcms2/mingw-w64/0002-need-jconfig-before-jmoreconfig.mingw
|
||||
lcms2/mingw-w64/0002-need-jconfig-before-jmoreconfig.mingw \
|
||||
angleproject/mingw-w64/0000-build-fix.patch \
|
||||
angleproject/mingw-w64/PKGBUILD \
|
||||
angleproject/mingw-w64/angleproject-export-shader-symbols.patch \
|
||||
angleproject/mingw-w64/angleproject-include-import-library-and-use-def-file.patch \
|
||||
angleproject/mingw-w64/d3d10_1.h \
|
||||
angleproject/mingw-w64/d3d11.h \
|
||||
angleproject/mingw-w64/angleproject/mingw-w64/d3d11sdklayers.h \
|
||||
angleproject/mingw-w64/dcomp.h \
|
||||
angleproject/mingw-w64/dcompanimation.h \
|
||||
angleproject/mingw-w64/dcomptypes.h \
|
||||
angleproject/mingw-w64/dxgi1_2.h \
|
||||
angleproject/mingw-w64/libEGL_mingw32.def \
|
||||
angleproject/mingw-w64/libGLESv2_mingw32.def \
|
||||
angleproject/mingw-w64/sdkddkver.h \
|
||||
angleproject/mingw-w64/versionhelpers.h
|
||||
|
||||
|
|
Loading…
Reference in New Issue