| Age | Commit message (Collapse) | Author |
|
This avoids these headers leaking conflicting Windows symbols to
non-Windows code.
|
|
Compiling the glvtrace_xgl64.dll library on Windows (see prior commit) resulted
in new warnings, some of which seemed serious (e.g. using "sizeof(void)", which
is 1 on Linux, with GCC, but is 0 on Windows).
|
|
There are some places (e.g. glave) where PLATFORM_LINUX is #define'd, but
normally we need to rely on "__linux__", which is #define'd by the compiler
(i.e. we can rely on it being there).
|
|
This change modifies many of the generators to use "#if
defined(PLATFORM_LINUX) || defined(XCB_NVIDIA)" to choose between using
XCB or WIN32 native.
|
|
These changes were cherry-picked from nvidia-dev-20150218 and
KhronosGroup/GDC-stable.
|
|
This reverts commit fea3e5fc1ef2f3c9e4f06ab5a8d682f89b76377e.
|
|
|
|
|
|
Starting with this commit, building XGL on Windows requires explicitly stating
whether a "Release" or "Debug" build is desired when doing the initial cmake
command. This is documented in the "Build.md" file.
Linux trace of cube plays to completion on windows!
Changes to the null driver:
advertise support for both WIN WSI and X11 WSI
added support for xglCreateBufferView
and added a logging capability (turned off by default)
Still have some issues:
- x11 support emulation/replacement
- Windows null driver creates a bad device queue
- Need to copy libraries to dir containing the .exe
Glave ext libs are now put in same dir as glvreplay64.exe...
This change only affects Windows -- on Linux the libs and
the glave replay progs were already in the same dir.
Also added a line to BUILD.md regarding the need to have XGL.dll
in PATH.
|
|
Since the sample Intel driver hasn't been ported to Windows, this nulldrv is
being used to bootstrap Windows support. It can also provide a hint to new
IHV's for how to set the magic number.
|
|
bug #13268
header revision: r29554
Add colorAttachmentCount to CREATE_RENDER_PASS_INFO to aid tracing tools.
|
|
bug #12925
header version: r29511
Can determine dualBlendModeEnable from blend information provided.
Integrate review feedback.
|
|
bug #12925
header version: r29511
Remove separate scissor enable and scissor count. Scissor always
enabled and must always provide scissor rect for every viewport.
|
|
We wanted a more explicit way to determine if the driver
ICD being loaded is providing compatible objects. To do
that we check for a magic dword value at the beginning
of the object. Non-compliant ICDs will assert in the loader
or the loader's dispatch functions if an object does
not have the correct value.
Dispatch checks are debug only.
|
|
The STATIC_INLINE macro is now in "xglPlatform.h". It is also now being used
by the *_loader_magic_value() functions. This allows it to be compiled on
Windows.
|
|
This keeps the real 47.1 changes in tact.
|
|
This was added to revision SVN 29370 for Khronos bug 13274.
|
|
Took care of the remaining substantive differences. Still many
formatting/commenting differences. Version set to 47.1 to indicate
some post-47 additions.
|
|
These directories build and are partially turned-on on Windows, using the "tri"
demo (follow-on commit) and a "NULL driver" that was created out of the
sample/Intel driver. The GetProcAddress() is not yet finding symbols in the
NULL driver.
For now:
- "C:\Windows\System32" is the default XGL driver directory. The getenv()
isn't yet working. I suggest creating your own #define in order to point to
where a driver is.
- In order to recognize a Windows driver, we must look at both its prefix and
suffix (i.e. it is named "XGL_*.dll", e.g. "XGL_i965.dll).
- We autogenerate Windows ".def" files for the layers. Additional info is:
- This is necessary in order for a DLL to export symbols that can be queried
using GetProcAddress(). We can't use the normal Windows approach of
declaring these functions using "__declspec(dllexport)", because these
functions are declared in "xgl.h".
- This involves adding and running the new "xgl-win-def-file-generate.py"
file.
- NOTE: Layers don't have the xglInitAndEnumerateGpus() entrypoint, just the
xglGetProcAddr() entrypoint (and now the xglEnumerateLayers() entrypoint).
Generating them is pretty simple.
NOTE: In order to build on a 64-bit Windows 7/8 system, I did the following:
- Install VisualStudio 2013 Professional
- Install CMake from: http://www.cmake.org/cmake/resources/software.html
- I let it add itself to the system PATH environment variable.
- Install Python 3 from: https://www.python.org/downloads
- I let it add itself to the system PATH environment variable.
- Obtain the Git repository, checkout the "ian-150127-WinBuild" branch.
- Using a Cygwin shell: I did the following:
- "cd" to the top-level directory (i.e. the one that contains the ".git"
directory).
- "mkdir _out64"
- "cd _out64"
- "cmake -G "Visual Studio 12 Win64" .."
- At this point, I used WindowsExplorer to open the "XGL.sln" file. I can
build. CMake causes the build shortcut to be "Ctrl-Shift-B" instead of the
normal "F7". I had to right-click the "ALL_BUILD" project, go to
Properties->Debugging and change the debug Command and Working Directory to
point to "tri.exe" and where the executable are. At this point, I can debug
(using the normal "F5" shortcut).
|
|
This is part of rev 47 but was accidentally skipped.
|
|
Misspelled a parameter name, fixup for header cplusplus definition.
|
|
|
|
Also they do the same init and removal as existing InitAndEnumerateGpus.
|
|
For now, retain the existing InitAndEnumerateGpus and have it create one
instance. New APIs aren't fully implemented yet in driver or loader.
|
|
Arrays of MemBarrier pointers were incorrectly declared. Reference
bug #13273, for xgl header rev #42.
|
|
Part of moving to xgl.h rev#38, svn rev 29293-29302
|
|
Miscellaneous updates for SVN revs 29191, 29205 and 29241. Basically
adding MAX_ENUM, copyright notices, and improved type definitions.
|
|
|
|
Added new APIs for optimized clears of color and depth buffers.
Bug# 13172, due to a bug in rev39, this also accounts for the change
in rev41.
|
|
Alpha header rev: r29437
Bug #13299
|
|
alpha header version: r29593
XGL_RESULT is the XGL return codes.
Agreement part of F2F Jan 26, 2015.
|
|
|
|
Add default values if no attachments are present, correctly handle
override values when attachments are present. Bug# 13212, header
revision #36.
|
|
|
|
Cosmetic change to xgl header for rev# 37, bug# 13244.
|
|
For svn rev# 29226, generalized an XGL_WAIT_EVENT enum.
|
|
Bug #: 12997
Alpha header revision: r29249
|
|
Implement changes for alpha header version 0.35.
Bug #12998.
|
|
Cosmetic xgl header change for xgl.h revision #40.
|
|
Also reorder memory_alloc_info struct as memPriority added back in as last
member in struct.
Conflicts:
demos/cube.c
demos/tri.c
icd/intel/buf.c
icd/intel/event.c
icd/intel/img.c
icd/intel/mem.c
icd/intel/pipeline.c
icd/intel/query.c
include/xgl.h
tests/image_tests.cpp
tests/init.cpp
tests/render_tests.cpp
tests/xgltestbinding.cpp
tests/xgltestbinding.h
|
|
Conflicts:
icd/intel/mem.c
|
|
|
|
Conflicts:
include/xgl.h
tests/image_tests.cpp
tests/init.cpp
tests/xgltestbinding.h
|
|
For images have the tests fill in the IMAGE_ALLOC structures. For buffers
this is not yet done.
Conflicts:
demos/cube.c
demos/tri.c
include/xgl.h
tests/init.cpp
tests/xgltestbinding.cpp
|
|
Driver always does one allocation but tests support drivers with N allocations.
Conflicts:
demos/cube.c
demos/tri.c
tests/image_tests.cpp
tests/render_tests.cpp
|
|
For now it is always index 0. Updates, driver, glave, tests, demos, include,
and layers.
|
|
|
|
All except layout(set=) is supported. The change to
pipeline_compiler_interface.{cpp,h} is ugly and fragile. It should be fixed
after adding layout(set=) support.
|
|
Update xgl.h (cosmetic changes only). Add support for new formats.
v2: fix blit tests and enhance xglinfo for new formats
|
|
|