[glibmm] Convert gio/ sub-tree to new build system



commit 11aada290cebfa8afc5e1354dfc13cf52faa95b1
Author: Daniel Elstner <daniel kitta gmail com>
Date:   Sun Aug 9 08:18:35 2009 +0200

    Convert gio/ sub-tree to new build system
    
    * gio/src/filelist.am: New file for defining the lists of
    gmmproc input files.
    * gio/src/Makefile.am: Clean up and modernize.  Integrate
    with the new generate-binding.am build file from mm-common.
    * gio/giomm/filelist.am: New file for the lists of source
    code files, both generated and static.  Also list files from
    the private/ subdirectory here.
    * gio/giomm/Makefile.am: Clean up and modernize.  Integrate
    with the new compile-binding.am build file from mm-common.
    * configure.ac (AC_CONFIG_FILES): Remove the output file
    gio/giomm/private/Makefile from the list.
    * gio/giomm/private/Makefile.am: Delete file.
    * gio/src/Makefile_list_of_hg.am_fragment: Delete file.

 ChangeLog                               |   18 +++++++
 configure.ac                            |    1 -
 gio/giomm/Makefile.am                   |   55 ++++++++++++-----------
 gio/giomm/filelist.am                   |    8 +++
 gio/giomm/private/Makefile.am           |   14 ------
 gio/src/Makefile.am                     |   33 ++++++++++---
 gio/src/Makefile_list_of_hg.am_fragment |   61 -------------------------
 gio/src/filelist.am                     |   76 +++++++++++++++++++++++++++++++
 8 files changed, 156 insertions(+), 110 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index fc0241f..572fd92 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,23 @@
 2009-08-09  Daniel Elstner  <danielk openismus com>
 
+	Convert gio/ sub-tree to new build system
+
+	* gio/src/filelist.am: New file for defining the lists of
+	gmmproc input files.
+	* gio/src/Makefile.am: Clean up and modernize.  Integrate
+	with the new generate-binding.am build file from mm-common.
+	* gio/giomm/filelist.am: New file for the lists of source
+	code files, both generated and static.  Also list files from
+	the private/ subdirectory here.
+	* gio/giomm/Makefile.am: Clean up and modernize.  Integrate
+	with the new compile-binding.am build file from mm-common.
+	* configure.ac (AC_CONFIG_FILES): Remove the output file
+	gio/giomm/private/Makefile from the list.
+	* gio/giomm/private/Makefile.am: Delete file.
+	* gio/src/Makefile_list_of_hg.am_fragment: Delete file.
+
+2009-08-09  Daniel Elstner  <danielk openismus com>
+
 	Convert glib/ sub-tree to new build system
 
 	* glib/src/filelist.am: New file for defining the lists of
diff --git a/configure.ac b/configure.ac
index a7cc580..c3666ef 100644
--- a/configure.ac
+++ b/configure.ac
@@ -163,7 +163,6 @@ AC_CONFIG_FILES([
   gio/giomm-2.4.pc
     gio/src/Makefile
     gio/giomm/Makefile
-      gio/giomm/private/Makefile
 
   tools/Makefile
   tools/gmmproc
diff --git a/gio/giomm/Makefile.am b/gio/giomm/Makefile.am
index 4c93153..9b0f52f 100644
--- a/gio/giomm/Makefile.am
+++ b/gio/giomm/Makefile.am
@@ -1,33 +1,36 @@
-## Copyright (c) 2007
-## The gtkmm development team.
+## 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/>.
 
-SUBDIRS			= private
+lib_LTLIBRARIES = libgiomm-2.4.la
 
-sublib_name		= giomm
-sublib_libname		= giomm-2.4
-sublib_libversion       = $(LIBGLIBMM_SO_VERSION)
-sublib_namespace	= Gio
-sublib_cflags		= $(GIOMM_CFLAGS)
-sublib_topdir = gio
-sublib_win32_dlls_libs	=
+include $(srcdir)/../src/filelist.am
+include $(srcdir)/filelist.am
+include $(top_srcdir)/build/compile-binding.am
 
-sublib_files_extra_posix_cc =
-sublib_files_extra_win32_cc =
-sublib_files_extra_general_cc = init.cc contenttype.cc slot_async.cc
-sublib_files_extra_general_deprecated_cc = 
+dist_noinst_HEADERS = slot_async.h
 
-sublib_files_extra_posix_h =
-sublib_files_extra_win32_h =
-sublib_files_extra_general_h = init.h contenttype.h
-sublib_files_extra_general_deprecated_h = 
+local_includes = -I$(top_builddir)/glib $(if $(srcdir:.=),-I$(top_srcdir)/glib)
+local_cppflags = $(binding_includes) $(local_includes) $(binding_cppflags)
 
-include $(top_srcdir)/build_shared/Makefile_build.am_fragment
+AM_CPPFLAGS = $(local_cppflags) $(GTHREAD_CFLAGS) $(GIOMM_CFLAGS)
+AM_CXXFLAGS = $(GLIBMM_WXXFLAGS)
 
-lib_LTLIBRARIES		= libgiomm-2.4.la
-libgiomm_2_4_la_SOURCES	= $(files_built_cc) $(files_extra_cc)
-libgiomm_2_4_la_LDFLAGS	= $(common_ldflags)
-libgiomm_2_4_la_LIBADD	= $(GIOMM_LIBS) \
-                          $(top_builddir)/glib/glibmm/libglibmm-2.4.la
+local_libadd = $(top_builddir)/glib/glibmm/libglibmm-$(GLIBMM_API_VERSION).la
 
-# this header should be distributed, but not installed
-EXTRA_DIST=slot_async.h
+libgiomm_2_4_la_SOURCES = $(binding_sources)
+libgiomm_2_4_la_LDFLAGS = -no-undefined -version-info $(LIBGLIBMM_SO_VERSION)
+libgiomm_2_4_la_LIBADD  = $(GIOMM_LIBS) $(local_libadd)
diff --git a/gio/giomm/filelist.am b/gio/giomm/filelist.am
new file mode 100644
index 0000000..3c79eaa
--- /dev/null
+++ b/gio/giomm/filelist.am
@@ -0,0 +1,8 @@
+## This file is part of glibmm.
+
+files_built_cc = $(files_any_hg:.hg=.cc) $(files_arch_hg:.hg=.cc) wrap_init.cc
+files_built_h  = $(files_any_hg:.hg=.h) $(files_arch_hg:.hg=.h)
+files_built_ph = $(files_any_hg:%.hg=private/%_p.h) $(files_arch_hg:%.hg=private/%_p.h)
+
+files_extra_cc = contenttype.cc init.cc slot_async.cc
+files_extra_h  = contenttype.h init.h
diff --git a/gio/giomm/private/.gitignore b/gio/giomm/private/.gitignore
new file mode 100644
index 0000000..e69de29
diff --git a/gio/src/Makefile.am b/gio/src/Makefile.am
index cd08120..e281d4e 100644
--- a/gio/src/Makefile.am
+++ b/gio/src/Makefile.am
@@ -1,11 +1,28 @@
-## Copyright (c) 2007
-## The gtkmm development team.
+## 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/>.
 
-sublib_name = giomm
-sublib_namespace = Gio
-sublib_parentdir = giomm
-files_defs = gio.defs gio_methods.defs gio_signals.defs gio_enums.defs \
-             gio_docs.xml gio_docs_override.xml gio_vfuncs.defs gio_others.defs
+# Override code generator commands to use the uninstalled tools.
+gmmproc       = $(PERL) -- $(top_builddir)/tools/gmmproc
+gen_wrap_init = $(PERL) -- $(top_builddir)/tools/generate_wrap_init.pl
 
-include $(top_srcdir)/build_shared/Makefile_gensrc.am_fragment
+binding_name    = giomm
+wrap_init_flags = --namespace=Gio --parent_dir=giomm
+codegen_srcdir  = $(top_srcdir)/tools
 
+include $(srcdir)/filelist.am
+include $(top_srcdir)/tools/m4/filelist.am
+include $(top_srcdir)/build/generate-binding.am
diff --git a/gio/src/filelist.am b/gio/src/filelist.am
new file mode 100644
index 0000000..0d35fb4
--- /dev/null
+++ b/gio/src/filelist.am
@@ -0,0 +1,76 @@
+## This file is part of glibmm.
+
+files_defs =				\
+	gio.defs			\
+	gio_enums.defs			\
+	gio_methods.defs		\
+	gio_others.defs			\
+	gio_signals.defs		\
+	gio_vfuncs.defs			\
+	gio_docs.xml			\
+	gio_docs_override.xml
+
+files_any_hg =				\
+	appinfo.hg			\
+	asyncresult.hg			\
+	bufferedinputstream.hg		\
+	bufferedoutputstream.hg		\
+	cancellable.hg			\
+	datainputstream.hg		\
+	dataoutputstream.hg		\
+	drive.hg			\
+	emblem.hg			\
+	emblemedicon.hg			\
+	enums.hg			\
+	error.hg			\
+	file.hg				\
+	fileattributeinfo.hg		\
+	fileattributeinfolist.hg	\
+	fileenumerator.hg		\
+	fileicon.hg			\
+	fileinfo.hg			\
+	fileinputstream.hg		\
+	fileiostream.hg			\
+	filemonitor.hg			\
+	filenamecompleter.hg		\
+	fileoutputstream.hg		\
+	filterinputstream.hg		\
+	filteroutputstream.hg		\
+	icon.hg				\
+	inetaddress.hg			\
+	inetsocketaddress.hg		\
+	initable.hg			\
+	inputstream.hg			\
+	iostream.hg			\
+	loadableicon.hg			\
+	memoryinputstream.hg		\
+	memoryoutputstream.hg		\
+	mount.hg			\
+	mountoperation.hg		\
+	networkaddress.hg		\
+	networkservice.hg		\
+	outputstream.hg			\
+	resolver.hg			\
+	seekable.hg			\
+	socket.hg			\
+	socketaddress.hg		\
+	socketaddressenumerator.hg	\
+	socketconnectable.hg		\
+	srvtarget.hg			\
+	themedicon.hg			\
+	volume.hg			\
+	volumemonitor.hg
+
+files_posix_hg =			\
+	desktopappinfo.hg		\
+	unixinputstream.hg		\
+	unixoutputstream.hg
+
+if OS_WIN32
+files_arch_hg =
+else
+files_arch_hg = $(files_posix_hg)
+endif
+
+files_hg  = $(files_any_hg) $(files_posix_hg)
+files_ccg = $(files_hg:.hg=.ccg)



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