1. 04 Jul, 2011 1 commit
    • Øyvind Kolås's avatar
      tests: Add performance tracking framework · aa05b66a
      Øyvind Kolås authored
      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.
      aa05b66a
  2. 22 Feb, 2011 1 commit
    • Emmanuele Bassi's avatar
      build: Remove maintainer-clean rule · 8bb81f00
      Emmanuele Bassi authored
      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.
      8bb81f00
  3. 14 Feb, 2011 1 commit
  4. 01 Feb, 2011 1 commit
  5. 11 Nov, 2010 1 commit
  6. 03 Oct, 2010 1 commit
  7. 29 Sep, 2010 1 commit
    • Emmanuele Bassi's avatar
      build: Start moving to a non-recursive layout · 8dd8fbdb
      Emmanuele Bassi authored
              *** 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
      8dd8fbdb
  8. 17 Aug, 2010 1 commit
  9. 30 Jun, 2010 1 commit
  10. 29 Jun, 2010 1 commit
  11. 18 Jun, 2010 1 commit
    • Robert Bragg's avatar
      build: distinguish CLUTTER_WINSYS and CLUTTER_SONAME_INFIX · bf9d5f39
      Robert Bragg authored
      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.
      bf9d5f39
  12. 13 Jan, 2010 1 commit
    • Emmanuele Bassi's avatar
      Add gcov support to the build · 948db40c
      Emmanuele Bassi authored
      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.
      948db40c
  13. 01 Dec, 2009 2 commits
  14. 30 Nov, 2009 1 commit
  15. 18 Nov, 2009 3 commits
  16. 16 Oct, 2009 1 commit
    • Robert Bragg's avatar
      Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys · 43efab46
      Robert Bragg authored
      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.
      43efab46
  17. 16 Sep, 2009 1 commit
  18. 28 Jul, 2009 1 commit
  19. 19 Feb, 2009 3 commits
  20. 18 Feb, 2009 1 commit
  21. 29 Jan, 2009 3 commits
    • Emmanuele Bassi's avatar
      [build] Fix distcheck of ChangeLog · bec9b32e
      Emmanuele Bassi authored
      Relax the copy failure condition.
      bec9b32e
    • Emmanuele Bassi's avatar
      [build] Add automatic ChangeLog generation on dist · cf80105a
      Emmanuele Bassi authored
      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.
      cf80105a
    • Emmanuele Bassi's avatar
      Move the old ChangeLog into its own file · 945d2616
      Emmanuele Bassi authored
      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.
      945d2616
  22. 18 Dec, 2008 1 commit
  23. 07 Nov, 2008 1 commit
    • Robert Bragg's avatar
      Bug 1162 - Re-works the tests/ to use the glib-2.16 unit testing · 603f9367
      Robert Bragg authored
      	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'
      603f9367
  24. 17 Jul, 2008 1 commit
    • Emmanuele Bassi's avatar
      2008-07-17 Emmanuele Bassi <ebassi@openedhand.com> · 73433e96
      Emmanuele Bassi authored
      	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.
      73433e96
  25. 10 Jun, 2008 1 commit
  26. 24 Apr, 2008 1 commit
  27. 03 Mar, 2008 1 commit
  28. 25 Jan, 2008 1 commit
    • Emmanuele Bassi's avatar
      2008-01-25 Emmanuele Bassi <ebassi@openedhand.com> · 985fa0c6
      Emmanuele Bassi authored
      	* 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
      985fa0c6
  29. 23 Jan, 2008 1 commit
    • Emmanuele Bassi's avatar
      2008-01-23 Emmanuele Bassi <ebassi@openedhand.com> · 97a23161
      Emmanuele Bassi authored
      	* 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.
      97a23161
  30. 21 Dec, 2007 1 commit
    • Emmanuele Bassi's avatar
      2007-12-21 Emmanuele Bassi <ebassi@openedhand.com> · ee4bcf64
      Emmanuele Bassi authored
      	* 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
      ee4bcf64
  31. 26 Jul, 2007 1 commit
    • Emmanuele Bassi's avatar
      Enable strict compiler flags with a configure flag · e77a6f0a
      Emmanuele Bassi authored
      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.
      e77a6f0a
  32. 25 Jul, 2007 1 commit
    • Matthew Allum's avatar
      2007-07-25 Matthew Allum <mallum@openedhand.com> · 73ff6900
      Matthew Allum authored
              * 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.
      73ff6900
  33. 27 Jun, 2007 1 commit