[glibmm] Remove glib/Makefile.am and gio/Makefile.am



commit 6279a09db443a03e0cefe55202ed110c4f97f2ab
Author: Daniel Elstner <danielk openismus com>
Date:   Sat Aug 8 19:28:19 2009 +0200

    Remove glib/Makefile.am and gio/Makefile.am
    
    * Makefile.am: Move things from glib/Makefile.am and gio/Makefile.am
    to the toplevel.  Remove the improvised custom convenience rules for
    now.
    (SUBDIRS): Enter the glib/src, gio/src, glib/glibmm and gio/giomm
    subdirectories directly from the toplevel.  Use indirect variables
    to define the conditionally entered subdirectories.
    * configure.ac: Call macros from mm-common for preparing the build of
    the reference documentation.  Remove {glib,gio}/Makefile.am from the
    AC_CONFIG_FILES list.  Avoid repeating the version requirement for all
    the basic g* libraries when constructing the list of dependencies for
    pkg-config.
    * {glib,gio}/Makefile.am: Remove files.

 ChangeLog        |   17 +++++
 Makefile.am      |  203 ++++++++++++------------------------------------------
 configure.ac     |   46 +++++++-----
 gio/Makefile.am  |   13 ----
 glib/Makefile.am |   12 ---
 5 files changed, 88 insertions(+), 203 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index eb784b2..2ccb65c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,20 @@
+2009-08-08  Daniel Elstner  <danielk openismus com>
+
+	Remove glib/Makefile.am and gio/Makefile.am
+
+	* Makefile.am: Move things from glib/Makefile.am and gio/Makefile.am
+	to the toplevel.  Remove the improvised custom convenience rules for
+	now.
+	(SUBDIRS): Enter the glib/src, gio/src, glib/glibmm and gio/giomm
+	subdirectories directly from the toplevel.  Use indirect variables
+	to define the conditionally entered subdirectories.
+	* configure.ac: Call macros from mm-common for preparing the build of
+	the reference documentation.  Remove {glib,gio}/Makefile.am from the
+	AC_CONFIG_FILES list.  Avoid repeating the version requirement for all
+	the basic g* libraries when constructing the list of dependencies for
+	pkg-config.
+	* {glib,gio}/Makefile.am: Remove files.
+
 2009-08-07  Daniel Elstner  <danielk openismus com>
 
 	Begin transition to new build infrastructure
diff --git a/Makefile.am b/Makefile.am
index f2ebb78..c5c771b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,159 +1,46 @@
-ACLOCAL_AMFLAGS	= -I scripts ${ACLOCAL_FLAGS}
-
-SUBDIRS		= tools glib gio examples scripts tests MSVC_Net2005 MSVC_Net2008 docs
-DIST_SUBDIRS	= $(SUBDIRS)
-
-EXTRA_DIST	= build_shared/Makefile_build.am_fragment \
-		  build_shared/Makefile_build_gensrc.am_fragment \
-		  build_shared/Makefile_gensrc.am_fragment \
-		  build_shared/Makefile_conditional.am_fragment \
-		  README.win32 \
-                  COPYING COPYING.tools
-
-
-all-local:
-	@echo "*** Everything completed ***"
-
-dist-hook:
-	@echo; echo; \
-	echo "**********************************************************"; \
-	echo "* IMPORTANT NOTICE:                                      *"; \
-	echo "*                                                        *"; \
-	echo "* Be sure you have done a complete build before running  *"; \
-	echo "* 'make dist' or 'make distcheck', because otherwise     *"; \
-	echo "* the tarball will _not_ contain the dependency rules    *"; \
-	echo "* generated by the compiler.                             *"; \
-	echo "**********************************************************"; \
-	echo; echo
-
-
-include $(top_srcdir)/docs/Makefile_web.am_fragment
-
-doc_tarball_files = \
-	docs/images/*.gif \
-	docs/internal/*.txt docs/internal/*.dia docs/reference/html
-
-# This doesn't work very well in a $(srcdir) != $(builddir) setup,
-# but this target is for maintainer use only anyway.
-
-glibmm-docs.tar.gz:
-	find examples -name '*.cc' -o -name '*.h' -o -name '*.xpm' -o -name '*.xml' | \
-	tar cf - --files-from - $(doc_tarball_files) | gzip -c --best >$@
-
-# Upload documentation and examples:
-
-post-html-recursive:
-	list='docs examples'; for subdir in $$list; do \
-	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) post-html); \
-	done
-
-post-html-local: glibmm-docs.tar.gz
-	rsync $(rsync_args) glibmm-docs.tar.gz $$USER $(web_host):$(web_path_gtkmm)
-
-post-html: post-html-recursive post-html-local
-
-doc-clean-recursive:
-	(cd docs && $(MAKE) $(AM_MAKEFLAGS) doc-clean)
-
-doc-clean: doc-clean-recursive
-
-doc-rebuild:
-	(cd docs && $(MAKE) $(AM_MAKEFLAGS) doc-rebuild)
-
-GIT = $(top_srcdir)/scripts/missing --run git
-
-tag-release: distcheck
-	$(GIT) tag -s -m "$(PACKAGE) release $(VERSION)" $(PACKAGE)-$(VERSION)
-	@echo "Release Tagged."
-
-upload-release: tag-release
-	scp $(DIST_ARCHIVES) master.gnome.org:
-	@echo "Tarball uploaded.  Now run install-module on master.gnome.org"
-	@echo "[hint: make install-module]"
-
-RELEASE_ANNOUNCE_LIST = gnome-announce-list gnome org, gtkmm-list gnome org
-release-announce:
-	@echo "Please send the following announcement to:"
-	@echo "$(RELEASE_ANNOUNCE_LIST)"
-	@echo ""
-	@echo "Subject: ANNOUNCE: $(PACKAGE) $(VERSION) released"
-	@echo ""
-	@echo "============================== CUT HERE =============================="
-	@echo "* ABOUT $(PACKAGE) *"
-	@echo ""
-	@echo "  $(PACKAGE) is a C++ API for glib and gio.  It is useful on its own "
-	@echo "  and is a dependency of gtkmm, the C++ API for GTK+."
-	@echo ""
-	@echo "  $(PACKAGE) $(GLIBMM_RELEASE) wraps new API in glib $(GLIBMM_RELEASE), including the gio library, "
-	@echo "  and is API/ABI-compatibile with older versions of glibmm back to "
-	@echo "  version 2.4. It is a version of the glibmm-2.4 API."
-	@echo ""
-	@echo "  For more information, please visit http://gtkmm.org/";
-	@echo ""
-	@echo "* DOWNLOAD *"
-	@echo ""
-	@echo "  Source packages for $(PACKAGE) (as well as API-stable bindings for the "
-	@echo "  rest of the GNOME platform) can be downloaded from:"
-	@echo ""
-	@echo "    http://www.gtkmm.org/download.shtml";
-	@echo ""
-	@echo "* DEVELOPMENT *"
-	@echo ""
-	@echo "  There is active discussion on the mailing list: "
-	@echo "  http://www.gtkmm.org/mailinglist.shtml";
-	@echo "  and in the #c++ channel on irc.gnome.org"
-	@echo ""
-	@echo "  gtkmm and $(PACKAGE) stay in-sync with GTK+ by following the official "
-	@echo "  GNOME release schedule:"
-	@echo ""
-	@echo "    http://www.gnome.org/start/unstable/";
-	@echo ""
-	@echo "* CHANGES *"
-	@echo ""
-	@echo "  --- INSERT NEWS HERE ---"
-	@echo "============================== CUT HERE =============================="
-
-install-module:
-	ssh master.gnome.org install-module $(DIST_ARCHIVES)
-
-release: upload-release release-announce
-
-#FIXME: use generic paths, rather than my particular paths
-H2DEF = env python /opt/gnome2/share/pygobject/2.0/codegen/h2def.py
-DEFS_INC_DIR = /opt/gnome2/include
-GEN_ENUM = env perl ./tools/enum.pl
-GEN_EXTRA_DEFS_GLIB = ./tools/extra_defs_gen/generate_extra_defs
-GEN_EXTRA_DEFS_GIO = ./tools/extra_defs_gen/generate_defs_gio
-DOCEXTRACT = /home/jonathon/gnome-build/pygobject/codegen/docextract_to_xml.py
-
-defs: glib-defs gio-defs docextract
-	@echo
-	@echo "*** Make sure to examine the .defs files to make sure they look reasonable"
-	@echo
-
-glib-defs:
-	$(H2DEF) $(DEFS_INC_DIR)/glib-2.0/glib/*.h > glib/src/glib_functions.defs
-	$(H2DEF) $(DEFS_INC_DIR)/glib-2.0/gobject/*.h > glib/src/gobject_functions.defs
-	$(H2DEF) $(DEFS_INC_DIR)/glib-2.0/gmodule.h > glib/src/gmodule_functions.defs
-	$(GEN_ENUM) $(DEFS_INC_DIR)/glib-2.0/glib/*.h > glib/src/glib_enums.defs
-	$(GEN_ENUM) $(DEFS_INC_DIR)/glib-2.0/gobject/*.h > glib/src/gobject_enums.defs
-	$(GEN_ENUM) $(DEFS_INC_DIR)/glib-2.0/gmodule.h > glib/src/gmodule_enums.defs
-
-gio-defs:
-	$(H2DEF) $(DEFS_INC_DIR)/glib-2.0/gio/*.h \
-		$(DEFS_INC_DIR)/gio-unix-2.0/gio/*.h > gio/src/gio_methods.defs
-	$(GEN_ENUM) $(DEFS_INC_DIR)/glib-2.0/gio/*.h \
-		$(DEFS_INC_DIR)/gio-unix-2.0/gio/*.h > gio/src/gio_enums.defs
-	$(GEN_EXTRA_DEFS_GIO) > gio/src/gio_signals.defs
-
-docextract:
-	$(DOCEXTRACT) -s ../glib/glib \
-		-s ../glib/docs/reference/glib \
-		-s ../glib/gobject \
-		-s ../glib/docs/reference/gobject > glib/src/glib_docs.xml
-	$(DOCEXTRACT) -s ../glib/gio \
-		-s ../glib/docs/reference/gio > gio/src/gio_docs.xml
-
-
-.PHONY: post-html post-html-local post-html-recursive doc-clean doc-clean-recursive doc-rebuild release tag-release upload-release release-announce install-module defs glib-defs gio-defs docextract
+## 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/>.
 
+ACLOCAL_AMFLAGS	= -I scripts ${ACLOCAL_FLAGS}
+DISTCHECK_CONFIGURE_FLAGS = --enable-warnings=fatal
+
+if MAINTAINER_MODE
+src_subdirs = tools glib/src gio/src
+else
+src_subdirs =
+endif
+if ENABLE_DOCUMENTATION
+doc_subdirs = docs
+else
+doc_subdirs =
+endif
+SUBDIRS = $(src_subdirs) glib/glibmm gio/giomm tests examples $(doc_subdirs) MSVC_Net2005 MSVC_Net2008
+
+glibmm_includedir = $(includedir)/$(GLIBMM_MODULE_NAME)
+glibmm_include_HEADERS = glib/glibmm.h
+glibmm_libincludedir = $(libdir)/$(GLIBMM_MODULE_NAME)/include
+nodist_glibmm_libinclude_HEADERS = glib/glibmmconfig.h
+
+giomm_includedir = $(includedir)/$(GIOMM_MODULE_NAME)
+giomm_include_HEADERS = gio/giomm.h
+giomm_libincludedir = $(libdir)/$(GIOMM_MODULE_NAME)/include
+nodist_giomm_libinclude_HEADERS = gio/giommconfig.h
+
+pkgconfigdir = $(libdir)/pkgconfig
+nodist_pkgconfig_DATA = glib/$(GLIBMM_MODULE_NAME).pc gio/$(GIOMM_MODULE_NAME).pc
+
+dist_noinst_DATA = README.win32 COPYING.tools glib/README gio/README
diff --git a/configure.ac b/configure.ac
index 27176e5..159dace 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,16 +1,19 @@
-# Configure.in
-#
-#  This file tests for various compiler features needed to configure 
-#  the gtkmm package.  Original skeleton was provided by Stephan Kulow.
-#  All tests were written by Tero Pulkkinen, Mirko Streckenbach, and 
-#  Karl Nelson.
-#
-#  NOTE! IF YOU DO CHANGES HERE, CHECK IF YOU NEED TO MODIFY .m4 TOO!!!
-#
-#  Copyright 2001 Free Software Foundation
-#  Copyright 1999 gtkmm Development Team
-#  Copyright 1998 Stephan Kulow 
-#
+## 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/>.
 
 AC_INIT([glibmm], [2.21.3], [http://bugzilla.gnome.org/enter_bug.cgi?product=glibmm],
         [glibmm], [http://www.gtkmm.org/])
@@ -55,12 +58,13 @@ AS_IF([test "x$enable_static" = xyes],
 
 AC_CHECK_FUNCS([flockfile funlockfile getc_unlocked mkfifo])
 
-GLIBMM_MODULES='sigc++-2.0 >= 2.0 glib-2.0 >= 2.21.1 gobject-2.0 >= 2.21.1 gmodule-2.0 >= 2.21.1'
-PKG_CHECK_MODULES([GLIBMM], [$GLIBMM_MODULES])
+glibreq='2.0 >= 2.21.1'
+GLIBMM_MODULES="sigc++-2.0 >= 2.0 glib-$glibreq gobject-$glibreq gmodule-$glibreq"
+GIOMM_MODULES="$GLIBMM_MODULES gio-$glibreq"
+test "x$glibmm_os_win32" = xyes || GIOMM_MODULES="$GIOMM_MODULES gio-unix-$glibreq"
 
-GIOMM_MODULES="$GLIBMM_MODULES gio-2.0 >= 2.21.1"
-test "x$glibmm_os_win32" = xyes || GIOMM_MODULES="$GIOMM_MODULES gio-unix-2.0 >= 2.21.1"
-PKG_CHECK_MODULES([GIOMM], [$GIOMM_MODULES])
+PKG_CHECK_MODULES([GLIBMM], [$GLIBMM_MODULES])
+PKG_CHECK_MODULES([GIOMM],  [$GIOMM_MODULES])
 
 MM_PKG_CONFIG_SUBST([GTHREAD_CFLAGS], [--cflags-only-other gthread-2.0])
 MM_PKG_CONFIG_SUBST([GTHREAD_LIBS], [--libs gthread-2.0])
@@ -117,6 +121,10 @@ GLIBMM_C_STD_TIME_T_IS_NOT_INT32
 # TODO: kill
 GTKMM_DOXYGEN_INPUT_SUBDIRS([glib gio])
 
+MM_ARG_ENABLE_DOCUMENTATION
+MM_ARG_WITH_TAGFILE_DOC([libstdc++.tag], [mm-common-libstdc++])
+MM_ARG_WITH_TAGFILE_DOC([libsigc++-2.0.tag], [sigc++-2.0])
+
 # Check whether --enable-debug-refcounting was given.
 GLIBMM_ARG_ENABLE_DEBUG_REFCOUNTING
 
@@ -148,13 +156,11 @@ AM_CONDITIONAL(GTKMM_FALSE,[false])
 AC_CONFIG_FILES([
   Makefile
 
-  glib/Makefile
   glib/glibmm-2.4.pc
     glib/src/Makefile
     glib/glibmm/Makefile
       glib/glibmm/private/Makefile
   
-  gio/Makefile
   gio/giomm-2.4.pc
     gio/src/Makefile
     gio/giomm/Makefile



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