Commit Graph

625 Commits

Author SHA1 Message Date
Emmanuele Bassi
5e5295ab13 Post-release version bump to 1.11.7 2012-06-25 23:59:39 +01:00
Emmanuele Bassi
0ab74e52da Release Clutter 1.11.6 2012-06-25 23:52:07 +01:00
Emmanuele Bassi
5eb3fbf3cf build: Add coverage support using lcov
Unlike gcov, lcov provides a nice HTML output that allows immediate
visualization of the current coverage.

The updates of the build system have been taken from GLib, which has
been using lcov for a while with good results.
2012-06-19 14:55:10 +01:00
Emmanuele Bassi
c4acae7752 build: Remove gcov from the build
We want to switch to lcov, so let's start with a clean slate.
2012-06-19 14:55:10 +01:00
Tomeu Vizoso
b339b845cb tests: Add unit test for touch event handling
For now, it just generates a simple horizontal slide (by writing
to /dev/uinput) and checks that the stage gets the events at the
expected coordinates.

The test won't run if it doesn't have read/write permissions to
/dev/uinput.

It also adds OS_LINUX to config.h.
2012-06-07 12:12:56 +02:00
Emmanuele Bassi
784730db98 Post-release version bump to 1.11.5 2012-06-05 19:52:13 +01:00
Emmanuele Bassi
1d1cac02c0 Release Clutter 1.11.4 (snapshot) 2012-06-05 19:40:14 +01:00
Emmanuele Bassi
97563b640e build: Fix BUILD_TESTS condition check 2012-05-02 11:59:50 +01:00
Emmanuele Bassi
704928a807 build: Allow disabling all tests and examples
This should allow nicer build automation and cross-compilation support.

The former --disable-conformance configure switch has been deprecated by
the --disable-tests one, which is more encompassing as it disables the
whole test suite.
2012-05-01 19:09:47 +01:00
Emmanuele Bassi
07c95ebf0c Move examples from tests/interactive to a new top-level
The example code that is meant to be XIncluded into the API reference
should not be part of the interactive test suite: it's code that it is
meant to be used as a reference implementation - whereas the interactive
test suite should be allowed to be lean and test behaviour even in nasty
ways. In short: the test suite should not be the place where we show off
idiomatic code for educational purposes.
2012-05-01 19:00:35 +01:00
Emmanuele Bassi
64841d6498 Post-release version bump to 1.11.3 2012-05-01 14:04:37 +01:00
Emmanuele Bassi
c1d2298e30 Release Clutter 1.11.2 2012-05-01 13:58:34 +01:00
Peter Hutterer
a66fbd258e Rename XINPUT_2_2 define to HAVE_XINPUT_2_2
configure.ac defines XINPUT_2_2 if XI 2.2 support was found. The code
expects XINPUT_2_2 in the device manager, but HAVE_XINPUT_2_2 in the x11
backend.

On newer X servers, the latter causes a BadValue when XIQueryDevice sends a
different major/minor than gdk's device manager (gnome-control-center).

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

https://bugzilla.gnome.org/show_bug.cgi?id=673961
2012-04-12 11:31:29 +01:00
Rob Bradford
2d48e6e3e4 build: Bump pango dependency to 1.30
Clutter now uses pango_layout_get_character_count() which was added in 1.30.
2012-04-11 11:56:11 +01:00
Emmanuele Bassi
ea68ccf703 build: Remove -Waggregate-returns 2012-04-04 15:33:05 +01:00
Neil Roberts
04f2be34b2 configure: Fix the -o operator in a call to test
The disjunction operator was misspelt as -O which tests whether the
following file is owned by the calling user. This doesn't take enough
arguments so bash was showing an error and the test was always
failing. This meant that NEED_XKB_UTILS was always false which should
have broken the build but the Makefile was mistakenly including
clutter-xkb-utils.c again if SUPPORT_WAYLAND is defined.

See 1b77565e for reference.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2012-03-23 16:42:35 +00:00
Emmanuele Bassi
4316a85c16 build: Remove disabling Clutter's deprecation warnings while building it
Now that we have deprecation warnings and not full on symbol removal
from the headers, we can just skip Clutter's own, and use only GLib's.
2012-03-23 11:03:23 +00:00
Rico Tzschichholz
27022c6b06 build: Remove superfluous ',' 2012-03-21 14:01:33 +01:00
Emmanuele Bassi
f339d8a4f3 Post-branching version bump to 1.11.1 2012-03-20 10:22:26 +00:00
Emmanuele Bassi
03c504efc9 Post-release version bump to 1.9.17 2012-03-19 15:23:08 +00:00
Emmanuele Bassi
aa6ba2c706 Release Clutter 1.9.16 (1.10 release candidate 1) 2012-03-19 15:10:04 +00:00
Emmanuele Bassi
4fcd320255 Check for XInput 2.2 extension 2012-03-19 12:13:01 +00:00
Emmanuele Bassi
6cb94b2de2 build: Check for gdk-pixbuf
Some tests may need to load image data without going through
ClutterTexture or Cogl, so let's add a configure switch and a
conditional for gdk-pibxuf.
2012-03-16 12:33:38 +00:00
Emmanuele Bassi
945caff989 Bump up the GDK dependency
Commit ac6ce79aa3 introduced a dependency
on the latest GDK symbols, so we need to bump up the required version of
GDK.
2012-03-12 14:28:22 +00:00
Emmanuele Bassi
90e5088a51 build: Increase the anal-retentiveness of the maintainer flags
The new rules have already caught a couple of issues.
2012-03-07 12:36:43 +00:00
Emmanuele Bassi
afda0c955e Post-release version bump to 1.9.15 2012-03-05 23:57:01 +00:00
Emmanuele Bassi
59affd8088 Release Clutter 1.9.14 (snapshot) 2012-03-05 23:45:40 +00:00
Robert Bragg
1b77565e63 configure: Adds xkb-utils automake conditional
This adds a NEEDS_XKB_UTILS automake conditional that's set to true if
either the wayland backend is enabled or the evdev input backend is
enabled since they both depend on clutter-xkb-utils.c and we need
to avoid listing the file twice since that leads to duplicate symbols
and the build fails.

Reviewed-by: Neil Roberts <neil@linux.intel.com>
Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2012-03-01 11:41:51 +00:00
Robert Bragg
3839cf13a2 configure: fix --enable-evdev-input documentation
The --help documentation for ./configure was listing a spurious
--with-evdev option when it should list --enable-evdev-input.

Reviewed-by: Neil Roberts <neil@linux.intel.com>
Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2012-03-01 11:41:50 +00:00
Emmanuele Bassi
fde094dce2 build: Remove clutter-version.h.win32.in
The clutter-version.h header file is now completely generic, and does
not need to be masked by a Windows-specific header when building under
MSVC.
2012-02-29 15:20:58 +00:00
Emmanuele Bassi
eb42127cf0 Require GLib ≥ 2.31.19
For the new deprecation and versioning macros.
2012-02-27 14:35:53 +00:00
Emmanuele Bassi
8f0003f6f0 Post-release version bump to 1.9.13 2012-02-23 12:15:41 +00:00
Emmanuele Bassi
12d74cebb9 Release Clutter 1.9.12 (snapshot) 2012-02-23 12:04:29 +00:00
Emmanuele Bassi
115f6ee008 build: Bump up Cogl dependency
We use the latest stable snapshot.
2012-02-23 11:44:21 +00:00
Emmanuele Bassi
f770cce7a5 build: Fix platform_linux check
Missing * at the end.

As a side effect, this commit enables the ABI check when running make
check inside the clutter/ directory.
2012-02-10 12:26:43 +00:00
Emmanuele Bassi
92f6b520cb build: Identify the Linux hosts
This gives us a nice conditional, like the one we have on Windows and
OSX.
2012-02-09 18:41:19 +00:00
Robert Bragg
bace07c0a0 Updates use of Cogl in line with api changes
Some of Cogl's experimental apis have changed so that the buffer apis
now need to be passed a context argument and some drawing apis have been
replaced with cogl_framebuffer_ drawing apis that take explicit
framebuffer and pipeline arguments.

These changes were made as part of Cogl moving towards a more stateless
api that doesn't rely on a global context.

This patch updates Clutter to work with the latest Cogl api and bumps
the required Cogl version to 1.9.5.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
Reviewed-by: Neil Roberts <neil@linux.intel.com>
2012-02-09 16:34:25 +00:00
Emmanuele Bassi
de64ccb451 Post-release version bump to 1.9.11 2012-02-06 16:45:15 +00:00
Emmanuele Bassi
0d7ec670f1 Release 1.9.10 (snapshot) 2012-02-06 16:40:00 +00:00
Emmanuele Bassi
a4d571aaf9 Post-release version bump to 1.9.9 2012-01-24 15:42:20 +00:00
Emmanuele Bassi
7179bd44c8 Release Clutter 1.9.8 (snapshot) 2012-01-24 15:20:35 +00:00
Emmanuele Bassi
8d8d4ae7e5 script: Add loading from a resource
GLib has gained support for compiling ancillary data files into the same
binary blob as a library or as an executable.

We should add this feature to ClutterScript, so that it's possible to
bundle UI definitions with an application.
2012-01-24 12:04:56 +00:00
Emmanuele Bassi
683657cc30 Post-release version bump to 1.9.7 2012-01-19 14:01:20 +00:00
Emmanuele Bassi
75d97ffdc5 Release Clutter 1.9.6 (snapshot) 2012-01-19 13:44:38 +00:00
Emmanuele Bassi
a222e75e33 build: Bump up the Cogl requirement
Clutter requires a new version of Cogl's API, but we never bumped the
requirement inside configure.ac.
2012-01-19 13:44:38 +00:00
Emmanuele Bassi
7e4260ee8a build: Fix up the test rules for private deps
Thanks to diegoe for the help with testing.
2012-01-17 22:56:59 +00:00
Emmanuele Bassi
d7e6deef9c build: Add private deps to cflags and libs
If we go through the whole exercise of having private dependencies, we
should at least use the compiler flags and linker flags that those
dependencies give us when building Clutter.

https://bugzilla.gnome.org/show_bug.cgi?id=668137
2012-01-17 22:00:32 +00:00
Emmanuele Bassi
41bef2b23a Post-release version bump to 1.9.5 2012-01-17 14:44:28 +00:00
Emmanuele Bassi
1854ce2d06 Release Clutter 1.9.4 (snapshot) 2012-01-17 14:32:19 +00:00
Emmanuele Bassi
8e6b3914ef build: Remove a bunch of useless checks
Some pkg-config dependencies are still there from the days when Cogl
was in tree - and even then, they barely made sense.
2012-01-12 10:17:01 +00:00
Emmanuele Bassi
7ca37b6e58 build: Fix the private pkg-config requirements
Private pkg-config requirements are conditional.
2012-01-12 10:10:09 +00:00
Rob Bradford
ed9c3ee54e wayland: Pull gdk-pixbuf in a private dependency
This means it will get tested for explicitly as well as appearing in the
Requires.private section of the pkg-config file.
2012-01-11 12:26:00 +00:00
Rob Bradford
4afe793eed build: Add infrastructure for inserting Requires.private into pkg-config files 2012-01-11 12:23:46 +00:00
Emmanuele Bassi
e3511fcbac configure: Clean up help and configuration summary 2012-01-03 14:00:40 +00:00
Robert Bragg
af294aafe6 Add public CLUTTER_HAS_WAYLAND_COMPOSITOR_SUPPORT define
When clutter has been built with Wayland compositor support then we now
expose a public CLUTTER_HAS_WAYLAND_COMPOSITOR_SUPPORT define so that
applications can #ifdef code that depends on the api that this feature
implies.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2011-12-08 16:13:38 +00:00
Robert Bragg
602a89afa8 evdev: fixes evdev build issues + don't ref default stage
This updates the evdev input backend code to compile and also updates
the code to not refer to the default stage and instead check for a
stage to be associated with the input device. If no stage is currently
associated with a device generating events then the events are dropped
on the floor.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2011-12-08 16:13:37 +00:00
Robert Bragg
16ed7677e0 Adds wayland-surface actor for wayland compositors
This adds a --enable-wayland-compositor configure option which will add
support for a ClutterWaylandSurface actor which can be used to aid in
writing Wayland compositors using Clutter by providing a ClutterActor to
represent Wayland client surfaces.

Notably this configure option isn't tied into any particular backend
since conceptually the compositor support can be used in conjunction
with any clutter backend that has corresponding Cogl support.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2011-12-08 16:13:37 +00:00
Robert Bragg
07c6f96cb4 wayland: Updates client side wayland support
This updates Wayland support in line with upstream changes to the Wayland
API and protocol.

This update means we no longer use the Cogl stub winsys so a lot of code
that had to manually interact with EGL and implement a swap_buffers
mechanism could be removed and instead we now depend on Cogl to handle
those things for us.

This update also adds an input device manager consistent with other
clutter backends.

Note: to use the client side "wayland" clutter backend you need to have
built Cogl with --enable-wayland-egl-platform. If Cogl has been built
with support for multiple winsys backends then you should run
applications with COGL_RENDERER=EGL in the environment.

Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2011-12-08 16:13:37 +00:00
Emmanuele Bassi
8afeb0e099 Post-release version bump to 1.9.3 2011-11-22 14:08:36 +00:00
Emmanuele Bassi
1022aad970 Release Clutter 1.9.2 (snapshot) 2011-11-22 13:53:08 +00:00
Chun-wei Fan
1b7249a247 Merge branch 'master' into msvc-support-master 2011-11-14 11:40:49 +08:00
Emmanuele Bassi
821ccef555 build: Disable evdev input by default
It's an experimental input backend, so it should be enabled explicitly.
2011-11-10 17:59:17 +00:00
Emmanuele Bassi
7472c07c41 build: Clean up the configuration summary
List the input backends, and remove the EGL backend options.
2011-11-10 14:55:03 +00:00
Emmanuele Bassi
89e26497de Add a CEx100-specific backend
Instead of piggybacking on the EGL backend, let's create a small
ClutterBackend for the CEx100 platforms. This allows us to handle the
CEx100-specific details in a much cleaner way.
2011-11-10 14:55:03 +00:00
Emmanuele Bassi
1f8915d2c8 Add a 'null' input backend symbol
We should have an input backend symbol that thoroughly disables all
input event handling.
2011-11-10 14:42:40 +00:00
Emmanuele Bassi
adb6ffbd0e backend: Unify the event initialization
Input backends are, in some cases, independent from the windowing system
backends; we can initialize input handling using a model similar to what
we use for windowing backends, including an environment variable and
compile-/run-time checks.

This model allows us to remove the backend-specific init_events(), and
use a generic implementation directly inside the base ClutterBackend
class, thus further reducing the backend-specific code that every
platform has to implement.

This requires some minor surgery to every single backend, to make sure
that the function exposed to initialize the event loop is similar and
performs roughly the same operations.
2011-11-10 14:42:40 +00:00
Chun-wei Fan
bb9e452a36 Merge branch 'master' into msvc-support-master 2011-11-07 11:42:16 +08:00
Emmanuele Bassi
7ab84f981c Remove CLUTTER_DISABLE_DEPRECATED from the build flags
We don't use it any more.
2011-11-03 15:35:01 +00:00
Emmanuele Bassi
7a2001436b build: Clean up the per-backend summary 2011-11-03 13:45:21 +00:00
Emmanuele Bassi
dc672b5c89 build: Use AC_CACHE_SAVE
Delimit the points in the configure script that should save the state,
so that running the script multiple times doesn't require starting from
scratch even if it didn't terminate successfully.
2011-11-03 13:45:21 +00:00
Emmanuele Bassi
9110fa1ee7 build: Disable tslib by default
The event handling through tslib hasn't been tested in a while, and it
hasn't been ported to the device manager machinery either. We are still
considering whether or not it should be entirely removed, since evdev is
supposed to be a better way to handle events not coming from an existing
windowing system.
2011-11-03 13:45:21 +00:00
Emmanuele Bassi
8249e48802 Clean up the windowing system defines
Instead of defining new symbols for the windowing systems enabled at
configure time, we can reuse the same symbols for both the compile time
and run time checks, e.g.:

  #ifdef CLUTTER_WINDOWING_X11
    if (clutter_check_windowing_backend (CLUTTER_WINDOWING_X11))
      /* use the clutter_x11_* API */
    else
  #endif
  #ifdef CLUTTER_WINDOWING_WIN32
    if (clutter_check_windowing_backend (CLUTTER_WINDOWING_WIN32))
      /* use the clutter_win32_* API */
  #endif

This scheme allows us to ensure that the input system namespace is free
for us to use and select at run time in later versions of Clutter.
2011-11-03 13:45:20 +00:00
Emmanuele Bassi
b07756e0b3 build: Implement proper platform checking
Perform the check for enabling platform-specific backends conditionally
on the 'check' value, instead of unconditionally.

Also, rename the configure switches for the backends to have a '-backend'
suffix, to avoid collisions and provide a more descriptive name.
2011-11-03 13:45:20 +00:00
Emmanuele Bassi
405e72f2e4 egl: First attempt at cleaning up the EGL native backend
At least, let's make it compile when built along with the other
backends. In reality, it still needs to be verified as working.
2011-11-03 13:45:20 +00:00
Emmanuele Bassi
19508132df build: Move EGL-related files under egl/
Including the clutter-cex100.h.in header.
2011-11-03 13:45:20 +00:00
Emmanuele Bassi
0c919adf50 Minimal cosmetic fix to the configure output 2011-11-03 13:45:20 +00:00
Emmanuele Bassi
a09bbffd92 Implement multi-backend support
The Clutter backend split is opaque enough that should allow us to just
build all possible backends inside the same shared object, and select
the wanted backend at initialization time.

This requires some work in the build system, as well as the
initialization code, to remove duplicate functions that might cause
conflicts at build and link time. We also need to defer all the checks
of the internal state of the platform-specific API to run-time type
checks.
2011-11-03 13:45:19 +00:00
Giovanni Campagna
9c102b7c51 Rework the interaction between the Cogl and GDK / X11 backends.
Previously, the Cogl backend was at times a subclass of the X11
backend, and at times a standalone one. Now it is the other way
round, with GDK and X11 backends providing the concrete classes,
layered on top of the generic Cogl backend. A new EglNative backend
was introduced for direct to framebuffer rendering. This greatly
simplifies the API design (at the expense of some casts needed)
and reduces the amount of #ifdefs, without duplicating code.

https://bugzilla.gnome.org/show_bug.cgi?id=657434
2011-11-03 13:45:17 +00:00
Giovanni Campagna
610a9c17ba Add a new GDK backend
This commit introduces a new flavour for Clutter, that uses GDK
for handling all window system specific interactions (except for
creating the cogl context, as cogl does not know about GDK), including
in particular events. This is not compatible with the X11 (glx)
flavour, and this is reflected by the different soname (libclutter-gdk-1.0.so),
as all X11 specific functions and classes are not available. If you
wish to be compatible, you should check for CLUTTER_WINDOWING_X11.
Other than that, this backend should be on feature parity with X11,
including XInput 2, XSettings and EMWH (with much, much less code)

https://bugzilla.gnome.org/show_bug.cgi?id=657434
2011-11-03 13:42:13 +00:00
Emmanuele Bassi
b751b90bc0 build: Bump up Cogl dependency
The newly added cogl-xlib.h header is available since Cogl 1.9, so we
need to bump up the dependency.
2011-11-02 13:03:26 +00:00
Chun-wei Fan
d6af2e54c8 Merge branch 'master' into msvc-support-master 2011-10-20 15:41:46 +08:00
Emmanuele Bassi
f1d86071c3 build: Remove the GLES configuration option
The selector for GLES 1.1 or 2.0 is all in Cogl, now.
2011-10-19 15:32:41 +01:00
Robert Bragg
14b3ec8485 build: remove the experimental_image var from configure
Since the image backend is something now dealt with by Cogl there is no
need to check the experimental status of the backend in the Clutter
configure script.

Reviewed-by: Neil Roberts <neil@linux.intel.com>
Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2011-10-19 15:27:20 +01:00
Robert Bragg
2ba1a19870 build: Don't actually check for glx for glx flavour
GLX is now totally abstracted by Cogl so the "glx" flavour is actually
only used to determine the soname of clutter now so we don't actually
have to check for the glx header or that libGL provides any GLX symbols.

Reviewed-by: Neil Roberts <neil@linux.intel.com>
Reviewed-by: Emmanuele Bassi <ebassi@linux.intel.com>
2011-10-19 15:26:43 +01:00
Chun-wei Fan
b1780711f7 Merge branch 'master' into msvc-support-master 2011-10-17 15:52:57 +08:00
Emmanuele Bassi
d93e6ef6b9 Bump up the dependency on gtk-doc 2011-10-14 11:34:26 +01:00
Emmanuele Bassi
a05eb9177d build: Strip out G_DISABLE_DEPRECATED
We have compiler warnings, now.
2011-10-14 10:21:37 +01:00
Chun-wei Fan
bd991e625b Merge branch 'master' into msvc-support-master 2011-10-12 14:37:19 +08:00
Emmanuele Bassi
ef0e52f0e1 build: Disable deprecation warnings with --enable-deprecated
Just like we turn everything on with --disable-deprecated, we have to
turn everything off with --enable-deprecated. This means disabling the
deprecation warnings from the compiler as well.
2011-10-11 23:06:51 +01:00
Emmanuele Bassi
53e201f865 Show lib and sysconfdir in the configure summary 2011-10-11 17:52:17 +01:00
Chun-wei Fan
f0dfd8ab07 Merge branch 'master' into msvc-support-master
Conflicts:
	tests/interactive/Makefile.am
2011-09-29 16:33:02 +08:00
Emmanuele Bassi
1465aa04aa Depend on GLib 2.31
We need to switch away from GStaticMutex and use GMutex instead, as the
former has been deprecated.
2011-09-28 13:52:53 +01:00
Chun-wei Fan
9e822d9ae4 Merge branch 'master' into msvc-support-master 2011-09-27 14:35:26 +08:00
Emmanuele Bassi
0b07a5ef04 Post branch version bump to 1.9.1 2011-09-19 20:04:11 +01:00
Emmanuele Bassi
2270335247 Depend on Cogl new stable release, 1.8.0 2011-09-19 20:02:17 +01:00
Emmanuele Bassi
14bd6eaad4 Bump GLib dependency
We have been using g_slist_free_full() which was added in GLib 2.28, and
yet we neved bumped the GLib dependency. Whoopsie.
2011-09-19 17:58:39 +01:00
Chun-wei Fan
208fbe756e Recover msvc-support
messed up my own git repo...
2011-09-16 17:15:33 +08:00
Emmanuele Bassi
92d4197b2c Post-release version bump to 1.7.91 2011-09-12 13:59:30 +01:00
Emmanuele Bassi
8435549448 Release Clutter 1.7.90 (1.8.0-rc1) 2011-09-12 13:16:03 +01:00
Emmanuele Bassi
28ad23e7d7 Post-release version bump to 1.7.15 2011-09-05 21:39:51 +01:00
Emmanuele Bassi
d992c0cbff Release Clutter 1.7.14 2011-09-05 21:16:01 +01:00
Alejandro Piñeiro
f1a7cd7c0f Merge branch 'atkwindow' 2011-08-30 12:26:35 +02:00
Emmanuele Bassi
2212937788 Post-release version bump to 1.7.13 2011-08-29 23:29:07 +01:00
Emmanuele Bassi
c26dd3f008 Release Clutter 1.7.12 (snapshot) 2011-08-29 23:05:03 +01:00
Alejandro Piñeiro
a9690a4a5e a11y: Using AtkWindow on cally-stage 2011-08-23 17:22:11 +02:00
Emmanuele Bassi
e906d2cbde build: Depend on pangoft2 on X11
We need the fontconfig API to reinitialize the fontmap caches whenever
the system tells us that the user fonts have changed.
2011-08-18 15:32:29 +01:00
Emmanuele Bassi
98b3834d55 Post-release version bump to 1.7.11 2011-08-16 00:19:34 +01:00
Emmanuele Bassi
d80fef4c71 Release Clutter 1.7.10 (snapshot) 2011-08-15 23:52:55 +01:00
Emmanuele Bassi
8402e41332 build: Require the latest stable version of Cogl 2011-08-15 15:35:41 +01:00
Emmanuele Bassi
2c34f0b16c Post-release version bump to 1.7.9 2011-08-15 15:16:24 +01:00
Emmanuele Bassi
f6fe09fa24 Release Clutter 1.7.8 (snapshot) 2011-08-15 14:32:37 +01:00
Robert Bragg
d2763fd8a4 stage-cogl: pass top-left relative swap_region coords
All 2D coordinate spaces in Cogl have their origin at the top-left so we
shouldn't be flipping the coordinates we pass to
cogl_framebuffer_swap_region to be relative to the bottom of the
framebuffer.

This bumps the Cogl version requirement to 1.7.5 since we've had to fix
a bug in the semantics of cogl_framebuffer_swap_region.

Reviewed-by: Neil Roberts <neil@linux.intel.com>
2011-08-12 15:42:42 +01:00
Emmanuele Bassi
fdba569213 Post-release version bump to 1.7.7 2011-07-26 14:12:08 +01:00
Emmanuele Bassi
0a008b98e7 Release Clutter 1.7.6 (snapshot) 2011-07-26 13:55:58 +01:00
Emmanuele Bassi
c89de4324e docs: Remove manual/
The programmers manual never materialized, and its role has been taken
by both the cookbook and the API reference.
2011-07-20 11:32:15 +01:00
Emmanuele Bassi
2dc69dc63d build: Escape AC_DEFINE arguments 2011-07-15 16:02:19 +01:00
Carlos Garnacho
075a4ed86c x11: Improve XGenericEventCookie data allocation
https://bugzilla.gnome.org/show_bug.cgi?id=654656

Clutter may be used together with GTK+, which indirectly may use
XInput2 too, so the cookie data must persist when both are handling
events.

What happens now in a nutshell is, Clutter is only guaranteed to allocate
the cookie itself after XNextEvent(), and only frees the cookie if its
XGetEventData() call allocated the cookie data.

The X[Get|Free]EventData() calls happen now in clutter-event-x11.c as
hypothetically different event translators could also handle other set
of X Generic Events, or other libraries handling events for that matter.
2011-07-15 13:46:33 +02:00
Emmanuele Bassi
f45b12dac4 build: Unescape conditionally defined defaults in AS_HELP_STRING
AS_HELP_STRING() escapes everything, so m4 doesn't have a chance to run
expansions.
2011-07-13 14:49:55 +01:00
Emmanuele Bassi
ab89f9b9e8 build: Detect the appropriate default flavour
If we're building on/for Windows, set 'win32' as the default flavour; if
we're building on OS X, set 'osx' as the default flavour. For everything
else, use 'glx'.
2011-07-13 14:27:39 +01:00
Emmanuele Bassi
9a3b97b55e Revert "build: Detect the appropriate default flavour"
Ouch, butterfingers and git commit -a.

This reverts commit 81e8c8dec9.
2011-07-13 14:26:05 +01:00
Emmanuele Bassi
d67bc235a4 build: The OSX backend is not experimental any more
The OSX backend is actively developed, and tested, so we can drop the
experimental flag.
2011-07-13 14:22:14 +01:00
Emmanuele Bassi
81e8c8dec9 build: Detect the appropriate default flavour
If we're building on/for Windows, set 'win32' as the default flavour; if
we're building on OS X, set 'osx' as the default flavour. For everything
else, use 'glx'.
2011-07-13 14:20:47 +01:00
Robert Bragg
62ae252c59 build: depend on cogl-1.7.3 development version
Since some experimental API in Cogl that Clutter uses has changed this
bumps our dependency up to 1.7.3 before landing the corresponding build
fixes for clutter to bring it in line with the Cogl changes.
2011-07-11 16:57:29 +01:00
Emmanuele Bassi
805d27fb0d Post-release version bump to 1.7.5 2011-07-04 22:28:30 +01:00
Emmanuele Bassi
79f21a9b50 Release Clutter 1.7.4 (snapshot) 2011-07-04 22:14:06 +01:00
Øyvind Kolås
aa05b66a01 tests: Add performance tracking framework
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.
2011-07-04 17:27:48 +01:00
Emmanuele Bassi
dbf2ccfd59 Bump up the Cogl dependency
We need 1.7.2 at least.
2011-07-01 17:26:10 +01:00
Emmanuele Bassi
675da6ed86 build: Use tar-ustar and dist-xz to dist tarballs 2011-06-20 13:59:14 +01:00
Emmanuele Bassi
3861a1c3ba build: Update the API reference build
Add the Cogl prefix to the fix-cross-references script options, and
update the location of the extra headers.
2011-06-20 13:56:46 +01:00
Emmanuele Bassi
e6c58b7fb3 build: Replace AC_HELP_STRING with AS_HELP_STRING
The latter is the new version of the former.
2011-06-16 13:36:08 +01:00
Robert Bragg
2d8083bab8 unify egl and glx backends as "cogl" backend
Since GLX and EGL are abstracted by Cogl the two backends are both
implementing everything using the Cogl API and they are almost
identical.

This updates the egl backend to support everything that the glx backend
supports. Now that EGL and GLX are abstracted by Cogl, the plan is that
we will squash the clutter-egl/glx backends into one. Since the EGL
backend in clutter can conditionally not depend on X11 we will use the
EGL backend as the starting point of our common backend.

https://bugzilla.gnome.org/show_bug.cgi?id=649826
2011-06-14 20:35:18 +01:00
Emmanuele Bassi
a7fc76a1c5 build: Disable deprecated symbols during development cycles
And add a configure switch to toggle them.
2011-06-14 14:50:10 +01:00
Emmanuele Bassi
5e1fa71498 Post-release version bump to 1.7.3 2011-06-13 23:46:21 +01:00
Emmanuele Bassi
a7cc84a483 Release Clutter 1.7.2 (snapshot) 2011-06-13 23:15:17 +01:00
Neil Roberts
dbae7e6014 configure.ac: Remove the check for 'ffs'
The check for the ffs function is only needed by Cogl we don't need to
have it in Clutter's configure script anymore.
2011-05-06 17:48:59 +01:00
Emmanuele Bassi
ea502fd492 build: Depend on cogl-pango-1.0
For both builds and introspection.
2011-05-06 17:21:00 +01:00
Emmanuele Bassi
f1204bfe09 build: Specify the buildreq version for Cogl
Don't just assume the latest.
2011-05-06 16:56:29 +01:00
Robert Bragg
589c80e41e Remove last dependency on the GdkPixbuf API
In test-pixmap.c instead of using the GdkPixbuf API to load the
redhand.png image we now use the cairo API to load the png into a xlib
surface which wraps our Pixmap.

This test was the last thing that depended on the gdk API and since
it's more concise to use Cairo here which is a hard dependency for
Clutter this change means we avoid depending on GdkPixbuf directly.
2011-05-06 15:44:13 +01:00
Robert Bragg
223e14811c Removes Cogl from the repository
Cogl has now been split out into a standalone project with a separate
repository at git://git.gnome.org/cogl. From now on the Clutter build
will now simply look for a cogl-1.0 pkg-config file to find a suitable
Cogl library to link against at build time.
2011-05-06 15:44:08 +01:00
Robert Bragg
723e5de4b6 cogl/configure.ac: Adds --enable-stub-winsys option
We want to be able to split Cogl out as a standalone project but there
are still some window systems that aren't natively supported by Cogl.
This allows Clutter to support those window systems directly but still
work with a standalone Cogl library.

This also ensures we set the SUPPORT_STUB conditional in clutter's
configure.ac when building for win32/osx and wayland.
2011-05-05 15:05:11 +01:00
Robert Bragg
825a51b898 Adds Cogl Hello World and "X11 foreign" example applications
This adds a simple standalone Cogl application that can be used to
smoke test a standalone build of Cogl without Clutter.

This also adds an x11-foreign app that shows how a toolkit can ask Cogl
to draw to an X Window that it owns instead of Cogl being responsible
for automatically creating and mapping an X Window for CoglOnscreen.
2011-05-05 14:46:03 +01:00
Robert Bragg
1c502fbbc8 cogl/configure.ac: add options to control driver/egl platform
This allows more detailed control over the driver and winsys features
that Cogl should have. Cogl is designed so it can support multiple
window systems simultaneously so we have enable/disable options for
the drivers (gl vs gles1 vs gles2) and options for the individual window
systems; currently glx and egl. Egl is broken down into an option
for each platform.
2011-05-05 14:46:03 +01:00
Robert Bragg
e26a59afc8 EGL: Updates GDL platform support
The GDL API is used for example on intel ce4100 (aka Sodaville) based
systems as a way to allocate memory that can be composited using the
platforms overlay hardware. This updates the Cogl EGL winsys and the
support in Clutter so we can continue to support these platforms.
2011-05-05 14:46:02 +01:00
Robert Bragg
c55cffbb6b Moves all EGL code down from Clutter to Cogl
As was recently done for the GLX window system code, this commit moves
the EGL window system code down from the Clutter backend code into a
Cogl winsys.

Note: currently the cogl/configure.ac is hard coded to only build the GLX
winsys so currently this is only available when building Cogl as part
of Clutter.
2011-05-05 14:46:01 +01:00
Robert Bragg
ce0dc2160c remove references to unused DRM_SURFACELESS EGL platform
The "DRM_SURFACELESS" EGL platform was invented when we were adding the
wayland backend to Clutter but in the end we added a dedicated backend
instead of extending the EGL backend so actually the platform name isn't
used.
2011-05-05 14:46:01 +01:00
Emmanuele Bassi
267de48c1e Point to GNOME for filing bugs
The canonical bug tracker for Clutter has been moved to
bugzilla.gnome.org.
2011-04-12 17:32:01 +01:00
Robert Bragg
af366ad750 backend: remove untested fruity backend
This backend hasn't been used for years now and so because it is
untested code and almost certainly doesn't work any more it would be a
burdon to continue trying to maintain it. Considering that we are now
looking at moving OpenGL window system integration code down from
Clutter backends into Cogl that will be easier if we don't have to
consider this backend.
2011-04-11 17:54:36 +01:00
Robert Bragg
70767f08dc Adds a --with-system-cogl config option for Clutter
This makes it possible to build Clutter against a standalone build of
Cogl instead of having the Clutter build traverse into the clutter/cogl
subdirectory.
2011-04-11 17:54:36 +01:00
Robert Bragg
31da46c799 Adds the ability to build Cogl standalone
This adds an autogen.sh, configure.ac and build/autotool files etc under
clutter/cogl and makes some corresponding Makefile.am changes that make
it possible to build and install Cogl as a standalone library.

Some notable things about this are:
A standalone installation of Cogl installs 3 pkg-config files;
cogl-1.0.pc, cogl-gl-1.0.pc and cogl-2.0.pc. The second is only for
compatibility with what clutter installed though I'm not sure that
anything uses it so maybe we could remove it. cogl-1.0.pc is what
Clutter would use if it were updated to build against a standalone cogl
library. cogl-2.0.pc is what you would use if you were writing a
standalone Cogl application.

A standalone installation results in two libraries currently, libcogl.so
and libcogl-pango.so. Notably we don't include a major number in the
sonames because libcogl supports two major API versions; 1.x as used by
Clutter and the experimental 2.x API for standalone applications.
Parallel installation of later versions e.g. 3.x and beyond will be
supportable either with new sonames or if we can maintain ABI then we'll
continue to share libcogl.so.

The headers are similarly not installed into a directory with a major
version number since the same headers are shared to export the 1.x and
2.x APIs (The only difference is that cogl-2.0.pc ensures that
-DCOGL_ENABLE_EXPERIMENTAL_2_0_API is used). Parallel installation of
later versions is not precluded though since we can either continue
sharing or later add a major version suffix.
2011-04-11 17:54:36 +01:00
Robert Bragg
d6f110a4d2 Moves all GLX code down from Clutter to Cogl
This migrates all the GLX window system code down from the Clutter
backend code into a Cogl winsys. Moving OpenGL window system binding
code down from Clutter into Cogl is the biggest blocker to having Cogl
become a standalone 3D graphics library, so this is an important step in
that direction.
2011-04-11 17:54:36 +01:00