File:  [NetBSD Developer Wiki] / wikisrc / projects / project / mesavulkan.mdwn
Revision 1.2: download - view: text, annotated - select for diffs
Wed May 11 08:00:22 2022 UTC (6 months, 3 weeks ago) by nia
Branches: MAIN
CVS tags: HEAD
note that these projects require a netbsd lappy

[[!template id=project

title="Add support for OpenCL and Vulkan to NetBSD xsrc (175h)"

contact="""
[nia](mailto:nia@NetBSD.org)
"""

mentors="""
[nia](mailto:nia@NetBSD.org)
"""

category="userland"
difficulty="medium"
duration="175h"

description="""

A core component of NetBSD is the 'xsrc' repository, which contains
a 'classic' distribution of X11, all related programs, and libraries,
as found on Unix systems from times of yore.

`xsrc` uses the NetBSD build system and only BSD make to build, which
means it builds extremely quickly, with minimal dependencies, and is
easy to cross-compile.  It currently includes an implementation
of the OpenGL graphics API (Mesa), but not an implementation of
the next-generation Vulkan graphics API, or OpenCL, the
GPU-accelerated compute API, which can also be obtained from Mesa.

Most of modern X.Org is built with Meson and Python, so
some level of translation is required to integrate new components.

This project involves making modifications to the Mesa Vulkan and
OpenCL libraries in order to allow them to work on NetBSD (this
part requires basic knowledge of the C programming language and
Unix APIs), ideally submitting them upstream, until Vulkan and
OpenCL support can be built on NetBSD, and then integrating the
relevant components into the NetBSD build system using only
BSD Make.

The candidate should ideally have some knowledge of the C
programming language and build systems.

"""
]]

[[!tag gsoc]]
[[!tag gsoc175h]]

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb