]> Dogcows Code - chaz/tint2/commitdiff
Prepared build-system for tint2conf.
authorChristian Ruppert <Spooky85@gmail.com>
Sun, 26 Jul 2009 15:45:15 +0000 (15:45 +0000)
committerChristian Ruppert <Spooky85@gmail.com>
Sun, 26 Jul 2009 15:45:15 +0000 (15:45 +0000)
Some cleanup.

Makefile.am
configure.ac
doc/Makefile.am
src/Makefile.am
src/tint2conf/Makefile.am [new file with mode: 0644]

index bc85f3d63c641df9596ace3d78cd6141ad9f7786..19345a2ff4c00b6b45b359aafb95df6309675593 100644 (file)
@@ -16,7 +16,7 @@ examplesdir =
 dist_examples_DATA =
 endif
 
-DISTCLEANFILES = configure depcomp config.guess config.sub config.h.in config.h.in~ ltmain.sh missing aclocal.m4 install-sh Makefile.in INSTALL
+DISTCLEANFILES += configure depcomp config.guess config.sub config.h.in config.h.in~ ltmain.sh missing aclocal.m4 install-sh INSTALL
 
 dist-hook:
        find $(distdir)/ -type d -name '.svn' -exec rm -rf {} ';'
index 81dd04c3414e5d851179a009cd1dd6336911af1f..01f1b96d8036ce51cecf626ac6dc36f77a9f2d64 100644 (file)
@@ -1,17 +1,48 @@
 #                                               -*- Autoconf -*-
 # Process this file with autoconf to produce a configure script.
-AC_INIT([tint2], [0.7.1], [http://code.google.com/p/tint2/issues])
+AC_INIT([tint2], [9.9.9-svn], [http://code.google.com/p/tint2/issues])
 
-LT_INIT
 AM_INIT_AUTOMAKE
 
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_SRCDIR([src/tint.c])
 AC_CONFIG_HEADERS([config.h])
 
+# tint2
+AC_ARG_ENABLE([battery],
+       [AS_HELP_STRING([--disable-battery], [Disable battery status plugin])],
+               [case "${enableval}" in
+                       yes) battery=true ;;
+                       no) battery=false ;;
+                       *) AC_MSG_ERROR([bad value ${enableval} for --disable-battery]) ;;
+               esac], [battery=true])
+AM_CONDITIONAL([ENABLE_BATTERY], [test x$battery = xtrue])
+#
+
+AC_ARG_ENABLE([examples],
+       [AS_HELP_STRING([--enable-examples], [Install additional tin2rc examples])],
+               [case "${enableval}" in
+                       yes) examples=true ;;
+                       no)  examples=false ;;
+                       *) AC_MSG_ERROR([bad value ${enableval} for --enable-examples]) ;;
+               esac],[examples=false])
+AM_CONDITIONAL([INSTALL_EXAMPLES], [test x$examples = xtrue])
+
+# tint2conf
+AC_ARG_ENABLE([tint2conf],
+       [AS_HELP_STRING([--enable-tint2conf], [Build and install tint2conf, a GTK+2 configuration utility for tint2 (EXPERIMENTAL)])],
+               [case "${enableval}" in
+                       yes) tint2conf=true ;;
+                       no)  tint2conf=false ;;
+                       *) AC_MSG_ERROR([bad value ${enableval} for --enable-tint2conf]) ;;
+               esac],[tint2conf=false])
+AM_CONDITIONAL([ENABLE_TINT2CONF], [test x$tint2conf = xtrue])
+#
+
 # Checks for programs.
 AC_LANG([C])
 AC_PROG_CC
+PKG_PROG_PKG_CONFIG
 
 # Checks for libraries.
 PKG_CHECK_MODULES([PANGOCAIRO], [pangocairo])
@@ -54,9 +85,10 @@ LIBS=$LIBS_SAVED
 
 # Checks for header files.
 AC_PATH_X
-AC_CHECK_HEADERS([fcntl.h stdlib.h string.h sys/time.h unistd.h])
+AC_CHECK_HEADERS([fcntl.h locale.h stdlib.h string.h sys/time.h unistd.h])
 
 # Checks for typedefs, structures, and compiler characteristics.
+AC_HEADER_STDBOOL
 AC_TYPE_INT16_T
 AC_TYPE_INT64_T
 AC_TYPE_INT8_T
@@ -67,28 +99,50 @@ AC_FUNC_FORK
 AC_FUNC_MALLOC
 AC_CHECK_FUNCS([gettimeofday memset select setlocale strcasecmp strchr strdup])
 
-AC_ARG_ENABLE([battery],
-                         [AS_HELP_STRING([--disable-battery], [Disable battery status plugin])],
-                         [case "${enableval}" in
-                          yes) battery=true ;;
-                          no) battery=false ;;
-                          *) AC_MSG_ERROR([bad value ${enableval} for --disable-battery]) ;;
-                  esac], [battery=true])
-AM_CONDITIONAL([ENABLE_BATTERY], [test x$battery = xtrue])
-
-AC_ARG_ENABLE([examples],
-                         [AS_HELP_STRING([--enable-examples], [Install additional tin2rc examples])],
-                         [case "${enableval}" in
-                          yes) examples=true ;;
-                          no)  examples=false ;;
-                          *) AC_MSG_ERROR([bad value ${enableval} for --enable-examples]) ;;
-                  esac],[examples=false])
-AM_CONDITIONAL([INSTALL_EXAMPLES], [test x$examples = xtrue])
-
-AC_CONFIG_FILES([
-                                Makefile
+# tint2conf (experimental)
+if test "x$tint2conf" = xtrue;
+then
+       # We want just link against stuff we really need so thats why I don't use PKG_CHECK_MODULES.
+       # gtk/glib is a bit horrible because we have to add -I directives for various features (like cairo, pango etc.)
+       # even if we don't need them.
+       # Sorry if that might be confusing %-)
+
+       # Save LIBS value and clear the variable, AC_CHECK_LIB will append all libs to LIBS on success.
+       LIBS_SAVED=$LIBS
+       LIBS=
+
+       AC_CHECK_LIB([pthread], [pthread_create], [],
+                                [AC_MSG_ERROR([libpthread is missing, usually provided by glibc])])
+       AC_CHECK_LIB([glib-2.0], [g_free], [],
+                                [AC_MSG_ERROR([glib-2.x is missing])])
+       AC_CHECK_LIB([gobject-2.0], [g_signal_connect_data], [],
+                                [AC_MSG_ERROR([libgobject-2.0 is missing, usually provided by glib-2.x])])
+       AC_CHECK_LIB([gtk-x11-2.0], [gtk_main], [],
+                                [AC_MSG_ERROR([gtk+-2.x is missing or not built with X support])])
+       AC_CHECK_LIB([gthread-2.0], [g_thread_init], [],
+                                [AC_MSG_ERROR([libgthread-2.0 is missing, usually provided by glib-2.x])])
+
+       TINT2CONF_LIBS="${LIBS} ${PTHREAD_LIB} ${GLIB2_LIB} ${GOBJECT2_LIB}"
+       LIBS=$LIBS_SAVED
+
+       TINT2CONF_CFLAGS="$(${PKG_CONFIG} --cflags gtk+-x11-2.0 glib-2.0 gobject-2.0 gthread-2.0)"
+       AC_SUBST(TINT2CONF_CFLAGS)
+       AC_SUBST(TINT2CONF_LIBS)
+fi
+#
+
+#
+AM_CFLAGS="-Wall"
+AM_LDFLAGS="-Wl,--as-needed"
+AC_SUBST(AM_CFLAGS)
+AC_SUBST(AM_LDFLAGS)
+
+DISTCLEANFILES="Makefile.in"
+AC_SUBST(DISTCLEANFILES)
+
+AC_CONFIG_FILES([Makefile
                                 doc/Makefile
                                 src/Makefile
-                                ])
+                                src/tint2conf/Makefile])
 
 AC_OUTPUT
index 2eacb86c59400c0ddd0124012772f3c6c956a11c..c339e7974923906dc801c5973c9b0b89143cfc09 100644 (file)
@@ -1,4 +1,3 @@
 man1_MANS = $(PACKAGE_NAME).1
 
 EXTRA_DIST = $(man1_MANS)
-DISTCLEANFILES = Makefile.in
index 6b83cd4deb5d24b8354f9734abf08829cf5fbd7b..636136683a7bd8747d7a7c67a7e1fc698f99fa01 100644 (file)
@@ -1,8 +1,8 @@
-AM_CFLAGS = -Wall
-AM_CFLAGS += @PANGOCAIRO_CFLAGS@ @PANGO_CFLAGS@ @CAIRO_CFLAGS@ @GLIB2_CFLAGS@ @GOBJECT2_CFLAGS@ @X11_CFLAGS@ @XINERAMA_CFLAGS@ @IMLIB2_CFLAGS@
-
-AM_LDFLAGS = -Wl,--as-needed
+if ENABLE_TINT2CONF
+SUBDIRS = tint2conf
+endif
 
+AM_CFLAGS += @PANGOCAIRO_CFLAGS@ @PANGO_CFLAGS@ @CAIRO_CFLAGS@ @GLIB2_CFLAGS@ @GOBJECT2_CFLAGS@ @X11_CFLAGS@ @XINERAMA_CFLAGS@ @IMLIB2_CFLAGS@
 LIBS = @PANGOCAIRO_LIBS@ @PANGO_LIBS@ @CAIRO_LIBS@ @GLIB2_LIBS@ @GOBJECT2_LIBS@ @X11_LIBS@ @XINERAMA_LIBS@ @IMLIB2_LIBS@
 INCLUDES = -Iutil -Iclock -Itaskbar -Isystray
 
@@ -29,12 +29,9 @@ tint2_SOURCES = config.c \
                                taskbar/task.h 
 
 if ENABLE_BATTERY
-AM_CFLAGS += -DENABLE_BATTERY
+DEFS += -DENABLE_BATTERY
 INCLUDES += -Ibattery
 tint2_SOURCES += battery/battery.c \
                                 battery/battery.h
 endif
 
-DISTCLEANFILES = Makefile.in
-
-
diff --git a/src/tint2conf/Makefile.am b/src/tint2conf/Makefile.am
new file mode 100644 (file)
index 0000000..b7b625a
--- /dev/null
@@ -0,0 +1,7 @@
+if ENABLE_TINT2CONF
+bin_PROGRAMS = tint2conf
+tint2conf_SOURCES = main.c
+
+AM_CFLAGS += @TINT2CONF_CFLAGS@
+LIBS += @TINT2CONF_LIBS@
+endif
This page took 0.030246 seconds and 4 git commands to generate.