Skip to content
Jeff Vigil edited this page Aug 24, 2021 · 5 revisions

How to Create an Extension

  1. Craft the new extension document
    • Use one of the published extensions as a template EGL Registry
    • Include the standard fields:
    • Name ( Name of the extension: EGL_XXX_something_descriptive, XXX is company acronym, "KHR" for Khronos, or "EXT" for multiple vendors )
    • Name strings ( Strings returned by calling eglQueryString for EGL_EXTENSIONS )
    • Contributors ( Authors and contributors of this extension )
    • Contact ( Author or primary contact of company )
    • Status ( Draft | Complete )
    • Version ( For drafts use 0.1 .. 0.9, for completed start with 1.0 )
    • Number ( extension number - assigned when requesting merge to github EGL Registry )
    • Extension type ( Display | Client | Device ) Display is display dependent, i.e. window system. Client is display independent. Device is for device/GPU specific.
    • Dependencies ( list of extension that are needed for this extension, and EGL Spec version )
    • Overview ( Describe the purpose of the extension )
    • New types , New functions and New Tokens
    • Specification modifications - changes to the specification to edit in this extension.
    • Errors
    • Issues ( Describe issues or design decisions )
    • Revision History
  2. Create branch
    • Go to KhronosGroup/EGL-Registry code
    • Click "Fork" to make a clone to your own repository space.
    • Create a working branch for your extension spec in your repo; however, on the merge-back step, merge back to the EGL-Registry/main repo
    • Click button "Branch:main" and then create a new branch name
    • Give the branch a descriptive "Branch name" that is indicative of the extension - such as the extension Name.
    • Create from "main" branch
    • click Create branch
  3. Make the modifications as described in the README.md
    • go to "Extensions" folder and click "Upload Files"; you can edit or upload
    • Add commit message for change and commit
  4. Create a Pull Request to merge your branch back to main
    • Click "Pull Request"
    • Select source branch - your created branch; and Target branch - KhronosGroup/EGL-Registry main
    • Fill in the "Description". If this extension is the result of a issue, please add the issue number to the PR description
    • Add reviewer "oddhack Jon Leech"
    • Click "Create pull request" - it now goes to Jon for review
  5. Address all Conversation opened on the PR and resolve them - make changes as needed
  6. When the extension is ready
    • Add Comment ready to merge for Jon
Clone this wiki locally