[Mesa-dev] [Mesa3d-dev] Separate demos repository

Jakob Bornecrantz wallbraker at gmail.com
Fri May 21 16:03:09 PDT 2010


On Fri, May 21, 2010 at 8:42 PM, Eric Anholt <eric at anholt.net> wrote:
> On Fri, 21 May 2010 08:34:59 -0600, Brian Paul <brianp at vmware.com> wrote:
>> Eric Anholt wrote:
>> > On Thu, 20 May 2010 15:45:00 -0400, Kristian Høgsberg <krh at bitplanet.net> wrote:
>> >> On Thu, May 20, 2010 at 3:18 PM, Eric Anholt <eric at anholt.net> wrote:
>> >>> On Wed, 28 Apr 2010 11:00:45 +0000, José Fonseca <jfonseca at vmware.com> wrote:
>> >>>> Ping.
>> >>>>
>> >>>> Could someone with administrative rights on fdo please make an empty
>> >>>> git://anongit.freedesktop.org/mesa/demos repos, so that we can push this
>> >>>> branch into it?
>> >>>>
>> >>>> Jose
>> >>> Sorry for the delay.  I wanted to get a few things done right when
>> >>> making the new repo:
>> >>>
>> >>> 1) Don't include all of the Mesa history to keep repo size down.
>> >>> 2) Keep history of the changes to the demos so annotate works.
>> >>> 3) Move the demos to src/ so people just coming to the project see a
>> >>>   normal-looking tree.
>> >>>
>> >>> This sure sounded easy with git-filter-branch.  We'd done something like
>> >>> this with git-split for xcb, and git-filter-branch looked basically like
>> >>> git-split but with more options.  The ugly part is that the tree-filter
>> >>> takes a very long time, but git mv (unlike git rm) requires a
>> >>> checked-out tree so you can't index-filter it.  Here's how the history
>> >>> I've pushed came about.  I started with:
>> >>>
>> >>> commit 1391db428fe7b8f3d1c078da98dc1a231b54347f
>> >>> Author: Wiktor Janas <wixorpeek at gmail.com>
>> >>> Date:   Tue May 4 19:50:26 2010 +0200
>> >>>
>> >>>    u_blitter: fix creating fragment shaders
>> >>>
>> >>>    See FDO bug #27887.
>> >>>
>> >>>    Signed-off-by: Marek Olšák <maraeo at gmail.com>
>> >>>
>> >>> And then:
>> >>>
>> >>> # Remove everything in src/
>> >>> git filter-branch --index-filter "git rm -rf --cached src" HEAD
>> >>> # Remove all the do-nothing commits that now exist
>> >>> git filter-branch --prune-empty HEAD
>> >>> # Remove the nouveau import commit that was now empty, and confused the next filter
>> >>> git filter-branch --parent-filter "sed 's|-p d57c2aff039d2a1422d0bc4d8e2b850c33d7e95c||'" HEAD
>> >>> # Now actually move progs/ to src/
>> >>> git filter-branch -f --index-filter \
>> >>>    'git ls-files -s | sed "s-\tprogs/-\tsrc/-" |
>> >>>         GIT_INDEX_FILE=$GIT_INDEX_FILE.new \
>> >>>         git update-index --index-info &&
>> >>>         mv $GIT_INDEX_FILE.new $GIT_INDEX_FILE' HEAD
>> >>>
>> >>> Yuck.
>> >>>
>> >>> Anyway, that resulting tree plus the changes I had in the other tree
>> >>> rebased on it is now pushed to:
>> >>>
>> >>> git+ssh://git.freedesktop.org/git/mesa/demos
>> >>>
>> >>> I think commit messages are hooked up, too.
>> >> Very nice... though, shoudn't we also drop the docs, doxygen, include
>> >> and configs subdirectories?
>> >
>> > Yeah, probably.  I'm calling it a night at this point though.  Also
>> > fixed up the generated Makefile in revision control, pulled in the
>> > changes from Mesa master that weren't in (except for the last cygwin
>> > fix, and getprocaddress still needs work).
>>
>> Looks pretty good, Eric.
>>
>> Don't worry about the getprocaddress test for now, just omit it from
>> the build.
>>
>> There's a bunch of other clean-ups to be done (ex: convert more
>> programs to use glew) that I'll try to do in my spare time.
>>
>> Are we OK to start committing there?
>
> Sounds like it.  I've removed the demos that are successfully building
> there from the main Mesa repo.  Hopefully for the others, people can fix
> the build in the new repo instead of continuing in Mesa.  Notably, I
> haven't managed to do cygwin native GL yet, which I'd need to get the
> wgl bits up, and I don't have a real VG to test against for egl/openvg
> (ShivaVG doesn't have the EGL glue and doesn't install headers.)

You can use the Gallium OpenVG implementation.

./configure --enable-egl --enable-gallium-intel --with-state-trackers=egl,vega

If you don't want to install you need to do this:
export EGL_DRIVERS_PATH=$PWD/lib/egl
Otherwise just install it, it even installs a vg.pc.

The biggest thing tho is that you need to export EGL_SOFTWARE=true if
you are on i965 because the hardware driver will hang your machine.
export EGL_SOFTWARE=true

Cheers Jakob.


More information about the mesa-dev mailing list