[gnome-color-manager/colord: 12/72] Remove libcolor-glib and the gnome-session plugin as we now have a dedicated session process



commit 3910ee3cc6bf9ec6752edd0c2ce6f12cc0320e34
Author: Richard Hughes <richard hughsie com>
Date:   Sun Jan 16 15:08:24 2011 +0000

    Remove libcolor-glib and the gnome-session plugin as we now have a dedicated session process

 Makefile.am                                        |    2 -
 configure.ac                                       |   34 -
 contrib/gnome-color-manager.spec.in                |   10 -
 docs/Makefile.am                                   |   22 +-
 docs/api/.gitignore                                |   25 -
 docs/api/Makefile.am                               |   74 --
 docs/api/clean.sh                                  |    7 -
 docs/api/libcolor-glib-docs.sgml                   |   80 --
 docs/api/version.xml.in                            |    1 -
 docs/gcm-parse-beagle.c                            |    2 +-
 docs/huey/Makefile.am                              |   16 +-
 docs/huey/gcm-calculate-fudge.c                    |    1 -
 docs/huey/gcm-dump-to-values.c                     |    3 +-
 docs/huey/gcm-parse-huey.c                         |    2 +-
 libcolor-glib/.gitignore                           |   16 -
 libcolor-glib/Makefile.am                          |  168 ----
 libcolor-glib/gcm-self-test.c                      |  848 --------------------
 libcolor-glib/libcolor-glib.h                      |   58 --
 libcolor-glib/libcolor-glib.pc.in                  |   12 -
 po/POTFILES.in                                     |    6 +-
 po/POTFILES.skip                                   |    2 +-
 session/.gitignore                                 |    5 -
 session/Makefile.am                                |   45 -
 session/color.gnome-settings-plugin                |    8 -
 session/gsd-color-manager.h                        |   56 --
 session/gsd-color-plugin.c                         |  104 ---
 session/gsd-color-plugin.h                         |   57 --
 src/Makefile.am                                    |   71 ++-
 {session => src}/egg-console-kit.c                 |    0
 {session => src}/egg-console-kit.h                 |    0
 {libcolor-glib => src}/gcm-brightness.c            |    6 -
 {libcolor-glib => src}/gcm-brightness.h            |    4 -
 {libcolor-glib => src}/gcm-buffer.c                |   16 -
 {libcolor-glib => src}/gcm-buffer.h                |    4 -
 {libcolor-glib => src}/gcm-clut.c                  |   12 -
 {libcolor-glib => src}/gcm-clut.h                  |    4 -
 {libcolor-glib => src}/gcm-color.c                 |   38 -
 {libcolor-glib => src}/gcm-color.h                 |    4 -
 {libcolor-glib => src}/gcm-compat.h                |    4 -
 {libcolor-glib => src}/gcm-debug.c                 |    0
 {libcolor-glib => src}/gcm-debug.h                 |    4 -
 {libcolor-glib => src}/gcm-dmi.c                   |    8 -
 {libcolor-glib => src}/gcm-dmi.h                   |    4 -
 {libcolor-glib => src}/gcm-edid.c                  |   32 -
 {libcolor-glib => src}/gcm-edid.h                  |    4 -
 {libcolor-glib => src}/gcm-enum.c                  |   12 -
 {libcolor-glib => src}/gcm-enum.h                  |    4 -
 {libcolor-glib => src}/gcm-image.c                 |   12 -
 {libcolor-glib => src}/gcm-image.h                 |    4 -
 {libcolor-glib => src}/gcm-math.c                  |   28 -
 {libcolor-glib => src}/gcm-math.h                  |    4 -
 {libcolor-glib => src}/gcm-profile-store.c         |   18 -
 {libcolor-glib => src}/gcm-profile-store.h         |    4 -
 {libcolor-glib => src}/gcm-profile.c               |   78 --
 {libcolor-glib => src}/gcm-profile.h               |    4 -
 {libcolor-glib => src}/gcm-sample-window.c         |    6 -
 {libcolor-glib => src}/gcm-sample-window.h         |    4 -
 src/gcm-self-test.c                                |  816 +++++++++++++++++++-
 {libcolor-glib => src}/gcm-sensor-client.c         |    8 -
 {libcolor-glib => src}/gcm-sensor-client.h         |    0
 .../gcm-sensor-colormunki-private.c                |    8 -
 .../gcm-sensor-colormunki-private.h                |    4 -
 {libcolor-glib => src}/gcm-sensor-colormunki.c     |    6 +-
 {libcolor-glib => src}/gcm-sensor-colormunki.h     |    0
 {libcolor-glib => src}/gcm-sensor-dummy.c          |    2 -
 {libcolor-glib => src}/gcm-sensor-dummy.h          |    0
 {libcolor-glib => src}/gcm-sensor-huey-private.c   |    4 -
 {libcolor-glib => src}/gcm-sensor-huey-private.h   |    4 -
 {libcolor-glib => src}/gcm-sensor-huey.c           |    2 -
 {libcolor-glib => src}/gcm-sensor-huey.h           |    4 -
 {libcolor-glib => src}/gcm-sensor.c                |   62 --
 {libcolor-glib => src}/gcm-sensor.h                |    4 -
 {libcolor-glib => src}/gcm-tables.c                |    4 -
 {libcolor-glib => src}/gcm-tables.h                |    4 -
 {libcolor-glib => src}/gcm-usb.c                   |   12 -
 {libcolor-glib => src}/gcm-usb.h                   |    0
 .../gcm-version.h.in => src/gcm-version.h          |   10 +-
 {libcolor-glib => src}/gcm-x11-output.c            |   46 --
 {libcolor-glib => src}/gcm-x11-output.h            |    4 -
 {libcolor-glib => src}/gcm-x11-screen.c            |   26 -
 {libcolor-glib => src}/gcm-x11-screen.h            |    4 -
 {session => src}/gsd-color-manager.c               |    2 +-
 tools/Makefile.am                                  |   28 +-
 tools/gcm-dump-edid.c                              |    5 +-
 tools/gcm-dump-profile.c                           |    7 +-
 tools/gcm-dump-sensor.c                            |    5 +-
 tools/gcm-sensor-example.c                         |    3 +-
 87 files changed, 927 insertions(+), 2214 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index 3ebaa94..bdd8037 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,5 +1,4 @@
 SUBDIRS = 						\
-	libcolor-glib					\
 	docs						\
 	data						\
 	help						\
@@ -7,7 +6,6 @@ SUBDIRS = 						\
 	po						\
 	rules						\
 	tools						\
-	session						\
 	src
 
 snapshot:
diff --git a/configure.ac b/configure.ac
index 4d1839c..40ba258 100644
--- a/configure.ac
+++ b/configure.ac
@@ -18,31 +18,6 @@ GOBJECT_INTROSPECTION_CHECK([0.6.7])
 # enable nice build output on automake1.11
 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
 
-GCM_MAJOR_VERSION=gcm_major_version
-GCM_MINOR_VERSION=gcm_minor_version
-GCM_MICRO_VERSION=gcm_micro_version
-GCM_VERSION=gcm_version
-AC_SUBST(GCM_MAJOR_VERSION)
-AC_SUBST(GCM_MINOR_VERSION)
-AC_SUBST(GCM_MICRO_VERSION)
-AC_SUBST(GCM_VERSION)
-
-# libtool versioning - this applies to libcolor-glib
-#
-# See http://sources.redhat.com/autobook/autobook/autobook_91.html#SEC91 for details
-#
-# increment;
-# CURRENT	If the API or ABI interface has changed (reset REVISION to 0)
-# REVISION	If the API and ABI remains the same, but bugs are fixed.
-# AGE		If libgcm can be linked into executables which can be
-# 		built with previous versions of this library. Don't use.
-LT_CURRENT=1
-LT_REVISION=0
-LT_AGE=0
-AC_SUBST(LT_CURRENT)
-AC_SUBST(LT_REVISION)
-AC_SUBST(LT_AGE)
-
 AC_PROG_CC
 AC_PROG_CXX
 AC_PROG_INSTALL
@@ -54,9 +29,6 @@ IT_PROG_INTLTOOL([0.35.0])
 GNOME_COMPILE_WARNINGS(error)
 GNOME_DOC_INIT
 
-# set up gtk-doc
-GTK_DOC_CHECK(1.9)
-
 dnl ---------------------------------------------------------------------------
 dnl - Use strict options (default enabled for devs, disabled in releases)
 dnl ---------------------------------------------------------------------------
@@ -296,15 +268,9 @@ man/Makefile
 po/Makefile.in
 rules/Makefile
 src/Makefile
-session/Makefile
 tools/Makefile
 docs/Makefile
 docs/huey/Makefile
-docs/api/Makefile
-docs/api/version.xml
-libcolor-glib/Makefile
-libcolor-glib/gcm-version.h
-libcolor-glib/libcolor-glib.pc
 ])
 AC_OUTPUT
 
diff --git a/contrib/gnome-color-manager.spec.in b/contrib/gnome-color-manager.spec.in
index c7fc460..b88402f 100644
--- a/contrib/gnome-color-manager.spec.in
+++ b/contrib/gnome-color-manager.spec.in
@@ -111,21 +111,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &> /dev/null || :
 %{_datadir}/applications/gcm-*.desktop
 %{_sysconfdir}/xdg/autostart/*.desktop
 %{_datadir}/dbus-1/services/org.gnome.ColorManager.service
-%{_sbindir}/gcm-install-system-wide
-%{_datadir}/polkit-1/actions/org.gnome.color.policy
 %{_datadir}/glib-2.0/schemas/org.gnome.color-manager.gschema.xml
 %{_datadir}/glib-2.0/schemas/org.gnome.settings-daemon.plugins.color.gschema.xml
 %{_datadir}/GConf/gsettings/org.gnome.color-manager.gschema.migrate
 %{_datadir}/dbus-1/interfaces/org.gnome.ColorManager.xml
 %{_libdir}/control-center-1/panels/*.so
-%{_includedir}/libcolor-glib/*.h
-%{_libdir}/libcolor-glib.so
-%{_libdir}/libcolor-glib.so.1
-%{_libdir}/libcolor-glib.so.1.0.0
-%{_libdir}/pkgconfig/libcolor-glib.pc
-%{_datadir}/gtk-doc/html/libcolor-glib
-%{_libdir}/gnome-settings-daemon-2.0/color.gnome-settings-plugin
-%{_libdir}/gnome-settings-daemon-2.0/libcolor.so
 
 %changelog
 * #LONGDATE# Richard Hughes <richard hughsie com> #VERSION#-0.#BUILD##ALPHATAG#
diff --git a/docs/Makefile.am b/docs/Makefile.am
index 36fa18c..4080a59 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -1,19 +1,14 @@
 SUBDIRS = 						\
-	huey						\
-	api
+	huey
 
-INCLUDES =							\
-	-I$(top_srcdir)/libcolor-glib				\
-	-DI_KNOW_THE_LIBCOLOR_GLIB_API_IS_SUBJECT_TO_CHANGE	\
-	-DG_UDEV_API_IS_SUBJECT_TO_CHANGE			\
-	-DGCM_I_KNOW_THIS_IS_PRIVATE				\
-	$(GUDEV_CFLAGS)						\
-	$(GTK_CFLAGS)						\
+INCLUDES =						\
+	-I$(top_srcdir)/src				\
+	-DG_UDEV_API_IS_SUBJECT_TO_CHANGE		\
+	-DGCM_I_KNOW_THIS_IS_PRIVATE			\
+	$(GUDEV_CFLAGS)					\
+	$(GTK_CFLAGS)					\
 	$(GLIB_CFLAGS)
 
-COLOR_GLIB_LIBS =						\
-	$(top_builddir)/libcolor-glib/libcolor-glib.la
-
 noinst_PROGRAMS =					\
 	gcm-parse-beagle
 
@@ -21,7 +16,8 @@ gcm_parse_beagle_SOURCES =				\
 	gcm-parse-beagle.c
 
 gcm_parse_beagle_LDADD =				\
-	$(COLOR_GLIB_LIBS)					\
+	../src/libgcmshared.a				\
+	$(GUDEV_LIBS)					\
 	$(GLIB_LIBS)
 
 gcm_parse_beagle_CFLAGS =				\
diff --git a/docs/gcm-parse-beagle.c b/docs/gcm-parse-beagle.c
index 6ac6b0c..e0144b0 100644
--- a/docs/gcm-parse-beagle.c
+++ b/docs/gcm-parse-beagle.c
@@ -23,10 +23,10 @@
 #include <sys/types.h>
 #include <stdlib.h>
 #include <glib.h>
-#include <libcolor-glib.h>
 
 #include "gcm-sensor-huey-private.h"
 #include "gcm-sensor-colormunki-private.h"
+#include "gcm-sensor.h"
 
 typedef enum {
 	GCM_PARSE_SECTION_LEVEL,
diff --git a/docs/huey/Makefile.am b/docs/huey/Makefile.am
index c63167f..a46f011 100644
--- a/docs/huey/Makefile.am
+++ b/docs/huey/Makefile.am
@@ -1,30 +1,16 @@
 INCLUDES =							\
-	-I$(top_srcdir)/libcolor-glib				\
-	-DI_KNOW_THE_LIBCOLOR_GLIB_API_IS_SUBJECT_TO_CHANGE	\
 	-DG_UDEV_API_IS_SUBJECT_TO_CHANGE			\
-	-DGCM_I_KNOW_THIS_IS_PRIVATE				\
 	$(GUDEV_CFLAGS)						\
 	$(GTK_CFLAGS)						\
 	$(GLIB_CFLAGS)
 
 COLOR_GLIB_LIBS =						\
-	$(top_builddir)/libcolor-glib/libcolor-glib.la
+	$(top_builddir)/src/libgcmshared.a
 
 noinst_PROGRAMS =						\
 	gcm-parse-huey						\
-	gcm-calculate-fudge					\
 	gcm-dump-to-values
 
-gcm_calculate_fudge_SOURCES =					\
-	gcm-calculate-fudge.c
-
-gcm_calculate_fudge_LDADD =					\
-	$(COLOR_GLIB_LIBS)					\
-	$(GLIB_LIBS)
-
-gcm_calculate_fudge_CFLAGS =					\
-	$(WARNINGFLAGS_C)
-
 gcm_parse_huey_SOURCES =					\
 	gcm-parse-huey.c
 
diff --git a/docs/huey/gcm-calculate-fudge.c b/docs/huey/gcm-calculate-fudge.c
index 06eb4dd..c937f1b 100644
--- a/docs/huey/gcm-calculate-fudge.c
+++ b/docs/huey/gcm-calculate-fudge.c
@@ -25,7 +25,6 @@
 #include <math.h>
 
 #include <glib.h>
-#include <libcolor-glib.h>
 
 typedef struct {
 	guint16	R;
diff --git a/docs/huey/gcm-dump-to-values.c b/docs/huey/gcm-dump-to-values.c
index 6e892ac..4d46abb 100644
--- a/docs/huey/gcm-dump-to-values.c
+++ b/docs/huey/gcm-dump-to-values.c
@@ -25,7 +25,8 @@
 #include <math.h>
 
 #include <glib.h>
-#include <libcolor-glib.h>
+
+#include "../../src/gcm-buffer.h"
 
 gint
 main (gint argc, gchar *argv[])
diff --git a/docs/huey/gcm-parse-huey.c b/docs/huey/gcm-parse-huey.c
index 5ff1e22..1696d57 100644
--- a/docs/huey/gcm-parse-huey.c
+++ b/docs/huey/gcm-parse-huey.c
@@ -25,7 +25,7 @@
 
 #include <glib.h>
 
-#include "gcm-sensor-huey-private.h"
+#include "../../src/gcm-sensor-huey-private.h"
 
 static void
 parse_command_sequence (GString *output, const gchar *line, gboolean reply)
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 0940274..40fc52c 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -5,9 +5,9 @@ data/gcm-viewer.desktop.in
 data/gcm-viewer.ui
 data/org.gnome.color-manager.gschema.xml
 data/org.gnome.settings-daemon.plugins.color.gschema.xml
-libcolor-glib/gcm-debug.c
-libcolor-glib/gcm-profile.c
-libcolor-glib/gcm-sensor-client.c
+src/gcm-debug.c
+src/gcm-profile.c
+src/gcm-sensor-client.c
 src/cc-color-panel.c
 src/gcm-calibrate-argyll.c
 src/gcm-calibrate.c
diff --git a/po/POTFILES.skip b/po/POTFILES.skip
index 844a629..50cbe5b 100644
--- a/po/POTFILES.skip
+++ b/po/POTFILES.skip
@@ -1,2 +1,2 @@
-libcolor-glib/egg-debug.c
+src/egg-debug.c
 tools/egg-debug.c
diff --git a/src/Makefile.am b/src/Makefile.am
index a05fbca..8a9f012 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -15,9 +15,7 @@ INCLUDES =						\
 	$(SETTINGS_DAEMON_CFLAGS)			\
 	-DG_UDEV_API_IS_SUBJECT_TO_CHANGE		\
 	$(GUDEV_CFLAGS)					\
-	-I$(top_srcdir)/libcolor-glib			\
 	-DG_LOG_DOMAIN=\"Gcm\"				\
-	-DLIBCOLOR_GLIB_COMPILATION			\
 	-DBINDIR=\"$(bindir)\"				\
 	-DLIBEXECDIR=\"$(libexecdir)\"			\
 	-DSBINDIR=\"$(sbindir)\"			\
@@ -27,7 +25,6 @@ INCLUDES =						\
 	-DLOCALEDIR=\""$(localedir)"\"			\
 	-DTESTDATADIR=\""$(top_srcdir)/data/tests"\"	\
 	-DGCM_SYSTEM_PROFILES_DIR="\"$(GCM_SYSTEM_PROFILES_DIR)"\" \
-	-DI_KNOW_THE_LIBCOLOR_GLIB_API_IS_SUBJECT_TO_CHANGE	\
 	-DGCM_DATA=\"$(pkgdatadir)\"
 
 introspectiondir = $(datadir)/dbus-1/interfaces
@@ -40,6 +37,55 @@ ccpanels_CFLAGS =					\
 
 noinst_LIBRARIES = libgcmshared.a
 libgcmshared_a_SOURCES =				\
+	gcm-debug.c					\
+	gcm-debug.h					\
+	gcm-sample-window.c				\
+	gcm-sample-window.h				\
+	gcm-math.c					\
+	gcm-math.h					\
+	gcm-color.c					\
+	gcm-color.h					\
+	gcm-sensor.c					\
+	gcm-sensor.h					\
+	gcm-sensor-client.c				\
+	gcm-sensor-client.h				\
+	gcm-sensor-huey.c				\
+	gcm-sensor-huey.h				\
+	gcm-sensor-huey-private.c			\
+	gcm-sensor-huey-private.h			\
+	gcm-sensor-colormunki.c				\
+	gcm-sensor-colormunki.h				\
+	gcm-sensor-colormunki-private.c			\
+	gcm-sensor-colormunki-private.h			\
+	gcm-sensor-dummy.c				\
+	gcm-sensor-dummy.h				\
+	gcm-tables.c					\
+	gcm-tables.h					\
+	gcm-edid.c					\
+	gcm-edid.h					\
+	gcm-dmi.c					\
+	gcm-dmi.h					\
+	gcm-buffer.c					\
+	gcm-buffer.h					\
+	gcm-profile.c					\
+	gcm-profile.h					\
+	gcm-clut.c					\
+	gcm-clut.h					\
+	gcm-image.c					\
+	gcm-image.h					\
+	gcm-enum.c					\
+	gcm-enum.h					\
+	gcm-usb.c					\
+	gcm-usb.h					\
+	gcm-profile-store.c				\
+	gcm-profile-store.h				\
+	gcm-x11-output.c				\
+	gcm-x11-output.h				\
+	gcm-x11-screen.c				\
+	gcm-x11-screen.h				\
+	gcm-version.h					\
+	gcm-brightness.c				\
+	gcm-brightness.h				\
 	gcm-exif.c					\
 	gcm-exif.h					\
 	gcm-print.c					\
@@ -103,6 +149,7 @@ gcm_inspect_LDADD =					\
 	$(GUDEV_LIBS)					\
 	$(XORG_LIBS)					\
 	$(GTK_LIBS)					\
+	$(LCMS_LIBS)					\
 	$(SANE_LIBS)					\
 	$(COLOR_GLIB_LIBS)				\
 	-lm
@@ -120,6 +167,7 @@ gcm_import_LDADD =					\
 	$(GUDEV_LIBS)					\
 	$(XORG_LIBS)					\
 	$(GTK_LIBS)					\
+	$(LCMS_LIBS)					\
 	$(SANE_LIBS)					\
 	$(COLOR_GLIB_LIBS)				\
 	-lm
@@ -142,6 +190,7 @@ gcm_viewer_LDADD =					\
 	$(GTK_LIBS)					\
 	$(SANE_LIBS)					\
 	$(TIFF_LIBS)					\
+	$(LCMS_LIBS)					\
 	$(EXIF_LIBS)					\
 	$(COLOR_GLIB_LIBS)				\
 	-lm
@@ -162,6 +211,8 @@ gcm_picker_LDADD =					\
 	$(GTK_LIBS)					\
 	$(SANE_LIBS)					\
 	$(TIFF_LIBS)					\
+	$(USB_LIBS)					\
+	$(LCMS_LIBS)					\
 	$(EXIF_LIBS)					\
 	$(CANBERRA_LIBS)				\
 	$(COLOR_GLIB_LIBS)				\
@@ -184,8 +235,8 @@ gcm_session_LDADD =					\
 	$(EXIF_LIBS)					\
 	$(SANE_LIBS)					\
 	$(NOTIFY_LIBS)					\
+	$(LCMS_LIBS)					\
 	$(COLORD_LIBS)					\
-	$(COLOR_GLIB_LIBS)				\
 	-lm
 
 gcm_session_CFLAGS =					\
@@ -212,6 +263,7 @@ libcolor_la_LIBADD =					\
 	$(GTK_LIBS)					\
 	$(TIFF_LIBS)					\
 	$(EXIF_LIBS)					\
+	$(LCMS_LIBS)					\
 	$(SANE_LIBS)					\
 	$(NOTIFY_LIBS)					\
 	$(CANBERRA_LIBS)				\
@@ -221,9 +273,6 @@ libcolor_la_LIBADD =					\
 libcolor_la_LDFLAGS = -avoid-version -module
 libcolor_la_CFLAGS = $(WARNINGFLAGS_C)
 
-COLOR_GLIB_LIBS =						\
-	$(top_builddir)/libcolor-glib/libcolor-glib.la
-
 if HAVE_TESTS
 
 check_PROGRAMS =					\
@@ -238,12 +287,13 @@ gcm_self_test_LDADD =					\
 	$(GLIB_LIBS)					\
 	$(X11_LIBS)					\
 	$(GUDEV_LIBS)					\
+	$(LCMS_LIBS)					\
 	$(XORG_LIBS)					\
 	$(GTK_LIBS)					\
 	$(SANE_LIBS)					\
+	$(USB_LIBS)					\
 	$(TIFF_LIBS)					\
 	$(EXIF_LIBS)					\
-	$(COLOR_GLIB_LIBS)				\
 	-lm
 
 gcm_self_test_CFLAGS = $(AM_CFLAGS) $(WARNINGFLAGS_C)
@@ -252,11 +302,6 @@ TESTS = gcm-self-test
 
 endif
 
-install-data-hook:
-	if test -w $(DESTDIR)$(prefix)/; then \
-		mkdir -p $(DESTDIR)$(GCM_SYSTEM_PROFILES_DIR); \
-	fi
-
 clean-local:
 	rm -f *~
 
diff --git a/session/egg-console-kit.c b/src/egg-console-kit.c
similarity index 100%
rename from session/egg-console-kit.c
rename to src/egg-console-kit.c
diff --git a/session/egg-console-kit.h b/src/egg-console-kit.h
similarity index 100%
rename from session/egg-console-kit.h
rename to src/egg-console-kit.h
diff --git a/libcolor-glib/gcm-brightness.c b/src/gcm-brightness.c
similarity index 99%
rename from libcolor-glib/gcm-brightness.c
rename to src/gcm-brightness.c
index 681aabb..61fd53d 100644
--- a/libcolor-glib/gcm-brightness.c
+++ b/src/gcm-brightness.c
@@ -62,8 +62,6 @@ G_DEFINE_TYPE (GcmBrightness, gcm_brightness, G_TYPE_OBJECT)
 
 /**
  * gcm_brightness_set_percentage:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_brightness_set_percentage (GcmBrightness *brightness, guint percentage, GError **error)
@@ -109,8 +107,6 @@ out:
 
 /**
  * gcm_brightness_get_percentage:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_brightness_get_percentage (GcmBrightness *brightness, guint *percentage, GError **error)
@@ -240,8 +236,6 @@ gcm_brightness_finalize (GObject *object)
  * gcm_brightness_new:
  *
  * Return value: a new GcmBrightness object.
- *
- * Since: 2.91.1
  **/
 GcmBrightness *
 gcm_brightness_new (void)
diff --git a/libcolor-glib/gcm-brightness.h b/src/gcm-brightness.h
similarity index 94%
rename from libcolor-glib/gcm-brightness.h
rename to src/gcm-brightness.h
index 5faeebe..e72ac6b 100644
--- a/libcolor-glib/gcm-brightness.h
+++ b/src/gcm-brightness.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_BRIGHTNESS_H
 #define __GCM_BRIGHTNESS_H
 
diff --git a/libcolor-glib/gcm-buffer.c b/src/gcm-buffer.c
similarity index 96%
rename from libcolor-glib/gcm-buffer.c
rename to src/gcm-buffer.c
index df93933..4eb6aef 100644
--- a/libcolor-glib/gcm-buffer.c
+++ b/src/gcm-buffer.c
@@ -39,8 +39,6 @@
  *
  * Writes a big endian value into a data buffer.
  * NOTE: No validation is done on the buffer to ensure it's big enough.
- *
- * Since: 2.91.1
  **/
 void
 gcm_buffer_write_uint16_be (guchar *buffer, guint16 value)
@@ -56,8 +54,6 @@ gcm_buffer_write_uint16_be (guchar *buffer, guint16 value)
  *
  * Writes a little endian value into a data buffer.
  * NOTE: No validation is done on the buffer to ensure it's big enough.
- *
- * Since: 2.91.1
  **/
 void
 gcm_buffer_write_uint16_le (guchar *buffer, guint16 value)
@@ -74,8 +70,6 @@ gcm_buffer_write_uint16_le (guchar *buffer, guint16 value)
  * NOTE: No validation is done on the buffer to ensure it's valid.
  *
  * Return value: the value to read.
- *
- * Since: 2.91.1
  **/
 guint16
 gcm_buffer_read_uint16_be (const guchar *buffer)
@@ -91,8 +85,6 @@ gcm_buffer_read_uint16_be (const guchar *buffer)
  * NOTE: No validation is done on the buffer to ensure it's valid.
  *
  * Return value: the value to read.
- *
- * Since: 2.91.1
  **/
 guint16
 gcm_buffer_read_uint16_le (const guchar *buffer)
@@ -107,8 +99,6 @@ gcm_buffer_read_uint16_le (const guchar *buffer)
  *
  * Writes a big endian value into a data buffer.
  * NOTE: No validation is done on the buffer to ensure it's big enough.
- *
- * Since: 2.91.1
  **/
 void
 gcm_buffer_write_uint32_be (guchar *buffer, guint32 value)
@@ -126,8 +116,6 @@ gcm_buffer_write_uint32_be (guchar *buffer, guint32 value)
  *
  * Writes a little endian value into a data buffer.
  * NOTE: No validation is done on the buffer to ensure it's big enough.
- *
- * Since: 2.91.1
  **/
 void
 gcm_buffer_write_uint32_le (guchar *buffer, guint32 value)
@@ -146,8 +134,6 @@ gcm_buffer_write_uint32_le (guchar *buffer, guint32 value)
  * NOTE: No validation is done on the buffer to ensure it's valid.
  *
  * Return value: the value to read.
- *
- * Since: 2.91.1
  **/
 guint32
 gcm_buffer_read_uint32_be (const guchar *buffer)
@@ -163,8 +149,6 @@ gcm_buffer_read_uint32_be (const guchar *buffer)
  * NOTE: No validation is done on the buffer to ensure it's valid.
  *
  * Return value: the value to read.
- *
- * Since: 2.91.1
  **/
 guint32
 gcm_buffer_read_uint32_le (const guchar *buffer)
diff --git a/libcolor-glib/gcm-buffer.h b/src/gcm-buffer.h
similarity index 91%
rename from libcolor-glib/gcm-buffer.h
rename to src/gcm-buffer.h
index a1a1397..3c0a107 100644
--- a/libcolor-glib/gcm-buffer.h
+++ b/src/gcm-buffer.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_BUFFER_H__
 #define __GCM_BUFFER_H__
 
diff --git a/libcolor-glib/gcm-clut.c b/src/gcm-clut.c
similarity index 98%
rename from libcolor-glib/gcm-clut.c
rename to src/gcm-clut.c
index ff87012..5870d0d 100644
--- a/libcolor-glib/gcm-clut.c
+++ b/src/gcm-clut.c
@@ -95,8 +95,6 @@ gcm_clut_set_source_data (GcmClut *clut, const GcmClutData *data, guint size)
 
 /**
  * gcm_clut_set_source_array:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_clut_set_source_array (GcmClut *clut, GPtrArray *array)
@@ -118,8 +116,6 @@ gcm_clut_set_source_array (GcmClut *clut, GPtrArray *array)
 
 /**
  * gcm_clut_reset:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_clut_reset (GcmClut *clut)
@@ -148,8 +144,6 @@ gcm_clut_get_adjusted_value (guint value, gdouble min, gdouble max, gdouble cust
 
 /**
  * gcm_clut_get_size:
- *
- * Since: 2.91.1
  **/
 guint
 gcm_clut_get_size (GcmClut *clut)
@@ -159,8 +153,6 @@ gcm_clut_get_size (GcmClut *clut)
 
 /**
  * gcm_clut_get_array:
- *
- * Since: 2.91.1
  **/
 GPtrArray *
 gcm_clut_get_array (GcmClut *clut)
@@ -209,8 +201,6 @@ gcm_clut_get_array (GcmClut *clut)
 
 /**
  * gcm_clut_print:
- *
- * Since: 2.91.1
  **/
 void
 gcm_clut_print (GcmClut *clut)
@@ -361,8 +351,6 @@ gcm_clut_finalize (GObject *object)
  * gcm_clut_new:
  *
  * Return value: a new GcmClut object.
- *
- * Since: 2.91.1
  **/
 GcmClut *
 gcm_clut_new (void)
diff --git a/libcolor-glib/gcm-clut.h b/src/gcm-clut.h
similarity index 94%
rename from libcolor-glib/gcm-clut.h
rename to src/gcm-clut.h
index cd4c161..e589735 100644
--- a/libcolor-glib/gcm-clut.h
+++ b/src/gcm-clut.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_CLUT_H
 #define __GCM_CLUT_H
 
diff --git a/libcolor-glib/gcm-color.c b/src/gcm-color.c
similarity index 95%
rename from libcolor-glib/gcm-color.c
rename to src/gcm-color.c
index e7324f4..e3281ed 100644
--- a/libcolor-glib/gcm-color.c
+++ b/src/gcm-color.c
@@ -35,8 +35,6 @@
 
 /**
  * gcm_color_dup_XYZ:
- *
- * Since: 2.91.1
  **/
 GcmColorXYZ *
 gcm_color_dup_XYZ (const GcmColorXYZ *src)
@@ -52,8 +50,6 @@ gcm_color_dup_XYZ (const GcmColorXYZ *src)
 
 /**
  * gcm_color_dup_RGB:
- *
- * Since: 2.91.1
  **/
 GcmColorRGB *
 gcm_color_dup_RGB (const GcmColorRGB *src)
@@ -69,8 +65,6 @@ gcm_color_dup_RGB (const GcmColorRGB *src)
 
 /**
  * gcm_color_dup_Yxy:
- *
- * Since: 2.91.1
  **/
 GcmColorYxy *
 gcm_color_dup_Yxy (const GcmColorYxy *src)
@@ -88,8 +82,6 @@ gcm_color_dup_Yxy (const GcmColorYxy *src)
  * Return value: a #GType
  *
  * Gets a specific type.
- *
- * Since: 2.91.1
  **/
 GType
 gcm_color_get_type_XYZ (void)
@@ -107,8 +99,6 @@ gcm_color_get_type_XYZ (void)
  * Return value: a #GType
  *
  * Gets a specific type.
- *
- * Since: 2.91.1
  **/
 GType
 gcm_color_get_type_RGB (void)
@@ -126,8 +116,6 @@ gcm_color_get_type_RGB (void)
  * Return value: a #GType
  *
  * Gets a specific type.
- *
- * Since: 2.91.1
  **/
 GType
 gcm_color_get_type_Yxy (void)
@@ -148,8 +136,6 @@ gcm_color_get_type_Yxy (void)
  * @Z: component value
  *
  * Initialises a color value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_set_XYZ (GcmColorXYZ *dest, gdouble X, gdouble Y, gdouble Z)
@@ -166,8 +152,6 @@ gcm_color_set_XYZ (GcmColorXYZ *dest, gdouble X, gdouble Y, gdouble Z)
  * @dest: the destination color
  *
  * Initialises a color value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_clear_XYZ (GcmColorXYZ *dest)
@@ -187,8 +171,6 @@ gcm_color_clear_XYZ (GcmColorXYZ *dest)
  * @B: component value
  *
  * Initialises a color value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_set_RGB (GcmColorRGB *dest, gdouble R, gdouble G, gdouble B)
@@ -208,8 +190,6 @@ gcm_color_set_RGB (GcmColorRGB *dest, gdouble R, gdouble G, gdouble B)
  * @y: component value
  *
  * Initialises a color value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_set_Yxy (GcmColorYxy *dest, gdouble Y, gdouble x, gdouble y)
@@ -227,8 +207,6 @@ gcm_color_set_Yxy (GcmColorYxy *dest, gdouble Y, gdouble x, gdouble y)
  * @dest: the destination color
  *
  * Deep copies a color value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_copy_XYZ (const GcmColorXYZ *src, GcmColorXYZ *dest)
@@ -247,8 +225,6 @@ gcm_color_copy_XYZ (const GcmColorXYZ *src, GcmColorXYZ *dest)
  * @dest: the destination color
  *
  * Deep copies a color value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_copy_Yxy (const GcmColorYxy *src, GcmColorYxy *dest)
@@ -267,8 +243,6 @@ gcm_color_copy_Yxy (const GcmColorYxy *src, GcmColorYxy *dest)
  * @dest: the destination color
  *
  * Deep copies a color value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_copy_RGB (const GcmColorRGB *src, GcmColorRGB *dest)
@@ -287,8 +261,6 @@ gcm_color_copy_RGB (const GcmColorRGB *src, GcmColorRGB *dest)
  * @dest: the destination color
  *
  * Convert from one color format to another.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_convert_RGBint_to_RGB (const GcmColorRGBint *src, GcmColorRGB *dest)
@@ -307,8 +279,6 @@ gcm_color_convert_RGBint_to_RGB (const GcmColorRGBint *src, GcmColorRGB *dest)
  * @dest: the destination color
  *
  * Convert from one color format to another.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_convert_RGB_to_RGBint (const GcmColorRGB *src, GcmColorRGBint *dest)
@@ -327,8 +297,6 @@ gcm_color_convert_RGB_to_RGBint (const GcmColorRGB *src, GcmColorRGBint *dest)
  * @dest: the destination color
  *
  * Convert from one color format to another.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_convert_Yxy_to_XYZ (const GcmColorYxy *src, GcmColorXYZ *dest)
@@ -362,8 +330,6 @@ gcm_color_convert_Yxy_to_XYZ (const GcmColorYxy *src, GcmColorXYZ *dest)
  * @dest: the destination color
  *
  * Convert from one color format to another.
- *
- * Since: 2.91.1
  **/
 void
 gcm_color_convert_XYZ_to_Yxy (const GcmColorXYZ *src, GcmColorYxy *dest)
@@ -398,8 +364,6 @@ gcm_color_convert_XYZ_to_Yxy (const GcmColorXYZ *src, GcmColorYxy *dest)
  * Returns the color as a vector component
  *
  * Return value: the vector.
- *
- * Since: 2.91.1
  **/
 GcmVec3	*
 gcm_color_get_XYZ_Vec3 (GcmColorXYZ *src)
@@ -415,8 +379,6 @@ gcm_color_get_XYZ_Vec3 (GcmColorXYZ *src)
  * Returns the color as a vector component
  *
  * Return value: the vector.
- *
- * Since: 2.91.1
  **/
 GcmVec3	*
 gcm_color_get_RGB_Vec3 (GcmColorRGB *src)
diff --git a/libcolor-glib/gcm-color.h b/src/gcm-color.h
similarity index 95%
rename from libcolor-glib/gcm-color.h
rename to src/gcm-color.h
index db1c36d..598411b 100644
--- a/libcolor-glib/gcm-color.h
+++ b/src/gcm-color.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_COLOR_H__
 #define __GCM_COLOR_H__
 
diff --git a/libcolor-glib/gcm-compat.h b/src/gcm-compat.h
similarity index 88%
rename from libcolor-glib/gcm-compat.h
rename to src/gcm-compat.h
index 3e30993..e20a407 100644
--- a/libcolor-glib/gcm-compat.h
+++ b/src/gcm-compat.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_COMPAT_H__
 #define __GCM_COMPAT_H__
 
diff --git a/libcolor-glib/gcm-debug.c b/src/gcm-debug.c
similarity index 100%
rename from libcolor-glib/gcm-debug.c
rename to src/gcm-debug.c
diff --git a/libcolor-glib/gcm-debug.h b/src/gcm-debug.h
similarity index 92%
rename from libcolor-glib/gcm-debug.h
rename to src/gcm-debug.h
index ac42627..5a93065 100644
--- a/libcolor-glib/gcm-debug.h
+++ b/src/gcm-debug.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Can only include this internally!"
-#endif
-
 #ifndef __GCM_DEBUG_H__
 #define __GCM_DEBUG_H__
 
diff --git a/libcolor-glib/gcm-dmi.c b/src/gcm-dmi.c
similarity index 98%
rename from libcolor-glib/gcm-dmi.c
rename to src/gcm-dmi.c
index fd2e368..e7d493b 100644
--- a/libcolor-glib/gcm-dmi.c
+++ b/src/gcm-dmi.c
@@ -100,8 +100,6 @@ gcm_dmi_get_data (const gchar *filename)
 
 /**
  * gcm_dmi_get_name:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_dmi_get_name (GcmDmi *dmi)
@@ -118,8 +116,6 @@ gcm_dmi_get_name (GcmDmi *dmi)
 
 /**
  * gcm_dmi_get_version:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_dmi_get_version (GcmDmi *dmi)
@@ -138,8 +134,6 @@ gcm_dmi_get_version (GcmDmi *dmi)
 
 /**
  * gcm_dmi_get_vendor:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_dmi_get_vendor (GcmDmi *dmi)
@@ -264,8 +258,6 @@ gcm_dmi_finalize (GObject *object)
  * gcm_dmi_new:
  *
  * Return value: a new GcmDmi object.
- *
- * Since: 2.91.1
  **/
 GcmDmi *
 gcm_dmi_new (void)
diff --git a/libcolor-glib/gcm-dmi.h b/src/gcm-dmi.h
similarity index 93%
rename from libcolor-glib/gcm-dmi.h
rename to src/gcm-dmi.h
index 74764e7..7c5f284 100644
--- a/libcolor-glib/gcm-dmi.h
+++ b/src/gcm-dmi.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_DMI_H
 #define __GCM_DMI_H
 
diff --git a/libcolor-glib/gcm-edid.c b/src/gcm-edid.c
similarity index 98%
rename from libcolor-glib/gcm-edid.c
rename to src/gcm-edid.c
index e50f1ef..1f4e759 100644
--- a/libcolor-glib/gcm-edid.c
+++ b/src/gcm-edid.c
@@ -106,8 +106,6 @@ G_DEFINE_TYPE (GcmEdid, gcm_edid, G_TYPE_OBJECT)
  * Gets the monitor name.
  *
  * Return value: a null terminaled string value
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_edid_get_monitor_name (GcmEdid *edid)
@@ -123,8 +121,6 @@ gcm_edid_get_monitor_name (GcmEdid *edid)
  * Gets the vendor name.
  *
  * Return value: a null terminaled string value
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_edid_get_vendor_name (GcmEdid *edid)
@@ -144,8 +140,6 @@ gcm_edid_get_vendor_name (GcmEdid *edid)
  * Gets the device serial number.
  *
  * Return value: a null terminaled string value
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_edid_get_serial_number (GcmEdid *edid)
@@ -161,8 +155,6 @@ gcm_edid_get_serial_number (GcmEdid *edid)
  * Gets the EISA ID.
  *
  * Return value: a null terminaled string value
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_edid_get_eisa_id (GcmEdid *edid)
@@ -179,8 +171,6 @@ gcm_edid_get_eisa_id (GcmEdid *edid)
  * blobs.
  *
  * Return value: a null terminaled string value
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_edid_get_checksum (GcmEdid *edid)
@@ -196,8 +186,6 @@ gcm_edid_get_checksum (GcmEdid *edid)
  * Gets the device PNP ID..
  *
  * Return value: a null terminaled string value
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_edid_get_pnp_id (GcmEdid *edid)
@@ -213,8 +201,6 @@ gcm_edid_get_pnp_id (GcmEdid *edid)
  * Gets the width of the panel.
  *
  * Return value: the width in mm.
- *
- * Since: 2.91.1
  **/
 guint
 gcm_edid_get_width (GcmEdid *edid)
@@ -230,8 +216,6 @@ gcm_edid_get_width (GcmEdid *edid)
  * Gets the panel height.
  *
  * Return value: the height in mm.
- *
- * Since: 2.91.1
  **/
 guint
 gcm_edid_get_height (GcmEdid *edid)
@@ -247,8 +231,6 @@ gcm_edid_get_height (GcmEdid *edid)
  * Gets the monitor gamma.
  *
  * Return value: the gamma value, although this is typically 2.2
- *
- * Since: 2.91.1
  **/
 gfloat
 gcm_edid_get_gamma (GcmEdid *edid)
@@ -264,8 +246,6 @@ gcm_edid_get_gamma (GcmEdid *edid)
  * Gets the monitor red chromaticity value.
  *
  * Return value: the #GcmColorYxy value
- *
- * Since: 2.91.1
  **/
 const GcmColorYxy *
 gcm_edid_get_red (GcmEdid *edid)
@@ -281,8 +261,6 @@ gcm_edid_get_red (GcmEdid *edid)
  * Gets the monitor green chromaticity value.
  *
  * Return value: the #GcmColorYxy value
- *
- * Since: 2.91.1
  **/
 const GcmColorYxy *
 gcm_edid_get_green (GcmEdid *edid)
@@ -298,8 +276,6 @@ gcm_edid_get_green (GcmEdid *edid)
  * Gets the monitor red chromaticity value.
  *
  * Return value: the #GcmColorYxy value
- *
- * Since: 2.91.1
  **/
 const GcmColorYxy *
 gcm_edid_get_blue (GcmEdid *edid)
@@ -315,8 +291,6 @@ gcm_edid_get_blue (GcmEdid *edid)
  * Gets the monitor white chromaticity value.
  *
  * Return value: the #GcmColorYxy value
- *
- * Since: 2.91.1
  **/
 const GcmColorYxy *
 gcm_edid_get_white (GcmEdid *edid)
@@ -330,8 +304,6 @@ gcm_edid_get_white (GcmEdid *edid)
  * @edid: a valid #GcmEdid instance
  *
  * Resets all the cached values in this object.
- *
- * Since: 2.91.1
  **/
 void
 gcm_edid_reset (GcmEdid *edid)
@@ -458,8 +430,6 @@ out:
  * important.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_edid_parse (GcmEdid *edid, const guint8 *data, gsize length, GError **error)
@@ -840,8 +810,6 @@ gcm_edid_finalize (GObject *object)
  * gcm_edid_new:
  *
  * Return value: a new #GcmEdid object.
- *
- * Since: 2.91.1
  **/
 GcmEdid *
 gcm_edid_new (void)
diff --git a/libcolor-glib/gcm-edid.h b/src/gcm-edid.h
similarity index 95%
rename from libcolor-glib/gcm-edid.h
rename to src/gcm-edid.h
index d4da93a..f511ae9 100644
--- a/libcolor-glib/gcm-edid.h
+++ b/src/gcm-edid.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_EDID_H
 #define __GCM_EDID_H
 
diff --git a/libcolor-glib/gcm-enum.c b/src/gcm-enum.c
similarity index 97%
rename from libcolor-glib/gcm-enum.c
rename to src/gcm-enum.c
index 51c8274..5d485c2 100644
--- a/libcolor-glib/gcm-enum.c
+++ b/src/gcm-enum.c
@@ -32,8 +32,6 @@
 
 /**
  * gcm_intent_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_intent_to_string (GcmIntent intent)
@@ -51,8 +49,6 @@ gcm_intent_to_string (GcmIntent intent)
 
 /**
  * gcm_intent_from_string:
- *
- * Since: 2.91.1
  **/
 GcmIntent
 gcm_intent_from_string (const gchar *intent)
@@ -70,8 +66,6 @@ gcm_intent_from_string (const gchar *intent)
 
 /**
  * gcm_intent_from_string:
- *
- * Since: 2.91.1
  **/
 GcmProfileKind
 gcm_profile_kind_from_string (const gchar *profile_kind)
@@ -95,8 +89,6 @@ gcm_profile_kind_from_string (const gchar *profile_kind)
 
 /**
  * gcm_profile_kind_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_profile_kind_to_string (GcmProfileKind kind)
@@ -120,8 +112,6 @@ gcm_profile_kind_to_string (GcmProfileKind kind)
 
 /**
  * gcm_colorspace_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_colorspace_to_string (GcmColorspace colorspace)
@@ -151,8 +141,6 @@ gcm_colorspace_to_string (GcmColorspace colorspace)
 
 /**
  * gcm_colorspace_from_string:
- *
- * Since: 2.91.1
  **/
 GcmColorspace
 gcm_colorspace_from_string (const gchar *colorspace)
diff --git a/libcolor-glib/gcm-enum.h b/src/gcm-enum.h
similarity index 94%
rename from libcolor-glib/gcm-enum.h
rename to src/gcm-enum.h
index 9ea48f4..920abc6 100644
--- a/libcolor-glib/gcm-enum.h
+++ b/src/gcm-enum.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_ENUM_H
 #define __GCM_ENUM_H
 
diff --git a/libcolor-glib/gcm-image.c b/src/gcm-image.c
similarity index 99%
rename from libcolor-glib/gcm-image.c
rename to src/gcm-image.c
index 52ccaf6..b338271 100644
--- a/libcolor-glib/gcm-image.c
+++ b/src/gcm-image.c
@@ -300,8 +300,6 @@ out:
 
 /**
  * gcm_image_set_input_profile:
- *
- * Since: 2.91.1
  **/
 void
 gcm_image_set_input_profile (GcmImage *image, GcmProfile *profile)
@@ -320,8 +318,6 @@ gcm_image_set_input_profile (GcmImage *image, GcmProfile *profile)
 
 /**
  * gcm_image_set_output_profile:
- *
- * Since: 2.91.1
  **/
 void
 gcm_image_set_output_profile (GcmImage *image, GcmProfile *profile)
@@ -338,8 +334,6 @@ gcm_image_set_output_profile (GcmImage *image, GcmProfile *profile)
 
 /**
  * gcm_image_set_abstract_profile:
- *
- * Since: 2.91.1
  **/
 void
 gcm_image_set_abstract_profile (GcmImage *image, GcmProfile *profile)
@@ -356,8 +350,6 @@ gcm_image_set_abstract_profile (GcmImage *image, GcmProfile *profile)
 
 /**
  * gcm_image_has_embedded_profile:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_image_has_embedded_profile (GcmImage *image)
@@ -367,8 +359,6 @@ gcm_image_has_embedded_profile (GcmImage *image)
 
 /**
  * gcm_image_use_embedded_profile:
- *
- * Since: 2.91.1
  **/
 void
 gcm_image_use_embedded_profile (GcmImage *image, gboolean use_embedded_profile)
@@ -534,8 +524,6 @@ gcm_image_finalize (GObject *object)
  * gcm_image_new:
  *
  * Return value: a new GcmImage object.
- *
- * Since: 2.91.1
  **/
 GcmImage *
 gcm_image_new (void)
diff --git a/libcolor-glib/gcm-image.h b/src/gcm-image.h
similarity index 94%
rename from libcolor-glib/gcm-image.h
rename to src/gcm-image.h
index 001bfa6..5c6a216 100644
--- a/libcolor-glib/gcm-image.h
+++ b/src/gcm-image.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_IMAGE_H
 #define __GCM_IMAGE_H
 
diff --git a/libcolor-glib/gcm-math.c b/src/gcm-math.c
similarity index 96%
rename from libcolor-glib/gcm-math.c
rename to src/gcm-math.c
index 01afaa4..25a5c54 100644
--- a/libcolor-glib/gcm-math.c
+++ b/src/gcm-math.c
@@ -38,8 +38,6 @@
  * @src: the source vector
  *
  * Clears a vector, setting all it's values to zero.
- *
- * Since: 2.91.1
  **/
 void
 gcm_vec3_clear (GcmVec3 *src)
@@ -57,8 +55,6 @@ gcm_vec3_clear (GcmVec3 *src)
  * @v2: component value
  *
  * Initialises a vector.
- *
- * Since: 2.91.1
  **/
 void
 gcm_vec3_init (GcmVec3 *dest, gdouble v0, gdouble v1, gdouble v2)
@@ -78,8 +74,6 @@ gcm_vec3_init (GcmVec3 *dest, gdouble v0, gdouble v1, gdouble v2)
  *
  * Multiplies a vector with a scalar.
  * The arguments @src and @dest can be the same value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_vec3_scalar_multiply (const GcmVec3 *src, gdouble value, GcmVec3 *dest)
@@ -97,8 +91,6 @@ gcm_vec3_scalar_multiply (const GcmVec3 *src, gdouble value, GcmVec3 *dest)
  *
  * Adds two vector quantaties
  * The arguments @src and @dest can be the same value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_vec3_add (const GcmVec3 *src1, const GcmVec3 *src2, GcmVec3 *dest)
@@ -116,8 +108,6 @@ gcm_vec3_add (const GcmVec3 *src1, const GcmVec3 *src2, GcmVec3 *dest)
  *
  * Subtracts one vector quantaty from another
  * The arguments @src and @dest can be the same value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_vec3_subtract (const GcmVec3 *src1, const GcmVec3 *src2, GcmVec3 *dest)
@@ -134,8 +124,6 @@ gcm_vec3_subtract (const GcmVec3 *src1, const GcmVec3 *src2, GcmVec3 *dest)
  * Obtains a string representaton of a vector.
  *
  * Return value: the string. Free with g_free()
- *
- * Since: 2.91.1
  **/
 gchar *
 gcm_vec3_to_string (const GcmVec3 *src)
@@ -153,8 +141,6 @@ gcm_vec3_to_string (const GcmVec3 *src)
  * Gets the raw data for the vector.
  *
  * Return value: the pointer to the data segment.
- *
- * Since: 2.91.1
  **/
 gdouble *
 gcm_vec3_get_data (const GcmVec3 *src)
@@ -167,8 +153,6 @@ gcm_vec3_get_data (const GcmVec3 *src)
  * @src: the source
  *
  * Clears a matrix value, setting all it's values to zero.
- *
- * Since: 2.91.1
  **/
 void
 gcm_mat33_clear (const GcmMat3x3 *src)
@@ -186,8 +170,6 @@ gcm_mat33_clear (const GcmMat3x3 *src)
  * Obtains a string representaton of a matrix.
  *
  * Return value: the string. Free with g_free()
- *
- * Since: 2.91.1
  **/
 gchar *
 gcm_mat33_to_string (const GcmMat3x3 *src)
@@ -207,8 +189,6 @@ gcm_mat33_to_string (const GcmMat3x3 *src)
  * Gets the raw data for the matrix.
  *
  * Return value: the pointer to the data segment.
- *
- * Since: 2.91.1
  **/
 gdouble *
 gcm_mat33_get_data (const GcmMat3x3 *src)
@@ -221,8 +201,6 @@ gcm_mat33_get_data (const GcmMat3x3 *src)
  * @src: the source
  *
  * Sets the matrix to an identity value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_mat33_set_identity (GcmMat3x3 *src)
@@ -241,8 +219,6 @@ gcm_mat33_set_identity (GcmMat3x3 *src)
  *
  * Multiplies a matrix with a vector.
  * The arguments @vec_src and @vec_dest cannot be the same value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_mat33_vector_multiply (const GcmMat3x3 *mat_src, const GcmVec3 *vec_src, GcmVec3 *vec_dest)
@@ -268,8 +244,6 @@ gcm_mat33_vector_multiply (const GcmMat3x3 *mat_src, const GcmVec3 *vec_src, Gcm
  * Multiply (convolve) one matrix with another.
  * The arguments @mat_src1 cannot be the same as @mat_dest, and
  * @mat_src2 cannot be the same as @mat_dest.
- *
- * Since: 2.91.1
  **/
 void
 gcm_mat33_matrix_multiply (const GcmMat3x3 *mat_src1, const GcmMat3x3 *mat_src2, GcmMat3x3 *mat_dest)
@@ -299,8 +273,6 @@ gcm_mat33_matrix_multiply (const GcmMat3x3 *mat_src1, const GcmMat3x3 *mat_src2,
  * The arguments @src and @dest cannot be the same value.
  *
  * Return value: %FALSE if det is zero (singular).
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_mat33_reciprocal (const GcmMat3x3 *src, GcmMat3x3 *dest)
diff --git a/libcolor-glib/gcm-math.h b/src/gcm-math.h
similarity index 94%
rename from libcolor-glib/gcm-math.h
rename to src/gcm-math.h
index c30ca13..8bd71a1 100644
--- a/libcolor-glib/gcm-math.h
+++ b/src/gcm-math.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_COMMON_H__
 #define __GCM_COMMON_H__
 
diff --git a/libcolor-glib/gcm-profile-store.c b/src/gcm-profile-store.c
similarity index 98%
rename from libcolor-glib/gcm-profile-store.c
rename to src/gcm-profile-store.c
index 8e24a19..838406c 100644
--- a/libcolor-glib/gcm-profile-store.c
+++ b/src/gcm-profile-store.c
@@ -68,8 +68,6 @@ G_DEFINE_TYPE (GcmProfileStore, gcm_profile_store, G_TYPE_OBJECT)
  * Gets the profile list.
  *
  * Return value: an array, free with g_ptr_array_unref()
- *
- * Since: 2.91.1
  **/
 GPtrArray *
 gcm_profile_store_get_array (GcmProfileStore *profile_store)
@@ -103,8 +101,6 @@ gcm_profile_store_in_array (GPtrArray *array, const gchar *text)
  * Gets a profile.
  *
  * Return value: a valid %GcmProfile or %NULL. Free with g_object_unref()
- *
- * Since: 2.91.1
  **/
 GcmProfile *
 gcm_profile_store_get_by_filename (GcmProfileStore *profile_store, const gchar *filename)
@@ -139,8 +135,6 @@ out:
  * Gets a profile.
  *
  * Return value: a valid %GcmProfile or %NULL. Free with g_object_unref()
- *
- * Since: 2.91.1
  **/
 GcmProfile *
 gcm_profile_store_get_by_checksum (GcmProfileStore *profile_store, const gchar *checksum)
@@ -309,8 +303,6 @@ out:
  * Searches a specified location for ICC profiles.
  *
  * Return value: if any profile were added
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_store_search_path (GcmProfileStore *profile_store, const gchar *path)
@@ -413,8 +405,6 @@ out:
  * Searches specified locations for ICC profiles.
  *
  * Return value: %TRUE if any profile were added
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_store_search (GcmProfileStore *profile_store)
@@ -464,8 +454,6 @@ gcm_profile_store_class_init (GcmProfileStoreClass *klass)
 
 	/**
 	 * GcmProfileStore::added
-	 *
-	 * Since: 2.91.1
 	 **/
 	signals[SIGNAL_ADDED] =
 		g_signal_new ("added",
@@ -475,8 +463,6 @@ gcm_profile_store_class_init (GcmProfileStoreClass *klass)
 			      G_TYPE_NONE, 1, G_TYPE_OBJECT);
 	/**
 	 * GcmProfileStore::removed
-	 *
-	 * Since: 2.91.1
 	 **/
 	signals[SIGNAL_REMOVED] =
 		g_signal_new ("removed",
@@ -486,8 +472,6 @@ gcm_profile_store_class_init (GcmProfileStoreClass *klass)
 			      G_TYPE_NONE, 1, G_TYPE_OBJECT);
 	/**
 	 * GcmProfileStore::changed
-	 *
-	 * Since: 2.91.1
 	 **/
 	signals[SIGNAL_CHANGED] =
 		g_signal_new ("changed",
@@ -531,8 +515,6 @@ gcm_profile_store_finalize (GObject *object)
  * gcm_profile_store_new:
  *
  * Return value: a new GcmProfileStore object.
- *
- * Since: 2.91.1
  **/
 GcmProfileStore *
 gcm_profile_store_new (void)
diff --git a/libcolor-glib/gcm-profile-store.h b/src/gcm-profile-store.h
similarity index 95%
rename from libcolor-glib/gcm-profile-store.h
rename to src/gcm-profile-store.h
index 961d5a2..57f5e4d 100644
--- a/libcolor-glib/gcm-profile-store.h
+++ b/src/gcm-profile-store.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_PROFILE_STORE_H
 #define __GCM_PROFILE_STORE_H
 
diff --git a/libcolor-glib/gcm-profile.c b/src/gcm-profile.c
similarity index 98%
rename from libcolor-glib/gcm-profile.c
rename to src/gcm-profile.c
index 2605a87..5b4f3cd 100644
--- a/libcolor-glib/gcm-profile.c
+++ b/src/gcm-profile.c
@@ -108,8 +108,6 @@ static void gcm_profile_file_monitor_changed_cb (GFileMonitor *monitor, GFile *f
  * Gets the profile description.
  *
  * Return value: The profile description as a string.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_profile_get_description (GcmProfile *profile)
@@ -147,8 +145,6 @@ gcm_profile_ensure_printable (gchar *text)
  * @description: the data location to read into
  *
  * Sets the description of the profile.
- *
- * Since: 2.91.1
  **/
 void
 gcm_profile_set_description (GcmProfile *profile, const gchar *description)
@@ -183,8 +179,6 @@ gcm_profile_set_description (GcmProfile *profile, const gchar *description)
  *
  * Return value: %TRUE if the description mentions the profile colorspace explicity,
  * e.g. "Adobe RGB" for %GCM_COLORSPACE_RGB.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_has_colorspace_description (GcmProfile *profile)
@@ -209,8 +203,6 @@ gcm_profile_has_colorspace_description (GcmProfile *profile)
  * Gets the profile color temperature, rounded to the nearest 100K.
  *
  * Return value: The color temperature in Kelvins, or 0 for error.
- *
- * Since: 2.91.1
  **/
 guint
 gcm_profile_get_temperature (GcmProfile *profile)
@@ -226,8 +218,6 @@ gcm_profile_get_temperature (GcmProfile *profile)
  * Gets the monitor red chromaticity value.
  *
  * Return value: the #GcmColorXYZ value
- *
- * Since: 2.91.1
  **/
 const GcmColorXYZ *
 gcm_profile_get_red (GcmProfile *profile)
@@ -243,8 +233,6 @@ gcm_profile_get_red (GcmProfile *profile)
  * Gets the monitor green chromaticity value.
  *
  * Return value: the #GcmColorXYZ value
- *
- * Since: 2.91.1
  **/
 const GcmColorXYZ *
 gcm_profile_get_green (GcmProfile *profile)
@@ -260,8 +248,6 @@ gcm_profile_get_green (GcmProfile *profile)
  * Gets the monitor red chromaticity value.
  *
  * Return value: the #GcmColorXYZ value
- *
- * Since: 2.91.1
  **/
 const GcmColorXYZ *
 gcm_profile_get_blue (GcmProfile *profile)
@@ -277,8 +263,6 @@ gcm_profile_get_blue (GcmProfile *profile)
  * Gets the monitor white chromaticity value.
  *
  * Return value: the #GcmColorXYZ value
- *
- * Since: 2.91.1
  **/
 const GcmColorXYZ *
 gcm_profile_get_white (GcmProfile *profile)
@@ -294,8 +278,6 @@ gcm_profile_get_white (GcmProfile *profile)
  * Gets the file attached to this profile.
  *
  * Return value: A #GFile, or %NULL. Do not free.
- *
- * Since: 2.91.1
  **/
 GFile *
 gcm_profile_get_file (GcmProfile *profile)
@@ -310,8 +292,6 @@ gcm_profile_get_file (GcmProfile *profile)
  * @file: A #GFile to read
  *
  * Sets the file to be used when reading the profile.
- *
- * Since: 2.91.1
  **/
 void
 gcm_profile_set_file (GcmProfile *profile, GFile *file)
@@ -346,8 +326,6 @@ gcm_profile_set_file (GcmProfile *profile, GFile *file)
  * Gets the filename of the profile data, if one exists.
  *
  * Return value: A filename, or %NULL
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_profile_get_filename (GcmProfile *profile)
@@ -369,8 +347,6 @@ gcm_profile_get_filename (GcmProfile *profile)
  * Gets the copyright string for this profile.
  *
  * Return value: A string. Do not free.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_profile_get_copyright (GcmProfile *profile)
@@ -385,8 +361,6 @@ gcm_profile_get_copyright (GcmProfile *profile)
  * @copyright: the copyright string
  *
  * Sets the copyright string.
- *
- * Since: 2.91.1
  **/
 void
 gcm_profile_set_copyright (GcmProfile *profile, const gchar *copyright)
@@ -409,8 +383,6 @@ gcm_profile_set_copyright (GcmProfile *profile, const gchar *copyright)
  * Gets the device model name.
  *
  * Return value: A string. Do not free.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_profile_get_model (GcmProfile *profile)
@@ -425,8 +397,6 @@ gcm_profile_get_model (GcmProfile *profile)
  * @model: the profile model.
  *
  * Sets the device model name.
- *
- * Since: 2.91.1
  **/
 void
 gcm_profile_set_model (GcmProfile *profile, const gchar *model)
@@ -449,8 +419,6 @@ gcm_profile_set_model (GcmProfile *profile, const gchar *model)
  * Gets the device manufacturer name.
  *
  * Return value: A string. Do not free.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_profile_get_manufacturer (GcmProfile *profile)
@@ -465,8 +433,6 @@ gcm_profile_get_manufacturer (GcmProfile *profile)
  * @manufacturer: the profile manufacturer.
  *
  * Sets the device manufacturer name.
- *
- * Since: 2.91.1
  **/
 void
 gcm_profile_set_manufacturer (GcmProfile *profile, const gchar *manufacturer)
@@ -489,8 +455,6 @@ gcm_profile_set_manufacturer (GcmProfile *profile, const gchar *manufacturer)
  * Gets the profile date and time.
  *
  * Return value: A string. Do not free.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_profile_get_datetime (GcmProfile *profile)
@@ -505,8 +469,6 @@ gcm_profile_get_datetime (GcmProfile *profile)
  * @datetime: the profile date time.
  *
  * Sets the profile date and time.
- *
- * Since: 2.91.1
  **/
 void
 gcm_profile_set_datetime (GcmProfile *profile, const gchar *datetime)
@@ -522,8 +484,6 @@ gcm_profile_set_datetime (GcmProfile *profile, const gchar *datetime)
 
 /**
  * gcm_profile_get_checksum:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_profile_get_checksum (GcmProfile *profile)
@@ -549,8 +509,6 @@ gcm_profile_set_checksum (GcmProfile *profile, const gchar *checksum)
 
 /**
  * gcm_profile_get_size:
- *
- * Since: 2.91.1
  **/
 guint
 gcm_profile_get_size (GcmProfile *profile)
@@ -572,8 +530,6 @@ gcm_profile_set_size (GcmProfile *profile, guint size)
 
 /**
  * gcm_profile_get_kind:
- *
- * Since: 2.91.1
  **/
 GcmProfileKind
 gcm_profile_get_kind (GcmProfile *profile)
@@ -584,8 +540,6 @@ gcm_profile_get_kind (GcmProfile *profile)
 
 /**
  * gcm_profile_set_kind:
- *
- * Since: 2.91.1
  **/
 void
 gcm_profile_set_kind (GcmProfile *profile, GcmProfileKind kind)
@@ -597,8 +551,6 @@ gcm_profile_set_kind (GcmProfile *profile, GcmProfileKind kind)
 
 /**
  * gcm_profile_get_colorspace:
- *
- * Since: 2.91.1
  **/
 GcmColorspace
 gcm_profile_get_colorspace (GcmProfile *profile)
@@ -609,8 +561,6 @@ gcm_profile_get_colorspace (GcmProfile *profile)
 
 /**
  * gcm_profile_set_colorspace:
- *
- * Since: 2.91.1
  **/
 void
 gcm_profile_set_colorspace (GcmProfile *profile, GcmColorspace colorspace)
@@ -622,8 +572,6 @@ gcm_profile_set_colorspace (GcmProfile *profile, GcmColorspace colorspace)
 
 /**
  * gcm_profile_get_has_vcgt:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_get_has_vcgt (GcmProfile *profile)
@@ -647,8 +595,6 @@ gcm_profile_set_has_vcgt (GcmProfile *profile, gboolean has_vcgt)
  * gcm_profile_get_handle:
  *
  * Return value: Do not call cmsCloseProfile() on this value!
- *
- * Since: 2.91.1
  **/
 gpointer
 gcm_profile_get_handle (GcmProfile *profile)
@@ -659,8 +605,6 @@ gcm_profile_get_handle (GcmProfile *profile)
 
 /**
  * gcm_profile_get_can_delete:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_get_can_delete (GcmProfile *profile)
@@ -693,8 +637,6 @@ gcm_utils_format_date_time (const struct tm *created)
  * Parses profile data, filling in all the details possible.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_parse_data (GcmProfile *profile, const guint8 *data, gsize length, GError **error)
@@ -965,8 +907,6 @@ out:
  * Parses a profile file, filling in all the details possible.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_parse (GcmProfile *profile, GFile *file, GError **error)
@@ -1032,8 +972,6 @@ _cmsWriteTagTextAscii (cmsHPROFILE lcms_profile, cmsTagSignature sig, const gcha
  * Saves the whitepoint data to a file.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_set_whitepoint (GcmProfile *profile, const GcmColorXYZ *whitepoint, GError **error)
@@ -1069,8 +1007,6 @@ out:
  * Saves the primaries data to a file.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_set_primaries (GcmProfile *profile,
@@ -1120,8 +1056,6 @@ out:
  * Saves the profile data to a file.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_save (GcmProfile *profile, const gchar *filename, GError **error)
@@ -1249,8 +1183,6 @@ gcm_profile_set_data (GcmProfile *profile, const gchar *key, const gchar *data)
  * Saves the profile data to a file.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_create_from_chroma (GcmProfile *profile, gdouble gamma,
@@ -1310,8 +1242,6 @@ out:
  * Runs a grey image through the profile, to guess semi-correct VCGT curves
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_guess_and_add_vcgt (GcmProfile *profile, GError **error)
@@ -1395,8 +1325,6 @@ out:
  * Generates a VCGT table of a specified size.
  *
  * Return value: A #GcmClut object, or %NULL. Free with g_object_unref()
- *
- * Since: 2.91.1
  **/
 GcmClut *
 gcm_profile_generate_vcgt (GcmProfile *profile, guint size)
@@ -1447,8 +1375,6 @@ out:
  * Sets a VCGT curve of a specified size.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_profile_set_vcgt_from_data (GcmProfile *profile, guint16 *red, guint16 *green, guint16 *blue, guint size, GError **error)
@@ -1501,8 +1427,6 @@ out:
  * Generates a curve of a specified size.
  *
  * Return value: A #GcmClut object, or %NULL. Free with g_object_unref()
- *
- * Since: 2.91.1
  **/
 GcmClut *
 gcm_profile_generate_curve (GcmProfile *profile, guint size)
@@ -1976,8 +1900,6 @@ gcm_profile_finalize (GObject *object)
  * gcm_profile_new:
  *
  * Return value: a new #GcmProfile object.
- *
- * Since: 2.91.1
  **/
 GcmProfile *
 gcm_profile_new (void)
diff --git a/libcolor-glib/gcm-profile.h b/src/gcm-profile.h
similarity index 97%
rename from libcolor-glib/gcm-profile.h
rename to src/gcm-profile.h
index c752931..6818252 100644
--- a/libcolor-glib/gcm-profile.h
+++ b/src/gcm-profile.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_PROFILE_H
 #define __GCM_PROFILE_H
 
diff --git a/libcolor-glib/gcm-sample-window.c b/src/gcm-sample-window.c
similarity index 99%
rename from libcolor-glib/gcm-sample-window.c
rename to src/gcm-sample-window.c
index a48b1b1..d928120 100644
--- a/libcolor-glib/gcm-sample-window.c
+++ b/src/gcm-sample-window.c
@@ -68,8 +68,6 @@ gcm_sample_window_pulse_cb (GcmSampleWindow *sample_window)
  * %GCM_SAMPLE_WINDOW_PERCENTAGE_PULSE for pulsing.
  *
  * Sets the percentage value on the window.
- *
- * Since: 2.91.1
  **/
 void
 gcm_sample_window_set_percentage (GcmSampleWindow *sample_window, guint percentage)
@@ -104,8 +102,6 @@ gcm_sample_window_set_percentage (GcmSampleWindow *sample_window, guint percenta
  * @blue: the blue color value
  *
  * Sets the window to a specific color.
- *
- * Since: 2.91.1
  **/
 void
 gcm_sample_window_set_color (GcmSampleWindow *sample_window, const GcmColorRGB *color)
@@ -249,8 +245,6 @@ gcm_sample_window_finalize (GObject *object)
  * gcm_sample_window_new:
  *
  * Return value: a new #GcmSampleWindow object.
- *
- * Since: 2.91.1
  **/
 GtkWindow *
 gcm_sample_window_new (void)
diff --git a/libcolor-glib/gcm-sample-window.h b/src/gcm-sample-window.h
similarity index 93%
rename from libcolor-glib/gcm-sample-window.h
rename to src/gcm-sample-window.h
index 017610c..021e470 100644
--- a/libcolor-glib/gcm-sample-window.h
+++ b/src/gcm-sample-window.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_SAMPLE_WINDOW_H
 #define __GCM_SAMPLE_WINDOW_H
 
diff --git a/src/gcm-self-test.c b/src/gcm-self-test.c
index a25c7fc..f1ad300 100644
--- a/src/gcm-self-test.c
+++ b/src/gcm-self-test.c
@@ -32,7 +32,6 @@
 #include "gcm-client.h"
 #include "gcm-debug.h"
 #include "gcm-device.h"
-#include "gcm-device-udev.h"
 #include "gcm-device-xrandr.h"
 #include "gcm-exif.h"
 #include "gcm-gamma-widget.h"
@@ -44,6 +43,22 @@
 #include "gcm-color.h"
 #include "gcm-profile.h"
 #include "gcm-color.h"
+#include "gcm-brightness.h"
+#include "gcm-buffer.h"
+#include "gcm-color.h"
+#include "gcm-clut.h"
+#include "gcm-math.h"
+#include "gcm-dmi.h"
+#include "gcm-edid.h"
+#include "gcm-image.h"
+#include "gcm-profile.h"
+#include "gcm-profile-store.h"
+#include "gcm-sample-window.h"
+#include "gcm-sensor-dummy.h"
+#include "gcm-tables.h"
+#include "gcm-usb.h"
+#include "gcm-x11-output.h"
+#include "gcm-x11-screen.h"
 
 /** ver:1.0 ***********************************************************/
 static GMainLoop *_test_loop = NULL;
@@ -124,6 +139,783 @@ gcm_test_assert_basename (const gchar *filename1, const gchar *filename2)
 	g_free (basename2);
 }
 
+
+#define TEST_MAIN_OUTPUT	"LVDS-1"
+
+static void
+gcm_test_math_func (void)
+{
+	GcmColorRGBint rgb_int;
+	GcmColorRGB rgb;
+	GcmColorYxy Yxy;
+	GcmColorXYZ XYZ;
+	GcmMat3x3 mat;
+	GcmMat3x3 matsrc;
+
+	/* black */
+	rgb_int.R = 0x00; rgb_int.G = 0x00; rgb_int.B = 0x00;
+	gcm_color_convert_RGBint_to_RGB (&rgb_int, &rgb);
+	g_assert_cmpfloat (rgb.R, <, 0.01);
+	g_assert_cmpfloat (rgb.G, <, 0.01);
+	g_assert_cmpfloat (rgb.B, <, 0.01);
+	g_assert_cmpfloat (rgb.R, >, -0.01);
+	g_assert_cmpfloat (rgb.G, >, -0.01);
+	g_assert_cmpfloat (rgb.B, >, -0.01);
+
+	/* white */
+	rgb_int.R = 0xff; rgb_int.G = 0xff; rgb_int.B = 0xff;
+	gcm_color_convert_RGBint_to_RGB (&rgb_int, &rgb);
+	g_assert_cmpfloat (rgb.R, <, 1.01);
+	g_assert_cmpfloat (rgb.G, <, 1.01);
+	g_assert_cmpfloat (rgb.B, <, 1.01);
+	g_assert_cmpfloat (rgb.R, >, 0.99);
+	g_assert_cmpfloat (rgb.G, >, 0.99);
+	g_assert_cmpfloat (rgb.B, >, 0.99);
+
+	/* and back */
+	gcm_color_convert_RGB_to_RGBint (&rgb, &rgb_int);
+	g_assert_cmpint (rgb_int.R, ==, 0xff);
+	g_assert_cmpint (rgb_int.G, ==, 0xff);
+	g_assert_cmpint (rgb_int.B, ==, 0xff);
+
+	/* black */
+	rgb.R = 0.0f; rgb.G = 0.0f; rgb.B = 0.0f;
+	gcm_color_convert_RGB_to_RGBint (&rgb, &rgb_int);
+	g_assert_cmpint (rgb_int.R, ==, 0x00);
+	g_assert_cmpint (rgb_int.G, ==, 0x00);
+	g_assert_cmpint (rgb_int.B, ==, 0x00);
+
+	/* Yxy -> XYZ */
+	Yxy.Y = 21.5;
+	Yxy.x = 0.31;
+	Yxy.y = 0.32;
+	gcm_color_convert_Yxy_to_XYZ (&Yxy, &XYZ);
+	g_assert_cmpfloat (XYZ.X, <, 21.0);
+	g_assert_cmpfloat (XYZ.X, >, 20.5);
+	g_assert_cmpfloat (XYZ.Y, <, 22.0);
+	g_assert_cmpfloat (XYZ.Y, >, 21.0);
+	g_assert_cmpfloat (XYZ.Z, <, 25.0);
+	g_assert_cmpfloat (XYZ.Z, >, 24.5);
+
+	/* and back */
+	gcm_color_convert_XYZ_to_Yxy (&XYZ, &Yxy);
+	g_assert_cmpfloat (Yxy.Y, <, 22.0);
+	g_assert_cmpfloat (Yxy.Y, >, 21.0);
+	g_assert_cmpfloat (Yxy.x, <, 0.35);
+	g_assert_cmpfloat (Yxy.x, >, 0.25);
+	g_assert_cmpfloat (Yxy.y, <, 0.35);
+	g_assert_cmpfloat (Yxy.y, >, 0.25);
+
+	/* matrix */
+	mat.m00 = 1.00f;
+	gcm_mat33_clear (&mat);
+	g_assert_cmpfloat (mat.m00, <, 0.001f);
+	g_assert_cmpfloat (mat.m00, >, -0.001f);
+	g_assert_cmpfloat (mat.m22, <, 0.001f);
+	g_assert_cmpfloat (mat.m22, >, -0.001f);
+
+	/* multiply two matrices */
+	gcm_mat33_clear (&matsrc);
+	matsrc.m01 = matsrc.m10 = 2.0f;
+	gcm_mat33_matrix_multiply (&matsrc, &matsrc, &mat);
+	g_assert_cmpfloat (mat.m00, <, 4.1f);
+	g_assert_cmpfloat (mat.m00, >, 3.9f);
+	g_assert_cmpfloat (mat.m11, <, 4.1f);
+	g_assert_cmpfloat (mat.m11, >, 3.9f);
+	g_assert_cmpfloat (mat.m22, <, 0.001f);
+	g_assert_cmpfloat (mat.m22, >, -0.001f);
+}
+
+static void
+gcm_test_sensor_button_pressed_cb (GcmSensor *sensor, gint *signal_count)
+{
+	(*signal_count)++;
+}
+
+static void
+gcm_test_sensor_func (void)
+{
+	gboolean ret;
+	GError *error = NULL;
+	GcmSensor *sensor;
+	gdouble value;
+	GcmColorXYZ values;
+	gboolean signal_count = 0;
+
+	/* start sensor */
+	sensor = gcm_sensor_dummy_new ();
+	g_signal_connect (sensor, "button-pressed", G_CALLBACK (gcm_test_sensor_button_pressed_cb), &signal_count);
+
+	/* set LEDs */
+	ret = gcm_sensor_set_leds (sensor, 0x0f, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	/* set mode */
+	gcm_sensor_set_output_type (sensor, GCM_SENSOR_OUTPUT_TYPE_LCD);
+	g_assert_cmpint (gcm_sensor_get_output_type (sensor), ==, GCM_SENSOR_OUTPUT_TYPE_LCD);
+
+	/* get ambient */
+	ret = gcm_sensor_get_ambient (sensor, NULL, &value, &error);
+	g_assert_cmpint (signal_count, ==, 0);
+	g_assert_no_error (error);
+	g_assert (ret);
+	g_debug ("ambient = %.1lf Lux", value);
+
+	/* sample color */
+	ret = gcm_sensor_sample (sensor, NULL, &values, &error);
+	g_assert_cmpint (signal_count, ==, 1);
+	g_assert_no_error (error);
+	g_assert (ret);
+	g_debug ("X=%0.4lf, Y=%0.4lf, Z=%0.4lf", values.X, values.Y, values.Z);
+
+	/* set LEDs */
+	ret = gcm_sensor_set_leds (sensor, 0x00, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	g_object_unref (sensor);
+}
+
+typedef struct {
+	const gchar *monitor_name;
+	const gchar *vendor_name;
+	const gchar *serial_number;
+	const gchar *eisa_id;
+	const gchar *checksum;
+	const gchar *pnp_id;
+	guint width;
+	guint height;
+	gfloat gamma;
+} GcmEdidTestData;
+
+static void
+gcm_test_edid_test_parse_edid_file (GcmEdid *edid, const gchar *filename, GcmEdidTestData *test_data)
+{
+	gchar *data;
+	gfloat mygamma;
+	gboolean ret;
+	GError *error = NULL;
+	gsize length = 0;
+
+	ret = g_file_get_contents (filename, &data, &length, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	ret = gcm_edid_parse (edid, (const guint8 *) data, length, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	g_assert_cmpstr (gcm_edid_get_monitor_name (edid), ==, test_data->monitor_name);
+	g_assert_cmpstr (gcm_edid_get_vendor_name (edid), ==, test_data->vendor_name);
+	g_assert_cmpstr (gcm_edid_get_serial_number (edid), ==, test_data->serial_number);
+	g_assert_cmpstr (gcm_edid_get_eisa_id (edid), ==, test_data->eisa_id);
+	g_assert_cmpstr (gcm_edid_get_checksum (edid), ==, test_data->checksum);
+	g_assert_cmpstr (gcm_edid_get_pnp_id (edid), ==, test_data->pnp_id);
+	g_assert_cmpint (gcm_edid_get_height (edid), ==, test_data->height);
+	g_assert_cmpint (gcm_edid_get_width (edid), ==, test_data->width);
+	mygamma = gcm_edid_get_gamma (edid);
+	g_assert_cmpfloat (mygamma, >=, test_data->gamma - 0.01);
+	g_assert_cmpfloat (mygamma, <, test_data->gamma + 0.01);
+
+	g_free (data);
+}
+
+static void
+gcm_test_edid_func (void)
+{
+	GcmEdid *edid;
+	GcmEdidTestData test_data;
+
+	edid = gcm_edid_new ();
+	g_assert (edid != NULL);
+
+	/* LG 21" LCD panel */
+	test_data.monitor_name = "L225W";
+	test_data.vendor_name = "Goldstar Company Ltd";
+	test_data.serial_number = "34398";
+	test_data.eisa_id = NULL;
+	test_data.checksum = "80b7dda4c74b06366abb8fa23e71d645";
+	test_data.pnp_id = "GSM";
+	test_data.height = 30;
+	test_data.width = 47;
+	test_data.gamma = 2.2f;
+	gcm_test_edid_test_parse_edid_file (edid, TESTDATADIR "/LG-L225W-External.bin", &test_data);
+
+	/* Lenovo T61 Intel Panel */
+	test_data.monitor_name = NULL;
+	test_data.vendor_name = "IBM France";
+	test_data.serial_number = NULL;
+	test_data.eisa_id = "LTN154P2-L05";
+	test_data.checksum = "c585d9e80adc65c54f0a52597e850f83";
+	test_data.pnp_id = "IBM";
+	test_data.height = 21;
+	test_data.width = 33;
+	test_data.gamma = 2.2f;
+	gcm_test_edid_test_parse_edid_file (edid, TESTDATADIR "/Lenovo-T61-Internal.bin", &test_data);
+
+	g_object_unref (edid);
+}
+
+static void
+gcm_test_tables_func (void)
+{
+	GcmTables *tables;
+	GError *error = NULL;
+	gchar *vendor;
+
+	tables = gcm_tables_new ();
+	g_assert (tables != NULL);
+
+	vendor = gcm_tables_get_pnp_id (tables, "IBM", &error);
+	g_assert_no_error (error);
+	g_assert (vendor != NULL);
+	g_assert_cmpstr (vendor, ==, "IBM France");
+	g_free (vendor);
+
+	vendor = gcm_tables_get_pnp_id (tables, "MIL", &error);
+	g_assert_no_error (error);
+	g_assert (vendor != NULL);
+	g_assert_cmpstr (vendor, ==, "Marconi Instruments Ltd");
+	g_free (vendor);
+
+	vendor = gcm_tables_get_pnp_id (tables, "XXX", &error);
+	g_assert_error (error, 1, 0);
+	g_assert_cmpstr (vendor, ==, NULL);
+	g_free (vendor);
+
+	g_object_unref (tables);
+}
+
+static void
+gcm_test_profile_func (void)
+{
+	GcmProfile *profile;
+	GFile *file;
+	GcmClut *clut;
+	gboolean ret;
+	GError *error = NULL;
+	GcmColorXYZ *xyz;
+	GcmColorYxy yxy;
+	GcmColorYxy red;
+	GcmColorYxy green;
+	GcmColorYxy blue;
+	GcmColorYxy white;
+
+	/* bluish test */
+	profile = gcm_profile_new ();
+	file = g_file_new_for_path (TESTDATADIR "/bluish.icc");
+	ret = gcm_profile_parse (profile, file, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+	g_object_unref (file);
+
+	/* get CLUT */
+	clut = gcm_profile_generate_vcgt (profile, 256);
+	g_assert (clut != NULL);
+	g_assert_cmpint (gcm_clut_get_size (clut), ==, 256);
+
+	g_assert_cmpstr (gcm_profile_get_copyright (profile), ==, "Copyright (c) 1998 Hewlett-Packard Company");
+	g_assert_cmpstr (gcm_profile_get_manufacturer (profile), ==, "IEC http://www.iec.ch";);
+	g_assert_cmpstr (gcm_profile_get_model (profile), ==, "IEC 61966-2.1 Default RGB colour space - sRGB");
+	g_assert_cmpstr (gcm_profile_get_datetime (profile), ==, "February  9 1998, 06:49:00 AM");
+	g_assert_cmpstr (gcm_profile_get_description (profile), ==, "Blueish Test");
+	g_assert_cmpstr (gcm_profile_get_checksum (profile), ==, "8e2aed5dac6f8b5d8da75610a65b7f27");
+	g_assert_cmpint (gcm_profile_get_kind (profile), ==, GCM_PROFILE_KIND_DISPLAY_DEVICE);
+	g_assert_cmpint (gcm_profile_get_colorspace (profile), ==, GCM_COLORSPACE_RGB);
+	g_assert_cmpint (gcm_profile_get_temperature (profile), ==, 6500);
+	g_assert (gcm_profile_get_has_vcgt (profile));
+
+	/* get extra data */
+	g_object_get (profile,
+		      "red", &xyz,
+		      NULL);
+	g_assert (xyz != NULL);
+	gcm_color_convert_XYZ_to_Yxy (xyz, &yxy);
+	g_assert_cmpfloat (fabs (yxy.x - 0.648454), <, 0.01);
+
+	gcm_color_free_XYZ (xyz);
+	g_object_unref (clut);
+	g_object_unref (profile);
+
+	/* Adobe test */
+	profile = gcm_profile_new ();
+	file = g_file_new_for_path (TESTDATADIR "/AdobeGammaTest.icm");
+	ret = gcm_profile_parse (profile, file, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+	g_object_unref (file);
+
+	g_assert_cmpstr (gcm_profile_get_copyright (profile), ==, "Copyright (c) 1998 Hewlett-Packard Company Modified using Adobe Gamma");
+	g_assert_cmpstr (gcm_profile_get_manufacturer (profile), ==, "IEC http://www.iec.ch";);
+	g_assert_cmpstr (gcm_profile_get_model (profile), ==, "IEC 61966-2.1 Default RGB colour space - sRGB");
+	g_assert_cmpstr (gcm_profile_get_datetime (profile), ==, "August 16 2005, 09:49:54 PM");
+	g_assert_cmpstr (gcm_profile_get_description (profile), ==, "ADOBEGAMMA-Test");
+	g_assert_cmpstr (gcm_profile_get_checksum (profile), ==, "bd847723f676e2b846daaf6759330624");
+	g_assert_cmpint (gcm_profile_get_kind (profile), ==, GCM_PROFILE_KIND_DISPLAY_DEVICE);
+	g_assert_cmpint (gcm_profile_get_colorspace (profile), ==, GCM_COLORSPACE_RGB);
+	g_assert_cmpint (gcm_profile_get_temperature (profile), ==, 6500);
+	g_assert (gcm_profile_get_has_vcgt (profile));
+
+	g_object_unref (profile);
+
+	/* create test */
+	profile = gcm_profile_new ();
+
+	/* from my T61 */
+	gcm_color_set_Yxy (&red, 1.0f, 0.569336f, 0.332031f);
+	gcm_color_set_Yxy (&green, 1.0f, 0.311523f, 0.543945f);
+	gcm_color_set_Yxy (&blue, 1.0f, 0.149414f, 0.131836f);
+	gcm_color_set_Yxy (&white, 1.0f, 0.313477f, 0.329102f);
+
+	/* create from chroma */
+	ret = gcm_profile_create_from_chroma (profile, 2.2f, &red, &green, &blue, &white, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	/* add vcgt */
+	ret = gcm_profile_guess_and_add_vcgt (profile, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	/* save */
+	gcm_profile_save (profile, "dave.icc", &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+	g_object_unref (profile);
+
+	/* verify values */
+	profile = gcm_profile_new ();
+	file = g_file_new_for_path ("dave.icc");
+	ret = gcm_profile_parse (profile, file, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	g_assert_cmpstr (gcm_profile_get_copyright (profile), ==, "No copyright, use freely");
+	g_assert_cmpstr (gcm_profile_get_manufacturer (profile), ==, NULL);
+	g_assert_cmpstr (gcm_profile_get_model (profile), ==, NULL);
+	g_assert_cmpstr (gcm_profile_get_description (profile), ==, "RGB built-in");
+	g_assert_cmpint (gcm_profile_get_kind (profile), ==, GCM_PROFILE_KIND_DISPLAY_DEVICE);
+	g_assert_cmpint (gcm_profile_get_colorspace (profile), ==, GCM_COLORSPACE_RGB);
+	g_assert_cmpint (gcm_profile_get_temperature (profile), ==, 5000);
+	g_assert (gcm_profile_get_has_vcgt (profile));
+
+	/* delete temp file */
+	ret = g_file_delete (file, NULL, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	g_object_unref (file);
+	g_object_unref (profile);
+}
+
+static void
+gcm_test_clut_func (void)
+{
+	GcmClut *clut;
+	GPtrArray *array;
+	const GcmClutData *data;
+
+	clut = gcm_clut_new ();
+	g_assert (clut != NULL);
+
+	/* set some initial properties */
+	g_object_set (clut,
+		      "size", 3,
+		      "contrast", 100.0f,
+		      "brightness", 0.0f,
+		      NULL);
+
+	array = gcm_clut_get_array (clut);
+	g_assert_cmpint (array->len, ==, 3);
+
+	data = g_ptr_array_index (array, 0);
+	g_assert_cmpint (data->red, ==, 0);
+	g_assert_cmpint (data->green, ==, 0);
+	g_assert_cmpint (data->blue, ==, 0);
+
+	data = g_ptr_array_index (array, 1);
+	g_assert_cmpint (data->red, ==, 32767);
+	g_assert_cmpint (data->green, ==, 32767);
+	g_assert_cmpint (data->blue, ==, 32767);
+
+	data = g_ptr_array_index (array, 2);
+	g_assert_cmpint (data->red, ==, 65535);
+	g_assert_cmpint (data->green, ==, 65535);
+	g_assert_cmpint (data->blue, ==, 65535);
+
+	g_ptr_array_unref (array);
+
+	/* set some initial properties */
+	g_object_set (clut,
+		      "contrast", 99.0f,
+		      "brightness", 0.0f,
+		      NULL);
+
+	array = gcm_clut_get_array (clut);
+	g_assert_cmpint (array->len, ==, 3);
+
+	data = g_ptr_array_index (array, 0);
+	g_assert_cmpint (data->red, ==, 0);
+	g_assert_cmpint (data->green, ==, 0);
+	g_assert_cmpint (data->blue, ==, 0);
+	data = g_ptr_array_index (array, 1);
+	g_assert_cmpint (data->red, ==, 32439);
+	g_assert_cmpint (data->green, ==, 32439);
+	g_assert_cmpint (data->blue, ==, 32439);
+	data = g_ptr_array_index (array, 2);
+	g_assert_cmpint (data->red, ==, 64879);
+	g_assert_cmpint (data->green, ==, 64879);
+	g_assert_cmpint (data->blue, ==, 64879);
+
+	g_ptr_array_unref (array);
+
+	/* set some initial properties */
+	g_object_set (clut,
+		      "contrast", 100.0f,
+		      "brightness", 1.0f,
+		      NULL);
+
+	array = gcm_clut_get_array (clut);
+	g_assert_cmpint (array->len, ==, 3);
+
+	data = g_ptr_array_index (array, 0);
+	g_assert_cmpint (data->red, ==, 655);
+	g_assert_cmpint (data->green, ==, 655);
+	g_assert_cmpint (data->blue, ==, 655);
+	data = g_ptr_array_index (array, 1);
+	g_assert_cmpint (data->red, ==, 33094);
+	g_assert_cmpint (data->green, ==, 33094);
+	g_assert_cmpint (data->blue, ==, 33094);
+	data = g_ptr_array_index (array, 2);
+	g_assert_cmpint (data->red, ==, 65535);
+	g_assert_cmpint (data->green, ==, 65535);
+	g_assert_cmpint (data->blue, ==, 65535);
+
+	g_ptr_array_unref (array);
+
+	g_object_unref (clut);
+}
+
+static void
+gcm_test_dmi_func (void)
+{
+	GcmDmi *dmi;
+
+	dmi = gcm_dmi_new ();
+	g_assert (dmi != NULL);
+	g_assert (gcm_dmi_get_name (dmi) != NULL);
+//	g_assert (gcm_dmi_get_version (dmi) != NULL);
+	g_assert (gcm_dmi_get_vendor (dmi) != NULL);
+	g_object_unref (dmi);
+}
+
+static void
+gcm_test_xyz_func (void)
+{
+	GcmColorXYZ *xyz;
+	GcmColorYxy yxy;
+
+	xyz = gcm_color_new_XYZ ();
+	g_assert (xyz != NULL);
+
+	/* nothing set */
+	gcm_color_convert_XYZ_to_Yxy (xyz, &yxy);
+	g_assert_cmpfloat (fabs (yxy.x - 0.0f), <, 0.001f);
+
+	/* set dummy values */
+	gcm_color_set_XYZ (xyz, 0.125, 0.25, 0.5);
+	gcm_color_convert_XYZ_to_Yxy (xyz, &yxy);
+
+	g_assert_cmpfloat (fabs (yxy.x - 0.142857143f), <, 0.001f);
+	g_assert_cmpfloat (fabs (yxy.y - 0.285714286f), <, 0.001f);
+
+	gcm_color_free_XYZ (xyz);
+}
+
+static void
+gcm_test_profile_store_func (void)
+{
+	GcmProfileStore *store;
+	GPtrArray *array;
+	GcmProfile *profile;
+	gboolean ret;
+
+	store = gcm_profile_store_new ();
+	g_assert (store != NULL);
+
+	/* add test files */
+	ret = gcm_profile_store_search_path (store, TESTDATADIR "/.");
+	g_assert (ret);
+
+	/* profile does not exist */
+	profile = gcm_profile_store_get_by_filename (store, "xxxxxxxxx");
+	g_assert (profile == NULL);
+
+	/* profile does exist */
+	profile = gcm_profile_store_get_by_checksum (store, "8e2aed5dac6f8b5d8da75610a65b7f27");
+	g_assert (profile != NULL);
+	g_assert_cmpstr (gcm_profile_get_checksum (profile), ==, "8e2aed5dac6f8b5d8da75610a65b7f27");
+	g_object_unref (profile);
+
+	/* get array of profiles */
+	array = gcm_profile_store_get_array (store);
+	g_assert (array != NULL);
+	g_assert_cmpint (array->len, ==, 3);
+	g_ptr_array_unref (array);
+
+	g_object_unref (store);
+}
+
+static void
+gcm_test_brightness_func (void)
+{
+	GcmBrightness *brightness;
+	gboolean ret;
+	GError *error = NULL;
+	guint orig_percentage;
+	guint percentage;
+
+	brightness = gcm_brightness_new ();
+	g_assert (brightness != NULL);
+
+	ret = gcm_brightness_get_percentage (brightness, &orig_percentage, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	ret = gcm_brightness_set_percentage (brightness, 10, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	ret = gcm_brightness_get_percentage (brightness, &percentage, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+	g_assert_cmpint (percentage, >, 5);
+	g_assert_cmpint (percentage, <, 15);
+
+	ret = gcm_brightness_set_percentage (brightness, orig_percentage, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	g_object_unref (brightness);
+}
+
+static void
+gcm_test_image_func (void)
+{
+	GcmImage *image;
+	GtkWidget *image_test;
+	GtkWidget *dialog;
+	GtkWidget *vbox;
+	gint response;
+	gboolean ret;
+	GcmProfile *profile;
+	GFile *file;
+
+	image = gcm_image_new ();
+	g_assert (image != NULL);
+
+	gtk_image_set_from_file (GTK_IMAGE(image), TESTDATADIR "/image-widget.png");
+
+	/* show in a dialog as an example */
+	dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_QUESTION, GTK_BUTTONS_YES_NO, "Does color-corrected image match\nthe picture below?");
+	image_test = gtk_image_new_from_file (TESTDATADIR "/image-widget-good.png");
+	vbox = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
+	gtk_box_pack_end (GTK_BOX(vbox), GTK_WIDGET(image), TRUE, TRUE, 12);
+	gtk_box_pack_end (GTK_BOX(vbox), image_test, TRUE, TRUE, 12);
+	gtk_widget_set_size_request (GTK_WIDGET(image), 300, 300);
+	gtk_window_set_resizable (GTK_WINDOW (dialog), TRUE);
+	gtk_widget_show (GTK_WIDGET(image));
+	gtk_widget_show (image_test);
+
+	g_object_set (image,
+		      "use-embedded-profile", TRUE,
+		      "output-profile", NULL,
+		      NULL);
+
+	response = gtk_dialog_run (GTK_DIALOG (dialog));
+	g_assert ((response == GTK_RESPONSE_YES));
+
+	gtk_image_set_from_file (GTK_IMAGE(image_test), TESTDATADIR "/image-widget-nonembed.png");
+	g_object_set (image,
+		      "use-embedded-profile", FALSE,
+		      NULL);
+
+	response = gtk_dialog_run (GTK_DIALOG (dialog));
+	g_assert ((response == GTK_RESPONSE_YES));
+
+	gtk_image_set_from_file (GTK_IMAGE(image_test), TESTDATADIR "/image-widget-output.png");
+	g_object_set (image,
+		      "use-embedded-profile", TRUE,
+		      NULL);
+
+	/* get test file */
+	profile = gcm_profile_new ();
+	file = g_file_new_for_path (TESTDATADIR "/ibm-t61.icc");
+	ret = gcm_profile_parse (profile, file, NULL);
+	g_object_unref (file);
+	g_assert (ret);
+	gcm_image_set_output_profile (image, profile);
+	g_object_unref (profile);
+
+	response = gtk_dialog_run (GTK_DIALOG (dialog));
+	g_assert ((response == GTK_RESPONSE_YES));
+
+	gtk_widget_destroy (dialog);
+}
+
+static void
+gcm_test_usb_func (void)
+{
+	GcmUsb *usb;
+	gboolean ret;
+	GError *error = NULL;
+
+	usb = gcm_usb_new ();
+	g_assert (usb != NULL);
+	g_assert (!gcm_usb_get_connected (usb));
+	g_assert (gcm_usb_get_device_handle (usb) == NULL);
+
+	/* try to load */
+	ret = gcm_usb_load (usb, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	/* attach to the default mainloop */
+	gcm_usb_attach_to_context (usb, NULL);
+
+	/* connect to a non-existant device */
+	ret = gcm_usb_connect (usb, 0xffff, 0xffff, 0x1, 0x1, &error);
+	g_assert (!ret);
+	g_assert_error (error, GCM_USB_ERROR, GCM_USB_ERROR_INTERNAL);
+	g_error_free (error);
+
+	g_object_unref (usb);
+}
+
+static void
+gcm_test_buffer_func (void)
+{
+	guchar buffer[4];
+
+	gcm_buffer_write_uint16_be (buffer, 255);
+	g_assert_cmpint (buffer[0], ==, 0x00);
+	g_assert_cmpint (buffer[1], ==, 0xff);
+	g_assert_cmpint (gcm_buffer_read_uint16_be (buffer), ==, 255);
+
+	gcm_buffer_write_uint16_le (buffer, 8192);
+	g_assert_cmpint (buffer[0], ==, 0x00);
+	g_assert_cmpint (buffer[1], ==, 0x20);
+	g_assert_cmpint (gcm_buffer_read_uint16_le (buffer), ==, 8192);
+}
+
+static void
+gcm_test_x11_func (void)
+{
+	GcmX11Screen *screen;
+	GcmX11Output *output;
+	guint x, y;
+	guint width, height;
+	GError *error = NULL;
+	gboolean ret;
+
+	/* new object */
+	screen = gcm_x11_screen_new ();
+	ret = gcm_x11_screen_assign (screen, NULL, &error);
+	g_assert_no_error (error);
+	g_assert (ret);
+
+	/* get object */
+	output = gcm_x11_screen_get_output_by_name (screen, TEST_MAIN_OUTPUT, &error);
+	g_assert_no_error (error);
+	g_assert (output != NULL);
+
+	/* check parameters */
+	gcm_x11_output_get_position (output, &x, &y);
+//	g_assert_cmpint (x, ==, 0);
+	g_assert_cmpint (y, ==, 0);
+	gcm_x11_output_get_size (output, &width, &height);
+	g_assert_cmpint (width, >, 0);
+	g_assert_cmpint (height, >, 0);
+	g_assert (gcm_x11_output_get_connected (output));
+
+	g_object_unref (output);
+	g_object_unref (screen);
+}
+
+static gboolean
+gcm_test_sample_window_loop_cb (GMainLoop *loop)
+{
+	g_main_loop_quit (loop);
+	return FALSE;
+}
+
+static void
+gcm_test_sample_window_move_window (GtkWindow *window, const gchar *output_name)
+{
+	GcmX11Screen *screen;
+	GcmX11Output *output;
+	guint x, y;
+	guint width, height;
+	gint window_width, window_height;
+	GError *error = NULL;
+	gboolean ret;
+
+	/* get new screen */
+	screen = gcm_x11_screen_new ();
+	ret = gcm_x11_screen_assign (screen, NULL, &error);
+	if (!ret) {
+		g_warning ("failed to assign screen: %s", error->message);
+		g_error_free (error);
+		goto out;
+	}
+
+	/* get output */
+	output = gcm_x11_screen_get_output_by_name (screen, output_name, &error);
+	if (output == NULL) {
+		g_warning ("failed to get output: %s", error->message);
+		g_error_free (error);
+		goto out;
+	}
+
+	/* center the window on this output */
+	gcm_x11_output_get_position (output, &x, &y);
+	gcm_x11_output_get_size (output, &width, &height);
+	gtk_window_get_size (window, &window_width, &window_height);
+	gtk_window_move (window, x + ((width - window_width) / 2), y + ((height - window_height) / 2));
+out:
+	if (output != NULL)
+		g_object_unref (output);
+	g_object_unref (screen);
+}
+
+static void
+gcm_test_sample_window_func (void)
+{
+	GtkWindow *window;
+	GMainLoop *loop;
+	GcmColorRGB source;
+
+	window = gcm_sample_window_new ();
+	g_assert (window != NULL);
+	source.R = 1.0f;
+	source.G = 1.0f;
+	source.B = 0.0f;
+	gcm_sample_window_set_color (GCM_SAMPLE_WINDOW (window), &source);
+	gcm_sample_window_set_percentage (GCM_SAMPLE_WINDOW (window), GCM_SAMPLE_WINDOW_PERCENTAGE_PULSE);
+
+	/* move to the center of device lvds1 */
+	gcm_test_sample_window_move_window (window, TEST_MAIN_OUTPUT);
+	gtk_window_present (window);
+
+	loop = g_main_loop_new (NULL, FALSE);
+	g_timeout_add_seconds (2, (GSourceFunc) gcm_test_sample_window_loop_cb, loop);
+	g_main_loop_run (loop);
+
+	g_main_loop_unref (loop);
+	gtk_widget_destroy (GTK_WIDGET (window));
+}
+
 static void
 gcm_test_calibrate_func (void)
 {
@@ -355,7 +1147,7 @@ gcm_test_device_func (void)
 	GcmX11Screen *screen;
 	GcmX11Output *output;
 
-	device = gcm_device_udev_new ();
+	device = gcm_device_xrandr_new ();
 	g_assert (device != NULL);
 
 	/* connect to the changed signal */
@@ -785,7 +1577,7 @@ gcm_test_client_func (void)
 	g_assert (GCM_IS_DEVICE_XRANDR (device));
 	g_ptr_array_unref (array);
 
-	device = gcm_device_udev_new ();
+	device = gcm_device_xrandr_new ();
 	gcm_device_set_id (device, "xrandr_goldstar");
 	gcm_device_set_title (device, "Slightly different");
 	gcm_device_set_connected (device, TRUE);
@@ -802,7 +1594,6 @@ gcm_test_client_func (void)
 	gcm_test_assert_basename (gcm_device_get_default_profile_filename (device), TESTDATADIR "/bluish.icc");
 	g_assert (gcm_device_get_saved (device));
 	g_assert (gcm_device_get_connected (device));
-	g_assert (GCM_IS_DEVICE_UDEV (device));
 	g_ptr_array_unref (array);
 
 	/* delete */
@@ -846,6 +1637,23 @@ main (int argc, char **argv)
 	g_test_add_func ("/color/utils", gcm_test_utils_func);
 	g_test_add_func ("/color/device", gcm_test_device_func);
 	g_test_add_func ("/color/calibrate_dialog", gcm_test_calibrate_dialog_func);
+	g_test_add_func ("/color/math", gcm_test_math_func);
+	g_test_add_func ("/color/sensor", gcm_test_sensor_func);
+	g_test_add_func ("/color/edid", gcm_test_edid_func);
+	g_test_add_func ("/color/tables", gcm_test_tables_func);
+	g_test_add_func ("/color/profile", gcm_test_profile_func);
+	g_test_add_func ("/color/clut", gcm_test_clut_func);
+	g_test_add_func ("/color/xyz", gcm_test_xyz_func);
+	g_test_add_func ("/color/dmi", gcm_test_dmi_func);
+	g_test_add_func ("/color/x11", gcm_test_x11_func);
+	g_test_add_func ("/color/profile_store", gcm_test_profile_store_func);
+	g_test_add_func ("/color/buffer", gcm_test_buffer_func);
+	g_test_add_func ("/color/sample-window", gcm_test_sample_window_func);
+	g_test_add_func ("/color/usb", gcm_test_usb_func);
+	if (g_test_thorough ()) {
+		g_test_add_func ("/color/brightness", gcm_test_brightness_func);
+		g_test_add_func ("/color/image", gcm_test_image_func);
+	}
 	if (g_test_thorough ()) {
 		g_test_add_func ("/color/calibrate_native", gcm_test_calibrate_native_func);
 		g_test_add_func ("/color/trc", gcm_test_trc_widget_func);
diff --git a/libcolor-glib/gcm-sensor-client.c b/src/gcm-sensor-client.c
similarity index 98%
rename from libcolor-glib/gcm-sensor-client.c
rename to src/gcm-sensor-client.c
index af043a9..3dc96e5 100644
--- a/libcolor-glib/gcm-sensor-client.c
+++ b/src/gcm-sensor-client.c
@@ -121,8 +121,6 @@ gcm_sensor_client_class_init (GcmSensorClientClass *klass)
 
 	/**
 	 * GcmSensorClient::changed:
-	 *
-	 * Since: 2.91.1
 	 **/
 	signals[SIGNAL_CHANGED] =
 		g_signal_new ("changed",
@@ -136,8 +134,6 @@ gcm_sensor_client_class_init (GcmSensorClientClass *klass)
 
 /**
  * gcm_sensor_client_get_sensor:
- *
- * Since: 2.91.1
  **/
 GcmSensor *
 gcm_sensor_client_get_sensor (GcmSensorClient *sensor_client)
@@ -147,8 +143,6 @@ gcm_sensor_client_get_sensor (GcmSensorClient *sensor_client)
 
 /**
  * gcm_sensor_client_get_present:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_client_get_present (GcmSensorClient *sensor_client)
@@ -309,8 +303,6 @@ gcm_sensor_client_finalize (GObject *object)
  * gcm_sensor_client_new:
  *
  * Return value: a new GcmSensorClient object.
- *
- * Since: 2.91.1
  **/
 GcmSensorClient *
 gcm_sensor_client_new (void)
diff --git a/libcolor-glib/gcm-sensor-client.h b/src/gcm-sensor-client.h
similarity index 100%
rename from libcolor-glib/gcm-sensor-client.h
rename to src/gcm-sensor-client.h
diff --git a/libcolor-glib/gcm-sensor-colormunki-private.c b/src/gcm-sensor-colormunki-private.c
similarity index 96%
rename from libcolor-glib/gcm-sensor-colormunki-private.c
rename to src/gcm-sensor-colormunki-private.c
index c98fc26..1ed27b1 100644
--- a/libcolor-glib/gcm-sensor-colormunki-private.c
+++ b/src/gcm-sensor-colormunki-private.c
@@ -27,8 +27,6 @@
 
 /**
  * gcm_sensor_colormunki_command_value_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_colormunki_command_value_to_string (guchar value)
@@ -44,8 +42,6 @@ gcm_sensor_colormunki_command_value_to_string (guchar value)
 
 /**
  * gcm_sensor_colormunki_button_state_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_colormunki_button_state_to_string (guchar value)
@@ -59,8 +55,6 @@ gcm_sensor_colormunki_button_state_to_string (guchar value)
 
 /**
  * gcm_sensor_colormunki_dial_position_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_colormunki_dial_position_to_string (guchar value)
@@ -78,8 +72,6 @@ gcm_sensor_colormunki_dial_position_to_string (guchar value)
 
 /**
  * gcm_sensor_colormunki_endpoint_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_colormunki_endpoint_to_string (guint value)
diff --git a/libcolor-glib/gcm-sensor-colormunki-private.h b/src/gcm-sensor-colormunki-private.h
similarity index 96%
rename from libcolor-glib/gcm-sensor-colormunki-private.h
rename to src/gcm-sensor-colormunki-private.h
index 26fa543..b61fa01 100644
--- a/libcolor-glib/gcm-sensor-colormunki-private.h
+++ b/src/gcm-sensor-colormunki-private.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#if !defined (LIBCOLOR_GLIB_COMPILATION) && !defined (GCM_I_KNOW_THIS_IS_PRIVATE)
-#error "This header file is for internal use only."
-#endif
-
 #ifndef __GCM_SENSOR_COLORMUNKI_PRIVATE_H
 #define __GCM_SENSOR_COLORMUNKI_PRIVATE_H
 
diff --git a/libcolor-glib/gcm-sensor-colormunki.c b/src/gcm-sensor-colormunki.c
similarity index 99%
rename from libcolor-glib/gcm-sensor-colormunki.c
rename to src/gcm-sensor-colormunki.c
index 97d9ff8..37dafd0 100644
--- a/libcolor-glib/gcm-sensor-colormunki.c
+++ b/src/gcm-sensor-colormunki.c
@@ -30,8 +30,10 @@
 
 #include <glib-object.h>
 #include <libusb-1.0/libusb.h>
-#include <libcolor-glib.h>
 
+#include "gcm-usb.h"
+#include "gcm-compat.h"
+#include "gcm-buffer.h"
 #include "gcm-sensor-colormunki.h"
 #include "gcm-sensor-colormunki-private.h"
 
@@ -537,8 +539,6 @@ gcm_sensor_colormunki_finalize (GObject *object)
  * gcm_sensor_colormunki_new:
  *
  * Return value: a new #GcmSensor object.
- *
- * Since: 2.91.1
  **/
 GcmSensor *
 gcm_sensor_colormunki_new (void)
diff --git a/libcolor-glib/gcm-sensor-colormunki.h b/src/gcm-sensor-colormunki.h
similarity index 100%
rename from libcolor-glib/gcm-sensor-colormunki.h
rename to src/gcm-sensor-colormunki.h
diff --git a/libcolor-glib/gcm-sensor-dummy.c b/src/gcm-sensor-dummy.c
similarity index 99%
rename from libcolor-glib/gcm-sensor-dummy.c
rename to src/gcm-sensor-dummy.c
index bc94167..586577f 100644
--- a/libcolor-glib/gcm-sensor-dummy.c
+++ b/src/gcm-sensor-dummy.c
@@ -259,8 +259,6 @@ gcm_sensor_dummy_init (GcmSensorDummy *sensor)
  * gcm_sensor_dummy_new:
  *
  * Return value: a new #GcmSensor object.
- *
- * Since: 2.91.1
  **/
 GcmSensor *
 gcm_sensor_dummy_new (void)
diff --git a/libcolor-glib/gcm-sensor-dummy.h b/src/gcm-sensor-dummy.h
similarity index 100%
rename from libcolor-glib/gcm-sensor-dummy.h
rename to src/gcm-sensor-dummy.h
diff --git a/libcolor-glib/gcm-sensor-huey-private.c b/src/gcm-sensor-huey-private.c
similarity index 98%
rename from libcolor-glib/gcm-sensor-huey-private.c
rename to src/gcm-sensor-huey-private.c
index 96b5c1b..663f3ca 100644
--- a/libcolor-glib/gcm-sensor-huey-private.c
+++ b/src/gcm-sensor-huey-private.c
@@ -27,8 +27,6 @@
 
 /**
  * gcm_sensor_huey_return_code_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_huey_return_code_to_string (guchar value)
@@ -50,8 +48,6 @@ gcm_sensor_huey_return_code_to_string (guchar value)
 
 /**
  * gcm_sensor_huey_command_code_to_string:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_huey_command_code_to_string (guchar value)
diff --git a/libcolor-glib/gcm-sensor-huey-private.h b/src/gcm-sensor-huey-private.h
similarity index 98%
rename from libcolor-glib/gcm-sensor-huey-private.h
rename to src/gcm-sensor-huey-private.h
index e5d5c64..47a01ad 100644
--- a/libcolor-glib/gcm-sensor-huey-private.h
+++ b/src/gcm-sensor-huey-private.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#if !defined (LIBCOLOR_GLIB_COMPILATION) && !defined (GCM_I_KNOW_THIS_IS_PRIVATE)
-#error "This header file is for internal use only."
-#endif
-
 #ifndef __GCM_SENSOR_HUEY_PRIVATE_H
 #define __GCM_SENSOR_HUEY_PRIVATE_H
 
diff --git a/libcolor-glib/gcm-sensor-huey.c b/src/gcm-sensor-huey.c
similarity index 99%
rename from libcolor-glib/gcm-sensor-huey.c
rename to src/gcm-sensor-huey.c
index dd0bc19..4b1ebf9 100644
--- a/libcolor-glib/gcm-sensor-huey.c
+++ b/src/gcm-sensor-huey.c
@@ -1138,8 +1138,6 @@ gcm_sensor_huey_finalize (GObject *object)
  * gcm_sensor_huey_new:
  *
  * Return value: a new #GcmSensor object.
- *
- * Since: 2.91.1
  **/
 GcmSensor *
 gcm_sensor_huey_new (void)
diff --git a/libcolor-glib/gcm-sensor-huey.h b/src/gcm-sensor-huey.h
similarity index 93%
rename from libcolor-glib/gcm-sensor-huey.h
rename to src/gcm-sensor-huey.h
index 70c1306..4e4d535 100644
--- a/libcolor-glib/gcm-sensor-huey.h
+++ b/src/gcm-sensor-huey.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_SENSOR_HUEY_H
 #define __GCM_SENSOR_HUEY_H
 
diff --git a/libcolor-glib/gcm-sensor.c b/src/gcm-sensor.c
similarity index 97%
rename from libcolor-glib/gcm-sensor.c
rename to src/gcm-sensor.c
index d9a2587..a4d880a 100644
--- a/libcolor-glib/gcm-sensor.c
+++ b/src/gcm-sensor.c
@@ -99,8 +99,6 @@ G_DEFINE_TYPE (GcmSensor, gcm_sensor, G_TYPE_OBJECT)
 
 /**
  * gcm_sensor_get_image_display:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_get_image_display (GcmSensor *sensor)
@@ -110,8 +108,6 @@ gcm_sensor_get_image_display (GcmSensor *sensor)
 
 /**
  * gcm_sensor_get_image_calibrate:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_get_image_calibrate (GcmSensor *sensor)
@@ -121,8 +117,6 @@ gcm_sensor_get_image_calibrate (GcmSensor *sensor)
 
 /**
  * gcm_sensor_get_image_spotread:
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_get_image_spotread (GcmSensor *sensor)
@@ -134,8 +128,6 @@ gcm_sensor_get_image_spotread (GcmSensor *sensor)
  * gcm_sensor_button_pressed:
  *
  * Causes the ::button-pressed signal to be fired.
- *
- * Since: 2.91.1
  **/
 void
 gcm_sensor_button_pressed (GcmSensor *sensor)
@@ -151,8 +143,6 @@ gcm_sensor_button_pressed (GcmSensor *sensor)
  *
  * Sets the sensor serial number which can be used to uniquely identify
  * the device.
- *
- * Since: 2.91.1
  **/
 void
 gcm_sensor_set_serial_number (GcmSensor *sensor, const gchar *serial_number)
@@ -168,8 +158,6 @@ gcm_sensor_set_serial_number (GcmSensor *sensor, const gchar *serial_number)
  * Gets the sensor serial number.
  *
  * Return value: a string.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_get_serial_number (GcmSensor *sensor)
@@ -183,8 +171,6 @@ gcm_sensor_get_serial_number (GcmSensor *sensor)
  * @state: the sensor state, e.g %GCM_SENSOR_STATE_IDLE
  *
  * Sets the device state.
- *
- * Since: 2.91.1
  **/
 void
 gcm_sensor_set_state (GcmSensor *sensor, GcmSensorState state)
@@ -199,8 +185,6 @@ gcm_sensor_set_state (GcmSensor *sensor, GcmSensorState state)
  * Gets if the sensor is state taking a measurement.
  *
  * Return value: %TRUE for state.
- *
- * Since: 2.91.1
  **/
 GcmSensorState
 gcm_sensor_get_state (GcmSensor *sensor)
@@ -215,8 +199,6 @@ gcm_sensor_get_state (GcmSensor *sensor)
  * Gets the sensor model.
  *
  * Return value: a string.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_get_model (GcmSensor *sensor)
@@ -231,8 +213,6 @@ gcm_sensor_get_model (GcmSensor *sensor)
  * Gets the sensor vendor.
  *
  * Return value: a string.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_get_vendor (GcmSensor *sensor)
@@ -247,8 +227,6 @@ gcm_sensor_get_vendor (GcmSensor *sensor)
  * Returns if the sensor supports profiling a display.
  *
  * Return value: %TRUE or %FALSE.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_supports_display (GcmSensor *sensor)
@@ -263,8 +241,6 @@ gcm_sensor_supports_display (GcmSensor *sensor)
  * Returns if the sensor supports profiling a projector.
  *
  * Return value: %TRUE or %FALSE.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_supports_projector (GcmSensor *sensor)
@@ -279,8 +255,6 @@ gcm_sensor_supports_projector (GcmSensor *sensor)
  * Returns if the sensor supports profiling a printer.
  *
  * Return value: %TRUE or %FALSE.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_supports_printer (GcmSensor *sensor)
@@ -295,8 +269,6 @@ gcm_sensor_supports_printer (GcmSensor *sensor)
  * Returns if the sensor supports getting a spot color.
  *
  * Return value: %TRUE or %FALSE.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_supports_spot (GcmSensor *sensor)
@@ -311,8 +283,6 @@ gcm_sensor_supports_spot (GcmSensor *sensor)
  * Returns the sensor kind.
  *
  * Return value: the sensor kind, e.g. %GCM_SENSOR_KIND_HUEY
- *
- * Since: 2.91.1
  **/
 GcmSensorKind
 gcm_sensor_get_kind (GcmSensor *sensor)
@@ -327,8 +297,6 @@ gcm_sensor_get_kind (GcmSensor *sensor)
  *
  * Set the output type. Different sensors may do different
  * things depending on the output type.
- *
- * Since: 2.91.1
  **/
 void
 gcm_sensor_set_output_type (GcmSensor *sensor, GcmSensorOutputType output_type)
@@ -344,8 +312,6 @@ gcm_sensor_set_output_type (GcmSensor *sensor, GcmSensorOutputType output_type)
  * things depending on the output type.
  *
  * Return value: the output type, e.g. %GCM_SENSOR_OUTPUT_TYPE_LCD
- *
- * Since: 2.91.1
  **/
 GcmSensorOutputType
 gcm_sensor_get_output_type (GcmSensor *sensor)
@@ -362,8 +328,6 @@ gcm_sensor_get_output_type (GcmSensor *sensor)
  * internally without calling out to other frameworks.
  *
  * Return value: %TRUE for internal, native, support.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_is_native (GcmSensor *sensor)
@@ -381,8 +345,6 @@ gcm_sensor_is_native (GcmSensor *sensor)
  * We aim to get as much as possible from UDEV.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_set_from_device (GcmSensor *sensor, GUdevDevice *device, GError **error)
@@ -429,8 +391,6 @@ gcm_sensor_set_from_device (GcmSensor *sensor, GUdevDevice *device, GError **err
  * @user_data: the data to pass to @callback
  *
  * Sample the color and store as a XYZ value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_sensor_sample_async (GcmSensor *sensor, GCancellable *cancellable,
@@ -471,8 +431,6 @@ out:
  * Gets the result from the asynchronous function.
  *
  * Return value: %FALSE for an error
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_sample_finish (GcmSensor *sensor, GAsyncResult *res, GcmColorXYZ *value, GError **error)
@@ -489,8 +447,6 @@ gcm_sensor_sample_finish (GcmSensor *sensor, GAsyncResult *res, GcmColorXYZ *val
  * @user_data: the data to pass to @callback
  *
  * Asks the hardware to get the ambient light value.
- *
- * Since: 2.91.1
  **/
 void
 gcm_sensor_get_ambient_async (GcmSensor	 *sensor, GCancellable *cancellable,
@@ -531,8 +487,6 @@ out:
  * Gets the result from the asynchronous function.
  *
  * Return value: %FALSE for an error
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_get_ambient_finish (GcmSensor *sensor, GAsyncResult *res, gdouble *value, GError **error)
@@ -550,8 +504,6 @@ gcm_sensor_get_ambient_finish (GcmSensor *sensor, GAsyncResult *res, gdouble *va
  * Dumps the unstructured device data to a string.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_dump (GcmSensor *sensor, GString *data, GError **error)
@@ -594,8 +546,6 @@ out:
  * Sets the LED output state for the device.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_set_leds (GcmSensor *sensor, guint8 value, GError **error)
@@ -625,8 +575,6 @@ out:
  * Gets the sensor kind as a string.
  *
  * Return value: the sensor kind, e.g. 'huey'.
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_sensor_kind_to_string (GcmSensorKind sensor_kind)
@@ -663,8 +611,6 @@ gcm_sensor_kind_to_string (GcmSensorKind sensor_kind)
  * Gets the sensor kind as a enumerated value.
  *
  * Return value: a #GcmSensorKind
- *
- * Since: 2.91.1
  **/
 GcmSensorKind
 gcm_sensor_kind_from_string (const gchar *sensor_kind)
@@ -717,8 +663,6 @@ gcm_sensor_sample_sync_cb (GcmSensor *sensor, GAsyncResult *res, GcmSensorHelper
  * applications.
  *
  * Return value: %TRUE if the ambient value was obtained.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_sample (GcmSensor *sensor, GCancellable *cancellable, GcmColorXYZ *value, GError **error)
@@ -774,8 +718,6 @@ gcm_sensor_get_ambient_sync_cb (GcmSensor *sensor, GAsyncResult *res, GcmSensorH
  * applications.
  *
  * Return value: %TRUE if the ambient value was obtained.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_sensor_get_ambient (GcmSensor *sensor, GCancellable *cancellable, gdouble *value, GError **error)
@@ -1027,8 +969,6 @@ gcm_sensor_class_init (GcmSensorClass *klass)
 
 	/**
 	 * GcmSensor::button-pressed:
-	 *
-	 * Since: 2.91.1
 	 **/
 	signals[SIGNAL_BUTTON_PRESSED] =
 		g_signal_new ("button-pressed",
@@ -1075,8 +1015,6 @@ gcm_sensor_finalize (GObject *object)
  * gcm_sensor_new:
  *
  * Return value: a new #GcmSensor object.
- *
- * Since: 2.91.1
  **/
 GcmSensor *
 gcm_sensor_new (void)
diff --git a/libcolor-glib/gcm-sensor.h b/src/gcm-sensor.h
similarity index 97%
rename from libcolor-glib/gcm-sensor.h
rename to src/gcm-sensor.h
index 78072c2..d017283 100644
--- a/libcolor-glib/gcm-sensor.h
+++ b/src/gcm-sensor.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301 USA
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_SENSOR_H
 #define __GCM_SENSOR_H
 
diff --git a/libcolor-glib/gcm-tables.c b/src/gcm-tables.c
similarity index 99%
rename from libcolor-glib/gcm-tables.c
rename to src/gcm-tables.c
index b320bfa..f549130 100644
--- a/libcolor-glib/gcm-tables.c
+++ b/src/gcm-tables.c
@@ -59,8 +59,6 @@ G_DEFINE_TYPE (GcmTables, gcm_tables, G_TYPE_OBJECT)
 
 /**
  * gcm_tables_get_pnp_id:
- *
- * Since: 2.91.1
  **/
 gchar *
 gcm_tables_get_pnp_id (GcmTables *tables, const gchar *pnp_id, GError **error)
@@ -252,8 +250,6 @@ gcm_tables_finalize (GObject *object)
  * gcm_tables_new:
  *
  * Return value: a new GcmTables object.
- *
- * Since: 2.91.1
  **/
 GcmTables *
 gcm_tables_new (void)
diff --git a/libcolor-glib/gcm-tables.h b/src/gcm-tables.h
similarity index 93%
rename from libcolor-glib/gcm-tables.h
rename to src/gcm-tables.h
index b3d30b7..3d6cd35 100644
--- a/libcolor-glib/gcm-tables.h
+++ b/src/gcm-tables.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_TABLES_H
 #define __GCM_TABLES_H
 
diff --git a/libcolor-glib/gcm-usb.c b/src/gcm-usb.c
similarity index 99%
rename from libcolor-glib/gcm-usb.c
rename to src/gcm-usb.c
index 424cd30..3e91fc8 100644
--- a/libcolor-glib/gcm-usb.c
+++ b/src/gcm-usb.c
@@ -67,8 +67,6 @@ G_DEFINE_TYPE (GcmUsb, gcm_usb, G_TYPE_OBJECT)
 
 /**
  * gcm_usb_get_connected:
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_usb_get_connected (GcmUsb *usb)
@@ -281,8 +279,6 @@ static GSourceFuncs gcm_usb_source_funcs = {
  * Connects up usb-1 with the GLib event loop. This functionality
  * allows you to submit async requests using usb, and the callbacks
  * just kinda happen at the right time.
- *
- * Since: 2.91.1
  **/
 void
 gcm_usb_attach_to_context (GcmUsb *usb, GMainContext *context)
@@ -327,8 +323,6 @@ gcm_usb_attach_to_context (GcmUsb *usb, GMainContext *context)
  * Connects to libusb. You normally don't have to call this method manually.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_usb_load (GcmUsb *usb, GError **error)
@@ -370,8 +364,6 @@ out:
  * Gets the low-level device handle
  *
  * Return value: The #libusb_device_handle or %NULL. Do not unref this value.
- *
- * Since: 2.91.1
  **/
 libusb_device_handle *
 gcm_usb_get_device_handle (GcmUsb *usb)
@@ -391,8 +383,6 @@ gcm_usb_get_device_handle (GcmUsb *usb)
  * Connects to a specific device.
  *
  * Return value: %TRUE for success
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_usb_connect (GcmUsb *usb, guint vendor_id, guint product_id, guint configuration, guint interface, GError **error)
@@ -536,8 +526,6 @@ gcm_usb_finalize (GObject *object)
  * gcm_usb_new:
  *
  * Return value: a new #GcmUsb object.
- *
- * Since: 2.91.1
  **/
 GcmUsb *
 gcm_usb_new (void)
diff --git a/libcolor-glib/gcm-usb.h b/src/gcm-usb.h
similarity index 100%
rename from libcolor-glib/gcm-usb.h
rename to src/gcm-usb.h
diff --git a/libcolor-glib/gcm-version.h.in b/src/gcm-version.h
similarity index 83%
rename from libcolor-glib/gcm-version.h.in
rename to src/gcm-version.h
index b58ffa9..f7723ed 100644
--- a/libcolor-glib/gcm-version.h.in
+++ b/src/gcm-version.h
@@ -26,18 +26,14 @@
  * Simple versioning helper macros.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_VERSION_H
 #define __GCM_VERSION_H
 
 /* compile time version
  */
-#define GCM_MAJOR_VERSION				(@GCM_MAJOR_VERSION@)
-#define GCM_MINOR_VERSION				(@GCM_MINOR_VERSION@)
-#define GCM_MICRO_VERSION				(@GCM_MICRO_VERSION@)
+#define GCM_MAJOR_VERSION				(2)
+#define GCM_MINOR_VERSION				(91)
+#define GCM_MICRO_VERSION				(6)
 
 /* check whether a gcm version equal to or greater than
  * major.minor.micro.
diff --git a/libcolor-glib/gcm-x11-output.c b/src/gcm-x11-output.c
similarity index 97%
rename from libcolor-glib/gcm-x11-output.c
rename to src/gcm-x11-output.c
index 9cc6b1f..5e04d44 100644
--- a/libcolor-glib/gcm-x11-output.c
+++ b/src/gcm-x11-output.c
@@ -76,8 +76,6 @@ G_DEFINE_TYPE (GcmX11Output, gcm_x11_output, G_TYPE_OBJECT)
  * @display: the #Display
  *
  * Sets the display.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_display (GcmX11Output *output, gpointer display)
@@ -93,8 +91,6 @@ gcm_x11_output_set_display (GcmX11Output *output, gpointer display)
  * @name: the display name, for instance "lvds"
  *
  * Sets the interal panel name.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_name (GcmX11Output *output, const gchar *name)
@@ -111,8 +107,6 @@ gcm_x11_output_set_name (GcmX11Output *output, const gchar *name)
  * Gets the panel name.
  *
  * Return value: the panel name
- *
- * Since: 2.91.1
  **/
 const gchar *
 gcm_x11_output_get_name (GcmX11Output *output)
@@ -127,8 +121,6 @@ gcm_x11_output_get_name (GcmX11Output *output)
  * @id: the xrandr ID for the output
  *
  * Sets the ID of the output.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_id (GcmX11Output *output, guint id)
@@ -144,8 +136,6 @@ gcm_x11_output_set_id (GcmX11Output *output, guint id)
  * @crtc_id: the CRCT id
  *
  * Sets the CRTC (specific control on an output) id.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_crtc_id (GcmX11Output *output, guint crtc_id)
@@ -161,8 +151,6 @@ gcm_x11_output_set_crtc_id (GcmX11Output *output, guint crtc_id)
  * @gamma_size: the size of the gamma ramp.
  *
  * Sets the size of the gamma ramp.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_gamma_size (GcmX11Output *output, guint gamma_size)
@@ -179,8 +167,6 @@ gcm_x11_output_set_gamma_size (GcmX11Output *output, guint gamma_size)
  * Gets the size of the gamma ramps.
  *
  * Return value: the size. This is normally 256 or 1024.
- *
- * Since: 2.91.1
  **/
 guint
 gcm_x11_output_get_gamma_size (GcmX11Output *output)
@@ -195,8 +181,6 @@ gcm_x11_output_get_gamma_size (GcmX11Output *output)
  * @primary: if the panel is the primary screen
  *
  * Sets if the panel is the most important primary screen.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_primary (GcmX11Output *output, gboolean primary)
@@ -214,8 +198,6 @@ gcm_x11_output_set_primary (GcmX11Output *output, gboolean primary)
  * There should only ever be one primary screen in a #GcmX11Screen.
  *
  * Return value: %TRUE for the primary screen.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_get_primary (GcmX11Output *output)
@@ -232,8 +214,6 @@ gcm_x11_output_get_primary (GcmX11Output *output)
  * Sets if the device is connected, i.e. has an actual physical device
  * plugged into the port.
  * NOTE: a device can be conncted even if it is powered off or in sleep mode.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_connected (GcmX11Output *output, gboolean connected)
@@ -251,8 +231,6 @@ gcm_x11_output_set_connected (GcmX11Output *output, gboolean connected)
  * to the #GcmX11Screen.
  *
  * Return value: if the device is connected.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_get_connected (GcmX11Output *output)
@@ -269,8 +247,6 @@ gcm_x11_output_get_connected (GcmX11Output *output)
  *
  * Sets the position of the display relative to the absolute size of all
  * the #GcmX11Output's.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_position (GcmX11Output *output, guint x, guint y)
@@ -288,8 +264,6 @@ gcm_x11_output_set_position (GcmX11Output *output, guint x, guint y)
  *
  * Gets the position of the panel relative to the absolute size of all
  * the #GcmX11Output's.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_get_position (GcmX11Output *output, guint *x, guint *y)
@@ -308,8 +282,6 @@ gcm_x11_output_get_position (GcmX11Output *output, guint *x, guint *y)
  * @height: the output height in pixels
  *
  * Sets the size of the output.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_set_size (GcmX11Output *output, guint width, guint height)
@@ -326,8 +298,6 @@ gcm_x11_output_set_size (GcmX11Output *output, guint width, guint height)
  * @height: the returned output height in pixels, or %NULL
  *
  * Gets the output size.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_output_get_size (GcmX11Output *output, guint *width, guint *height)
@@ -381,8 +351,6 @@ out:
  * Gets the EDID data for the output.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_get_edid_data (GcmX11Output *output, guint8 **data, gsize *length, GError **error)
@@ -431,8 +399,6 @@ out:
  * Sets the gamma ramps for the given output.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_set_gamma (GcmX11Output *output, guint length, guint16 *red, guint16 *green, guint16 *blue, GError **error)
@@ -486,8 +452,6 @@ gcm_x11_output_set_gamma (GcmX11Output *output, guint length, guint16 *red, guin
  * Gets the gamma ramps for the given output.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_get_gamma (GcmX11Output *output, guint *length, guint16 **red, guint16 **green, guint16 **blue, GError **error)
@@ -541,8 +505,6 @@ gcm_x11_output_get_gamma (GcmX11Output *output, guint *length, guint16 **red, gu
  * Gets the ICC profile data from the specified output.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_get_profile_data (GcmX11Output *output, guint8 **data, gsize *length, GError **error)
@@ -607,8 +569,6 @@ out:
  * Sets the ICC profile data to the specified output.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_set_profile (GcmX11Output *output, const gchar *filename, GError **error)
@@ -646,8 +606,6 @@ out:
  * Sets the ICC profile data to the specified output.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_set_profile_data (GcmX11Output *output, const guint8 *data, gsize length, GError **error)
@@ -690,8 +648,6 @@ out:
  * Sets the ICC profile data to the specified output.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_output_remove_profile (GcmX11Output *output, GError **error)
@@ -811,8 +767,6 @@ gcm_x11_output_finalize (GObject *object)
  * gcm_x11_output_new:
  *
  * Return value: a new GcmX11Output object.
- *
- * Since: 2.91.1
  **/
 GcmX11Output *
 gcm_x11_output_new (void)
diff --git a/libcolor-glib/gcm-x11-output.h b/src/gcm-x11-output.h
similarity index 96%
rename from libcolor-glib/gcm-x11-output.h
rename to src/gcm-x11-output.h
index 7d4446c..f587b48 100644
--- a/libcolor-glib/gcm-x11-output.h
+++ b/src/gcm-x11-output.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_X11_OUTPUT_H
 #define __GCM_X11_OUTPUT_H
 
diff --git a/libcolor-glib/gcm-x11-screen.c b/src/gcm-x11-screen.c
similarity index 98%
rename from libcolor-glib/gcm-x11-screen.c
rename to src/gcm-x11-screen.c
index 641d651..2ee4fba 100644
--- a/libcolor-glib/gcm-x11-screen.c
+++ b/src/gcm-x11-screen.c
@@ -194,8 +194,6 @@ out:
  * Assigns a #GdkScreen to this instance.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_screen_assign (GcmX11Screen *screen, GdkScreen *gdk_screen, GError **error)
@@ -277,8 +275,6 @@ out:
  * Gets the list of outputs.
  *
  * Return value: A #GPtrArray of #GcmX11Output's. Free with g_ptr_array_unref() when done.
- *
- * Since: 2.91.1
  **/
 GPtrArray *
 gcm_x11_screen_get_outputs (GcmX11Screen *screen, GError **error)
@@ -305,8 +301,6 @@ gcm_x11_screen_get_outputs (GcmX11Screen *screen, GError **error)
  * Gets a specified output.
  *
  * Return value: A #GcmX11Output, or %NULL if nothing matched.
- *
- * Since: 2.91.1
  **/
 GcmX11Output *
 gcm_x11_screen_get_output_by_name (GcmX11Screen *screen, const gchar *name, GError **error)
@@ -345,8 +339,6 @@ gcm_x11_screen_get_output_by_name (GcmX11Screen *screen, const gchar *name, GErr
  * Gets the ICC profile data from the XServer.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_screen_get_profile_data (GcmX11Screen *screen, guint8 **data, gsize *length, GError **error)
@@ -407,8 +399,6 @@ out:
  * Sets the ICC profile data to the XServer.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_screen_set_profile (GcmX11Screen *screen, const gchar *filename, GError **error)
@@ -446,8 +436,6 @@ out:
  * Sets the ICC profile data to the XServer.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_screen_set_profile_data (GcmX11Screen *screen, const guint8 *data, gsize length, GError **error)
@@ -493,8 +481,6 @@ out:
  * Sets the ICC Profiles in X supported version to the XServer.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_screen_set_protocol_version (GcmX11Screen *screen, guint major, guint minor, GError **error)
@@ -540,8 +526,6 @@ out:
  * Removes the ICC profile version data from the XServer.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_screen_remove_protocol_version (GcmX11Screen *screen, GError **error)
@@ -585,8 +569,6 @@ out:
  * Gets the ICC profile data from the XServer.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_screen_get_protocol_version (GcmX11Screen *screen, guint *major, guint *minor, GError **error)
@@ -644,8 +626,6 @@ out:
  * Removes the ICC profile data from the XServer.
  *
  * Return value: %TRUE for success.
- *
- * Since: 2.91.1
  **/
 gboolean
 gcm_x11_screen_remove_profile (GcmX11Screen *screen, GError **error)
@@ -686,8 +666,6 @@ out:
  * @minor: the returned XRandR version minor, or %NULL
  *
  * Gets the XRandR version from the server.
- *
- * Since: 2.91.1
  **/
 void
 gcm_x11_screen_get_randr_version (GcmX11Screen *screen, guint *major, guint *minor)
@@ -710,8 +688,6 @@ gcm_x11_screen_class_init (GcmX11ScreenClass *klass)
 
 	/**
 	 * GcmX11Screen::changed:
-	 *
-	 * Since: 2.91.1
 	 **/
 	signals[SIGNAL_CHANGED] =
 		g_signal_new ("changed",
@@ -752,8 +728,6 @@ gcm_x11_screen_finalize (GObject *object)
  * gcm_x11_screen_new:
  *
  * Return value: a new #GcmX11Screen object.
- *
- * Since: 2.91.1
  **/
 GcmX11Screen *
 gcm_x11_screen_new (void)
diff --git a/libcolor-glib/gcm-x11-screen.h b/src/gcm-x11-screen.h
similarity index 95%
rename from libcolor-glib/gcm-x11-screen.h
rename to src/gcm-x11-screen.h
index c17bd0c..5055866 100644
--- a/libcolor-glib/gcm-x11-screen.h
+++ b/src/gcm-x11-screen.h
@@ -19,10 +19,6 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
-#if !defined (__LIBCOLOR_GLIB_H_INSIDE__) && !defined (LIBCOLOR_GLIB_COMPILATION)
-#error "Only <libcolor-glib.h> can be included directly."
-#endif
-
 #ifndef __GCM_X11_SCREEN_H
 #define __GCM_X11_SCREEN_H
 
diff --git a/session/gsd-color-manager.c b/src/gsd-color-manager.c
similarity index 99%
rename from session/gsd-color-manager.c
rename to src/gsd-color-manager.c
index cc86414..9ef66ca 100644
--- a/session/gsd-color-manager.c
+++ b/src/gsd-color-manager.c
@@ -23,7 +23,7 @@
 #include <glib.h>
 #include <glib/gi18n.h>
 #include <gnome-settings-daemon/gnome-settings-plugin.h>
-#include <libcolor-glib.h>
+#include <src.h>
 
 #include "egg-console-kit.h"
 #include "gsd-color-manager.h"
diff --git a/tools/Makefile.am b/tools/Makefile.am
index f657836..78cdb1e 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -8,7 +8,7 @@ INCLUDES =						\
 	-DG_UDEV_API_IS_SUBJECT_TO_CHANGE		\
 	-DGNOME_DESKTOP_USE_UNSTABLE_API		\
 	$(GUDEV_CFLAGS)					\
-	-I$(top_srcdir)/libcolor-glib			\
+	-I$(top_srcdir)/src				\
 	-DG_LOG_DOMAIN=\"Gcm\"				\
 	-DLIBCOLOR_GLIB_COMPILATION			\
 	-DBINDIR=\"$(bindir)\"				\
@@ -20,7 +20,6 @@ INCLUDES =						\
 	-DLOCALEDIR=\""$(localedir)"\"			\
 	-DTESTDATADIR=\""$(top_srcdir)/data/tests"\"	\
 	-DGCM_SYSTEM_PROFILES_DIR="\"$(GCM_SYSTEM_PROFILES_DIR)"\" \
-	-DI_KNOW_THE_LIBCOLOR_GLIB_API_IS_SUBJECT_TO_CHANGE	\
 	-DGCM_DATA=\"$(pkgdatadir)\"
 
 noinst_PROGRAMS =					\
@@ -34,7 +33,11 @@ gcm_dump_edid_SOURCES =					\
 	gcm-dump-edid.c
 
 gcm_dump_edid_LDADD =					\
-	$(COLOR_GLIB_LIBS)				\
+	$(GLIB_LIBS)					\
+	$(XORG_LIBS)					\
+	$(X11_LIBS)					\
+	$(GTK_LIBS)					\
+	$(top_builddir)/src/libgcmshared.a		\
 	-lm
 
 gcm_dump_edid_CFLAGS =					\
@@ -44,7 +47,9 @@ gcm_dump_profile_SOURCES =				\
 	gcm-dump-profile.c
 
 gcm_dump_profile_LDADD =				\
-	$(COLOR_GLIB_LIBS)				\
+	$(GLIB_LIBS)					\
+	$(LCMS_LIBS)					\
+	$(top_builddir)/src/libgcmshared.a		\
 	-lm
 
 gcm_dump_profile_CFLAGS =				\
@@ -54,7 +59,11 @@ gcm_dump_sensor_SOURCES =				\
 	gcm-dump-sensor.c
 
 gcm_dump_sensor_LDADD =					\
-	$(COLOR_GLIB_LIBS)				\
+	$(GLIB_LIBS)					\
+	$(LCMS_LIBS)					\
+	$(USB_LIBS)					\
+	$(GUDEV_LIBS)					\
+	$(top_builddir)/src/libgcmshared.a		\
 	-lm
 
 gcm_dump_sensor_CFLAGS =				\
@@ -66,19 +75,24 @@ gcm_fix_profile_SOURCES =				\
 gcm_fix_profile_LDADD =					\
 	$(GLIB_LIBS)					\
 	$(LCMS_LIBS)					\
+	$(top_builddir)/src/libgcmshared.a		\
 	-lm
 
 gcm_fix_profile_CFLAGS =				\
 	$(WARNINGFLAGS_C)
 
 COLOR_GLIB_LIBS =					\
-	$(top_builddir)/libcolor-glib/libcolor-glib.la
+	$(top_builddir)/src/libgcmshared.a
 
 gcm_sensor_example_SOURCES =				\
 	gcm-sensor-example.c
 
 gcm_sensor_example_LDADD =				\
-	$(COLOR_GLIB_LIBS)
+	$(GLIB_LIBS)					\
+	$(USB_LIBS)					\
+	$(GUDEV_LIBS)					\
+	$(top_builddir)/src/libgcmshared.a		\
+	$(LCMS_LIBS)
 
 gcm_sensor_example_CFLAGS =				\
 	$(WARNINGFLAGS_C)
diff --git a/tools/gcm-dump-edid.c b/tools/gcm-dump-edid.c
index 58ac641..338d61d 100644
--- a/tools/gcm-dump-edid.c
+++ b/tools/gcm-dump-edid.c
@@ -24,7 +24,10 @@
 #include <glib/gi18n.h>
 #include <gtk/gtk.h>
 #include <locale.h>
-#include <libcolor-glib.h>
+
+#include "gcm-edid.h"
+#include "gcm-x11-screen.h"
+#include "gcm-debug.h"
 
 /**
  * gcm_dump_edid_filename:
diff --git a/tools/gcm-dump-profile.c b/tools/gcm-dump-profile.c
index e365cf3..95c4628 100644
--- a/tools/gcm-dump-profile.c
+++ b/tools/gcm-dump-profile.c
@@ -24,7 +24,9 @@
 #include <glib/gi18n.h>
 #include <gtk/gtk.h>
 #include <locale.h>
-#include <libcolor-glib.h>
+
+#include "gcm-profile.h"
+#include "gcm-debug.h"
 
 /**
  * gcm_dump_profile_filename:
@@ -127,12 +129,9 @@ main (int argc, char **argv)
 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
 	textdomain (GETTEXT_PACKAGE);
 
-	gtk_init (&argc, &argv);
-
 	context = g_option_context_new ("ICC profile dump program");
 	g_option_context_add_main_entries (context, options, NULL);
 	g_option_context_add_group (context, gcm_debug_get_option_group ());
-	g_option_context_add_group (context, gtk_get_option_group (TRUE));
 	g_option_context_parse (context, &argc, &argv, NULL);
 	g_option_context_free (context);
 
diff --git a/tools/gcm-dump-sensor.c b/tools/gcm-dump-sensor.c
index 08cce87..3e81014 100644
--- a/tools/gcm-dump-sensor.c
+++ b/tools/gcm-dump-sensor.c
@@ -23,7 +23,9 @@
 
 #include <glib/gi18n.h>
 #include <locale.h>
-#include <libcolor-glib.h>
+
+#include "gcm-sensor-client.h"
+#include "gcm-debug.h"
 
 /**
  * main:
@@ -50,7 +52,6 @@ main (int argc, char **argv)
 
 	context = g_option_context_new ("ICC profile dump program");
 	g_option_context_add_group (context, gcm_debug_get_option_group ());
-	g_option_context_add_group (context, gtk_get_option_group (TRUE));
 	g_option_context_parse (context, &argc, &argv, NULL);
 	g_option_context_free (context);
 
diff --git a/tools/gcm-sensor-example.c b/tools/gcm-sensor-example.c
index d02c679..8829d85 100644
--- a/tools/gcm-sensor-example.c
+++ b/tools/gcm-sensor-example.c
@@ -26,9 +26,9 @@
  */
 
 #include <glib.h>
-#include <libcolor-glib.h>
 
 #include "gcm-sensor-colormunki.h"
+#include "gcm-debug.h"
 
 /**
  * gcm_sensor_example_loop_quit_cb:
@@ -56,7 +56,6 @@ main (int argc, char **argv)
 
 	context = g_option_context_new ("gnome-color-manager sensor example");
 	g_option_context_add_group (context, gcm_debug_get_option_group ());
-	g_option_context_add_group (context, gtk_get_option_group (TRUE));
 	g_option_context_parse (context, &argc, &argv, NULL);
 	g_option_context_free (context);
 



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