Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@marcopg.org>2010-08-22 02:56:09 (GMT)
committer Marco Pesenti Gritti <marco@marcopg.org>2010-08-22 03:06:24 (GMT)
commit6f09b2e3c829acd98945d65f09c640ca06fa8d7c (patch)
treed52794e83c050b40b134679e06292ae2b27e4485
parentd520a437625c49d62177b90250413df8ace0c76e (diff)
Merge in a single build system
-rw-r--r--.gitignore34
-rw-r--r--Makefile.am15
-rw-r--r--artwork/cursor/sugar/Makefile.am4
-rw-r--r--artwork/gtk/theme/Makefile.am8
-rwxr-xr-xautogen.sh4
-rw-r--r--base/Makefile.am12
-rw-r--r--configure.ac154
-rw-r--r--m4/python.m462
-rw-r--r--po/POTFILES.in61
-rw-r--r--shell/Makefile.am13
-rw-r--r--shell/data/Makefile.am4
-rw-r--r--toolkit/Makefile.am12
12 files changed, 341 insertions, 42 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..5068607 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1,34 @@
+Makefile
+Makefile.in
+aclocal.m4
+autom4te.cache/
+config.guess
+config.h
+config.h.in
+config.log
+config.status
+config.sub
+configure
+depcomp
+install-sh
+intltool-extract.in
+intltool-merge.in
+intltool-update.in
+libtool
+ltmain.sh
+m4/intltool.m4
+m4/libtool.m4
+m4/ltoptions.m4
+m4/ltsugar.m4
+m4/ltversion.m4
+m4/lt~obsolete.m4
+missing
+po/.intltool-merge-cache
+po/Makefile
+po/Makefile.in
+po/Makefile.in.in
+po/POTFILES
+po/stamp-it
+py-compile
+stamp-h1
+
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..7439606
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,15 @@
+ACLOCAL_AMFLAGS = -I m4
+
+DISTCLEANFILES = \
+ intltool-extract \
+ intltool-merge \
+ intltool-update
+
+EXTRA_DIST = \
+ intltool-merge.in \
+ intltool-update.in \
+ intltool-extract.in
+
+DISTCHECK_CONFIGURE_FLAGS = --disable-update-mimedb
+
+SUBDIRS = artwork base datastore po shell toolkit
diff --git a/artwork/cursor/sugar/Makefile.am b/artwork/cursor/sugar/Makefile.am
index 93bd6a6..347322d 100644
--- a/artwork/cursor/sugar/Makefile.am
+++ b/artwork/cursor/sugar/Makefile.am
@@ -15,8 +15,8 @@ sugar_images = \
sugar-11.png \
sugar-hotspots.png
-IMAGE_DIR = $(top_srcdir)/cursor/sugar
-OUTPUT_DIR = $(top_builddir)/cursor/sugar
+IMAGE_DIR = $(top_srcdir)/artwork/cursor/sugar
+OUTPUT_DIR = $(top_builddir)/artwork/cursor/sugar
CURSORS_DIR = $(OUTPUT_DIR)/cursors
sugar.stamp: $(sugar_images) $(THEMEGEN) sugar.cursortheme
diff --git a/artwork/gtk/theme/Makefile.am b/artwork/gtk/theme/Makefile.am
index a6b0bd8..176b1d1 100644
--- a/artwork/gtk/theme/Makefile.am
+++ b/artwork/gtk/theme/Makefile.am
@@ -1,10 +1,10 @@
sugar-72.gtkrc: gtkrc.em
$(srcdir)/em.py -p $$ -D scaling=\'72\' $(srcdir)/gtkrc.em > \
- $(top_builddir)/gtk/theme/sugar-72.gtkrc
+ $(top_builddir)/artwork/gtk/theme/sugar-72.gtkrc
sugar-100.gtkrc: gtkrc.em
$(srcdir)/em.py -p $$ -D scaling=\'100\' $(srcdir)/gtkrc.em > \
- $(top_builddir)/gtk/theme/sugar-100.gtkrc
+ $(top_builddir)/artwork/gtk/theme/sugar-100.gtkrc
clean:
$(RM) sugar-72.gtkrc
@@ -16,10 +16,10 @@ GTKRC_FILES = \
install-data-local: $(GTKRC_FILES)
$(mkinstalldirs) $(DESTDIR)$(datadir)/themes/sugar-72/gtk-2.0
- $(INSTALL_DATA) $(top_builddir)/gtk/theme/sugar-72.gtkrc \
+ $(INSTALL_DATA) $(top_builddir)/artwork/gtk/theme/sugar-72.gtkrc \
$(DESTDIR)$(datadir)/themes/sugar-72/gtk-2.0/gtkrc
$(mkinstalldirs) $(DESTDIR)$(datadir)/themes/sugar-100/gtk-2.0
- $(INSTALL_DATA) $(top_builddir)/gtk/theme/sugar-100.gtkrc \
+ $(INSTALL_DATA) $(top_builddir)/artwork/gtk/theme/sugar-100.gtkrc \
$(DESTDIR)$(datadir)/themes/sugar-100/gtk-2.0/gtkrc
uninstall-local:
diff --git a/autogen.sh b/autogen.sh
new file mode 100755
index 0000000..a71e202
--- /dev/null
+++ b/autogen.sh
@@ -0,0 +1,4 @@
+#!/bin/sh
+intltoolize
+autoreconf -i
+./configure --enable-maintainer-mode "$@"
diff --git a/base/Makefile.am b/base/Makefile.am
index b62b8cc..f8238b2 100644
--- a/base/Makefile.am
+++ b/base/Makefile.am
@@ -1,13 +1,3 @@
ACLOCAL_AMFLAGS = -I m4
-DISTCLEANFILES = \
- intltool-extract \
- intltool-merge \
- intltool-update
-
-EXTRA_DIST = \
- intltool-merge.in \
- intltool-update.in \
- intltool-extract.in
-
-SUBDIRS = src po
+SUBDIRS = src
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..379861e
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,154 @@
+AC_PREREQ([2.59])
+
+AC_INIT([sugar],[0.99],[],[sugar])
+
+AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2 no-dist-gzip])
+
+AC_CONFIG_MACRO_DIR([m4])
+AC_CONFIG_SRCDIR([configure.ac])
+AM_CONFIG_HEADER(config.h)
+
+AM_MAINTAINER_MODE
+
+AM_DISABLE_STATIC
+AC_PROG_LIBTOOL
+
+AC_PROG_CC
+AC_HEADER_STDC
+
+PKG_PROG_PKG_CONFIG([0.19])
+
+GNOME_COMPILE_WARNINGS(maximum)
+
+AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
+
+AM_PATH_PYTHON([2.5])
+AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)])
+
+GTK_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
+AC_SUBST(GTK_VERSION)
+
+AC_PATH_PROG(PYGTK_CODEGEN, pygtk-codegen-2.0, no)
+
+PYGTK_DEFSDIR=`$PKG_CONFIG --variable=defsdir pygtk-2.0`
+AC_SUBST(PYGTK_DEFSDIR)
+
+PKG_CHECK_MODULES(EXTENSION, pygobject-2.0)
+PKG_CHECK_MODULES(GTK2, gtk+-2.0 >= 2.0.0)
+PKG_CHECK_MODULES(ENGINE, gtk+-2.0 >= 2.0 gobject-2.0 >= 2.0 cairo >= 0.1.1)
+PKG_CHECK_MODULES(SHELL, pygtk-2.0 gtk+-2.0 gconf-2.0)
+PKG_CHECK_MODULES(EXT, pygtk-2.0 gtk+-2.0 sm ice alsa)
+
+GETTEXT_PACKAGE=sugar
+AC_PROG_INTLTOOL([0.33])
+AC_SUBST(GETTEXT_PACKAGE)
+AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
+AM_GLIB_GNU_GETTEXT
+
+AC_PATH_PROG([ICON_SLICER], [icon-slicer])
+if test -z "$ICON_SLICER"; then
+ AC_MSG_ERROR([icon-slicer is required])
+fi
+
+AC_ARG_ENABLE(update-mimedb,
+ AC_HELP_STRING([--disable-update-mimedb],
+ [disable the update-mime-database after install [default=no]]),,
+ enable_update_mimedb=yes)
+AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
+
+# Verify that gconftool is installed
+#
+AC_PATH_PROG(GCONFTOOL, gconftool-2, no)
+
+if test "$GCONFTOOL" = no; then
+ AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
+fi
+
+AM_GCONF_SOURCE_2
+
+ICON_NAMING_UTILS_REQUIRED=0.8.2
+
+AC_MSG_CHECKING([icon-naming-utils >= $ICON_NAMING_UTILS_REQUIRED])
+PKG_CHECK_EXISTS(icon-naming-utils >= $ICON_NAMING_UTILS_REQUIRED,
+ have_utils=yes, have_utils=no)
+if test "x$have_utils" = "xyes"; then
+ UTILS_PATH="`$PKG_CONFIG --variable=program_path icon-naming-utils`"
+ ICONMAP="$UTILS_PATH/icon-name-mapping"
+ AC_SUBST(ICONMAP)
+ AC_MSG_RESULT([yes])
+else
+ AC_MSG_RESULT([no])
+ AC_MSG_ERROR([icon-naming-utils >= $ICON_NAMING_UTILS_REQUIRED is required to build
+ and install the icon theme])
+fi
+
+AC_OUTPUT([
+Makefile
+artwork/Makefile
+artwork/cursor/Makefile
+artwork/cursor/sugar/Makefile
+artwork/icons/Makefile
+artwork/icons/scalable/Makefile
+artwork/icons/scalable/actions/Makefile
+artwork/icons/scalable/apps/Makefile
+artwork/icons/scalable/categories/Makefile
+artwork/icons/scalable/control/Makefile
+artwork/icons/scalable/device/Makefile
+artwork/icons/scalable/emblems/Makefile
+artwork/icons/scalable/mimetypes/Makefile
+artwork/icons/scalable/status/Makefile
+artwork/gtk/Makefile
+artwork/gtk/engine/Makefile
+artwork/gtk/theme/Makefile
+base/Makefile
+base/src/Makefile
+base/src/sugar/Makefile
+base/src/sugar/dispatch/Makefile
+datastore/Makefile
+datastore/bin/Makefile
+datastore/etc/Makefile
+datastore/src/Makefile
+datastore/src/carquinyol/Makefile
+po/Makefile.in
+shell/bin/Makefile
+shell/bin/sugar
+shell/data/icons/Makefile
+shell/data/Makefile
+shell/data/sugar-emulator.desktop
+shell/extensions/cpsection/aboutcomputer/Makefile
+shell/extensions/cpsection/aboutme/Makefile
+shell/extensions/cpsection/datetime/Makefile
+shell/extensions/cpsection/frame/Makefile
+shell/extensions/cpsection/keyboard/Makefile
+shell/extensions/cpsection/language/Makefile
+shell/extensions/cpsection/modemconfiguration/Makefile
+shell/extensions/cpsection/Makefile
+shell/extensions/cpsection/network/Makefile
+shell/extensions/cpsection/power/Makefile
+shell/extensions/cpsection/updater/backends/Makefile
+shell/extensions/cpsection/updater/Makefile
+shell/extensions/deviceicon/Makefile
+shell/extensions/globalkey/Makefile
+shell/extensions/Makefile
+shell/Makefile
+shell/src/jarabe/config.py
+shell/src/jarabe/controlpanel/Makefile
+shell/src/jarabe/desktop/Makefile
+shell/src/jarabe/frame/Makefile
+shell/src/jarabe/intro/Makefile
+shell/src/jarabe/journal/Makefile
+shell/src/jarabe/Makefile
+shell/src/jarabe/model/Makefile
+shell/src/jarabe/util/Makefile
+shell/src/jarabe/util/telepathy/Makefile
+shell/src/jarabe/view/Makefile
+shell/src/Makefile
+toolkit/Makefile
+toolkit/src/Makefile
+toolkit/src/sugar/Makefile
+toolkit/src/sugar/activity/Makefile
+toolkit/src/sugar/bundle/Makefile
+toolkit/src/sugar/graphics/Makefile
+toolkit/src/sugar/presence/Makefile
+toolkit/src/sugar/datastore/Makefile
+])
diff --git a/m4/python.m4 b/m4/python.m4
new file mode 100644
index 0000000..e1c5266
--- /dev/null
+++ b/m4/python.m4
@@ -0,0 +1,62 @@
+## this one is commonly used with AM_PATH_PYTHONDIR ...
+dnl AM_CHECK_PYMOD(MODNAME [,SYMBOL [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]]])
+dnl Check if a module containing a given symbol is visible to python.
+AC_DEFUN([AM_CHECK_PYMOD],
+[AC_REQUIRE([AM_PATH_PYTHON])
+py_mod_var=`echo $1['_']$2 | sed 'y%./+-%__p_%'`
+AC_MSG_CHECKING(for ifelse([$2],[],,[$2 in ])python module $1)
+AC_CACHE_VAL(py_cv_mod_$py_mod_var, [
+ifelse([$2],[], [prog="
+import sys
+try:
+ import $1
+except ImportError:
+ sys.exit(1)
+except:
+ sys.exit(0)
+sys.exit(0)"], [prog="
+import $1
+$1.$2"])
+if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC
+ then
+ eval "py_cv_mod_$py_mod_var=yes"
+ else
+ eval "py_cv_mod_$py_mod_var=no"
+ fi
+])
+py_val=`eval "echo \`echo '$py_cv_mod_'$py_mod_var\`"`
+if test "x$py_val" != xno; then
+ AC_MSG_RESULT(yes)
+ ifelse([$3], [],, [$3
+])dnl
+else
+ AC_MSG_RESULT(no)
+ ifelse([$4], [],, [$4
+])dnl
+fi
+])
+
+dnl a macro to check for ability to create python extensions
+dnl AM_CHECK_PYTHON_HEADERS([ACTION-IF-POSSIBLE], [ACTION-IF-NOT-POSSIBLE])
+dnl function also defines PYTHON_INCLUDES
+AC_DEFUN([AM_CHECK_PYTHON_HEADERS],
+[AC_REQUIRE([AM_PATH_PYTHON])
+AC_MSG_CHECKING(for headers required to compile python extensions)
+dnl deduce PYTHON_INCLUDES
+py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
+py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"`
+PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}"
+if test "$py_prefix" != "$py_exec_prefix"; then
+ PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
+fi
+AC_SUBST(PYTHON_INCLUDES)
+dnl check if the headers exist:
+save_CPPFLAGS="$CPPFLAGS"
+CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES"
+AC_TRY_CPP([#include <Python.h>],dnl
+[AC_MSG_RESULT(found)
+$1],dnl
+[AC_MSG_RESULT(not found)
+$2])
+CPPFLAGS="$save_CPPFLAGS"
+])
diff --git a/po/POTFILES.in b/po/POTFILES.in
new file mode 100644
index 0000000..e3bfa22
--- /dev/null
+++ b/po/POTFILES.in
@@ -0,0 +1,61 @@
+shell/data/sugar.schemas.in
+shell/data/sugar.xml.in
+shell/extensions/cpsection/aboutcomputer/__init__.py
+shell/extensions/cpsection/aboutcomputer/model.py
+shell/extensions/cpsection/aboutcomputer/view.py
+shell/extensions/cpsection/aboutme/__init__.py
+shell/extensions/cpsection/datetime/__init__.py
+shell/extensions/cpsection/datetime/view.py
+shell/extensions/cpsection/frame/__init__.py
+shell/extensions/cpsection/frame/view.py
+shell/extensions/cpsection/keyboard/__init__.py
+shell/extensions/cpsection/keyboard/view.py
+shell/extensions/cpsection/language/__init__.py
+shell/extensions/cpsection/language/model.py
+shell/extensions/cpsection/modemconfiguration/__init__.py
+shell/extensions/cpsection/modemconfiguration/view.py
+shell/extensions/cpsection/network/__init__.py
+shell/extensions/cpsection/network/view.py
+shell/extensions/cpsection/power/__init__.py
+shell/extensions/cpsection/power/model.py
+shell/extensions/cpsection/power/view.py
+shell/extensions/cpsection/updater/__init__.py
+shell/extensions/cpsection/updater/view.py
+shell/extensions/deviceicon/battery.py
+shell/extensions/deviceicon/network.py
+shell/extensions/deviceicon/speaker.py
+shell/extensions/deviceicon/touchpad.py
+shell/extensions/globalkey/screenshot.py
+shell/src/jarabe/controlpanel/cmd.py
+shell/src/jarabe/controlpanel/gui.py
+shell/src/jarabe/controlpanel/sectionview.py
+shell/src/jarabe/desktop/activitieslist.py
+shell/src/jarabe/desktop/favoriteslayout.py
+shell/src/jarabe/desktop/homebox.py
+shell/src/jarabe/desktop/keydialog.py
+shell/src/jarabe/desktop/meshbox.py
+shell/src/jarabe/frame/activitiestray.py
+shell/src/jarabe/frame/clipboardmenu.py
+shell/src/jarabe/frame/clipboardobject.py
+shell/src/jarabe/frame/devicestray.py
+shell/src/jarabe/frame/zoomtoolbar.py
+shell/src/jarabe/intro/window.py
+shell/src/jarabe/journal/detailview.py
+shell/src/jarabe/journal/expandedentry.py
+shell/src/jarabe/journal/journalactivity.py
+shell/src/jarabe/journal/journaltoolbox.py
+shell/src/jarabe/journal/listview.py
+shell/src/jarabe/journal/misc.py
+shell/src/jarabe/journal/modalalert.py
+shell/src/jarabe/journal/objectchooser.py
+shell/src/jarabe/journal/palettes.py
+shell/src/jarabe/journal/volumestoolbar.py
+shell/src/jarabe/view/buddymenu.py
+shell/src/jarabe/view/keyhandler.py
+shell/src/jarabe/view/launcher.py
+shell/src/jarabe/view/palettes.py
+shell/src/jarabe/view/viewsource.py
+toolkit/src/sugar/activity/widgets.py
+toolkit/src/sugar/eggdesktopfile.c
+toolkit/src/sugar/eggsmclient.c
+toolkit/src/sugar/gsm-xsmp.c
diff --git a/shell/Makefile.am b/shell/Makefile.am
index 9e252af..ef2afa3 100644
--- a/shell/Makefile.am
+++ b/shell/Makefile.am
@@ -1,14 +1,3 @@
-SUBDIRS = bin data po src extensions
-
-DISTCLEANFILES = \
- intltool-extract \
- intltool-merge \
- intltool-update
-
-EXTRA_DIST = \
- $(bin_SCRIPTS) \
- intltool-merge.in \
- intltool-update.in \
- intltool-extract.in
+SUBDIRS = bin data src extensions
DISTCHECK_CONFIGURE_FLAGS = --disable-update-mimedb
diff --git a/shell/data/Makefile.am b/shell/data/Makefile.am
index 6a62d23..20abb72 100644
--- a/shell/data/Makefile.am
+++ b/shell/data/Makefile.am
@@ -2,11 +2,11 @@ SUBDIRS = icons
sugar-72.gtkrc: gtkrc.em
$(srcdir)/em.py -D scaling=\'72\' $(srcdir)/gtkrc.em > \
- $(top_builddir)/data/sugar-72.gtkrc
+ $(top_builddir)/shell/data/sugar-72.gtkrc
sugar-100.gtkrc: gtkrc.em
$(srcdir)/em.py -D scaling=\'100\' $(srcdir)/gtkrc.em > \
- $(top_builddir)/data/sugar-100.gtkrc
+ $(top_builddir)/shell/data/sugar-100.gtkrc
sugardir = $(pkgdatadir)/data
sugar_DATA = \
diff --git a/toolkit/Makefile.am b/toolkit/Makefile.am
index b62b8cc..f8238b2 100644
--- a/toolkit/Makefile.am
+++ b/toolkit/Makefile.am
@@ -1,13 +1,3 @@
ACLOCAL_AMFLAGS = -I m4
-DISTCLEANFILES = \
- intltool-extract \
- intltool-merge \
- intltool-update
-
-EXTRA_DIST = \
- intltool-merge.in \
- intltool-update.in \
- intltool-extract.in
-
-SUBDIRS = src po
+SUBDIRS = src