player-03 / libpixman

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

openfl/libpixman

This fork of Pixman has been modified to work with Lime. (Specifically, files.xml was added and config.h was modified.) This isn't necessarily the latest version of Pixman, but it is the version that has been tested with Lime.

Installing Lime and Pixman

  1. Fork Lime. (If you already did, skip to step 3.)

  2. Install your fork as a Haxelib.

    $ haxelib git lime git@github.com:[username]/lime.git
    Installing lime from https://github.com/[username]/lime.git
    Library lime current version is now git
  3. Navigate to [Haxelib folder]/lime/git/project/lib/pixman.

    This folder contains the Pixman project, which is treated as a separate Git repo even though it's inside the Lime folder.

  4. Make a new branch to keep track of your upcoming changes.

    $ git checkout -b [new branch name]

Updating Pixman

If you're running into an error in Pixman, first try pulling the latest version.

  1. Add the official Pixman repo as a remote:

    $ git remote add upstream https://gitlab.freedesktop.org/pixman/pixman.git
  2. Pull the latest changes, and merge if necessary.

    $ git pull upstream master
  3. Test the update.

    $ lime rebuild cpp -clean
    $ lime rebuild android -clean

    If on Mac, also test lime rebuild ios -clean.

If the update doesn't work, here are potential solutions:

  • Add missing files near the bottom of files.xml. When Pixman adds new C++ source files, the compiler will initially fail to find them.
  • Add missing compiler flags near the top of files.xml.
  • If you suspect a #define is missing, see the top of config.h for instructions.
  • Open an issue for errors without an obvious solution.

Contributing to openfl/libpixman

To submit your changes, you'll need to make a second GitHub fork.

  1. Fork openfl/libpixman.

  2. Add your new remote:

    $ cd [Haxelib folder]/lime/git/project/lib/pixman
    $ git remote add origin git@github.com:[username]/libpixman.git
  3. Now you have somewhere to push to:

    $ git add .
    $ git commit
    $ git push -u origin [new branch name]
  4. Open a pull request.

Making changes to Pixman will also apply a change to Lime. This change must be submitted separately.

  1. Navigate to [Haxelib folder]/lime/git.

  2. Push your changes.

    git checkout -b updatepixman
    git add .
    git commit -m "Update Pixman"
    git push -u origin updatepixman
  3. Open a pull request.

About

License:Other


Languages

Language:C 74.6%Language:Assembly 22.2%Language:M4 1.4%Language:Meson 1.1%Language:Makefile 0.4%Language:Perl 0.2%Language:Shell 0.0%