summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefano Karapetsas <[email protected]>2013-10-31 12:06:51 +0100
committerStefano Karapetsas <[email protected]>2013-10-31 12:06:51 +0100
commit7dde59b8d668993a3d1805a6ae949e36e0d3db1d (patch)
tree0b55efb207791b43873c11a11debf2273a98f51b
parent65305c4c07849d393642ea40bb9163962cc9e22a (diff)
downloadmate-desktop-7dde59b8d668993a3d1805a6ae949e36e0d3db1d.tar.bz2
mate-desktop-7dde59b8d668993a3d1805a6ae949e36e0d3db1d.tar.xz
Add MATE_DESKTOP_CHECK_VERSION function
-rw-r--r--configure.ac4
-rw-r--r--libmate-desktop/Makefile.am10
-rw-r--r--libmate-desktop/mate-desktop.h41
-rw-r--r--libmate-desktop/test.c37
4 files changed, 91 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index abff60a..5807aeb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -55,6 +55,10 @@ AC_SUBST(MATE_DATE)
AC_SUBST(MATE_DATE_COMMENT_START)
AC_SUBST(MATE_DATE_COMMENT_END)
+AC_DEFINE(MATE_MAJOR, [mate_platform], [Define to the major version])
+AC_DEFINE(MATE_MINOR, [mate_minor], [Define to the minor version])
+AC_DEFINE(MATE_MICRO, [mate_micro], [Define to the micro version])
+
MATE_COMMON_INIT
MATE_DEBUG_CHECK
MATE_COMPILE_WARNINGS([maximum])
diff --git a/libmate-desktop/Makefile.am b/libmate-desktop/Makefile.am
index 3854e81..98c9c00 100644
--- a/libmate-desktop/Makefile.am
+++ b/libmate-desktop/Makefile.am
@@ -1,5 +1,6 @@
libmate_desktopdir = $(includedir)/mate-desktop-2.0/libmate-desktop
libmate_desktop_HEADERS = \
+ mate-desktop.h \
mate-desktop-utils.h \
mate-desktop-item.h \
mate-dconf.h \
@@ -24,7 +25,7 @@ AM_CPPFLAGS = \
AM_CFLAGS = $(WARN_CFLAGS)
-noinst_PROGRAMS = test-ditem
+noinst_PROGRAMS = test-ditem test
libmate_desktop_2_la_SOURCES = \
mate-desktop-item.c \
@@ -53,6 +54,13 @@ libmate_desktop_2_la_LDFLAGS = \
-version-info $(LT_VERSION) \
-no-undefined
+test_SOURCES = \
+ test.c
+
+test_LDADD = \
+ libmate-desktop-2.la \
+ $(MATE_DESKTOP_LIBS)
+
test_ditem_SOURCES = \
test-ditem.c
diff --git a/libmate-desktop/mate-desktop.h b/libmate-desktop/mate-desktop.h
new file mode 100644
index 0000000..6abe536
--- /dev/null
+++ b/libmate-desktop/mate-desktop.h
@@ -0,0 +1,41 @@
+/*
+ * mate-desktop.h: general functions for libmate-desktop
+ *
+ * Copyright (C) 2013 Stefano Karapetsas
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation; either version 2 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301, USA.
+ *
+ * Authors:
+ * Stefano Karapetsas <[email protected]>
+ */
+
+#ifndef __MATE_DESKTOP_H__
+#define __MATE_DESKTOP_H__
+
+#include <config.h>
+#include <glib.h>
+
+G_BEGIN_DECLS
+
+#define MATE_DESKTOP_CHECK_VERSION(major,minor,micro) \
+ (MATE_MAJOR > (major) || \
+ (MATE_MAJOR == (major) && MATE_MINOR > (minor)) || \
+ (MATE_MAJOR == (major) && MATE_MINOR == (minor) && \
+ MATE_MICRO >= (micro)))
+
+G_END_DECLS
+
+#endif /* __MATE_DESKTOP_H__ */
diff --git a/libmate-desktop/test.c b/libmate-desktop/test.c
new file mode 100644
index 0000000..75f0c38
--- /dev/null
+++ b/libmate-desktop/test.c
@@ -0,0 +1,37 @@
+/*
+ * test.c: general tests for libmate-desktop
+ *
+ * Copyright (C) 2013 Stefano Karapetsas
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ *
+ * Authors:
+ * Stefano Karapetsas <[email protected]>
+ */
+
+#include <config.h>
+#include "mate-desktop.h"
+
+int
+main (int argc, char **argv)
+{
+#if MATE_DESKTOP_CHECK_VERSION (1, 7, 2)
+ return 0;
+#else
+ g_warning ("Old mate-desktop version!");
+ return 1;
+#endif
+}