[glibmm] Convert tools/ directory to new build system



commit 38e69088d9b3f178bfbd41d4fc516ac3b26a712c
Author: Daniel Elstner <daniel kitta gmail com>
Date:   Sun Aug 9 03:05:41 2009 +0200

    Convert tools/ directory to new build system
    
    * configure.ac (AC_CONFIG_FILES): Remove the output files
    tools/{extra_defs_gen,m4,pm}/Makefile from the list.
    * tools/Makefile.am: Clean up.  Build, distribute and install the
    contents of all three subdirectories.  Rename generate_extra_defs
    executable to generate_defs_glib.
    * tools/m4/filelist.am: New file to hold the list of M4 files.
    * tools/pm/filelist.am: New file to hold the list of Perl modules.
    * tools/{extra_defs_gen,m4,pm}/Makefile.am: Delete files.

 ChangeLog                        |   13 ++++++++
 configure.ac                     |    3 --
 tools/Makefile.am                |   58 ++++++++++++++++++++++++++++++++++---
 tools/extra_defs_gen/Makefile.am |   33 ---------------------
 tools/m4/Makefile.am             |   10 ------
 tools/m4/filelist.am             |   33 +++++++++++++++++++++
 tools/pm/Makefile.am             |   10 ------
 tools/pm/filelist.am             |   13 ++++++++
 8 files changed, 112 insertions(+), 61 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 2ccb65c..ae4939e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2009-08-09  Daniel Elstner  <danielk openismus com>
+
+	Convert tools/ directory to new build system
+
+	* configure.ac (AC_CONFIG_FILES): Remove the output files
+	tools/{extra_defs_gen,m4,pm}/Makefile from the list.
+	* tools/Makefile.am: Clean up.  Build, distribute and install the
+	contents of all three subdirectories.  Rename generate_extra_defs
+	executable to generate_defs_glib.
+	* tools/m4/filelist.am: New file to hold the list of M4 files.
+	* tools/pm/filelist.am: New file to hold the list of Perl modules.
+	* tools/{extra_defs_gen,m4,pm}/Makefile.am: Delete files.
+
 2009-08-08  Daniel Elstner  <danielk openismus com>
 
 	Remove glib/Makefile.am and gio/Makefile.am
diff --git a/configure.ac b/configure.ac
index 159dace..061514f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -169,9 +169,6 @@ AC_CONFIG_FILES([
   tools/Makefile
   tools/gmmproc
   tools/generate_wrap_init.pl
-    tools/m4/Makefile
-    tools/pm/Makefile
-    tools/extra_defs_gen/Makefile
 ])
 
 AC_CONFIG_FILES([
diff --git a/tools/Makefile.am b/tools/Makefile.am
index 7efc4e0..d3ada48 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -1,11 +1,59 @@
+## Copyright (c) 2009  Openismus GmbH  <http://www.openismus.com/>
+##
+## This file is part of glibmm.
+##
+## glibmm is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## glibmm 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 Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this library.  If not, see <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/tools/Makefile_list_of_sources.am_fragment
+AUTOMAKE_OPTIONS = subdir-objects
 
-SUBDIRS = m4 pm extra_defs_gen
+include $(srcdir)/m4/filelist.am
+include $(srcdir)/pm/filelist.am
 
-EXTRA_DIST = Makefile_list_of_sources.am_fragment $(files_tools_perl) README TODO enum.pl
+# TODO: All these Perl scripts and M4 files are architecture-independent
+# and should probably go somewhere below $(pkgdatadir) instead.
+gmmproc_bindir = $(libdir)/$(GLIBMM_MODULE_NAME)/proc
+gmmproc_m4dir  = $(gmmproc_bindir)/m4
+gmmproc_pmdir  = $(gmmproc_bindir)/pm
 
-gmmproc_bin_SCRIPTS = gmmproc $(files_tools_genwrap)
-gmmproc_bindir = $(GMMPROC_DIR)
+gmmproc_bin_SCRIPTS  = gmmproc generate_wrap_init.pl
+dist_gmmproc_m4_DATA = $(files_codegen_m4:%=m4/%)
+dist_gmmproc_pm_DATA = $(files_codegen_pm:%=pm/%)
 
+dist_noinst_DATA    = README TODO
+dist_noinst_SCRIPTS = enum.pl
 
+noinst_PROGRAMS = extra_defs_gen/generate_defs_glib extra_defs_gen/generate_defs_gio
+lib_LTLIBRARIES = extra_defs_gen/libglibmm_generate_extra_defs-2.4.la
+
+extradefs_includedir      = $(includedir)/$(GLIBMM_MODULE_NAME)/glibmm_generate_extra_defs
+extradefs_include_HEADERS = extra_defs_gen/generate_extra_defs.h
+
+extradefs_ldflags = -no-undefined -version-info $(LIBGLIBMM_SO_VERSION)
+
+extra_defs_gen_libglibmm_generate_extra_defs_2_4_la_SOURCES = extra_defs_gen/generate_extra_defs.cc
+extra_defs_gen_libglibmm_generate_extra_defs_2_4_la_LDFLAGS = $(extradefs_ldflags)
+extra_defs_gen_libglibmm_generate_extra_defs_2_4_la_LIBADD  = $(GLIBMM_LIBS)
+
+extra_defs_gen_generate_defs_glib_SOURCES = extra_defs_gen/generate_defs_glib.cc
+extra_defs_gen_generate_defs_glib_LDADD   = $(GLIBMM_LIBS) $(lib_LTLIBRARIES)
+
+extra_defs_gen_generate_defs_gio_SOURCES = extra_defs_gen/generate_defs_gio.cc
+extra_defs_gen_generate_defs_gio_LDADD   = $(GIOMM_LIBS) $(lib_LTLIBRARIES)
+
+AM_CPPFLAGS = -I$(top_builddir) $(GTHREAD_CFLAGS) $(GIOMM_CFLAGS)
+AM_CXXFLAGS = $(GLIBMM_WXXFLAGS)
+
+# Instruct GNU make to delete the targets of a rule after it failed, in
+# order to avoid the complication of handling that situation manually.
+.DELETE_ON_ERROR:
diff --git a/tools/m4/filelist.am b/tools/m4/filelist.am
new file mode 100644
index 0000000..46988a7
--- /dev/null
+++ b/tools/m4/filelist.am
@@ -0,0 +1,33 @@
+## This file is part of glibmm.
+
+files_codegen_m4 =			\
+	base.m4				\
+	class_boxedtype.m4		\
+	class_boxedtype_static.m4	\
+	class_generic.m4		\
+	class_gobject.m4		\
+	class_gtkobject.m4		\
+	class_interface.m4		\
+	class_opaque_copyable.m4	\
+	class_opaque_refcounted.m4	\
+	class_shared.m4			\
+	compare.m4			\
+	convert.m4			\
+	convert_atk.m4			\
+	convert_base.m4			\
+	convert_gdk.m4			\
+	convert_gio.m4			\
+	convert_glib.m4			\
+	convert_gtk.m4			\
+	convert_gtkmm.m4		\
+	convert_pango.m4		\
+	ctor.m4				\
+	doc.m4				\
+	enum.m4				\
+	gerror.m4			\
+	list.m4				\
+	member.m4			\
+	method.m4			\
+	property.m4			\
+	signal.m4			\
+	vfunc.m4
diff --git a/tools/pm/filelist.am b/tools/pm/filelist.am
new file mode 100644
index 0000000..11394c0
--- /dev/null
+++ b/tools/pm/filelist.am
@@ -0,0 +1,13 @@
+## This file is part of glibmm.
+
+files_codegen_pm =	\
+	DocsParser.pm	\
+	Enum.pm		\
+	Function.pm	\
+	FunctionBase.pm	\
+	GtkDefs.pm	\
+	Object.pm	\
+	Output.pm	\
+	Property.pm	\
+	Util.pm		\
+	WrapParser.pm



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