[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

togl update information



Finally!  I have reached and conquered a leaf node on the
rather-too-deep tree of dependencies which unfolded from
the moment I tried to add any major new stuff to walkthru.
But i've complained enough.  Useful reference info, NOW:

I'm about to commit updates to the 'togl' module under
walkthru/src/togl, which is the code that adds OpenGL
functionality to tcl/tk, which is what our gui is based
on... and no I still don't plan to change that.)

The executive summary:

  I'm purging a lot of stale files and pulling our togl
up to the current release version 1.6.  You might notice
from the commits that this involves a lot more than the
one directory as implied above, plus will come in several
stages and look scary.  It will all be ok in the end,
trust me...  just don't update while I'm doing this.

The details you care about if you are still reading:

  I will be checking in files in several stages,
back-to-back quickly.  From the time I start to the time
I finish, MAINLINE BUILD WILL BE BROKEN.  So don't go
updating your tree just then.

  The reason i'm doing it this way is because revision
history kept on this module was next to useless, but at
the same time people went ahead and did both local
development (multisample patch, linux patches, other
major fixes) and partial (never complete) update pulls
from the main distribution.  It's nasty, but we do want
to keep some of this.  Doing the commits in stages as
planned will regenerate the old history I've deduced
back into cvs, and make it possible to do things like
future development, back-outs, and dist-upgrades sanely,
finally.  (BTW, yes, I can think of a way to do it
without breaking mainline at all, but it's not worth
the extra effort.  Really it will all be over soon.)

  The exact sequence of commits will be:

1. Remove old togl source from all over the tree.
  (One exception: I'm leaving the 1.5 dist tgz package
  checked in under packages/archive, for reference.)

2. Add add baseline components from pristine current
  v.1.6 togl source, comprised of:
  - src/togl/togl.[ch], and a brief README.
  - full 1.6 dist package tgz under packages/archive.
  - also the 1.4 package in the same place, just in case
    it's ever useful for reference (again).
  - (not the 1.5 package, since it's already there even
    tho previous development was against 1.4.  grr...)
  - NOTHING ELSE.  that's really all that's needed.  wow!
    (Note: more MIGHT be needed for windows support, but
    we can do that if/when we care, AFTER pulling up to
    current togl again which might fix the broken deps
    needing such stuff.)

3. Add 3 patches to togl.c, one after the other, each
  ones contents described in the commit message.  The
  net effect adds up to the local patches done in our
  tree over several years, minus anything that was also
  done in the distribution (and thus does not need to
  be duplicated), all patched against current 1.6 togl.

After all that, you get a working walkthru again.  I've
tested the product exhaustively (last run just completed
now), and reviewed all generated patches by hand (because
really, 'patch' just completely failed to merge a lot of
this, but I assure you that's all good now, too).

I should be ready to start in about 5 minutes, and then
done in another 5, and ready to go back to work on the
next layer up again, yes!  More on that when I get there.

--pl