[PATCH 1/3] Split up icccm and ewmh into their own repository

Arnaud Fontaine arnau at debian.org
Sat Sep 4 05:14:26 PDT 2010


---
 .gitmodules    |    3 ++
 Makefile.am    |    5 +++
 configure.ac   |   98 +++-----------------------------------------------------
 ewmh/ewmh.c.m4 |    8 ++++-
 m4             |    1 +
 5 files changed, 21 insertions(+), 94 deletions(-)
 create mode 100644 .gitmodules
 create mode 100644 Makefile.am
 create mode 160000 m4

diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..459533d
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "m4"]
+	path = m4
+	url = ../util-common-m4.git
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..e3844ac
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,5 @@
+ACLOCAL_AMFLAGS = -I m4
+
+MAINTAINERCLEANFILES = Makefile.in
+
+SUBDIRS = icccm ewmh
diff --git a/configure.ac b/configure.ac
index 07f9bbb..0fc07a4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,106 +1,18 @@
-dnl AC_TYPE_SSIZE_T is defined from 2.59c
-AC_PREREQ(2.59c)
+dnl XCB_UTIL_M4_WITH_INCLUDE_PATH requires Autoconf >= 2.62
+AC_PREREQ(2.62)
 AC_INIT([xcb-util],0.3.7,[xcb at lists.freedesktop.org])
 AC_CONFIG_SRCDIR([Makefile.am])
+AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 AM_MAINTAINER_MODE
 
-AC_CHECK_PROGS(M4, [m4 gm4], [no])
-if test $M4 != "no" ; then
-	AC_MSG_CHECKING([if $M4 supports -I])
-	if $M4 -I. /dev/null > /dev/null 2>&1 ; then
-		AC_MSG_RESULT([yes])
-	else
-		AC_MSG_RESULT([no])
-		# Try finding the gnu version
-		AC_CHECK_PROGS(GM4, gm4, [no])
-		if test $GM4 = "no" ; then
-			AC_PATH_PROGS(GNUM4, m4, [no], [/usr/gnu/bin])
-			M4="$GNUM4"
-		else
-			M4="$GM4"
-		fi
-	fi
-fi
-if test $M4 = "no"; then
-	AC_MSG_ERROR([Can't find usable m4, please install it and try again])
-fi
-AC_CHECK_PROGS(GPERF, gperf, [no])
-if test $GPERF = "no"; then
-	AC_MSG_ERROR([Can't find gperf, please install it and try again])
-fi
-AC_PROG_CC
-AC_PROG_LIBTOOL
-
-if  test "x$GCC" = xyes ; then
-    CWARNFLAGS="-Wall"
-else
-    AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"])
-    if test "x$SUNCC" = "xyes"; then
-	CWARNFLAGS="-v"
-    fi
-fi
-AC_SUBST(CWARNFLAGS)
-AC_CHECK_FUNCS_ONCE(vasprintf)
-
-dnl Checking whether ssize_t is defined (xcb-util-common.h)
 AC_TYPE_SSIZE_T
 
-xcbincludedir='${includedir}/xcb'
-AC_SUBST(xcbincludedir)
-
-pkgconfigdir='${libdir}/pkgconfig'
-AC_SUBST(pkgconfigdir)
-
-PKG_CHECK_MODULES(XCB, xcb >= 1.2)
-
-######
-# Check version of xcb-proto that xcb was compiled against
-######
-xcbproto_required=1.6
-
-# Moved from AX_COMPARE_VERSION to maintain proper output
-AC_PROG_AWK
-
-AC_MSG_CHECKING([whether libxcb was compiled against xcb-proto >= $xcbproto_required])
-xcbproto_version=`$PKG_CONFIG --variable=xcbproto_version xcb`
-AX_COMPARE_VERSION([$xcbproto_version],[ge],[$xcbproto_required], xcbproto_ok="yes", xcbproto_ok="no")
-AC_MSG_RESULT([$xcbproto_ok])
-
-if test $xcbproto_ok = no; then
-	AC_MSG_ERROR([libxcb was compiled against xcb-proto $xcbproto_version; it needs to be compiled against version $xcbproto_required or higher])
-fi
-
-
-PKG_CHECK_MODULES(XCB_SHM, xcb-shm)
-PKG_CHECK_MODULES(XCB_RENDER, xcb-render)
-PKG_CHECK_MODULES(XPROTO, xproto >= 7.0.8)
-
-XCB_AUX_CFLAGS='-I$(top_srcdir)/convenient'
-XCB_AUX_LIBS='$(top_builddir)/convenient/libxcb-aux.la'
-XCB_ATOM_CFLAGS='-I$(top_srcdir)/atom -I$(top_builddir)/atom'
-XCB_ATOM_LIBS='$(top_builddir)/atom/libxcb-atom.la'
-XCB_ICCCM_CFLAGS='-I$(top_srcdir)/icccm'
-XCB_ICCCM_LIBS='$(top_builddir)/icccm/libxcb-icccm.la'
-XCB_EWMH_CFLAGS='-I$(top_srcdir)/ewmh'
-XCB_EWMH_LIBS='$(top_builddir)/ewmh/libxcb-ewmh.la'
-AC_SUBST(XCB_AUX_CFLAGS)
-AC_SUBST(XCB_AUX_LIBS)
-AC_SUBST(XCB_ATOM_CFLAGS)
-AC_SUBST(XCB_ATOM_LIBS)
-AC_SUBST(XCB_ICCCM_CFLAGS)
-AC_SUBST(XCB_ICCCM_LIBS)
-AC_SUBST(XCB_EWMH_CFLAGS)
-AC_SUBST(XCB_EWMH_LIBS)
+XCB_UTIL_M4_WITH_INCLUDE_PATH
+XCB_UTIL_COMMON([1.4], [1.6])
 
 AC_OUTPUT([Makefile
-	aux/Makefile aux/xcb-aux.pc
-	image/Makefile image/xcb-image.pc
-	atom/Makefile atom/xcb-atom.pc
-	event/Makefile event/xcb-event.pc
-	keysyms/Makefile keysyms/xcb-keysyms.pc
 	icccm/Makefile icccm/xcb-icccm.pc
 	ewmh/Makefile ewmh/xcb-ewmh.pc
-	renderutil/Makefile renderutil/xcb-renderutil.pc
 	xcb_util_intro
 	])
diff --git a/ewmh/ewmh.c.m4 b/ewmh/ewmh.c.m4
index bc8168f..103f3ad 100644
--- a/ewmh/ewmh.c.m4
+++ b/ewmh/ewmh.c.m4
@@ -27,7 +27,6 @@
  */
 
 #include "xcb_ewmh.h"
-#include "../xcb-util-common.h"
 
 #include <string.h>
 #include <limits.h>
@@ -39,6 +38,13 @@
 #include <xcb/xcb.h>
 #include <xcb/xproto.h>
 
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+
+#define ssizeof(foo)            (ssize_t)sizeof(foo)
+#define countof(foo)            (ssizeof(foo) / ssizeof(foo[0]))
+
 /**
  * @brief The  structure used  on screen initialization  including the
  * atoms name and its length
diff --git a/m4 b/m4
new file mode 160000
index 0000000..55e8069
--- /dev/null
+++ b/m4
@@ -0,0 +1 @@
+Subproject commit 55e8069773efd794a91d5fb37bfceeebae2e378a
-- 
1.7.2.3


--=-=-=
Content-Type: text/x-diff
Content-Disposition: attachment;
 filename=0002-Prefix-all-ICCCM-public-functions-types-and-macros-b.patch



More information about the Xcb mailing list