| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Recover the branch! :|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a performance tracking framework that can run a set of tests over
specified git revisions. The ruby script for generating the reports comes from
similar performance tracking in GEGL. The framework permits evaluating new
tests against older version of clutter.
The tests themselves go through a few hoops for disabling framerate limiting in
both mesa and clutter.
When running make check the tests will be run and lines of the form:
@ test-state: 40.51 fps
will be left in the output, a script can scrape these lines out of a build log
on a buildbot to in other ways track performance.
|
|
|
|
|
|
| |
The maintainer-clean files list is horribly out of date, nobody is
maintaining it, and it's honestly easier to use `git clean -xdf`
instead to clean untracked files.
|
| |
|
|
|
|
|
|
| |
We should force building the cookbook when releasing a tarball of
Clutter, so that users of packaged tarballs can actually build the
cookbook themselves.
|
|
|
|
|
|
| |
Move the ACLOCAL_FLAGS hack we have to use with jhbuild and autoreconf
inside the ACLOCAL_AMFLAGS declaration in Makefile.am, and leave
autogen.sh alone.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** WARNING: THIS COMMIT CHANGES THE BUILD ***
Do not recurse into the backend directories to build private, internal
libraries.
We only recurse from clutter/ into the cogl sub-directory; from there,
we don't recurse any further. All the backend-specific code in Cogl and
Clutter is compiled conditionally depending on the macros defined by the
configure script.
We still recurse from the top-level directory into doc, clutter and
tests, because gtk-doc and tests do not deal nicely with non-recursive
layouts.
This change makes Clutter compile slightly faster, and cleans up the
build system, especially when dealing with introspection data.
Ideally, we also want to make Cogl part of the top-level build, so that
we can finally drop the sed trick to change the shared library from the
GIR before compiling it.
Currently disabled:
‣ OSX backend
‣ Fruity backend
Currently enabled but untested:
‣ EGL backend
‣ Windows backend
|
|
|
|
| |
We don't use Dolt any more, since we depend on libtool 2.2.
|
|
|
|
|
|
|
| |
The cookbook fails the distcheck phase, so we'll need to investigate
this a little bit more.
This reverts commit f2361a65de090dfe8aa05534cb9bc1c760555084.
|
|
|
|
| |
We want to start distributing the cookbook along with the documentation.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a separate variable name "CLUTTER_SONAME_INFIX" to define the
infix for the clutter library that gets linked. Currently the WINSYS
corresponds to the directory we enter when building to compile the
window system and input support, but it is desirable to be able to
define multiple flavours that use the same WINSYS but should result in
different library names.
For example we are planning to combine the eglx and eglnative window
systems into one "egl" winsys but we will need to preserve the current
library names for the eglx and eglnative flavours.
|
|
|
|
|
| |
Using gcov it's possible to get a coverage report, that is a break down
of how much the exposed API is exercised by the conformance test suite.
|
|
|
|
| |
Signed-off-by: Emmanuele Bassi <ebassi@linux.intel.com>
|
|
|
|
|
| |
Clean up the root directory of the project and try to keep the
documentation all together.
|
|
|
|
|
|
| |
We should always recurse into the doc/ directory; whether we should then
recurse into reference/, cookbook/ and manual/ is a matter of specific
configure-time flags.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
We should generate a ChangeLog for each minor version cycle, starting
from the Git import date (since before that we used ChangeLog-style
commit messages that don't really look good with the Git ones).
For this reason we can take Cairo's Makefile.am.changelog file and,
after tweaking it to fit our use case, let it generate the correct
ChangeLogs on dist.
|
|
|
|
|
| |
The ChangeLog creation rules should be moved to their own file, to
make it easier to fix or change them in the future.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As part of an incremental process to have Cogl be a standalone project we
want to re-consider how we organise the Cogl source code.
Currently this is the structure I'm aiming for:
cogl/
cogl/
<put common source here>
winsys/
cogl-glx.c
cogl-wgl.c
driver/
gl/
gles/
os/ ?
utils/
cogl-fixed
cogl-matrix-stack?
cogl-journal?
cogl-primitives?
pango/
The new winsys component is a starting point for migrating window system
code (i.e. x11,glx,wgl,osx,egl etc) from Clutter to Cogl.
The utils/ and pango/ directories aren't added by this commit, but they are
noted because I plan to add them soon.
Overview of the planned structure:
* The winsys/ API is the API that binds OpenGL to a specific window system,
be that X11 or win32 etc. Example are glx, wgl and egl. Much of the logic
under clutter/{glx,osx,win32 etc} should migrate here.
* Note there is also the idea of a winsys-base that may represent a window
system for which there are multiple winsys APIs. An example of this is
x11, since glx and egl may both be used with x11. (currently only Clutter
has the idea of a winsys-base)
* The driver/ represents a specific varient of OpenGL. Currently we have "gl"
representing OpenGL 1.4-2.1 (mostly fixed function) and "gles" representing
GLES 1.1 (fixed funciton) and 2.0 (fully shader based)
* Everything under cogl/ should fundamentally be supporting access to the
GPU. Essentially Cogl's most basic requirement is to provide a nice GPU
Graphics API and drawing a line between this and the utility functionality
we add to support Clutter should help keep this lean and maintainable.
* Code under utils/ as suggested builds on cogl/ adding more convenient
APIs or mechanism to optimize special cases. Broadly speaking you can
compare cogl/ to OpenGL and utils/ to GLU.
* clutter/pango will be moved to clutter/cogl/pango
How some of the internal configure.ac/pkg-config terminology has changed:
backendextra -> CLUTTER_WINSYS_BASE # e.g. "x11"
backendextralib -> CLUTTER_WINSYS_BASE_LIB # e.g. "x11/libclutter-x11.la"
clutterbackend -> {CLUTTER,COGL}_WINSYS # e.g. "glx"
CLUTTER_FLAVOUR -> {CLUTTER,COGL}_WINSYS
clutterbackendlib -> CLUTTER_WINSYS_LIB
CLUTTER_COGL -> COGL_DRIVER # e.g. "gl"
Note: The CLUTTER_FLAVOUR and CLUTTER_COGL defines are kept for apps
As the first thing to take advantage of the new winsys component in Cogl;
cogl_get_proc_address() has been moved from cogl/{gl,gles}/cogl.c into
cogl/common/cogl.c and this common implementation first trys
_cogl_winsys_get_proc_address() but if that fails then it falls back to
gmodule.
|
|
|
|
|
| |
The silent rules we use for custom targets should be moved into a
separate Makefile.am that gets included from all the others.
|
| |
|
|
|
|
|
|
|
|
|
| |
The ChangeLog should only be generated by dist-hook and as a temporary
file to avoid overwriting the stub we use to direct people to the
commit log when cloning the repository.
When generated, the ChangeLog should be copied inside the distdir so
that the autotools will not freak out.
|
|
|
|
|
|
| |
The current Makefile hides the console messages for the pkg-config
files generated from the clutter.pc file. We should show them,
instead.
|
| |
|
|
|
|
|
| |
Use shave (http://git.lespiau.name/cgit/shave) to make compilation more
human friendly.
|
|
|
|
| |
Relax the copy failure condition.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since we moved to Git from Subversion we've abandoned the ChangeLog
file in favour of a more detailed commit log.
In order to maintain a ChangeLog for users of the tarballs, we need
to generate a ChangeLog file out of the commit log when distchecking
a Clutter release.
For this reason, we use a simple Perl script that is invoked by the
dist-hook and generates a ChangeLog file starting from the previous
stable release.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The old ChangeLog is there to track the project history when it
was in SVN -- also because the commit messages we imported from
Subversion were not that great.
Unfortunately, we need a ChangeLog for autotools to work in
GNU mode; for this reason, we can use a dummy ChangeLog redirecting
to git log.
The ChangeLog will be generated on release from the commit
messages, for users of the tarballs.
|
|
|
|
|
|
| |
We should formalise the current coding style of Clutter for
third parties that wish to start hacking and contribute back
patches.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
framework
* configure.ac:
* tests/*:
The tests have been reorganised into different categories: conformance,
interactive and micro benchmarks.
- conformance tests can be run as part of automated tests
- interactive tests are basically all the existing tests
- micro benchmarks focus on a single performance metric
I converted the timeline tests to conformance tests and also added some
tests from Neil Roberts and Ebassi.
Note: currently only the conformance tests use the glib test APIs,
though the micro benchmarks should too.
The other change is to make the unit tests link into monolithic binaries
which makes the build time for unit tests considerably faster. To deal
with the extra complexity this adds to debugging individual tests I
have added some sugar to the makefiles so all the tests can be run
directly via a symlink and when an individual test is run this way,
then a note is printed to the terminal explaining exactly how that test
may be debugged using GDB.
There is a convenience make rule: 'make test-report', that will run all
the conformance tests and hopefully even open the results in your web
browser. It skips some of the slower timeline tests, but you can run
those using 'make full-report'
|
|
|
|
|
|
|
|
|
|
| |
Bug 1047 - API documentation from release tarball is not
installed by "make install"
* configure.ac:
* Makefile.am: Make the recursion into the documentation
directory depend on on whether we explicitly enable it or
if we are not inside an SVN checkout.
|
|
|
|
| |
* Makefile.am: Add the po/ directory to the build.
|
|
|
|
| |
* Makefile.am: Add HACKING.backends to the EXTRA_DIST.
|
|
|
|
|
|
| |
* Makefile.am: Do not recurse into doc if we did not explicitly
enabled the documentation build; we just recurse into doc if we
are doing a dist or a distcheck.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* clutter/x11/Makefile.am: Add the generated clutter-x11 pkg-config
file to CLEANFILES, to pass distcheck.
* Makefile.am:
* clutter/Makefile.am: Tweak up the Makefiles.
* README:
* NEWS: Release 0.5.4
* configure.ac: Post-release bump to 0.5.5
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am: Use variables, instead of substitutions.
* clutter/clutter-private.h:
* clutter/clutter-main.h: Make clutter_do_event() public again,
as we need it in clutter-gtk.
* configure.ac:
* clutter/x11/Makefile.am:
* clutter/x11/clutter-x11.pc.in: Add a clutter-x11 pkg-config
file for clutter-gtk, as it depends on the X11 backend API, as
implemented by the GLX and EGLX backends.
* clutter/x11/clutter-event-x11.c (event_translate): Do not
propagate DestroyNotify events if the stage doesn't own the
window.
* tests/test-scale.c (main): Set values different from the default.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am: Move tests build before docs, to cut down the
distcheck failure discovery
* clutter.symbols: Add clutter_texture_set_area_from_rgb_data()
* clutter/clutter-actor.c:
* clutter/clutter-script.c:
* clutter/clutter-texture.c:
* clutter/json/json-generator.c:
* clutter/json/json-parser.c: Compilation fixes for passing distcheck
* tests/test-grab.c:
* tests/test-score.c:
* tests/test-script.c:
* tests/test-shader.c:
* tests/test-unproject.c: Ditto as above
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When making a distcheck it's usually a good idea to enable very strict
compiler flags, like -Werror, to catch stuff that slipped through the
development phase.
This patch adds a --enable-maintainer-flags command line switch to the
configure script, which enables a set of strict compiler flags. The default
is not to use them unless explicitly activated.
In case of distcheck, this switch is activated when launching the configure
script from within the distcheck build directory.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am:
* HACKING:
Add with initial notes on coding bits and bobs.
* clutter/clutter-behaviour-scale.c:
Doc fixes.
* clutter/clutter-event.c: (clutter_event_put):
Doc fixes.
* clutter/glx/clutter-stage-glx.c:
Disable wm user resizing of stage (At least for now)
Doc fixes.
|
|
|
|
|
| |
* Makefile.am:
Dont remove README on make clean
|
|
|
|
| |
* README.in: Update release notes.
|
|
|
|
| |
* Makefile.am: Add README.in to the EXTRA_DIST.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* clutter/clutter-alpha.c:
Remove stray g_debug.
* clutter/clutter-behaviour-rotate.c:
Register private class member.
* clutter/clutter-behaviour.c:
* clutter/clutter-behaviour.h:
Add applied and removed signals.
* Makefile.am:
* configure.ac:
* examples/Makefile.am:
* examples/README:
* examples/behave.c:
* examples/slider.c:
* examples/super-oh.c:
* examples/test-entry.c:
* examples/test-text.c:
* examples/test.c:
* tests/Makefile.am:
Remove examples, moving applicable code into tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am:
Install a default flavour .pc file.
* clutter/clutter-actor.c:
Translate units correctly for translate()
* clutter/clutter-feature.h:
Add new texture features.
* clutter/clutter-fixed.h:
Add clutter angle conversion defines.
* clutter/clutter-group.c:
Use cogl not GL. Dont recurse on show all.
* clutter/clutter-private.h:
Remove sync_viewport.
* clutter/clutter-rectangle.c:
Fix cogl typo.
* clutter/clutter-stage.c:
* clutter/clutter-stage.h:
Add perspective settings. Remove viewport_sync.
Add audience stubs. Fix up actor_at_pos a little (still broken)
* clutter/clutter-texture.h:
* clutter/clutter-texture.c:
Redo pixel uploading. Add initial (disabled) YUV support.
* clutter/clutter-timeline.c:
Fire 'completed' signal when looping.
* clutter/cogl/gl/cogl.c:
Move some backend checks here.
* clutter/glx/clutter-backend-glx.c:
Actually check target display has GLX ext.
* clutter/glx/clutter-stage-glx.c:
Handle offscreen failing more gracefully.
* examples/Makefile.am:
Use AM_LDFLAGS.
* clutter/clutter-main.c:
* clutter/clutter-feature.c:
* clutter/clutter-backend.c:
* clutter/clutter-alpha.c:
Fix a compile warnings.
* tests/Makefile.am:
* tests/test-offscreen.c:
* tests/test-scale.c:
More tests.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* clutter/clutter-texture.c:
Fix typos with new cogl using texture code. Fixes tiled textures.
Add a check for max npots size.
* configure.ac:
* Makefile.am:
* tests/Makefile.am:
* tests/test-textures.c:
Add a simple texture test.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am:
* clutter.pc.in:
* clutter/Makefile.am:
* clutter/clutter-backend-glx.c:
* clutter/clutter-backend-glx.h:
* clutter/clutter-event.c:
* clutter/clutter-feature.c:
* clutter/clutter-group.c:
* clutter/clutter-main.c:
* clutter/clutter-main.h:
* clutter/clutter-private.h:
* clutter/clutter-stage-glx.c:
* clutter/clutter-stage-glx.h:
* clutter/clutter-stage.c:
* clutter/clutter-stage.h:
* clutter/clutter-util.c:
* clutter/clutter-util.h:
* clutter/pango/pangoclutter-render.c:
* configure.ac:
* examples/Makefile.am:
Initial work in supporting different GL backends (ie. GLX/EGL/DirectFB etc).
Currently just GLX supported and now mostly self contained.
* TODO:
Add a note about caching glenables
|
|
|
|
|
|
|
|
|
| |
* Makefile.am: Remove the gtk directory from the SUBDIRS.
* clutter/clutter-stage.h:
* clutter/clutter-stage.c: Add clutter_stage_swap_buffers(),
which swaps the GL buffers. This fixes the redraw in the
GTK widget.
|