|
Packit |
4d0513 |
Wayland EGL External Platform library
|
|
Packit |
4d0513 |
=====================================
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
Overview
|
|
Packit |
4d0513 |
--------
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
This is a work-in-progress implementation of a EGL External Platform library to
|
|
Packit |
4d0513 |
add client-side Wayland support to EGL on top of EGLDevice and EGLStream
|
|
Packit |
4d0513 |
families of extensions.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
This library implements an EGL External Platform interface to work along with
|
|
Packit |
4d0513 |
EGL drivers that support the external platform mechanism. More information
|
|
Packit |
4d0513 |
about EGL External platforms and the interface can be found at:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
https://github.com/NVIDIA/eglexternalplatform
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
Building and Installing the library
|
|
Packit |
4d0513 |
-----------------------------------
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
This library build-depends on:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
* EGL headers
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
https://www.khronos.org/registry/EGL/
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
* Wayland libraries & protocols
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
https://wayland.freedesktop.org/
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
* EGL External Platform interface
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
https://github.com/NVIDIA/eglexternalplatform
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
To build, run:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
./autogen.sh
|
|
Packit |
4d0513 |
make
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
To install, run:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
make install
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
You can also use meson build system to build and install:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
meson builddir
|
|
Packit |
4d0513 |
cd builddir
|
|
Packit |
4d0513 |
ninja
|
|
Packit |
4d0513 |
ninja install
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
*Notes*:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
The NVIDIA EGL driver uses a JSON-based loader to load all EGL External
|
|
Packit |
4d0513 |
platforms available on the system.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
If this library is not installed as part of a NVIDIA driver installation,
|
|
Packit |
4d0513 |
a JSON configuration file must be manually added in order to make the
|
|
Packit |
4d0513 |
library work with the NVIDIA driver.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
The default EGL External platform JSON configuration directory is:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
`/usr/share/egl/egl_external_platform.d/`
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
Acknowledgements
|
|
Packit |
4d0513 |
----------------
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
Thanks to James Jones for the original implementation of the Wayland EGL
|
|
Packit |
4d0513 |
platform.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
### Wayland EGL External platform library ###
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
The Wayland EGL External platform library itself is licensed as follows:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
Copyright (c) 2016, NVIDIA CORPORATION. All rights reserved.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
Permission is hereby granted, free of charge, to any person obtaining a
|
|
Packit |
4d0513 |
copy of this software and associated documentation files (the "Software"),
|
|
Packit |
4d0513 |
to deal in the Software without restriction, including without limitation
|
|
Packit |
4d0513 |
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
Packit |
4d0513 |
and/or sell copies of the Software, and to permit persons to whom the
|
|
Packit |
4d0513 |
Software is furnished to do so, subject to the following conditions:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
The above copyright notice and this permission notice shall be included in
|
|
Packit |
4d0513 |
all copies or substantial portions of the Software.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
Packit |
4d0513 |
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
Packit |
4d0513 |
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
Packit |
4d0513 |
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
Packit |
4d0513 |
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
Packit |
4d0513 |
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
Packit |
4d0513 |
DEALINGS IN THE SOFTWARE.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
### buildconf ###
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
The Wayland EGL External platform library uses the buildconf autotools
|
|
Packit |
4d0513 |
bootstrapping script 'autogen.sh':
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
http://freecode.com/projects/buildconf
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
This script carries the following copyright notice:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
Copyright (c) 2005-2009 United States Government as represented by
|
|
Packit |
4d0513 |
the U.S. Army Research Laboratory.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
Redistribution and use in source and binary forms, with or without
|
|
Packit |
4d0513 |
modification, are permitted provided that the following conditions
|
|
Packit |
4d0513 |
are met:
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
1. Redistributions of source code must retain the above copyright
|
|
Packit |
4d0513 |
notice, this list of conditions and the following disclaimer.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
2. Redistributions in binary form must reproduce the above
|
|
Packit |
4d0513 |
copyright notice, this list of conditions and the following
|
|
Packit |
4d0513 |
disclaimer in the documentation and/or other materials provided
|
|
Packit |
4d0513 |
with the distribution.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
3. The name of the author may not be used to endorse or promote
|
|
Packit |
4d0513 |
products derived from this software without specific prior written
|
|
Packit |
4d0513 |
permission.
|
|
Packit |
4d0513 |
|
|
Packit |
4d0513 |
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
|
|
Packit |
4d0513 |
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
Packit |
4d0513 |
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
Packit |
4d0513 |
ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
|
|
Packit |
4d0513 |
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
Packit |
4d0513 |
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
|
Packit |
4d0513 |
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
Packit |
4d0513 |
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
|
Packit |
4d0513 |
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
|
Packit |
4d0513 |
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
Packit |
4d0513 |
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|