mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-13 18:16:35 +01:00
Remove ancient/unused flowcanvas and libglademm from repository.
Update libraries to latest stable released version (except gnomecanvasmm, which is strangely packaged...). Fixes building (at least here). git-svn-id: svn://localhost/ardour2/trunk@2790 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
0e31c56591
commit
35fc31a1de
1550 changed files with 362440 additions and 73136 deletions
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1 +0,0 @@
|
|||
# dummy
|
||||
|
|
@ -1,908 +0,0 @@
|
|||
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||
# glib/glibmm/Makefile. Generated from Makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
|
||||
|
||||
|
||||
srcdir = .
|
||||
top_srcdir = ../..
|
||||
|
||||
pkgdatadir = $(datadir)/glibmm
|
||||
pkglibdir = $(libdir)/glibmm
|
||||
pkgincludedir = $(includedir)/glibmm
|
||||
top_builddir = ../..
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = /usr/bin/install -c
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = i686-pc-linux-gnu
|
||||
host_triplet = i686-pc-linux-gnu
|
||||
DIST_COMMON = $(am__sublib_include_HEADERS_DIST) \
|
||||
$(srcdir)/../src/Makefile_list_of_hg.am_fragment \
|
||||
$(srcdir)/Makefile.am $(srcdir)/Makefile.in \
|
||||
$(top_srcdir)/build_shared/Makefile_build.am_fragment \
|
||||
$(top_srcdir)/build_shared/Makefile_build_extra.am_fragment \
|
||||
$(top_srcdir)/build_shared/Makefile_build_gensrc.am_fragment \
|
||||
$(top_srcdir)/build_shared/Makefile_gensrc_platform.am_fragment
|
||||
subdir = glib/glibmm
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/scripts/cxx.m4 \
|
||||
$(top_srcdir)/scripts/cxx_std.m4 \
|
||||
$(top_srcdir)/scripts/docgen.m4 \
|
||||
$(top_srcdir)/scripts/glibmm_check_perl.m4 \
|
||||
$(top_srcdir)/scripts/macros.m4 \
|
||||
$(top_srcdir)/scripts/reduced.m4 $(top_srcdir)/scripts/sun.m4 \
|
||||
$(top_srcdir)/configure.in
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h \
|
||||
$(top_builddir)/glib/glibmmconfig.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(libdir)" \
|
||||
"$(DESTDIR)$(sublib_includedir)"
|
||||
libLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(lib_LTLIBRARIES)
|
||||
am__DEPENDENCIES_1 =
|
||||
libglibmm_2_4_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
am__libglibmm_2_4_la_SOURCES_DIST = convert.cc date.cc fileutils.cc \
|
||||
iochannel.cc keyfile.cc markup.cc module.cc optioncontext.cc \
|
||||
optionentry.cc optiongroup.cc shell.cc spawn.cc thread.cc \
|
||||
unicode.cc wrap_init.cc value_basictypes.cc class.cc \
|
||||
containers.cc debug.cc dispatcher.cc error.cc exception.cc \
|
||||
exceptionhandler.cc init.cc interface.cc main.cc miscutils.cc \
|
||||
object.cc objectbase.cc pattern.cc property.cc \
|
||||
propertyproxy.cc propertyproxy_base.cc quark.cc random.cc \
|
||||
signalproxy.cc signalproxy_connectionnode.cc \
|
||||
streamiochannel.cc stringutils.cc threadpool.cc timer.cc \
|
||||
timeval.cc ustring.cc utility.cc value.cc value_custom.cc \
|
||||
wrap.cc
|
||||
am__objects_1 = convert.lo date.lo fileutils.lo iochannel.lo \
|
||||
keyfile.lo markup.lo module.lo optioncontext.lo optionentry.lo \
|
||||
optiongroup.lo shell.lo spawn.lo thread.lo unicode.lo
|
||||
am__objects_2 = $(am__objects_1) wrap_init.lo value_basictypes.lo
|
||||
am__objects_3 = class.lo containers.lo debug.lo dispatcher.lo error.lo \
|
||||
exception.lo exceptionhandler.lo init.lo interface.lo main.lo \
|
||||
miscutils.lo object.lo objectbase.lo pattern.lo property.lo \
|
||||
propertyproxy.lo propertyproxy_base.lo quark.lo random.lo \
|
||||
signalproxy.lo signalproxy_connectionnode.lo \
|
||||
streamiochannel.lo stringutils.lo threadpool.lo timer.lo \
|
||||
timeval.lo ustring.lo utility.lo value.lo value_custom.lo \
|
||||
wrap.lo
|
||||
am__objects_4 =
|
||||
am__objects_5 = $(am__objects_3) $(am__objects_4)
|
||||
#am__objects_5 = $(am__objects_3) $(am__objects_4)
|
||||
am__objects_6 = $(am__objects_5)
|
||||
am__objects_7 = $(am__objects_2) $(am__objects_6)
|
||||
am__objects_8 = $(am__objects_4)
|
||||
am__objects_9 = $(am__objects_8)
|
||||
am_libglibmm_2_4_la_OBJECTS = $(am__objects_7) \
|
||||
$(am__objects_9)
|
||||
#am_libglibmm_2_4_la_OBJECTS = $(am__objects_7) \
|
||||
# $(am__objects_9)
|
||||
libglibmm_2_4_la_OBJECTS = $(am_libglibmm_2_4_la_OBJECTS)
|
||||
depcomp = $(SHELL) $(top_srcdir)/scripts/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
CXXLD = $(CXX)
|
||||
CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \
|
||||
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
SOURCES = $(libglibmm_2_4_la_SOURCES)
|
||||
DIST_SOURCES = $(am__libglibmm_2_4_la_SOURCES_DIST)
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
||||
html-recursive info-recursive install-data-recursive \
|
||||
install-exec-recursive install-info-recursive \
|
||||
install-recursive installcheck-recursive installdirs-recursive \
|
||||
pdf-recursive ps-recursive uninstall-info-recursive \
|
||||
uninstall-recursive
|
||||
am__sublib_include_HEADERS_DIST = convert.h date.h fileutils.h \
|
||||
iochannel.h keyfile.h markup.h module.h optioncontext.h \
|
||||
optionentry.h optiongroup.h shell.h spawn.h thread.h unicode.h \
|
||||
signalproxy.h value_basictypes.h arrayhandle.h class.h \
|
||||
containerhandle_shared.h containers.h debug.h dispatcher.h \
|
||||
error.h exception.h exceptionhandler.h helperlist.h init.h \
|
||||
i18n.h interface.h listhandle.h main.h miscutils.h object.h \
|
||||
objectbase.h pattern.h property.h propertyproxy.h \
|
||||
propertyproxy_base.h quark.h random.h refptr.h sarray.h \
|
||||
signalproxy_connectionnode.h slisthandle.h streamiochannel.h \
|
||||
stringutils.h threadpool.h timer.h timeval.h ustring.h \
|
||||
utility.h value.h value_custom.h wrap.h wrap_init.h
|
||||
sublib_includeHEADERS_INSTALL = $(INSTALL_HEADER)
|
||||
HEADERS = $(sublib_include_HEADERS)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
ACLOCAL = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run aclocal-1.9 -I ./scripts
|
||||
AMDEP_FALSE = #
|
||||
AMDEP_TRUE =
|
||||
AMTAR = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run tar
|
||||
AR = ar
|
||||
AS = as
|
||||
AUTOCONF = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run autoconf
|
||||
AUTOHEADER = :
|
||||
AUTOMAKE = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run automake-1.9
|
||||
AWK = mawk
|
||||
CC = gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = gcc -E
|
||||
CPPFLAGS =
|
||||
CXX = g++
|
||||
CXXCPP = g++ -E
|
||||
CXXDEPMODE = depmode=gcc3
|
||||
CXXFLAGS = -g -O2 -Wall -Wno-long-long
|
||||
CYGPATH_W = echo
|
||||
DEFS = -DHAVE_CONFIG_H $(strip $(extra_defines))
|
||||
DEPDIR = .deps
|
||||
DISABLE_DEPRECATED_API_CFLAGS =
|
||||
DISABLE_DEPRECATED_CFLAGS =
|
||||
DLLTOOL = dlltool
|
||||
ECHO = echo
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = grep -E
|
||||
EXEEXT =
|
||||
F77 =
|
||||
FFLAGS =
|
||||
GLIBMM_CFLAGS = -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
|
||||
GLIBMM_LIBS = -Wl,--export-dynamic -lsigc-2.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
|
||||
GLIBMM_MAJOR_VERSION = 2
|
||||
GLIBMM_MICRO_VERSION = 3
|
||||
GLIBMM_MINOR_VERSION = 13
|
||||
GLIBMM_RELEASE = 2.13
|
||||
GLIBMM_VERSION = 2.13.3
|
||||
GTHREAD_CFLAGS = -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
|
||||
GTHREAD_LIBS = -pthread -lgthread-2.0 -lrt -lglib-2.0
|
||||
GTKMMPROC_MERGECDOCS =
|
||||
GTKMM_DOXYGEN_INPUT = /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/glib/glibmm/
|
||||
GTKMM_FALSE_FALSE =
|
||||
GTKMM_FALSE_TRUE = #
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
|
||||
LDFLAGS =
|
||||
LIBGLIBMM_SO_VERSION = 1:24:0
|
||||
LIBOBJS =
|
||||
LIBS =
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LN_S = ln -s
|
||||
LTLIBOBJS =
|
||||
M4 = m4
|
||||
MAINT = #
|
||||
MAINTAINER_MODE_FALSE =
|
||||
MAINTAINER_MODE_TRUE = #
|
||||
MAKEINFO = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run makeinfo
|
||||
OBJDUMP = objdump
|
||||
OBJEXT = o
|
||||
OS_WIN32_FALSE =
|
||||
OS_WIN32_TRUE = #
|
||||
PACKAGE = glibmm
|
||||
PACKAGE_BUGREPORT =
|
||||
PACKAGE_NAME =
|
||||
PACKAGE_STRING =
|
||||
PACKAGE_TARNAME =
|
||||
PACKAGE_VERSION =
|
||||
PATH_SEPARATOR = :
|
||||
PERL_PATH = /usr/bin/perl
|
||||
PKG_CONFIG = /usr/bin/pkg-config
|
||||
PLATFORM_WIN32_FALSE =
|
||||
PLATFORM_WIN32_TRUE = #
|
||||
RANLIB = ranlib
|
||||
SET_MAKE =
|
||||
SHELL = /bin/bash
|
||||
STRIP = strip
|
||||
VERSION = 2.13.3
|
||||
ac_ct_AR = ar
|
||||
ac_ct_AS =
|
||||
ac_ct_CC = gcc
|
||||
ac_ct_CXX = g++
|
||||
ac_ct_DLLTOOL =
|
||||
ac_ct_F77 =
|
||||
ac_ct_OBJDUMP =
|
||||
ac_ct_RANLIB = ranlib
|
||||
ac_ct_STRIP = strip
|
||||
ac_pt_PKG_CONFIG = /usr/bin/pkg-config
|
||||
am__fastdepCC_FALSE = #
|
||||
am__fastdepCC_TRUE =
|
||||
am__fastdepCXX_FALSE = #
|
||||
am__fastdepCXX_TRUE =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = ${AMTAR} chof - "$$tardir"
|
||||
am__untar = ${AMTAR} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = i686-pc-linux-gnu
|
||||
build_alias =
|
||||
build_cpu = i686
|
||||
build_os = linux-gnu
|
||||
build_vendor = pc
|
||||
datadir = ${prefix}/share
|
||||
exec_prefix = ${prefix}
|
||||
host = i686-pc-linux-gnu
|
||||
host_alias =
|
||||
host_cpu = i686
|
||||
host_os = linux-gnu
|
||||
host_vendor = pc
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${prefix}/info
|
||||
install_sh = /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/install-sh
|
||||
libdir = ${exec_prefix}/lib
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${prefix}/man
|
||||
mkdir_p = mkdir -p --
|
||||
oldincludedir = /usr/include
|
||||
prefix = /usr/local
|
||||
program_transform_name = s,x,x,
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
sharedstatedir = ${prefix}/com
|
||||
sysconfdir = ${prefix}/etc
|
||||
target_alias =
|
||||
SUBDIRS = private
|
||||
sublib_name = glibmm
|
||||
sublib_libname = glibmm-2.4
|
||||
sublib_namespace = Glib
|
||||
sublib_cflags = $(GLIBMM_CFLAGS)
|
||||
sublib_files_extra_posix_cc =
|
||||
sublib_files_extra_win32_cc =
|
||||
sublib_files_extra_general_cc = \
|
||||
class.cc \
|
||||
containers.cc \
|
||||
debug.cc \
|
||||
dispatcher.cc \
|
||||
error.cc \
|
||||
exception.cc \
|
||||
exceptionhandler.cc \
|
||||
init.cc \
|
||||
interface.cc \
|
||||
main.cc \
|
||||
miscutils.cc \
|
||||
object.cc \
|
||||
objectbase.cc \
|
||||
pattern.cc \
|
||||
property.cc \
|
||||
propertyproxy.cc \
|
||||
propertyproxy_base.cc \
|
||||
quark.cc \
|
||||
random.cc \
|
||||
signalproxy.cc \
|
||||
signalproxy_connectionnode.cc \
|
||||
streamiochannel.cc \
|
||||
stringutils.cc \
|
||||
threadpool.cc \
|
||||
timer.cc \
|
||||
timeval.cc \
|
||||
ustring.cc \
|
||||
utility.cc \
|
||||
value.cc \
|
||||
value_custom.cc \
|
||||
wrap.cc
|
||||
|
||||
sublib_files_extra_posix_h =
|
||||
sublib_files_extra_win32_h =
|
||||
sublib_files_extra_general_h = \
|
||||
arrayhandle.h \
|
||||
class.h \
|
||||
containerhandle_shared.h \
|
||||
containers.h \
|
||||
debug.h \
|
||||
dispatcher.h \
|
||||
error.h \
|
||||
exception.h \
|
||||
exceptionhandler.h \
|
||||
helperlist.h \
|
||||
init.h \
|
||||
i18n.h \
|
||||
interface.h \
|
||||
iochannel.h \
|
||||
keyfile.h \
|
||||
listhandle.h \
|
||||
main.h \
|
||||
miscutils.h \
|
||||
object.h \
|
||||
objectbase.h \
|
||||
pattern.h \
|
||||
property.h \
|
||||
propertyproxy.h \
|
||||
propertyproxy_base.h \
|
||||
quark.h \
|
||||
random.h \
|
||||
refptr.h \
|
||||
sarray.h \
|
||||
signalproxy_connectionnode.h \
|
||||
slisthandle.h \
|
||||
streamiochannel.h \
|
||||
stringutils.h \
|
||||
threadpool.h \
|
||||
timer.h \
|
||||
timeval.h \
|
||||
ustring.h \
|
||||
utility.h \
|
||||
value.h \
|
||||
value_custom.h \
|
||||
wrap.h
|
||||
|
||||
files_posix_hg =
|
||||
files_win32_hg =
|
||||
files_general_hg = convert.hg date.hg fileutils.hg iochannel.hg keyfile.hg markup.hg module.hg optioncontext.hg optionentry.hg optiongroup.hg shell.hg spawn.hg thread.hg unicode.hg
|
||||
files_all_hg = $(files_general_hg) $(files_posix_hg) $(files_win32_hg)
|
||||
files_hg = $(files_general_hg) $(files_posix_hg)
|
||||
#files_hg = $(files_general_hg) $(files_win32_hg)
|
||||
files_built_general_cc = $(files_general_hg:.hg=.cc) wrap_init.cc \
|
||||
value_basictypes.cc
|
||||
files_built_general_h = $(files_general_hg:.hg=.h) signalproxy.h \
|
||||
value_basictypes.h
|
||||
files_built_posix_cc = $(files_posix_hg:.hg=.cc)
|
||||
files_built_posix_h = $(files_posix_hg:.hg=.h)
|
||||
files_built_win32_cc = $(files_win32_hg:.hg=.cc)
|
||||
files_built_win32_h = $(files_win32_hg:.hg=.h)
|
||||
files_built_all_cc = $(files_built_general_cc) \
|
||||
$(files_built_posix_cc) \
|
||||
$(files_built_win32_cc)
|
||||
|
||||
files_built_all_h = $(files_built_general_h) \
|
||||
$(files_built_posix_h) \
|
||||
$(files_built_win32_h)
|
||||
|
||||
files_extra_cc_tmp = $(sublib_files_extra_general_cc) $(sublib_files_extra_posix_cc)
|
||||
#files_extra_cc_tmp = $(sublib_files_extra_general_cc) $(sublib_files_extra_win32_cc)
|
||||
files_extra_h_tmp = $(sublib_files_extra_general_h) $(sublib_files_extra_posix_h)
|
||||
#files_extra_h_tmp = $(sublib_files_extra_general_h) $(sublib_files_extra_win32_h)
|
||||
files_extra_cc = $(files_extra_cc_tmp)
|
||||
files_extra_h = $(files_extra_h_tmp) wrap_init.h
|
||||
files_extra_all_cc = $(sublib_files_extra_general_cc) $(sublib_files_extra_posix_cc) $(sublib_files_extra_win32_cc)
|
||||
files_extra_all_h = $(sublib_files_extra_general_h) \
|
||||
$(sublib_files_extra_posix_h) $(sublib_files_extra_win32_h) \
|
||||
wrap_init.h
|
||||
files_all_general_cc = $(files_built_general_cc) $(files_extra_cc)
|
||||
files_all_posix_cc = $(files_built_posix_cc)
|
||||
files_all_win32_cc = $(files_built_win32_cc)
|
||||
extra_win32_defines =
|
||||
|
||||
# Support for DLL on mingw using libtool > 1.4
|
||||
# When creating DLLs on win32, we need to explicitly add a few extra
|
||||
# libraries at link time to resolve symbols (remember a dll is like an
|
||||
# executable).
|
||||
#extra_win32_defines = \
|
||||
# -D$(shell echo $(sublib_name) | tr [:lower:] [:upper:])_BUILD
|
||||
|
||||
no_undefined =
|
||||
#no_undefined = -no-undefined -Wl,--export-all-symbols
|
||||
win32_dlls_extra_libs =
|
||||
#win32_dlls_extra_libs = $(sublib_win32_dlls_libs)
|
||||
common_ldflags = -version-info $(LIBGLIBMM_SO_VERSION) $(no_undefined)
|
||||
all_includes = -I$(top_builddir)/glib -I$(top_srcdir)/glib \
|
||||
$(sublib_cflags) $(GTHREAD_CFLAGS)
|
||||
|
||||
extra_defines = -DG_LOG_DOMAIN=\"$(sublib_name)\" $(extra_win32_defines) \
|
||||
$(DISABLE_DEPRECATED_CFLAGS) $(DISABLE_DEPRECATED_API_CFLAGS)
|
||||
|
||||
dist_sources = $(files_built_all_cc) $(files_extra_all_cc) \
|
||||
$(files_built_all_h) $(files_extra_all_h)
|
||||
|
||||
DISTFILES = $(DIST_COMMON) $(dist_sources) $(TEXINFOS) $(EXTRA_DIST)
|
||||
DEFAULT_INCLUDES =
|
||||
INCLUDES = $(strip $(all_includes))
|
||||
sublib_includedir = $(includedir)/$(sublib_libname)/$(sublib_name)
|
||||
sublib_include_HEADERS = $(files_built_general_h) \
|
||||
$(files_built_posix_h) \
|
||||
$(files_extra_h)
|
||||
|
||||
#sublib_include_HEADERS = $(files_built_general_h) \
|
||||
# $(files_built_win32_h) \
|
||||
# $(files_extra_h)
|
||||
|
||||
lib_LTLIBRARIES = libglibmm-2.4.la
|
||||
libglibmm_2_4_la_SOURCES = $(files_all_general_cc) $(files_all_posix_cc)
|
||||
#libglibmm_2_4_la_SOURCES = $(files_all_general_cc) $(files_all_win32_cc)
|
||||
libglibmm_2_4_la_LDFLAGS = $(common_ldflags)
|
||||
libglibmm_2_4_la_LIBADD = $(GLIBMM_LIBS)
|
||||
all: all-recursive
|
||||
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .cc .lo .o .obj
|
||||
$(srcdir)/Makefile.in: # $(srcdir)/Makefile.am $(top_srcdir)/build_shared/Makefile_build_gensrc.am_fragment $(srcdir)/../src/Makefile_list_of_hg.am_fragment $(top_srcdir)/build_shared/Makefile_gensrc_platform.am_fragment $(top_srcdir)/build_shared/Makefile_build_extra.am_fragment $(top_srcdir)/build_shared/Makefile_build.am_fragment $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu glib/glibmm/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu glib/glibmm/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: # $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): # $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
|
||||
$(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
|
||||
else :; fi; \
|
||||
done
|
||||
|
||||
uninstall-libLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
|
||||
done
|
||||
|
||||
clean-libLTLIBRARIES:
|
||||
-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
|
||||
test "$$dir" != "$$p" || dir=.; \
|
||||
echo "rm -f \"$${dir}/so_locations\""; \
|
||||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libglibmm-2.4.la: $(libglibmm_2_4_la_OBJECTS) $(libglibmm_2_4_la_DEPENDENCIES)
|
||||
$(CXXLINK) -rpath $(libdir) $(libglibmm_2_4_la_LDFLAGS) $(libglibmm_2_4_la_OBJECTS) $(libglibmm_2_4_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
||||
distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
include ./$(DEPDIR)/class.Plo
|
||||
include ./$(DEPDIR)/containers.Plo
|
||||
include ./$(DEPDIR)/convert.Plo
|
||||
include ./$(DEPDIR)/date.Plo
|
||||
include ./$(DEPDIR)/debug.Plo
|
||||
include ./$(DEPDIR)/dispatcher.Plo
|
||||
include ./$(DEPDIR)/error.Plo
|
||||
include ./$(DEPDIR)/exception.Plo
|
||||
include ./$(DEPDIR)/exceptionhandler.Plo
|
||||
include ./$(DEPDIR)/fileutils.Plo
|
||||
include ./$(DEPDIR)/init.Plo
|
||||
include ./$(DEPDIR)/interface.Plo
|
||||
include ./$(DEPDIR)/iochannel.Plo
|
||||
include ./$(DEPDIR)/keyfile.Plo
|
||||
include ./$(DEPDIR)/main.Plo
|
||||
include ./$(DEPDIR)/markup.Plo
|
||||
include ./$(DEPDIR)/miscutils.Plo
|
||||
include ./$(DEPDIR)/module.Plo
|
||||
include ./$(DEPDIR)/object.Plo
|
||||
include ./$(DEPDIR)/objectbase.Plo
|
||||
include ./$(DEPDIR)/optioncontext.Plo
|
||||
include ./$(DEPDIR)/optionentry.Plo
|
||||
include ./$(DEPDIR)/optiongroup.Plo
|
||||
include ./$(DEPDIR)/pattern.Plo
|
||||
include ./$(DEPDIR)/property.Plo
|
||||
include ./$(DEPDIR)/propertyproxy.Plo
|
||||
include ./$(DEPDIR)/propertyproxy_base.Plo
|
||||
include ./$(DEPDIR)/quark.Plo
|
||||
include ./$(DEPDIR)/random.Plo
|
||||
include ./$(DEPDIR)/shell.Plo
|
||||
include ./$(DEPDIR)/signalproxy.Plo
|
||||
include ./$(DEPDIR)/signalproxy_connectionnode.Plo
|
||||
include ./$(DEPDIR)/spawn.Plo
|
||||
include ./$(DEPDIR)/streamiochannel.Plo
|
||||
include ./$(DEPDIR)/stringutils.Plo
|
||||
include ./$(DEPDIR)/thread.Plo
|
||||
include ./$(DEPDIR)/threadpool.Plo
|
||||
include ./$(DEPDIR)/timer.Plo
|
||||
include ./$(DEPDIR)/timeval.Plo
|
||||
include ./$(DEPDIR)/unicode.Plo
|
||||
include ./$(DEPDIR)/ustring.Plo
|
||||
include ./$(DEPDIR)/utility.Plo
|
||||
include ./$(DEPDIR)/value.Plo
|
||||
include ./$(DEPDIR)/value_basictypes.Plo
|
||||
include ./$(DEPDIR)/value_custom.Plo
|
||||
include ./$(DEPDIR)/wrap.Plo
|
||||
include ./$(DEPDIR)/wrap_init.Plo
|
||||
|
||||
.cc.o:
|
||||
if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(CXXCOMPILE) -c -o $@ $<
|
||||
|
||||
.cc.obj:
|
||||
if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
|
||||
then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
# source='$<' object='$@' libtool=no \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.cc.lo:
|
||||
if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
# source='$<' object='$@' libtool=yes \
|
||||
# DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) \
|
||||
# $(LTCXXCOMPILE) -c -o $@ $<
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool
|
||||
uninstall-info-am:
|
||||
install-sublib_includeHEADERS: $(sublib_include_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(sublib_includedir)" || $(mkdir_p) "$(DESTDIR)$(sublib_includedir)"
|
||||
@list='$(sublib_include_HEADERS)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(sublib_includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(sublib_includedir)/$$f'"; \
|
||||
$(sublib_includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(sublib_includedir)/$$f"; \
|
||||
done
|
||||
|
||||
uninstall-sublib_includeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(sublib_include_HEADERS)'; for p in $$list; do \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(sublib_includedir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(sublib_includedir)/$$f"; \
|
||||
done
|
||||
|
||||
# This directory's subdirectories are mostly independent; you can cd
|
||||
# into them and run `make' without going through this Makefile.
|
||||
# To change the values of `make' variables: instead of editing Makefiles,
|
||||
# (1) if the variable is set in `config.status', edit `config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run `make');
|
||||
# (2) otherwise, pass the desired values on the `make' command line.
|
||||
$(RECURSIVE_TARGETS):
|
||||
@failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
*=* | --[!k]*);; \
|
||||
*k*) failcom='fail=yes';; \
|
||||
esac; \
|
||||
done; \
|
||||
dot_seen=no; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
dot_seen=yes; \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done; \
|
||||
if test "$$dot_seen" = "no"; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||
fi; test -z "$$fail"
|
||||
|
||||
mostlyclean-recursive clean-recursive distclean-recursive \
|
||||
maintainer-clean-recursive:
|
||||
@failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
*=* | --[!k]*);; \
|
||||
*k*) failcom='fail=yes';; \
|
||||
esac; \
|
||||
done; \
|
||||
dot_seen=no; \
|
||||
case "$@" in \
|
||||
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
|
||||
*) list='$(SUBDIRS)' ;; \
|
||||
esac; \
|
||||
rev=''; for subdir in $$list; do \
|
||||
if test "$$subdir" = "."; then :; else \
|
||||
rev="$$subdir $$rev"; \
|
||||
fi; \
|
||||
done; \
|
||||
rev="$$rev ."; \
|
||||
target=`echo $@ | sed s/-recursive//`; \
|
||||
for subdir in $$rev; do \
|
||||
echo "Making $$target in $$subdir"; \
|
||||
if test "$$subdir" = "."; then \
|
||||
local_target="$$target-am"; \
|
||||
else \
|
||||
local_target="$$target"; \
|
||||
fi; \
|
||||
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|
||||
|| eval $$failcom; \
|
||||
done && test -z "$$fail"
|
||||
tags-recursive:
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
|
||||
done
|
||||
ctags-recursive:
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
|
||||
done
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
|
||||
include_option=--etags-include; \
|
||||
empty_fix=.; \
|
||||
else \
|
||||
include_option=--include; \
|
||||
empty_fix=; \
|
||||
fi; \
|
||||
list='$(SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test ! -f $$subdir/TAGS || \
|
||||
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
|
||||
fi; \
|
||||
done; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
$(mkdir_p) $(distdir)/../../build_shared $(distdir)/../src
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
|
||||
esac; \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||
dir="/$$dir"; \
|
||||
$(mkdir_p) "$(distdir)$$dir"; \
|
||||
else \
|
||||
dir=''; \
|
||||
fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -d "$(distdir)/$$subdir" \
|
||||
|| $(mkdir_p) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
distdir=`$(am__cd) $(distdir) && pwd`; \
|
||||
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
|
||||
(cd $$subdir && \
|
||||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="$$top_distdir" \
|
||||
distdir="$$distdir/$$subdir" \
|
||||
distdir) \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-recursive
|
||||
all-am: Makefile $(LTLIBRARIES) $(HEADERS)
|
||||
installdirs: installdirs-recursive
|
||||
installdirs-am:
|
||||
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(sublib_includedir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-recursive
|
||||
install-exec: install-exec-recursive
|
||||
install-data: install-data-recursive
|
||||
uninstall: uninstall-recursive
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-recursive
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-recursive
|
||||
|
||||
clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
mostlyclean-am
|
||||
|
||||
distclean: distclean-recursive
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags
|
||||
|
||||
dvi: dvi-recursive
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-recursive
|
||||
|
||||
info: info-recursive
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-sublib_includeHEADERS
|
||||
|
||||
install-exec-am: install-libLTLIBRARIES
|
||||
|
||||
install-info: install-info-recursive
|
||||
|
||||
install-man:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-recursive
|
||||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic \
|
||||
maintainer-clean-local
|
||||
|
||||
mostlyclean: mostlyclean-recursive
|
||||
|
||||
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
|
||||
mostlyclean-libtool
|
||||
|
||||
pdf: pdf-recursive
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-recursive
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES \
|
||||
uninstall-sublib_includeHEADERS
|
||||
|
||||
uninstall-info: uninstall-info-recursive
|
||||
|
||||
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
|
||||
clean clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
clean-recursive ctags ctags-recursive distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-recursive distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-exec install-exec-am install-info \
|
||||
install-info-am install-libLTLIBRARIES install-man \
|
||||
install-strip install-sublib_includeHEADERS installcheck \
|
||||
installcheck-am installdirs installdirs-am maintainer-clean \
|
||||
maintainer-clean-generic maintainer-clean-local \
|
||||
maintainer-clean-recursive mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool mostlyclean-recursive \
|
||||
pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
|
||||
uninstall-info-am uninstall-libLTLIBRARIES \
|
||||
uninstall-sublib_includeHEADERS
|
||||
|
||||
|
||||
maintainer-clean-local:
|
||||
(cd $(srcdir) && rm -f $(files_built_all_cc) $(files_built_all_h))
|
||||
|
||||
cvsignore:
|
||||
( \
|
||||
echo ".deps"; \
|
||||
echo ".libs"; \
|
||||
echo "*.la"; \
|
||||
echo "*.lo"; \
|
||||
echo "Makefile"; \
|
||||
echo "Makefile.in"; \
|
||||
echo; \
|
||||
list='$(strip $(files_built_all_cc) $(files_built_all_h))'; \
|
||||
for file in $$list; do \
|
||||
echo "$$file"; \
|
||||
done \
|
||||
) >$(srcdir)/.cvsignore
|
||||
( \
|
||||
echo "Makefile"; \
|
||||
echo "Makefile.in"; \
|
||||
echo; \
|
||||
list='$(strip $(files_all_hg:.hg=_p.h))'; \
|
||||
for file in $$list; do \
|
||||
echo "$$file"; \
|
||||
done \
|
||||
) >$(srcdir)/private/.cvsignore
|
||||
|
||||
.PHONY: cvsignore
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.10 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
|
@ -15,15 +15,11 @@
|
|||
@SET_MAKE@
|
||||
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = ../..
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
|
|
@ -46,8 +42,8 @@ DIST_COMMON = $(am__sublib_include_HEADERS_DIST) \
|
|||
$(top_srcdir)/build_shared/Makefile_gensrc_platform.am_fragment
|
||||
subdir = glib/glibmm
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/scripts/cxx.m4 \
|
||||
$(top_srcdir)/scripts/cxx_std.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/scripts/c_std.m4 \
|
||||
$(top_srcdir)/scripts/cxx.m4 $(top_srcdir)/scripts/cxx_std.m4 \
|
||||
$(top_srcdir)/scripts/docgen.m4 \
|
||||
$(top_srcdir)/scripts/glibmm_check_perl.m4 \
|
||||
$(top_srcdir)/scripts/macros.m4 \
|
||||
|
|
@ -73,8 +69,8 @@ am__DEPENDENCIES_1 =
|
|||
libglibmm_2_4_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
am__libglibmm_2_4_la_SOURCES_DIST = convert.cc date.cc fileutils.cc \
|
||||
iochannel.cc keyfile.cc markup.cc module.cc optioncontext.cc \
|
||||
optionentry.cc optiongroup.cc shell.cc spawn.cc thread.cc \
|
||||
unicode.cc wrap_init.cc value_basictypes.cc class.cc \
|
||||
optionentry.cc optiongroup.cc regex.cc shell.cc spawn.cc \
|
||||
thread.cc unicode.cc wrap_init.cc value_basictypes.cc class.cc \
|
||||
containers.cc debug.cc dispatcher.cc error.cc exception.cc \
|
||||
exceptionhandler.cc init.cc interface.cc main.cc miscutils.cc \
|
||||
object.cc objectbase.cc pattern.cc property.cc \
|
||||
|
|
@ -85,7 +81,7 @@ am__libglibmm_2_4_la_SOURCES_DIST = convert.cc date.cc fileutils.cc \
|
|||
wrap.cc
|
||||
am__objects_1 = convert.lo date.lo fileutils.lo iochannel.lo \
|
||||
keyfile.lo markup.lo module.lo optioncontext.lo optionentry.lo \
|
||||
optiongroup.lo shell.lo spawn.lo thread.lo unicode.lo
|
||||
optiongroup.lo regex.lo shell.lo spawn.lo thread.lo unicode.lo
|
||||
am__objects_2 = $(am__objects_1) wrap_init.lo value_basictypes.lo
|
||||
am__objects_3 = class.lo containers.lo debug.lo dispatcher.lo error.lo \
|
||||
exception.lo exceptionhandler.lo init.lo interface.lo main.lo \
|
||||
|
|
@ -107,44 +103,49 @@ am__objects_9 = $(am__objects_8)
|
|||
@OS_WIN32_TRUE@am_libglibmm_2_4_la_OBJECTS = $(am__objects_7) \
|
||||
@OS_WIN32_TRUE@ $(am__objects_9)
|
||||
libglibmm_2_4_la_OBJECTS = $(am_libglibmm_2_4_la_OBJECTS)
|
||||
libglibmm_2_4_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
|
||||
$(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
|
||||
$(CXXFLAGS) $(libglibmm_2_4_la_LDFLAGS) $(LDFLAGS) -o $@
|
||||
depcomp = $(SHELL) $(top_srcdir)/scripts/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \
|
||||
$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
|
||||
$(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
|
||||
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
|
||||
CXXLD = $(CXX)
|
||||
CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \
|
||||
$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
|
||||
--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
|
||||
$(LDFLAGS) -o $@
|
||||
SOURCES = $(libglibmm_2_4_la_SOURCES)
|
||||
DIST_SOURCES = $(am__libglibmm_2_4_la_SOURCES_DIST)
|
||||
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
|
||||
html-recursive info-recursive install-data-recursive \
|
||||
install-exec-recursive install-info-recursive \
|
||||
install-recursive installcheck-recursive installdirs-recursive \
|
||||
pdf-recursive ps-recursive uninstall-info-recursive \
|
||||
uninstall-recursive
|
||||
install-dvi-recursive install-exec-recursive \
|
||||
install-html-recursive install-info-recursive \
|
||||
install-pdf-recursive install-ps-recursive install-recursive \
|
||||
installcheck-recursive installdirs-recursive pdf-recursive \
|
||||
ps-recursive uninstall-recursive
|
||||
am__sublib_include_HEADERS_DIST = convert.h date.h fileutils.h \
|
||||
iochannel.h keyfile.h markup.h module.h optioncontext.h \
|
||||
optionentry.h optiongroup.h shell.h spawn.h thread.h unicode.h \
|
||||
signalproxy.h value_basictypes.h arrayhandle.h class.h \
|
||||
containerhandle_shared.h containers.h debug.h dispatcher.h \
|
||||
error.h exception.h exceptionhandler.h helperlist.h init.h \
|
||||
i18n.h interface.h listhandle.h main.h miscutils.h object.h \
|
||||
objectbase.h pattern.h property.h propertyproxy.h \
|
||||
propertyproxy_base.h quark.h random.h refptr.h sarray.h \
|
||||
signalproxy_connectionnode.h slisthandle.h streamiochannel.h \
|
||||
stringutils.h threadpool.h timer.h timeval.h ustring.h \
|
||||
utility.h value.h value_custom.h wrap.h wrap_init.h
|
||||
optionentry.h optiongroup.h regex.h shell.h spawn.h thread.h \
|
||||
unicode.h signalproxy.h value_basictypes.h arrayhandle.h \
|
||||
class.h containerhandle_shared.h containers.h debug.h \
|
||||
dispatcher.h error.h exception.h exceptionhandler.h \
|
||||
helperlist.h init.h i18n.h interface.h listhandle.h main.h \
|
||||
miscutils.h object.h objectbase.h pattern.h property.h \
|
||||
propertyproxy.h propertyproxy_base.h quark.h random.h refptr.h \
|
||||
sarray.h signalproxy_connectionnode.h slisthandle.h \
|
||||
streamiochannel.h stringutils.h threadpool.h timer.h timeval.h \
|
||||
ustring.h utility.h value.h value_custom.h wrap.h wrap_init.h
|
||||
sublib_includeHEADERS_INSTALL = $(INSTALL_HEADER)
|
||||
HEADERS = $(sublib_include_HEADERS)
|
||||
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
|
||||
distclean-recursive maintainer-clean-recursive
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DIST_SUBDIRS = $(SUBDIRS)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMDEP_FALSE = @AMDEP_FALSE@
|
||||
AMDEP_TRUE = @AMDEP_TRUE@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
|
|
@ -182,12 +183,12 @@ GLIBMM_MICRO_VERSION = @GLIBMM_MICRO_VERSION@
|
|||
GLIBMM_MINOR_VERSION = @GLIBMM_MINOR_VERSION@
|
||||
GLIBMM_RELEASE = @GLIBMM_RELEASE@
|
||||
GLIBMM_VERSION = @GLIBMM_VERSION@
|
||||
GREP = @GREP@
|
||||
GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
|
||||
GTHREAD_LIBS = @GTHREAD_LIBS@
|
||||
GTKMMPROC_MERGECDOCS = @GTKMMPROC_MERGECDOCS@
|
||||
GTKMM_DOXYGEN_INPUT = @GTKMM_DOXYGEN_INPUT@
|
||||
GTKMM_FALSE_FALSE = @GTKMM_FALSE_FALSE@
|
||||
GTKMM_FALSE_TRUE = @GTKMM_FALSE_TRUE@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
|
|
@ -201,13 +202,10 @@ LN_S = @LN_S@
|
|||
LTLIBOBJS = @LTLIBOBJS@
|
||||
M4 = @M4@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OS_WIN32_FALSE = @OS_WIN32_FALSE@
|
||||
OS_WIN32_TRUE = @OS_WIN32_TRUE@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
|
|
@ -217,27 +215,18 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
|
|||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PERL_PATH = @PERL_PATH@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
PLATFORM_WIN32_FALSE = @PLATFORM_WIN32_FALSE@
|
||||
PLATFORM_WIN32_TRUE = @PLATFORM_WIN32_TRUE@
|
||||
RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_AS = @ac_ct_AS@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_DLLTOOL = @ac_ct_DLLTOOL@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
|
||||
ac_ct_RANLIB = @ac_ct_RANLIB@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
|
|
@ -249,28 +238,39 @@ build_alias = @build_alias@
|
|||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
SUBDIRS = private
|
||||
sublib_name = glibmm
|
||||
sublib_libname = glibmm-2.4
|
||||
|
|
@ -357,7 +357,7 @@ sublib_files_extra_general_h = \
|
|||
|
||||
files_posix_hg =
|
||||
files_win32_hg =
|
||||
files_general_hg = convert.hg date.hg fileutils.hg iochannel.hg keyfile.hg markup.hg module.hg optioncontext.hg optionentry.hg optiongroup.hg shell.hg spawn.hg thread.hg unicode.hg
|
||||
files_general_hg = convert.hg date.hg fileutils.hg iochannel.hg keyfile.hg markup.hg module.hg optioncontext.hg optionentry.hg optiongroup.hg regex.hg shell.hg spawn.hg thread.hg unicode.hg
|
||||
files_all_hg = $(files_general_hg) $(files_posix_hg) $(files_win32_hg)
|
||||
@OS_WIN32_FALSE@files_hg = $(files_general_hg) $(files_posix_hg)
|
||||
@OS_WIN32_TRUE@files_hg = $(files_general_hg) $(files_win32_hg)
|
||||
|
|
@ -465,7 +465,7 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
|||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
|
||||
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
if test -f $$p; then \
|
||||
f=$(am__strip_dir) \
|
||||
|
|
@ -476,7 +476,7 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
|||
|
||||
uninstall-libLTLIBRARIES:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
|
||||
p=$(am__strip_dir) \
|
||||
echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
|
||||
$(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
|
||||
|
|
@ -491,7 +491,7 @@ clean-libLTLIBRARIES:
|
|||
rm -f "$${dir}/so_locations"; \
|
||||
done
|
||||
libglibmm-2.4.la: $(libglibmm_2_4_la_OBJECTS) $(libglibmm_2_4_la_DEPENDENCIES)
|
||||
$(CXXLINK) -rpath $(libdir) $(libglibmm_2_4_la_LDFLAGS) $(libglibmm_2_4_la_OBJECTS) $(libglibmm_2_4_la_LIBADD) $(LIBS)
|
||||
$(libglibmm_2_4_la_LINK) -rpath $(libdir) $(libglibmm_2_4_la_OBJECTS) $(libglibmm_2_4_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
|
|
@ -528,6 +528,7 @@ distclean-compile:
|
|||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/propertyproxy_base.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quark.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/random.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/shell.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/signalproxy.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/signalproxy_connectionnode.Plo@am__quote@
|
||||
|
|
@ -548,22 +549,22 @@ distclean-compile:
|
|||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wrap_init.Plo@am__quote@
|
||||
|
||||
.cc.o:
|
||||
@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
|
||||
|
||||
.cc.obj:
|
||||
@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
|
||||
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
|
||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
|
||||
|
||||
.cc.lo:
|
||||
@am__fastdepCXX_TRUE@ if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
|
||||
@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
|
||||
@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
|
||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
|
||||
|
|
@ -573,13 +574,9 @@ mostlyclean-libtool:
|
|||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool
|
||||
uninstall-info-am:
|
||||
install-sublib_includeHEADERS: $(sublib_include_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(sublib_includedir)" || $(mkdir_p) "$(DESTDIR)$(sublib_includedir)"
|
||||
test -z "$(sublib_includedir)" || $(MKDIR_P) "$(DESTDIR)$(sublib_includedir)"
|
||||
@list='$(sublib_include_HEADERS)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f=$(am__strip_dir) \
|
||||
|
|
@ -626,8 +623,7 @@ $(RECURSIVE_TARGETS):
|
|||
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
|
||||
fi; test -z "$$fail"
|
||||
|
||||
mostlyclean-recursive clean-recursive distclean-recursive \
|
||||
maintainer-clean-recursive:
|
||||
$(RECURSIVE_CLEAN_TARGETS):
|
||||
@failcom='exit 1'; \
|
||||
for f in x $$MAKEFLAGS; do \
|
||||
case $$f in \
|
||||
|
|
@ -728,23 +724,21 @@ distclean-tags:
|
|||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
$(mkdir_p) $(distdir)/../../build_shared $(distdir)/../src
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
|
||||
esac; \
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||
dir="/$$dir"; \
|
||||
$(mkdir_p) "$(distdir)$$dir"; \
|
||||
else \
|
||||
dir=''; \
|
||||
fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
|
|
@ -758,7 +752,7 @@ distdir: $(DISTFILES)
|
|||
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
|
||||
if test "$$subdir" = .; then :; else \
|
||||
test -d "$(distdir)/$$subdir" \
|
||||
|| $(mkdir_p) "$(distdir)/$$subdir" \
|
||||
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|
||||
|| exit 1; \
|
||||
distdir=`$(am__cd) $(distdir) && pwd`; \
|
||||
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
|
||||
|
|
@ -766,6 +760,8 @@ distdir: $(DISTFILES)
|
|||
$(MAKE) $(AM_MAKEFLAGS) \
|
||||
top_distdir="$$top_distdir" \
|
||||
distdir="$$distdir/$$subdir" \
|
||||
am__remove_distdir=: \
|
||||
am__skip_length_check=: \
|
||||
distdir) \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
|
|
@ -776,7 +772,7 @@ all-am: Makefile $(LTLIBRARIES) $(HEADERS)
|
|||
installdirs: installdirs-recursive
|
||||
installdirs-am:
|
||||
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(sublib_includedir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-recursive
|
||||
install-exec: install-exec-recursive
|
||||
|
|
@ -811,7 +807,7 @@ distclean: distclean-recursive
|
|||
-rm -rf ./$(DEPDIR)
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags
|
||||
distclean-tags
|
||||
|
||||
dvi: dvi-recursive
|
||||
|
||||
|
|
@ -825,12 +821,20 @@ info-am:
|
|||
|
||||
install-data-am: install-sublib_includeHEADERS
|
||||
|
||||
install-dvi: install-dvi-recursive
|
||||
|
||||
install-exec-am: install-libLTLIBRARIES
|
||||
|
||||
install-html: install-html-recursive
|
||||
|
||||
install-info: install-info-recursive
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-recursive
|
||||
|
||||
install-ps: install-ps-recursive
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-recursive
|
||||
|
|
@ -852,27 +856,27 @@ ps: ps-recursive
|
|||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES \
|
||||
uninstall-sublib_includeHEADERS
|
||||
uninstall-am: uninstall-libLTLIBRARIES uninstall-sublib_includeHEADERS
|
||||
|
||||
uninstall-info: uninstall-info-recursive
|
||||
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
|
||||
install-strip
|
||||
|
||||
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
|
||||
clean clean-generic clean-libLTLIBRARIES clean-libtool \
|
||||
clean-recursive ctags ctags-recursive distclean \
|
||||
distclean-compile distclean-generic distclean-libtool \
|
||||
distclean-recursive distclean-tags distdir dvi dvi-am html \
|
||||
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
|
||||
all all-am check check-am clean clean-generic \
|
||||
clean-libLTLIBRARIES clean-libtool ctags ctags-recursive \
|
||||
distclean distclean-compile distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-exec install-exec-am install-info \
|
||||
install-info-am install-libLTLIBRARIES install-man \
|
||||
install-strip install-sublib_includeHEADERS installcheck \
|
||||
installcheck-am installdirs installdirs-am maintainer-clean \
|
||||
maintainer-clean-generic maintainer-clean-local \
|
||||
maintainer-clean-recursive mostlyclean mostlyclean-compile \
|
||||
mostlyclean-generic mostlyclean-libtool mostlyclean-recursive \
|
||||
install-data-am install-dvi install-dvi-am install-exec \
|
||||
install-exec-am install-html install-html-am install-info \
|
||||
install-info-am install-libLTLIBRARIES install-man install-pdf \
|
||||
install-pdf-am install-ps install-ps-am install-strip \
|
||||
install-sublib_includeHEADERS installcheck installcheck-am \
|
||||
installdirs installdirs-am maintainer-clean \
|
||||
maintainer-clean-generic maintainer-clean-local mostlyclean \
|
||||
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
|
||||
pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
|
||||
uninstall-info-am uninstall-libLTLIBRARIES \
|
||||
uninstall-sublib_includeHEADERS
|
||||
uninstall-libLTLIBRARIES uninstall-sublib_includeHEADERS
|
||||
|
||||
|
||||
maintainer-clean-local:
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_ARRAYHANDLE_H
|
||||
#define _GLIBMM_ARRAYHANDLE_H
|
||||
|
||||
/* $Id: arrayhandle.h,v 1.3 2003/04/21 17:39:41 murrayc Exp $ */
|
||||
/* $Id: arrayhandle.h 32 2003-04-21 17:39:41Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: class.cc,v 1.7 2006/10/04 12:04:05 murrayc Exp $ */
|
||||
/* $Id: class.cc 336 2006-10-04 12:06:14Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 1998-2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_CLASS_H
|
||||
#define _GLIBMM_CLASS_H
|
||||
|
||||
/* $Id: class.h,v 1.6 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: class.h 291 2006-05-12 08:08:45Z murrayc $ */
|
||||
|
||||
/* Copyright 2001 Free Software Foundation
|
||||
* Copyright (C) 1998-2002 The gtkmm Development Team
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_CONTAINERHANDLE_SHARED_H
|
||||
#define _GLIBMM_CONTAINERHANDLE_SHARED_H
|
||||
|
||||
/* $Id: containerhandle_shared.h,v 1.12 2006/09/19 20:36:42 murrayc Exp $ */
|
||||
/* $Id: containerhandle_shared.h 322 2006-09-19 20:36:43Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// -*- c++ -*-
|
||||
|
||||
/* $Id: containers.cc,v 1.1.1.1 2003/01/07 16:58:44 murrayc Exp $ */
|
||||
/* $Id: containers.cc 2 2003-01-07 16:59:16Z murrayc $ */
|
||||
|
||||
/* containers.h
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_CONTAINERS_H
|
||||
#define _GLIBMM_CONTAINERS_H
|
||||
|
||||
/* $Id: containers.h,v 1.7 2005/11/23 07:22:43 murrayc Exp $ */
|
||||
/* $Id: containers.h 229 2005-11-23 07:22:43Z murrayc $ */
|
||||
|
||||
/* containers.h
|
||||
*
|
||||
|
|
|
|||
|
|
@ -71,13 +71,20 @@ void Date::set_parse(const Glib::ustring& str)
|
|||
g_date_set_parse(&gobject_, str.c_str());
|
||||
}
|
||||
|
||||
|
||||
#ifndef GLIBMM_DISABLE_DEPRECATED
|
||||
|
||||
|
||||
//Avoid a build problem in the case that time_t is equivalent to guint32 (GTime is also guint32)
|
||||
//That would make the set_time() method overload impossible.
|
||||
#ifdef GLIBMM_HAVE_C_STD_TIME_T_IS_NOT_INT32
|
||||
void Date::set_time(GTime time)
|
||||
{
|
||||
//This method, and the C function that it wraps, are deprecated.
|
||||
g_date_set_time(&gobject_, time);
|
||||
}
|
||||
#endif //GLIBMM_HAVE_C_STD_TIME_T_IS_NOT_INT32
|
||||
|
||||
#endif // GLIBMM_DISABLE_DEPRECATED
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -119,8 +119,13 @@ enum DMY
|
|||
*/
|
||||
void set_parse (const Glib::ustring& str);
|
||||
|
||||
|
||||
#ifndef GLIBMM_DISABLE_DEPRECATED
|
||||
|
||||
|
||||
//Avoid a build problem in the case that time_t is equivalent to guint32 (GTime is also guint32)
|
||||
//That would make the set_time() method overload impossible.
|
||||
#ifdef GLIBMM_HAVE_C_STD_TIME_T_IS_NOT_INT32
|
||||
/** Sets the value of a date from a GTime (time_t) value.
|
||||
*
|
||||
* @param time GTime value to set.
|
||||
|
|
@ -128,6 +133,8 @@ enum DMY
|
|||
* @deprecated Please use set_time(time_t) or set_time(const GTimeVal&).
|
||||
*/
|
||||
void set_time(GTime time);
|
||||
#endif //GLIBMM_HAVE_C_STD_TIME_T_IS_NOT_INT32
|
||||
|
||||
#endif // GLIBMM_DISABLE_DEPRECATED
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: debug.cc,v 1.1.1.1 2003/01/07 16:58:44 murrayc Exp $ */
|
||||
/* $Id: debug.cc 2 2003-01-07 16:59:16Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_DEBUG_H
|
||||
#define _GLIBMM_DEBUG_H
|
||||
|
||||
/* $Id: debug.h,v 1.2 2003/01/22 12:08:52 murrayc Exp $ */
|
||||
/* $Id: debug.h 17 2003-01-22 12:09:02Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: dispatcher.cc,v 1.13 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: dispatcher.cc 370 2007-01-20 10:53:28Z daniel $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -28,83 +28,76 @@
|
|||
#include <fcntl.h>
|
||||
#include <glib.h>
|
||||
|
||||
#ifndef G_OS_WIN32
|
||||
#include <unistd.h>
|
||||
|
||||
#if defined(_tru64) //TODO: Use the real define
|
||||
//EINTR is not defined on Tru64
|
||||
//I have tried including these
|
||||
//#include <sys/types.h>
|
||||
//#include <sys/statvfs.h>
|
||||
//#include <signal.h>
|
||||
#ifndef EINTR
|
||||
#define EINTR 0
|
||||
#endif
|
||||
#ifdef G_OS_WIN32
|
||||
# include <windows.h>
|
||||
# include <io.h>
|
||||
# include <direct.h>
|
||||
# include <list>
|
||||
#else
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
|
||||
#else
|
||||
#include <windows.h>
|
||||
#include <io.h>
|
||||
#include <direct.h>
|
||||
#include <list>
|
||||
#endif /* G_OS_WIN32 */
|
||||
|
||||
// EINTR is not defined on Tru64. I have tried including these:
|
||||
// #include <sys/types.h>
|
||||
// #include <sys/statvfs.h>
|
||||
// #include <signal.h>
|
||||
// danielk: I think someone should just do a grep on a Tru64 box. Googling
|
||||
// for "tru64 EINTR" returns lots of hits telling me that handling EINTR is
|
||||
// actually a requirement on Tru64. So it must exist.
|
||||
#if defined(_tru64) && !defined(EINTR)
|
||||
# define EINTR 0 /* TODO: should use the real define */
|
||||
#endif
|
||||
|
||||
namespace
|
||||
{
|
||||
|
||||
struct DispatchNotifyData
|
||||
{
|
||||
unsigned long tag;
|
||||
Glib::Dispatcher* dispatcher;
|
||||
Glib::DispatchNotifier* notifier;
|
||||
|
||||
DispatchNotifyData()
|
||||
: tag (0), dispatcher (0), notifier (0) {}
|
||||
: dispatcher (0), notifier (0) {}
|
||||
|
||||
DispatchNotifyData(unsigned long tag_, Glib::Dispatcher* dispatcher_, Glib::DispatchNotifier* notifier_)
|
||||
: tag (tag_), dispatcher (dispatcher_), notifier (notifier_) {}
|
||||
DispatchNotifyData(Glib::Dispatcher* d, Glib::DispatchNotifier* n)
|
||||
: dispatcher (d), notifier (n) {}
|
||||
};
|
||||
|
||||
static void warn_failed_pipe_io(const char* what, int err_no)
|
||||
static void warn_failed_pipe_io(const char* what)
|
||||
{
|
||||
#ifdef G_OS_WIN32
|
||||
const char *const message = g_win32_error_message(err_no);
|
||||
const char *const message = g_win32_error_message(GetLastError());
|
||||
#else
|
||||
const char *const message = g_strerror(err_no);
|
||||
const char *const message = g_strerror(errno);
|
||||
#endif
|
||||
g_critical("Error in inter-thread communication: %s() failed: %s", what, message);
|
||||
}
|
||||
|
||||
#ifndef G_OS_WIN32
|
||||
/*
|
||||
* Try to set the close-on-exec flag of the file descriptor,
|
||||
* so that it won't be leaked if a new process is spawned.
|
||||
*/
|
||||
static void fd_set_close_on_exec(int fd)
|
||||
{
|
||||
const int flags = fcntl(fd, F_GETFD, 0);
|
||||
g_return_if_fail(flags >= 0);
|
||||
|
||||
fcntl(fd, F_SETFD, flags | FD_CLOEXEC);
|
||||
}
|
||||
#endif /* !G_OS_WIN32 */
|
||||
|
||||
/*
|
||||
* One word: paranoia.
|
||||
*/
|
||||
#ifdef G_OS_WIN32
|
||||
|
||||
static void fd_close_and_invalidate(HANDLE& fd)
|
||||
{
|
||||
if(fd != 0)
|
||||
{
|
||||
if(!CloseHandle(fd))
|
||||
warn_failed_pipe_io("CloseHandle", GetLastError());
|
||||
warn_failed_pipe_io("CloseHandle");
|
||||
|
||||
fd = 0;
|
||||
}
|
||||
}
|
||||
#else /* !G_OS_WIN32 */
|
||||
/*
|
||||
* Set the close-on-exec flag on the file descriptor,
|
||||
* so that it won't be leaked if a new process is spawned.
|
||||
*/
|
||||
static void fd_set_close_on_exec(int fd)
|
||||
{
|
||||
const int flags = fcntl(fd, F_GETFD, 0);
|
||||
|
||||
if(flags < 0 || fcntl(fd, F_SETFD, unsigned(flags) | FD_CLOEXEC) < 0)
|
||||
warn_failed_pipe_io("fcntl");
|
||||
}
|
||||
|
||||
static void fd_close_and_invalidate(int& fd)
|
||||
{
|
||||
if(fd >= 0)
|
||||
|
|
@ -113,10 +106,10 @@ static void fd_close_and_invalidate(int& fd)
|
|||
|
||||
do
|
||||
result = close(fd);
|
||||
while(result < 0 && errno == EINTR);
|
||||
while(G_UNLIKELY(result < 0) && errno == EINTR);
|
||||
|
||||
if(result < 0)
|
||||
warn_failed_pipe_io("close", errno);
|
||||
if(G_UNLIKELY(result < 0))
|
||||
warn_failed_pipe_io("close");
|
||||
|
||||
fd = -1;
|
||||
}
|
||||
|
|
@ -125,7 +118,6 @@ static void fd_close_and_invalidate(int& fd)
|
|||
|
||||
} // anonymous namespace
|
||||
|
||||
|
||||
namespace Glib
|
||||
{
|
||||
|
||||
|
|
@ -147,17 +139,16 @@ protected:
|
|||
private:
|
||||
static Glib::StaticPrivate<DispatchNotifier> thread_specific_instance_;
|
||||
|
||||
Glib::RefPtr<MainContext> context_;
|
||||
int ref_count_;
|
||||
long ref_count_;
|
||||
Glib::RefPtr<MainContext> context_;
|
||||
#ifdef G_OS_WIN32
|
||||
HANDLE fd_receiver_;
|
||||
Glib::Mutex mutex_;
|
||||
std::list<DispatchNotifyData> notify_queue_;
|
||||
HANDLE fd_receiver_;
|
||||
#else
|
||||
int fd_receiver_;
|
||||
int fd_sender_;
|
||||
#endif /* !G_OS_WIN32 */
|
||||
sigc::connection conn_io_handler_;
|
||||
int fd_receiver_;
|
||||
int fd_sender_;
|
||||
#endif
|
||||
|
||||
void create_pipe();
|
||||
bool pipe_io_handler(Glib::IOCondition condition);
|
||||
|
|
@ -167,20 +158,20 @@ private:
|
|||
DispatchNotifier& operator=(const DispatchNotifier&);
|
||||
};
|
||||
|
||||
|
||||
/**** Glib::DispatchNotifier ***********************************************/
|
||||
|
||||
// static
|
||||
Glib::StaticPrivate<DispatchNotifier>
|
||||
DispatchNotifier::thread_specific_instance_ = GLIBMM_STATIC_PRIVATE_INIT;
|
||||
|
||||
DispatchNotifier::DispatchNotifier(const Glib::RefPtr<MainContext>& context)
|
||||
:
|
||||
context_ (context),
|
||||
ref_count_ (0),
|
||||
context_ (context),
|
||||
#ifdef G_OS_WIN32
|
||||
fd_receiver_ (0),
|
||||
mutex_ (),
|
||||
notify_queue_ ()
|
||||
notify_queue_ (),
|
||||
fd_receiver_ (0)
|
||||
#else
|
||||
fd_receiver_ (-1),
|
||||
fd_sender_ (-1)
|
||||
|
|
@ -188,76 +179,86 @@ DispatchNotifier::DispatchNotifier(const Glib::RefPtr<MainContext>& context)
|
|||
{
|
||||
create_pipe();
|
||||
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
#if defined(GLIBMM_EXCEPTIONS_ENABLED)
|
||||
try
|
||||
#elif defined(G_OS_WIN32)
|
||||
if(fd_receiver_)
|
||||
#else
|
||||
if(fd_receiver_ >= 0)
|
||||
#endif
|
||||
{
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
#ifdef G_OS_WIN32
|
||||
conn_io_handler_ = context_->signal_io().connect(
|
||||
sigc::mem_fun(*this, &DispatchNotifier::pipe_io_handler),
|
||||
GPOINTER_TO_INT(fd_receiver_), Glib::IO_IN);
|
||||
#else /* !G_OS_WIN32 */
|
||||
conn_io_handler_ = context_->signal_io().connect(
|
||||
sigc::mem_fun(*this, &DispatchNotifier::pipe_io_handler),
|
||||
fd_receiver_, Glib::IO_IN);
|
||||
#endif /* !G_OS_WIN32 */
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
const int fd = GPOINTER_TO_INT(fd_receiver_);
|
||||
#else
|
||||
const int fd = fd_receiver_;
|
||||
#endif
|
||||
context_->signal_io().connect(sigc::mem_fun(*this, &DispatchNotifier::pipe_io_handler),
|
||||
fd, Glib::IO_IN);
|
||||
}
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
catch(...)
|
||||
{
|
||||
#ifndef G_OS_WIN32
|
||||
# ifndef G_OS_WIN32
|
||||
fd_close_and_invalidate(fd_sender_);
|
||||
#endif /* !G_OS_WIN32 */
|
||||
# endif
|
||||
fd_close_and_invalidate(fd_receiver_);
|
||||
|
||||
throw;
|
||||
}
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
#endif /* GLIBMM_EXCEPTIONS_ENABLED */
|
||||
}
|
||||
|
||||
DispatchNotifier::~DispatchNotifier()
|
||||
{
|
||||
// Disconnect manually because we don't inherit from sigc::trackable
|
||||
conn_io_handler_.disconnect();
|
||||
|
||||
#ifndef G_OS_WIN32
|
||||
fd_close_and_invalidate(fd_sender_);
|
||||
#endif /* !G_OS_WIN32 */
|
||||
#endif
|
||||
fd_close_and_invalidate(fd_receiver_);
|
||||
}
|
||||
|
||||
void DispatchNotifier::create_pipe()
|
||||
{
|
||||
#ifdef G_OS_WIN32
|
||||
// On Win32 we are using synchronization object instead of pipe
|
||||
// thus storing its handle as fd_receiver_.
|
||||
fd_receiver_ = CreateEvent(0, FALSE, FALSE, 0);
|
||||
|
||||
if(!fd_receiver_)
|
||||
// On Win32, create a synchronization object instead of a pipe and store
|
||||
// its handle as fd_receiver_. Use a manual-reset event object, so that
|
||||
// we can closely match the behavior on Unix in pipe_io_handler().
|
||||
const HANDLE event = CreateEvent(0, TRUE, FALSE, 0);
|
||||
|
||||
if(!event)
|
||||
{
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
# ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
GError* const error = g_error_new(G_FILE_ERROR, G_FILE_ERROR_FAILED,
|
||||
"Failed to create event for inter-thread communication: %s",
|
||||
g_win32_error_message(GetLastError()));
|
||||
throw Glib::FileError(error);
|
||||
#else
|
||||
return; //TODO: Provide an alternative to the exception.
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
# else
|
||||
warn_failed_pipe_io("CreateEvent"); // TODO: see below
|
||||
return;
|
||||
# endif
|
||||
}
|
||||
|
||||
fd_receiver_ = event;
|
||||
|
||||
#else /* !G_OS_WIN32 */
|
||||
|
||||
int filedes[2] = { -1, -1 };
|
||||
|
||||
if(pipe(filedes) < 0)
|
||||
{
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
# ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
GError* const error = g_error_new(G_FILE_ERROR, g_file_error_from_errno(errno),
|
||||
"Failed to create pipe for inter-thread communication: %s",
|
||||
g_strerror(errno));
|
||||
throw Glib::FileError(error);
|
||||
#else
|
||||
return; //TODO: Provide an alternative to the exception.
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
# else
|
||||
// TODO: Provide an alternative to the exception. This is not trivial
|
||||
// from within a constructor, though. One possibility would be to add
|
||||
// a Glib::Dispatcher::valid() method which returns whether construction
|
||||
// was successful.
|
||||
warn_failed_pipe_io("pipe");
|
||||
return;
|
||||
# endif
|
||||
}
|
||||
|
||||
fd_set_close_on_exec(filedes[0]);
|
||||
|
|
@ -265,6 +266,7 @@ void DispatchNotifier::create_pipe()
|
|||
|
||||
fd_receiver_ = filedes[0];
|
||||
fd_sender_ = filedes[1];
|
||||
|
||||
#endif /* !G_OS_WIN32 */
|
||||
}
|
||||
|
||||
|
|
@ -301,7 +303,7 @@ void DispatchNotifier::unreference_instance(DispatchNotifier* notifier)
|
|||
{
|
||||
g_return_if_fail(instance->ref_count_ == 0); // could be < 0 if messed up
|
||||
|
||||
// This will cause deletion of the notifier object.
|
||||
// This causes deletion of the notifier object.
|
||||
thread_specific_instance_.set(0);
|
||||
}
|
||||
}
|
||||
|
|
@ -310,121 +312,121 @@ void DispatchNotifier::send_notification(Dispatcher* dispatcher)
|
|||
{
|
||||
#ifdef G_OS_WIN32
|
||||
{
|
||||
Glib::Mutex::Lock lock (mutex_);
|
||||
notify_queue_.push_back(DispatchNotifyData(0xdeadbeef, dispatcher, this));
|
||||
}
|
||||
const Mutex::Lock lock (mutex_);
|
||||
|
||||
// Send notification event to GUI-thread.
|
||||
if(!SetEvent(fd_receiver_))
|
||||
{
|
||||
warn_failed_pipe_io("SetEvent", GetLastError());
|
||||
return;
|
||||
const bool was_empty = notify_queue_.empty();
|
||||
notify_queue_.push_back(DispatchNotifyData(dispatcher, this));
|
||||
|
||||
if(was_empty)
|
||||
{
|
||||
// The event will stay in signaled state until it is reset
|
||||
// in pipe_io_handler() after processing the last queued event.
|
||||
if(!SetEvent(fd_receiver_))
|
||||
warn_failed_pipe_io("SetEvent");
|
||||
}
|
||||
}
|
||||
#else /* !G_OS_WIN32 */
|
||||
DispatchNotifyData data (0xdeadbeef, dispatcher, this);
|
||||
|
||||
DispatchNotifyData data (dispatcher, this);
|
||||
gssize n_written;
|
||||
|
||||
do
|
||||
n_written = write(fd_sender_, &data, sizeof(data));
|
||||
while(n_written < 0 && errno == EINTR);
|
||||
while(G_UNLIKELY(n_written < 0) && errno == EINTR);
|
||||
|
||||
if(n_written < 0)
|
||||
{
|
||||
warn_failed_pipe_io("write", errno);
|
||||
return;
|
||||
}
|
||||
|
||||
// All data must be written in a single call to write(), otherwise we can't
|
||||
// All data must be written in a single call to write(), otherwise we cannot
|
||||
// guarantee reentrancy since another thread might be scheduled between two
|
||||
// write() calls. The manpage is a bit unclear about this -- but I hope
|
||||
// it's safe to assume immediate success for the tiny amount of data we're
|
||||
// writing.
|
||||
g_return_if_fail(n_written == sizeof(data));
|
||||
// write() calls. From the glibc manual:
|
||||
//
|
||||
// "Reading or writing pipe data is atomic if the size of data written is not
|
||||
// greater than PIPE_BUF. This means that the data transfer seems to be an
|
||||
// instantaneous unit, in that nothing else in the system can observe a state
|
||||
// in which it is partially complete. Atomic I/O may not begin right away (it
|
||||
// may need to wait for buffer space or for data), but once it does begin it
|
||||
// finishes immediately."
|
||||
//
|
||||
// The minimum value allowed by POSIX for PIPE_BUF is 512, so we are on safe
|
||||
// grounds here.
|
||||
|
||||
if(G_UNLIKELY(n_written != sizeof(data)))
|
||||
warn_failed_pipe_io("write");
|
||||
|
||||
#endif /* !G_OS_WIN32 */
|
||||
}
|
||||
|
||||
bool DispatchNotifier::pipe_io_handler(Glib::IOCondition)
|
||||
{
|
||||
DispatchNotifyData data;
|
||||
|
||||
#ifdef G_OS_WIN32
|
||||
DispatchNotifyData data;
|
||||
|
||||
for(;;)
|
||||
{
|
||||
const Mutex::Lock lock (mutex_);
|
||||
|
||||
// Should never be empty at this point, but let's allow for bogus
|
||||
// notifications with no data available anyway; just to be safe.
|
||||
if(notify_queue_.empty())
|
||||
{
|
||||
Glib::Mutex::Lock lock (mutex_);
|
||||
if(!ResetEvent(fd_receiver_))
|
||||
warn_failed_pipe_io("ResetEvent");
|
||||
|
||||
if(notify_queue_.empty())
|
||||
break;
|
||||
|
||||
data = notify_queue_.front();
|
||||
notify_queue_.pop_front();
|
||||
}
|
||||
|
||||
g_return_val_if_fail(data.tag == 0xdeadbeef, true);
|
||||
g_return_val_if_fail(data.notifier == this, true);
|
||||
|
||||
// Actually, we wouldn't need the try/catch block because the Glib::Source
|
||||
// C callback already does it for us. However, we do it anyway because the
|
||||
// default return value is 'false', which is not what we want.
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
try
|
||||
{
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
data.dispatcher->signal_();
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
Glib::exception_handlers_invoke();
|
||||
}
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
}
|
||||
#else /* !G_OS_WIN32 */
|
||||
DispatchNotifyData data;
|
||||
gsize n_read = 0;
|
||||
|
||||
do
|
||||
{
|
||||
void * const buffer = reinterpret_cast<guint8*>(&data) + n_read;
|
||||
const gssize result = read(fd_receiver_, buffer, sizeof(data) - n_read);
|
||||
|
||||
if(result < 0)
|
||||
{
|
||||
if(errno == EINTR)
|
||||
continue;
|
||||
|
||||
warn_failed_pipe_io("read", errno);
|
||||
return true;
|
||||
}
|
||||
|
||||
n_read += result;
|
||||
data = notify_queue_.front();
|
||||
notify_queue_.pop_front();
|
||||
|
||||
// Handle only a single event with each invocation of the I/O handler,
|
||||
// and reset to nonsignaled state only after the last event in the queue
|
||||
// has been processed. This matches the behavior on Unix.
|
||||
if(notify_queue_.empty())
|
||||
{
|
||||
if(!ResetEvent(fd_receiver_))
|
||||
warn_failed_pipe_io("ResetEvent");
|
||||
}
|
||||
}
|
||||
while(n_read < sizeof(data));
|
||||
#else /* !G_OS_WIN32 */
|
||||
|
||||
g_return_val_if_fail(data.tag == 0xdeadbeef, true);
|
||||
g_return_val_if_fail(data.notifier == this, true);
|
||||
gssize n_read;
|
||||
|
||||
do
|
||||
n_read = read(fd_receiver_, &data, sizeof(data));
|
||||
while(G_UNLIKELY(n_read < 0) && errno == EINTR);
|
||||
|
||||
// Pipe I/O of a block size not greater than PIPE_BUF should be atomic.
|
||||
// See the comment on atomicity in send_notification() for details.
|
||||
if(G_UNLIKELY(n_read != sizeof(data)))
|
||||
{
|
||||
// Should probably never be zero, but for safety let's allow for bogus
|
||||
// notifications when no data is actually available. Although in fact
|
||||
// the read() should block in that case.
|
||||
if(n_read != 0)
|
||||
warn_failed_pipe_io("read");
|
||||
|
||||
return true;
|
||||
}
|
||||
#endif /* !G_OS_WIN32 */
|
||||
|
||||
g_return_val_if_fail(data.notifier == this, true);
|
||||
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
// Actually, we wouldn't need the try/catch block because the Glib::Source
|
||||
// C callback already does it for us. However, we do it anyway because the
|
||||
// default return value is 'false', which is not what we want.
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
try
|
||||
#endif
|
||||
{
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
data.dispatcher->signal_(); // emit
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
}
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
catch(...)
|
||||
{
|
||||
Glib::exception_handlers_invoke();
|
||||
}
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
#endif /* !G_OS_WIN32 */
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**** Glib::Dispatcher *****************************************************/
|
||||
|
||||
Dispatcher::Dispatcher()
|
||||
|
|
@ -451,7 +453,7 @@ void Dispatcher::emit()
|
|||
|
||||
void Dispatcher::operator()()
|
||||
{
|
||||
emit();
|
||||
notifier_->send_notification(this);
|
||||
}
|
||||
|
||||
sigc::connection Dispatcher::connect(const sigc::slot<void>& slot)
|
||||
|
|
@ -460,4 +462,3 @@ sigc::connection Dispatcher::connect(const sigc::slot<void>& slot)
|
|||
}
|
||||
|
||||
} // namespace Glib
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_DISPATCHER_H
|
||||
#define _GLIBMM_DISPATCHER_H
|
||||
|
||||
/* $Id: dispatcher.h,v 1.4 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: dispatcher.h 370 2007-01-20 10:53:28Z daniel $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -24,7 +24,6 @@
|
|||
#include <sigc++/sigc++.h>
|
||||
#include <glibmm/main.h>
|
||||
|
||||
|
||||
namespace Glib
|
||||
{
|
||||
|
||||
|
|
@ -59,6 +58,14 @@ class DispatchNotifier;
|
|||
* @li All Dispatcher instances of a receiver thread share the same pipe. That
|
||||
* is, if you use Glib::Dispatcher only to notify the GUI thread, only one pipe
|
||||
* is created no matter how many Dispatcher objects you have.
|
||||
*
|
||||
* Using Glib::Dispatcher on Windows:
|
||||
*
|
||||
* Glib::Dispatcher also works on win32-based systems. Unfortunately though,
|
||||
* the implementation cannot use a pipe on win32 and therefore does have to
|
||||
* lock a mutex on emission, too. However, the impact on performance is
|
||||
* likely minor and the notification still happens asynchronously. Apart
|
||||
* from the additional lock the behavior matches the Unix implementation.
|
||||
*/
|
||||
class Dispatcher
|
||||
{
|
||||
|
|
@ -98,6 +105,4 @@ private:
|
|||
|
||||
} // namespace Glib
|
||||
|
||||
|
||||
#endif /* _GLIBMM_DISPATCHER_H */
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: error.cc,v 1.4 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: error.cc 291 2006-05-12 08:08:45Z murrayc $ */
|
||||
|
||||
/* error.cc
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// -*- c++ -*-
|
||||
#ifndef _GLIBMM_ERROR_H
|
||||
#define _GLIBMM_ERROR_H
|
||||
/* $Id: error.h,v 1.3 2006/10/04 12:04:05 murrayc Exp $ */
|
||||
/* $Id: error.h 336 2006-10-04 12:06:14Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: exception.cc,v 1.1.1.1 2003/01/07 16:58:45 murrayc Exp $ */
|
||||
/* $Id: exception.cc 2 2003-01-07 16:59:16Z murrayc $ */
|
||||
|
||||
/* exception.cc
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// -*- c++ -*-
|
||||
#ifndef _GLIBMM_EXCEPTION_H
|
||||
#define _GLIBMM_EXCEPTION_H
|
||||
/* $Id: exception.h,v 1.1.1.1 2003/01/07 16:58:45 murrayc Exp $ */
|
||||
/* $Id: exception.h 2 2003-01-07 16:59:16Z murrayc $ */
|
||||
|
||||
/* exception.h
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: exceptionhandler.cc,v 1.5 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: exceptionhandler.cc 291 2006-05-12 08:08:45Z murrayc $ */
|
||||
|
||||
/* exceptionhandler.cc
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_EXCEPTIONHANDLER_H
|
||||
#define _GLIBMM_EXCEPTIONHANDLER_H
|
||||
|
||||
/* $Id: exceptionhandler.h,v 1.3 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: exceptionhandler.h 291 2006-05-12 08:08:45Z murrayc $ */
|
||||
|
||||
/* exceptionhandler.h
|
||||
*
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
#include <glibmm/private/fileutils_p.h>
|
||||
|
||||
// -*- c++ -*-
|
||||
/* $Id: fileutils.ccg,v 1.1.1.1 2003/01/07 16:58:25 murrayc Exp $ */
|
||||
/* $Id: fileutils.ccg,v 1.1 2003/01/07 16:58:25 murrayc Exp $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// -*- c++ -*-
|
||||
#ifndef _GLIBMM_HELPERLIST_H
|
||||
#define _GLIBMM_HELPERLIST_H
|
||||
/* $Id: helperlist.h,v 1.1.1.1 2003/01/07 16:58:46 murrayc Exp $ */
|
||||
/* $Id: helperlist.h 386 2007-03-23 17:31:16Z murrayc $ */
|
||||
|
||||
/* helperlist.h
|
||||
*
|
||||
|
|
@ -36,8 +36,8 @@ public:
|
|||
: gparent_(0)
|
||||
{}
|
||||
|
||||
HelperList(GObject* gparent)
|
||||
: gparent_(gparent)
|
||||
HelperList(GObject* gp) //We use gp instead of gparent because that can cause warnings about a shadowed member.
|
||||
: gparent_(gp)
|
||||
{}
|
||||
|
||||
virtual ~HelperList()
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_I18N_H
|
||||
#define _GLIBMM_I18N_H
|
||||
|
||||
/* $Id: i18n.h,v 1.1 2004/03/02 23:29:56 murrayc Exp $ */
|
||||
/* $Id: i18n.h 77 2004-03-02 23:29:57Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: init.cc,v 1.1 2003/11/03 09:27:31 murrayc Exp $ */
|
||||
/* $Id: init.cc 54 2003-11-03 09:27:33Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2003 The glibmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_INIT_H
|
||||
#define _GLIBMM_INIT_H
|
||||
|
||||
/* $Id: init.h,v 1.1 2003/11/03 09:27:31 murrayc Exp $ */
|
||||
/* $Id: init.h 54 2003-11-03 09:27:33Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: interface.cc,v 1.3 2005/03/07 15:42:20 murrayc Exp $ */
|
||||
/* $Id: interface.cc 209 2005-03-07 15:42:20Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_INTERFACE_H
|
||||
#define _GLIBMM_INTERFACE_H
|
||||
|
||||
/* $Id: interface.h,v 1.1.1.1 2003/01/07 16:58:46 murrayc Exp $ */
|
||||
/* $Id: interface.h 2 2003-01-07 16:59:16Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -684,13 +684,13 @@ namespace Glib
|
|||
|
||||
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
IOStatus IOChannel::read(gunichar& unichar)
|
||||
IOStatus IOChannel::read(gunichar& thechar)
|
||||
#else
|
||||
IOStatus IOChannel::read(gunichar& unichar, std::auto_ptr<Glib::Error>& error)
|
||||
IOStatus IOChannel::read(gunichar& thechar, std::auto_ptr<Glib::Error>& error)
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
{
|
||||
GError* gerror = 0;
|
||||
IOStatus retvalue = ((IOStatus)(g_io_channel_read_unichar(gobj(), &(unichar), &(gerror))));
|
||||
IOStatus retvalue = ((IOStatus)(g_io_channel_read_unichar(gobj(), &(thechar), &(gerror))));
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
if(gerror)
|
||||
::Glib::Error::throw_exception(gerror);
|
||||
|
|
|
|||
|
|
@ -263,7 +263,7 @@ public:
|
|||
#endif /* defined(G_OS_WIN32) || defined(DOXYGEN_SHOULD_SKIP_THIS) */
|
||||
|
||||
/** Read a single UCS-4 character.
|
||||
* @retval unichar The Unicode character.
|
||||
* @retval thechar The Unicode character.
|
||||
* @return The status of the operation.
|
||||
* @throw Glib::IOChannelError
|
||||
* @throw Glib::ConvertError
|
||||
|
|
@ -276,9 +276,9 @@ public:
|
|||
* @return A G::IOStatus.
|
||||
*/
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
IOStatus read(gunichar& unichar);
|
||||
IOStatus read(gunichar& thechar);
|
||||
#else
|
||||
IOStatus read(gunichar& unichar, std::auto_ptr<Glib::Error>& error);
|
||||
IOStatus read(gunichar& thechar, std::auto_ptr<Glib::Error>& error);
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
|
||||
|
|
@ -601,7 +601,7 @@ public:
|
|||
* @return The buffering status of the channel.
|
||||
*/
|
||||
|
||||
/** Returns whether @a channel is buffered.
|
||||
/** Return Value: <tt>true</tt> if the @a channel is buffered.
|
||||
* @return <tt>true</tt> if the @a channel is buffered.
|
||||
*/
|
||||
bool get_buffered() const;
|
||||
|
|
@ -628,10 +628,7 @@ public:
|
|||
* IOChannel object.
|
||||
*/
|
||||
|
||||
/** Returns whether the file/socket/whatever associated with @a channel
|
||||
* will be closed when @a channel receives its final unref and is
|
||||
* destroyed. The default value of this is <tt>true</tt> for channels created
|
||||
* by g_io_channel_new_file(), and <tt>false</tt> for all other channels.
|
||||
/** Return value: Whether the channel will be closed on the final unref of
|
||||
* @return Whether the channel will be closed on the final unref of
|
||||
* the GIOChannel data structure.
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -98,14 +98,51 @@ Glib::ustring KeyFile::get_locale_string(const Glib::ustring& group_name, const
|
|||
return retvalue;
|
||||
}
|
||||
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
int KeyFile::get_integer(const Glib::ustring& key) const
|
||||
#else
|
||||
int KeyFile::get_integer(const Glib::ustring& key, std::auto_ptr<Glib::Error>& error) const
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
{
|
||||
GError *error = 0;
|
||||
int retvalue = g_key_file_get_integer(const_cast<GKeyFile*>(gobj()), 0, key.c_str(), &(error));
|
||||
if(error) ::Glib::Error::throw_exception(error);
|
||||
GError* gerror = 0;
|
||||
int retvalue = g_key_file_get_integer(const_cast<GKeyFile*>(gobj()), NULL, key.c_str(), &(gerror));
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
if(gerror)
|
||||
::Glib::Error::throw_exception(gerror);
|
||||
#else
|
||||
if(gerror)
|
||||
error = ::Glib::Error::throw_exception(gerror);
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
return retvalue;
|
||||
}
|
||||
|
||||
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
double KeyFile::get_double(const Glib::ustring& key) const
|
||||
#else
|
||||
double KeyFile::get_double(const Glib::ustring& key, std::auto_ptr<Glib::Error>& error) const
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
{
|
||||
GError* gerror = 0;
|
||||
double retvalue = g_key_file_get_double(const_cast<GKeyFile*>(gobj()), NULL, key.c_str(), &(gerror));
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
if(gerror)
|
||||
::Glib::Error::throw_exception(gerror);
|
||||
#else
|
||||
if(gerror)
|
||||
error = ::Glib::Error::throw_exception(gerror);
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
return retvalue;
|
||||
}
|
||||
|
||||
void KeyFile::set_double(const Glib::ustring& key, double value)
|
||||
{
|
||||
g_key_file_set_double(gobj(), 0, key.c_str(), value);
|
||||
}
|
||||
|
||||
|
||||
Glib::ArrayHandle<Glib::ustring> KeyFile::get_string_list(const Glib::ustring& group_name, const Glib::ustring& key) const
|
||||
{
|
||||
gchar** string_list = 0;
|
||||
|
|
@ -150,6 +187,17 @@ Glib::ArrayHandle<int> KeyFile::get_integer_list(const Glib::ustring& group_name
|
|||
return Glib::ArrayHandle<int>(integer_list, length_of_list, Glib::OWNERSHIP_DEEP);
|
||||
}
|
||||
|
||||
Glib::ArrayHandle<double> KeyFile::get_double_list(const Glib::ustring& group_name, const Glib::ustring& key) const
|
||||
{
|
||||
gdouble* integer_list = 0;
|
||||
gsize length_of_list = 0;
|
||||
GError* error = 0;
|
||||
integer_list = g_key_file_get_double_list(const_cast<GKeyFile*>(gobj()), group_name.c_str(), key.c_str(), &length_of_list, &error);
|
||||
if(error)
|
||||
Glib::Error::throw_exception(error);
|
||||
return Glib::ArrayHandle<double>(integer_list, length_of_list, Glib::OWNERSHIP_DEEP);
|
||||
}
|
||||
|
||||
void KeyFile::set_string_list(const Glib::ustring& group_name, const Glib::ustring& key, const Glib::ArrayHandle<Glib::ustring>& list)
|
||||
{
|
||||
gsize length_of_list = list.size();
|
||||
|
|
@ -168,6 +216,12 @@ void KeyFile::set_integer_list(const Glib::ustring& group_name, const Glib::ustr
|
|||
g_key_file_set_integer_list(gobj(), group_name.c_str(), key.c_str(), const_cast<int*>(list.data()), length_of_list);
|
||||
}
|
||||
|
||||
void KeyFile::set_double_list(const Glib::ustring& group_name, const Glib::ustring& key, Glib::ArrayHandle<double>& list)
|
||||
{
|
||||
gsize length_of_list = list.size();
|
||||
g_key_file_set_double_list(gobj(), group_name.c_str(), key.c_str(), const_cast<double*>(list.data()), length_of_list);
|
||||
}
|
||||
|
||||
void KeyFile::set_boolean_list(const Glib::ustring& group_name, const Glib::ustring& key, Glib::ArrayHandle<bool>& list)
|
||||
{
|
||||
gsize length_of_list = list.size();
|
||||
|
|
@ -394,6 +448,31 @@ int KeyFile::get_integer(const Glib::ustring& group_name, const Glib::ustring& k
|
|||
|
||||
}
|
||||
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
double KeyFile::get_double(const Glib::ustring& group_name, const Glib::ustring& key) const
|
||||
#else
|
||||
double KeyFile::get_double(const Glib::ustring& group_name, const Glib::ustring& key, std::auto_ptr<Glib::Error>& error) const
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
{
|
||||
GError* gerror = 0;
|
||||
double retvalue = g_key_file_get_double(const_cast<GKeyFile*>(gobj()), group_name.c_str(), key.c_str(), &(gerror));
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
if(gerror)
|
||||
::Glib::Error::throw_exception(gerror);
|
||||
#else
|
||||
if(gerror)
|
||||
error = ::Glib::Error::throw_exception(gerror);
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
return retvalue;
|
||||
|
||||
}
|
||||
|
||||
void KeyFile::set_double(const Glib::ustring& group_name, const Glib::ustring& key, double value)
|
||||
{
|
||||
g_key_file_set_double(gobj(), group_name.c_str(), key.c_str(), value);
|
||||
}
|
||||
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
Glib::ustring KeyFile::get_comment(const Glib::ustring& group_name, const Glib::ustring& key) const
|
||||
#else
|
||||
|
|
|
|||
|
|
@ -84,9 +84,9 @@ inline KeyFileFlags& operator^=(KeyFileFlags& lhs, KeyFileFlags rhs)
|
|||
{ return (lhs = static_cast<KeyFileFlags>(static_cast<unsigned>(lhs) ^ static_cast<unsigned>(rhs))); }
|
||||
|
||||
|
||||
/** Exception class for KeyFile errors.
|
||||
*/
|
||||
class KeyFileError : public Glib::Error
|
||||
/** Exception class for KeyFile errors.
|
||||
*/
|
||||
class KeyFileError : public Glib::Error
|
||||
{
|
||||
public:
|
||||
enum Code
|
||||
|
|
@ -118,6 +118,61 @@ private:
|
|||
};
|
||||
|
||||
|
||||
/** This class lets you parse, edit or create files containing groups of key-value pairs, which we call key files
|
||||
* for lack of a better name. Several freedesktop.org specifications use key files now, e.g the Desktop Entry
|
||||
* Specification and the Icon Theme Specification.
|
||||
*
|
||||
* The syntax of key files is described in detail in the Desktop Entry Specification, here is a quick summary: Key
|
||||
* files consists of groups of key-value pairs, interspersed with comments.
|
||||
*
|
||||
* @code
|
||||
* # this is just an example
|
||||
* # there can be comments before the first group
|
||||
*
|
||||
* [First Group]
|
||||
*
|
||||
* Name=Key File Example\tthis value shows\nescaping
|
||||
*
|
||||
* # localized strings are stored in multiple key-value pairs
|
||||
* Welcome=Hello
|
||||
* Welcome[de]=Hallo
|
||||
* Welcome[fr]=Bonjour
|
||||
* Welcome[it]=Ciao
|
||||
*
|
||||
* [Another Group]
|
||||
*
|
||||
* Numbers=2;20;-200;0
|
||||
*
|
||||
* Booleans=true;false;true;true
|
||||
* @endcode
|
||||
*
|
||||
* Lines beginning with a '#' and blank lines are considered comments.
|
||||
*
|
||||
* Groups are started by a header line containing the group name enclosed in '[' and ']', and ended implicitly by
|
||||
* the start of the next group or the end of the file. Each key-value pair must be contained in a group.
|
||||
*
|
||||
* Key-value pairs generally have the form key=value, with the exception of localized strings, which have the form
|
||||
* key[locale]=value. Space before and after the '=' character are ignored. Newline, tab, carriage return and
|
||||
* backslash characters in value are escaped as \n, \t, \r, and \\, respectively. To preserve leading spaces in
|
||||
* values, these can also be escaped as \s.
|
||||
*
|
||||
* Key files can store strings (possibly with localized variants), integers, booleans and lists of these. Lists are
|
||||
* separated by a separator character, typically ';' or ','. To use the list separator character in a value in a
|
||||
* list, it has to be escaped by prefixing it with a backslash.
|
||||
*
|
||||
* This syntax is obviously inspired by the .ini files commonly met on Windows, but there are some important
|
||||
* differences:
|
||||
* - .ini files use the ';' character to begin comments, key files use the '#' character.
|
||||
* - Key files allow only comments before the first group.
|
||||
* - Key files are always encoded in UTF-8.
|
||||
* - Key and Group names are case-sensitive, for example a group called [GROUP] is a different group from [group].
|
||||
*
|
||||
* Note that in contrast to the Desktop Entry Specification, groups in key files may contain the same key multiple
|
||||
* times; the last entry wins. Key files may also contain multiple groups with the same name; they are merged
|
||||
* together. Another difference is that keys and group names in key files are not restricted to ASCII characters.
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
class KeyFile
|
||||
{
|
||||
public:
|
||||
|
|
@ -178,6 +233,16 @@ public:
|
|||
bool load_from_data(const Glib::ustring& data, KeyFileFlags flags = Glib::KEY_FILE_NONE);
|
||||
|
||||
|
||||
//TODO:
|
||||
/*
|
||||
gboolean g_key_file_load_from_dirs (GKeyFile *key_file,
|
||||
const gchar *file,
|
||||
const gchar **search_dirs,
|
||||
gchar **full_path,
|
||||
GKeyFileFlags flags,
|
||||
GError **error);
|
||||
*/
|
||||
|
||||
/** Looks for a KeyFile named @a file in the paths returned from
|
||||
* g_get_user_data_dir() and g_get_system_data_dirs() and loads them
|
||||
* into the keyfile object, placing the full path to the file in
|
||||
|
|
@ -198,7 +263,7 @@ public:
|
|||
Glib::ustring to_data();
|
||||
|
||||
|
||||
/** Returns the name of the start group of the file.
|
||||
/** Return value: The start group of the key file.
|
||||
* @return The start group of the key file.
|
||||
*
|
||||
* @newin2p6.
|
||||
|
|
@ -243,12 +308,7 @@ public:
|
|||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
|
||||
/** Returns the value associated with @a key under @a group_name .
|
||||
*
|
||||
* In the event the key cannot be found, <tt>0</tt> is returned and
|
||||
* @a error is set to G::KEY_FILE_ERROR_KEY_NOT_FOUND. In the
|
||||
* event that the @a group_name cannot be found, <tt>0</tt> is returned
|
||||
* and @a error is set to G::KEY_FILE_ERROR_GROUP_NOT_FOUND.
|
||||
/** Return value: a newly allocated string or <tt>0</tt> if the specified
|
||||
* @param group_name A group name.
|
||||
* @param key A key.
|
||||
* @param error Return location for a G::Error, or <tt>0</tt>.
|
||||
|
|
@ -264,12 +324,7 @@ public:
|
|||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
|
||||
/** Returns the value associated with @a key under @a group_name .
|
||||
*
|
||||
* In the event the key cannot be found, <tt>0</tt> is returned and
|
||||
* @a error is set to G::KEY_FILE_ERROR_KEY_NOT_FOUND. In the
|
||||
* event that the @a group_name cannot be found, <tt>0</tt> is returned
|
||||
* and @a error is set to G::KEY_FILE_ERROR_GROUP_NOT_FOUND.
|
||||
/** Return value: a newly allocated string or <tt>0</tt> if the specified
|
||||
* @param group_name A group name.
|
||||
* @param key A key.
|
||||
* @param error Return location for a G::Error, or <tt>0</tt>.
|
||||
|
|
@ -291,14 +346,7 @@ public:
|
|||
Glib::ustring get_locale_string(const Glib::ustring& group_name, const Glib::ustring& key) const;
|
||||
|
||||
|
||||
/** Returns the value associated with @a key under @a group_name
|
||||
* translated in the given @a locale if available. If @a locale is
|
||||
* <tt>0</tt> then the current locale is assumed.
|
||||
*
|
||||
* If @a key cannot be found then <tt>0</tt> is returned and @a error is set to
|
||||
* G::KEY_FILE_ERROR_KEY_NOT_FOUND. If the value associated
|
||||
* with @a key cannot be interpreted or no suitable translation can
|
||||
* be found then the untranslated value is returned.
|
||||
/** Return value: a newly allocated string or <tt>0</tt> if the specified
|
||||
* @param group_name A group name.
|
||||
* @param key A key.
|
||||
* @param locale A locale or <tt>0</tt>.
|
||||
|
|
@ -315,18 +363,13 @@ public:
|
|||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
|
||||
/** Returns the value associated with @a key under @a group_name as a
|
||||
* boolean.
|
||||
*
|
||||
* If @a key cannot be found then the return value is undefined and
|
||||
* @a error is set to G::KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if
|
||||
* the value associated with @a key cannot be interpreted as a boolean
|
||||
* then the return value is also undefined and @a error is set to
|
||||
* G::KEY_FILE_ERROR_INVALID_VALUE.
|
||||
/** Return value: the value associated with the key as a boolean, or
|
||||
* @param group_name A group name.
|
||||
* @param key A key.
|
||||
* @param error Return location for a G::Error.
|
||||
* @return The value associated with the key as a boolean
|
||||
* @return The value associated with the key as a boolean, or
|
||||
* <tt>false</tt> if the key was not found or could not be parsed.
|
||||
*
|
||||
* @newin2p6.
|
||||
*/
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
|
@ -345,18 +388,12 @@ public:
|
|||
int get_integer(const Glib::ustring& key) const;
|
||||
|
||||
|
||||
/** Returns the value associated with @a key under @a group_name as an
|
||||
* integer. If @a group_name is <tt>0</tt>, the start_group is used.
|
||||
*
|
||||
* If @a key cannot be found then the return value is undefined and
|
||||
* @a error is set to G::KEY_FILE_ERROR_KEY_NOT_FOUND. Likewise, if
|
||||
* the value associated with @a key cannot be interpreted as an integer
|
||||
* then the return value is also undefined and @a error is set to
|
||||
* G::KEY_FILE_ERROR_INVALID_VALUE.
|
||||
/** Return value: the value associated with the key as an integer, or
|
||||
* @param group_name A group name.
|
||||
* @param key A key.
|
||||
* @param error Return location for a G::Error.
|
||||
* @return The value associated with the key as an integer.
|
||||
* @return The value associated with the key as an integer, or
|
||||
* 0 if the key was not found or could not be parsed.
|
||||
*
|
||||
* @newin2p6.
|
||||
*/
|
||||
|
|
@ -367,6 +404,52 @@ public:
|
|||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
|
||||
/** Gets the value in the first group, under @a key, interpreting it as
|
||||
* a double.
|
||||
* @param key The name of the key
|
||||
* @return The value of @a key as an double
|
||||
* @throws Glib::KeyFileError
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
double get_double(const Glib::ustring& key) const;
|
||||
|
||||
|
||||
/** Return value: the value associated with the key as a double, or
|
||||
* @param group_name A group name.
|
||||
* @param key A key.
|
||||
* @param error Return location for a G::Error.
|
||||
* @return The value associated with the key as a double, or
|
||||
* 0.0 if the key was not found or could not be parsed.
|
||||
*
|
||||
* @newin2p14.
|
||||
*/
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
double get_double(const Glib::ustring& group_name, const Glib::ustring& key) const;
|
||||
#else
|
||||
double get_double(const Glib::ustring& group_name, const Glib::ustring& key, std::auto_ptr<Glib::Error>& error) const;
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
|
||||
|
||||
/** Associates a new double value with @a key under @a group_name .
|
||||
* If @a key cannot be found then it is created.
|
||||
*
|
||||
* @newin2p14
|
||||
* @param group_name A group name.
|
||||
* @param key A key.
|
||||
* @param value An double value.
|
||||
*/
|
||||
void set_double(const Glib::ustring& group_name, const Glib::ustring& key, double value);
|
||||
|
||||
/** Associates a new double value with @a key under the start group.
|
||||
* If @a key cannot be found then it is created.
|
||||
*
|
||||
* @newin2p12
|
||||
* @param key A key.
|
||||
* @param value An double value.
|
||||
*/
|
||||
void set_double(const Glib::ustring& key, double value);
|
||||
|
||||
/** Returns the values associated with @a key under @a group_name
|
||||
* @param group_name The name of a group
|
||||
* @param key The name of a key
|
||||
|
|
@ -414,6 +497,15 @@ public:
|
|||
Glib::ArrayHandle<int> get_integer_list(const Glib::ustring& group_name, const Glib::ustring& key) const;
|
||||
|
||||
|
||||
/** Returns the values associated with @a key under @a group_name
|
||||
* @param group_name The name of a group
|
||||
* @param key The name of a key
|
||||
* @return A list of doubles
|
||||
* @throws Glib::KeyFileError
|
||||
*/
|
||||
Glib::ArrayHandle<double> get_double_list(const Glib::ustring& group_name, const Glib::ustring& key) const;
|
||||
|
||||
|
||||
/** Get comment from top of file
|
||||
* @return The comment
|
||||
*/
|
||||
|
|
@ -530,7 +622,7 @@ public:
|
|||
|
||||
|
||||
/** Sets a list of booleans for the @a key under @a group_name.
|
||||
* If either the @a key or @a group_name cannot be found they are created
|
||||
* If either the @a key or @a group_name cannot be found they are created.
|
||||
* @param group_name The name of a group
|
||||
* @param key The name of a key
|
||||
* @param list A list holding object of type bool
|
||||
|
|
@ -539,7 +631,7 @@ public:
|
|||
|
||||
|
||||
/** Sets a list of integers for the @a key under @a group_name.
|
||||
* If either the @a key or @a group_name cannot be found they are created
|
||||
* If either the @a key or @a group_name cannot be found they are created.
|
||||
* @param group_name The name of a group
|
||||
* @param key The name of a key
|
||||
* @param list A list holding object of type int
|
||||
|
|
@ -547,6 +639,17 @@ public:
|
|||
void set_integer_list(const Glib::ustring& group_name, const Glib::ustring& key, Glib::ArrayHandle<int>& list);
|
||||
|
||||
|
||||
/** Sets a list of doubles for the @a key under @a group_name.
|
||||
* If either the @a key or @a group_name cannot be found they are created.
|
||||
* @param group_name The name of a group
|
||||
* @param key The name of a key
|
||||
* @param list A list holding object of type int
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
void set_double_list(const Glib::ustring& group_name, const Glib::ustring& key, Glib::ArrayHandle<double>& list);
|
||||
|
||||
|
||||
/** Places @a comment at the start of the file, before the first group.
|
||||
* @param comment The Comment
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_LISTHANDLE_H
|
||||
#define _GLIBMM_LISTHANDLE_H
|
||||
|
||||
/* $Id: listhandle.h,v 1.3 2003/04/21 17:39:41 murrayc Exp $ */
|
||||
/* $Id: listhandle.h 32 2003-04-21 17:39:41Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: main.cc,v 1.11 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: main.cc 420 2007-06-22 15:29:58Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -288,6 +288,7 @@ SignalTimeout::SignalTimeout(GMainContext* context)
|
|||
context_ (context)
|
||||
{}
|
||||
|
||||
/* Note that this is our equivalent of g_timeout_add(). */
|
||||
sigc::connection SignalTimeout::connect(const sigc::slot<bool>& slot,
|
||||
unsigned int interval, int priority)
|
||||
{
|
||||
|
|
@ -310,6 +311,29 @@ sigc::connection SignalTimeout::connect(const sigc::slot<bool>& slot,
|
|||
return connection;
|
||||
}
|
||||
|
||||
/* Note that this is our equivalent of g_timeout_add_seconds(). */
|
||||
sigc::connection SignalTimeout::connect_seconds(const sigc::slot<bool>& slot,
|
||||
unsigned int interval, int priority)
|
||||
{
|
||||
SourceConnectionNode *const conn_node = new SourceConnectionNode(slot);
|
||||
const sigc::connection connection (*conn_node->get_slot());
|
||||
|
||||
GSource *const source = g_timeout_source_new_seconds(interval);
|
||||
|
||||
if(priority != G_PRIORITY_DEFAULT)
|
||||
g_source_set_priority(source, priority);
|
||||
|
||||
g_source_set_callback(
|
||||
source, &glibmm_source_callback, conn_node,
|
||||
&SourceConnectionNode::destroy_notify_callback);
|
||||
|
||||
g_source_attach(source, context_);
|
||||
g_source_unref(source); // GMainContext holds a reference
|
||||
|
||||
conn_node->install(source);
|
||||
return connection;
|
||||
}
|
||||
|
||||
SignalTimeout signal_timeout()
|
||||
{
|
||||
return SignalTimeout(0); // 0 means default context
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_MAIN_H
|
||||
#define _GLIBMM_MAIN_H
|
||||
|
||||
/* $Id: main.h,v 1.9 2005/03/14 15:22:13 murrayc Exp $ */
|
||||
/* $Id: main.h 420 2007-06-22 15:29:58Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -166,6 +166,18 @@ public:
|
|||
#endif
|
||||
|
||||
/** Connects a timeout handler.
|
||||
*
|
||||
* Note that timeout functions may be delayed, due to the processing of other
|
||||
* event sources. Thus they should not be relied on for precise timing.
|
||||
* After each call to the timeout function, the time of the next
|
||||
* timeout is recalculated based on the current time and the given interval
|
||||
* (it does not try to 'catch up' time lost in delays).
|
||||
*
|
||||
* If you want to have a timer in the "seconds" range and do not care
|
||||
* about the exact time of the first call of the timer, use the
|
||||
* connect_seconds() function; this function allows for more
|
||||
* optimizations and more efficient system power usage.
|
||||
*
|
||||
* @code
|
||||
* Glib::signal_timeout().connect(sigc::ptr_fun(&timeout_handler), 1000);
|
||||
* @endcode
|
||||
|
|
@ -175,13 +187,45 @@ public:
|
|||
* timeout_source->connect(sigc::ptr_fun(&timeout_handler));
|
||||
* timeout_source->attach(Glib::MainContext::get_default());
|
||||
* @endcode
|
||||
* @param slot A slot to call when @a interval elapsed.
|
||||
* @param slot A slot to call when @a interval has elapsed.
|
||||
* @param interval The timeout in milliseconds.
|
||||
* @param priority The priority of the new event source.
|
||||
* @return A connection handle, which can be used to disconnect the handler.
|
||||
*/
|
||||
sigc::connection connect(const sigc::slot<bool>& slot, unsigned int interval,
|
||||
int priority = PRIORITY_DEFAULT);
|
||||
|
||||
|
||||
/** Connects a timeout handler with whole second granularity.
|
||||
*
|
||||
* Unlike connect(), this operates at whole second granularity.
|
||||
* The initial starting point of the timer is determined by the implementation
|
||||
* and the implementation is expected to group multiple timers together so that
|
||||
* they fire all at the same time.
|
||||
*
|
||||
* To allow this grouping, the @a interval to the first timer is rounded
|
||||
* and can deviate up to one second from the specified interval.
|
||||
* Subsequent timer iterations will generally run at the specified interval.
|
||||
*
|
||||
* @code
|
||||
* Glib::signal_timeout().connect(sigc::ptr_fun(&timeout_handler), 1000);
|
||||
* @endcode
|
||||
* is equivalent to:
|
||||
* @code
|
||||
* const Glib::RefPtr<Glib::TimeoutSource> timeout_source = Glib::TimeoutSource::create(1000);
|
||||
* timeout_source->connectseconds(sigc::ptr_fun(&timeout_handler));
|
||||
* timeout_source->attach(Glib::MainContext::get_default());
|
||||
* @endcode
|
||||
* @param slot A slot to call when @a interval has elapsed.
|
||||
* @param interval The timeout in seconds.
|
||||
* @param priority The priority of the new event source.
|
||||
* @return A connection handle, which can be used to disconnect the handler.
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
sigc::connection connect_seconds(const sigc::slot<bool>& slot, unsigned int interval,
|
||||
int priority = PRIORITY_DEFAULT);
|
||||
|
||||
private:
|
||||
GMainContext* context_;
|
||||
|
||||
|
|
|
|||
|
|
@ -153,11 +153,13 @@ typedef Glib::MarkupError Error;
|
|||
Glib::ustring escape_text(const Glib::ustring& text);
|
||||
|
||||
|
||||
/** @addtogroup glibmmEnums Enums and Flags */
|
||||
|
||||
/** There are no flags right now. Pass <tt>Glib::Markup::ParseFlags(0)</tt> for
|
||||
* the flags argument to all functions (this should be the default argument
|
||||
* anyway).
|
||||
*/
|
||||
/** @addtogroup glibmmEnums Enums and Flags */
|
||||
|
||||
/**
|
||||
* @ingroup glibmmEnums
|
||||
* @par Bitwise operators:
|
||||
* <tt>%ParseFlags operator|(ParseFlags, ParseFlags)</tt><br>
|
||||
|
|
@ -170,7 +172,8 @@ Glib::ustring escape_text(const Glib::ustring& text);
|
|||
*/
|
||||
enum ParseFlags
|
||||
{
|
||||
DO_NOT_USE_THIS_UNSUPPORTED_FLAG = 1 << 0
|
||||
DO_NOT_USE_THIS_UNSUPPORTED_FLAG = 1 << 0,
|
||||
TREAT_CDATA_AS_TEXT = 1 << 1
|
||||
};
|
||||
|
||||
/** @ingroup glibmmEnums */
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: miscutils.cc,v 1.6 2006/09/10 14:38:53 jjongsma Exp $ */
|
||||
/* $Id: miscutils.cc 420 2007-06-22 15:29:58Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -31,22 +31,7 @@ namespace Glib
|
|||
|
||||
Glib::ustring get_application_name()
|
||||
{
|
||||
if(const char *const application_name = g_get_application_name())
|
||||
{
|
||||
// Lets be a bit more strict than the original GLib function and ensure
|
||||
// we always return valid UTF-8. gtkmm coders surely won't expect invalid
|
||||
// UTF-8 in a Glib::ustring returned by a glibmm function.
|
||||
|
||||
if(g_utf8_validate(application_name, -1, 0))
|
||||
return Glib::ustring(application_name);
|
||||
|
||||
char *const appname_utf8 = g_filename_to_utf8(application_name, -1, 0, 0, 0);
|
||||
g_return_val_if_fail(appname_utf8 != 0, "");
|
||||
|
||||
return Glib::ustring(ScopedPtr<char>(appname_utf8).get());
|
||||
}
|
||||
|
||||
return Glib::ustring();
|
||||
return convert_const_gchar_ptr_to_ustring (g_get_application_name());
|
||||
}
|
||||
|
||||
void set_application_name(const Glib::ustring& application_name)
|
||||
|
|
@ -56,8 +41,7 @@ void set_application_name(const Glib::ustring& application_name)
|
|||
|
||||
std::string get_prgname()
|
||||
{
|
||||
const char *const prgname = g_get_prgname();
|
||||
return (prgname) ? std::string(prgname) : std::string();
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_prgname());
|
||||
}
|
||||
|
||||
void set_prgname(const std::string& prgname)
|
||||
|
|
@ -69,13 +53,12 @@ std::string getenv(const std::string& variable, bool& found)
|
|||
{
|
||||
const char *const value = g_getenv(variable.c_str());
|
||||
found = (value != 0);
|
||||
return (value) ? std::string(value) : std::string();
|
||||
return convert_const_gchar_ptr_to_stdstring(value);
|
||||
}
|
||||
|
||||
std::string getenv(const std::string& variable)
|
||||
{
|
||||
const char *const value = g_getenv(variable.c_str());
|
||||
return (value) ? std::string(value) : std::string();
|
||||
return convert_const_gchar_ptr_to_stdstring(g_getenv(variable.c_str()));
|
||||
}
|
||||
|
||||
bool setenv(const std::string& variable, const std::string& value, bool overwrite)
|
||||
|
|
@ -90,175 +73,89 @@ void unsetenv(const std::string& variable)
|
|||
|
||||
std::string get_user_name()
|
||||
{
|
||||
return std::string(g_get_user_name());
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_user_name());
|
||||
}
|
||||
|
||||
std::string get_real_name()
|
||||
{
|
||||
return std::string(g_get_real_name());
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_real_name());
|
||||
}
|
||||
|
||||
std::string get_home_dir()
|
||||
{
|
||||
const char *const value = g_get_home_dir();
|
||||
return (value) ? std::string(value) : std::string();
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_home_dir());
|
||||
}
|
||||
|
||||
std::string get_tmp_dir()
|
||||
{
|
||||
return std::string(g_get_tmp_dir());
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_tmp_dir());
|
||||
}
|
||||
|
||||
std::string get_current_dir()
|
||||
{
|
||||
const ScopedPtr<char> buf (g_get_current_dir());
|
||||
return std::string(buf.get());
|
||||
return convert_return_gchar_ptr_to_stdstring(g_get_current_dir());
|
||||
}
|
||||
|
||||
std::string get_user_special_dir(GUserDirectory directory)
|
||||
{
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_user_special_dir(directory));
|
||||
}
|
||||
|
||||
std::string get_user_data_dir()
|
||||
{
|
||||
return std::string(g_get_user_data_dir());
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_user_data_dir());
|
||||
}
|
||||
|
||||
std::string get_user_config_dir()
|
||||
{
|
||||
return std::string(g_get_user_config_dir());
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_user_config_dir());
|
||||
}
|
||||
|
||||
std::string get_user_cache_dir()
|
||||
{
|
||||
return std::string(g_get_user_cache_dir());
|
||||
return convert_const_gchar_ptr_to_stdstring(g_get_user_cache_dir());
|
||||
}
|
||||
|
||||
bool path_is_absolute(const std::string& filename)
|
||||
{
|
||||
return g_path_is_absolute(filename.c_str());
|
||||
return (g_path_is_absolute(filename.c_str()) != 0);
|
||||
}
|
||||
|
||||
std::string path_skip_root(const std::string& filename)
|
||||
{
|
||||
// g_path_skip_root() returns a pointer _into_ the argument string,
|
||||
// or NULL if there was no root component.
|
||||
|
||||
if(const char *const ptr = g_path_skip_root(filename.c_str()))
|
||||
return std::string(ptr);
|
||||
else
|
||||
return std::string();
|
||||
return convert_const_gchar_ptr_to_stdstring(g_path_skip_root(filename.c_str()));
|
||||
}
|
||||
|
||||
std::string path_get_basename(const std::string& filename)
|
||||
{
|
||||
const ScopedPtr<char> buf (g_path_get_basename(filename.c_str()));
|
||||
return std::string(buf.get());
|
||||
return convert_return_gchar_ptr_to_stdstring(g_path_get_basename(filename.c_str()));
|
||||
}
|
||||
|
||||
std::string path_get_dirname(const std::string& filename)
|
||||
{
|
||||
const ScopedPtr<char> buf (g_path_get_dirname(filename.c_str()));
|
||||
return std::string(buf.get());
|
||||
return convert_return_gchar_ptr_to_stdstring(g_path_get_dirname(filename.c_str()));
|
||||
}
|
||||
|
||||
std::string build_filename(const Glib::ArrayHandle<std::string>& elements)
|
||||
{
|
||||
return Glib::convert_return_gchar_ptr_to_stdstring( g_build_filenamev(const_cast<char**>(elements.data())) );
|
||||
|
||||
return convert_return_gchar_ptr_to_stdstring(g_build_filenamev(const_cast<char**>(elements.data())));
|
||||
}
|
||||
|
||||
std::string build_filename(const std::string& elem1, const std::string& elem2)
|
||||
{
|
||||
const char *const elements[] = { elem1.c_str(), elem2.c_str(), 0 };
|
||||
return build_filename(elements);
|
||||
return convert_return_gchar_ptr_to_stdstring(g_build_filename(elem1.c_str(), elem2.c_str(), static_cast<char*>(0)));
|
||||
}
|
||||
|
||||
std::string build_path(const std::string& separator, const Glib::ArrayHandle<std::string>& elements)
|
||||
{
|
||||
return Glib::convert_return_gchar_ptr_to_stdstring( g_build_pathv(separator.c_str(), const_cast<char**>(elements.data())) );
|
||||
|
||||
/* Yes, this reimplements the functionality of g_build_path() -- because
|
||||
* it takes a varargs list, and calling it several times would result
|
||||
* in different behaviour.
|
||||
*/
|
||||
/*
|
||||
std::string result;
|
||||
result.reserve(256); //TODO: Explain why this magic number is useful. murrayc
|
||||
|
||||
const char *const sep = separator.c_str();
|
||||
const size_t seplen = separator.length();
|
||||
|
||||
bool is_first = true;
|
||||
bool have_leading = false;
|
||||
const char* single_element = 0;
|
||||
const char* last_trailing = 0;
|
||||
|
||||
const char *const *const elements_begin = elements.data();
|
||||
const char *const *const elements_end = elements_begin + elements.size();
|
||||
|
||||
for(const char *const * pelement = elements_begin; pelement != elements_end; ++pelement)
|
||||
{
|
||||
const char* start = *pelement;
|
||||
|
||||
if(*start == '\0')
|
||||
continue; // ignore empty elements
|
||||
|
||||
if(seplen != 0)
|
||||
{
|
||||
while(strncmp(start, sep, seplen) == 0)
|
||||
start += seplen;
|
||||
}
|
||||
|
||||
const char* end = start + strlen(start);
|
||||
|
||||
if(seplen != 0)
|
||||
{
|
||||
while(end >= start + seplen && strncmp(end - seplen, sep, seplen) == 0)
|
||||
end -= seplen;
|
||||
|
||||
last_trailing = end;
|
||||
|
||||
while(last_trailing >= *pelement + seplen && strncmp(last_trailing - seplen, sep, seplen) == 0)
|
||||
last_trailing -= seplen;
|
||||
|
||||
if(!have_leading)
|
||||
{
|
||||
// If the leading and trailing separator strings are in the
|
||||
// same element and overlap, the result is exactly that element.
|
||||
//
|
||||
if(last_trailing <= start)
|
||||
single_element = *pelement;
|
||||
|
||||
result.append(*pelement, start);
|
||||
have_leading = true;
|
||||
}
|
||||
else
|
||||
single_element = 0;
|
||||
}
|
||||
|
||||
if(end == start)
|
||||
continue;
|
||||
|
||||
if(!is_first)
|
||||
result += separator;
|
||||
|
||||
result.append(start, end);
|
||||
is_first = false;
|
||||
}
|
||||
|
||||
if(single_element)
|
||||
result = single_element;
|
||||
else if(last_trailing)
|
||||
result += last_trailing;
|
||||
|
||||
return result;
|
||||
*/
|
||||
return convert_return_gchar_ptr_to_stdstring(g_build_pathv(separator.c_str(), const_cast<char**>(elements.data())));
|
||||
}
|
||||
|
||||
std::string find_program_in_path(const std::string& program)
|
||||
{
|
||||
if(char *const buf = g_find_program_in_path(program.c_str()))
|
||||
return std::string(ScopedPtr<char>(buf).get());
|
||||
else
|
||||
return std::string();
|
||||
return convert_return_gchar_ptr_to_stdstring(g_find_program_in_path(program.c_str()));
|
||||
}
|
||||
|
||||
} // namespace Glib
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_MISCUTILS_H
|
||||
#define _GLIBMM_MISCUTILS_H
|
||||
|
||||
/* $Id: miscutils.h,v 1.5 2006/09/10 14:38:53 jjongsma Exp $ */
|
||||
/* $Id: miscutils.h 428 2007-07-29 12:43:29Z murrayc $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -154,13 +154,31 @@ std::string get_tmp_dir();
|
|||
*/
|
||||
std::string get_current_dir();
|
||||
|
||||
//TODO: We could create a C++ enum to wrap the C GUserDirectory enum,
|
||||
//but we would have to either be very careful, or define the enum
|
||||
//values in terms of the C enums anyway.
|
||||
/** Returns the full path of a special directory using its logical id.
|
||||
*
|
||||
* On Unix this is done using the XDG special user directories.
|
||||
*
|
||||
* Depending on the platform, the user might be able to change the path
|
||||
* of the special directory without requiring the session to restart; GLib
|
||||
* will not reflect any change once the special directories are loaded.
|
||||
*
|
||||
* Return value: the path to the specified special directory.
|
||||
* @param directory Te logical id of special directory
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
std::string get_user_special_dir(GUserDirectory directory);
|
||||
|
||||
/** Returns a base directory in which to access application data such as icons
|
||||
* that is customized for a particular user.
|
||||
*
|
||||
* On UNIX platforms this is determined using the mechanisms described in the
|
||||
* XDG Base Directory Specification
|
||||
*
|
||||
* @since glibmm 2.14
|
||||
* @newin2p14
|
||||
*/
|
||||
std::string get_user_data_dir();
|
||||
|
||||
|
|
@ -170,7 +188,7 @@ std::string get_user_data_dir();
|
|||
* On UNIX platforms this is determined using the mechanisms described in the
|
||||
* XDG Base Directory Specification
|
||||
*
|
||||
* @since glibmm 2.14
|
||||
* @newin2p14
|
||||
*/
|
||||
std::string get_user_config_dir();
|
||||
|
||||
|
|
@ -180,7 +198,7 @@ std::string get_user_config_dir();
|
|||
* On UNIX platforms this is determined using the mechanisms described in the
|
||||
* XDG Base Directory Specification
|
||||
*
|
||||
* @since glibmm 2.14
|
||||
* @newin2p14
|
||||
*/
|
||||
std::string get_user_cache_dir();
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: object.cc,v 1.6 2004/06/20 03:41:20 daniel Exp $ */
|
||||
/* $Id: object.cc 369 2007-01-20 10:19:33Z daniel $ */
|
||||
|
||||
/* Copyright 1998-2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -28,8 +28,6 @@
|
|||
|
||||
#include <cstdarg>
|
||||
|
||||
#include <cstring>
|
||||
|
||||
//Weak references:
|
||||
//I'm not sure what the point of these are apart from being a hacky way out of circular references,
|
||||
//but maybe we could make it easier to use them by making a Java Reference Object -style class like so:
|
||||
|
|
@ -59,10 +57,15 @@ ConstructParams::ConstructParams(const Glib::Class& glibmm_class_)
|
|||
parameters (0)
|
||||
{}
|
||||
|
||||
/* The implementation is mostly copied from gobject.c, with some minor tweaks.
|
||||
/*
|
||||
* The implementation is mostly copied from gobject.c, with some minor tweaks.
|
||||
* Basically, it looks up each property name to get its GType, and then uses
|
||||
* G_VALUE_COLLECT() to store the varargs argument in a GValue of the correct
|
||||
* type.
|
||||
*
|
||||
* Note that the property name arguments are assumed to be static string
|
||||
* literals. No attempt is made to copy the string content. This is no
|
||||
* different from g_object_new().
|
||||
*/
|
||||
ConstructParams::ConstructParams(const Glib::Class& glibmm_class_,
|
||||
const char* first_property_name, ...)
|
||||
|
|
@ -89,7 +92,7 @@ ConstructParams::ConstructParams(const Glib::Class& glibmm_class_,
|
|||
if(!pspec)
|
||||
{
|
||||
g_warning("Glib::ConstructParams::ConstructParams(): "
|
||||
"object class `%s' has no property named `%s'",
|
||||
"object class \"%s\" has no property named \"%s\"",
|
||||
g_type_name(glibmm_class.get_type()), name);
|
||||
break;
|
||||
}
|
||||
|
|
@ -131,7 +134,7 @@ ConstructParams::~ConstructParams()
|
|||
}
|
||||
|
||||
/*
|
||||
* Some compilers require the existance of a copy constructor in certain
|
||||
* Some compilers require the existence of a copy constructor in certain
|
||||
* usage contexts. This implementation is fully functional, but unlikely
|
||||
* to be ever actually called due to optimization.
|
||||
*/
|
||||
|
|
@ -196,13 +199,10 @@ Object::Object()
|
|||
if(custom_type_name_ && !is_anonymous_custom_())
|
||||
{
|
||||
object_class_.init();
|
||||
object_type = object_class_.clone_custom_type(custom_type_name_); //A type that is derived from GObject.
|
||||
// This creates a type that is derived (indirectly) from GObject.
|
||||
object_type = object_class_.clone_custom_type(custom_type_name_);
|
||||
}
|
||||
|
||||
// Create a new GObject with the specified array of construct properties.
|
||||
// This works with custom types too, since those inherit the properties of
|
||||
// their base class.
|
||||
|
||||
void *const new_object = g_object_newv(object_type, 0, 0);
|
||||
|
||||
// Connect the GObject and Glib::Object instances.
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// -*- c++ -*-
|
||||
#ifndef _GLIBMM_OBJECT_H
|
||||
#define _GLIBMM_OBJECT_H
|
||||
/* $Id: object.h,v 1.14 2006/06/19 20:43:42 murrayc Exp $ */
|
||||
/* $Id: object.h 369 2007-01-20 10:19:33Z daniel $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -23,15 +23,16 @@
|
|||
//X11 defines DestroyNotify and some other non-prefixed stuff, and it's too late to change that now,
|
||||
//so let's give people a clue about the compilation errors that they will see:
|
||||
#ifdef DestroyNotify
|
||||
#error "X11/Xlib.h seems to have been included before this header. Due to some commonly-named macros in X11/Xlib.h, it may only be included after any glibmm, gdkmm, or gtkmm headers."
|
||||
#endif //DestroyNotify
|
||||
# error "X11/Xlib.h seems to have been included before this header. Due to some commonly-named macros in X11/Xlib.h, it may only be included after any glibmm, gdkmm, or gtkmm headers."
|
||||
#endif
|
||||
|
||||
#include <glib/gmacros.h> /* for G_GNUC_NULL_TERMINATED */
|
||||
#include <glibmm/objectbase.h>
|
||||
#include <glibmm/wrap.h>
|
||||
#include <glibmm/quark.h>
|
||||
#include <glibmm/refptr.h>
|
||||
#include <glibmm/utility.h> /* Could be private, but that would be tedious. */
|
||||
#include <glibmm/containerhandle_shared.h> //Because its specializations may be here.
|
||||
#include <glibmm/containerhandle_shared.h> /* Because its specializations may be here. */
|
||||
#include <glibmm/value.h>
|
||||
|
||||
#include <glibmmconfig.h>
|
||||
|
|
@ -60,7 +61,7 @@ class GSigConnectionNode;
|
|||
* involved, since g_object_new() is just a wrapper around g_object_newv()
|
||||
* as well.
|
||||
*
|
||||
* The advantage of an auxilary ConstructParams object over g_object_new()
|
||||
* The advantage of an auxiliary ConstructParams object over g_object_new()
|
||||
* is that the actual construction is always done in the Glib::Object ctor.
|
||||
* This allows for neat tricks like easy creation of derived custom types,
|
||||
* without adding special support to each ctor of every class.
|
||||
|
|
@ -76,16 +77,18 @@ public:
|
|||
GParameter* parameters;
|
||||
|
||||
explicit ConstructParams(const Glib::Class& glibmm_class_);
|
||||
ConstructParams(const Glib::Class& glibmm_class_, const char* first_property_name, ...);
|
||||
ConstructParams(const Glib::Class& glibmm_class_, const char* first_property_name, ...)
|
||||
G_GNUC_NULL_TERMINATED; // warn if called without a trailing NULL pointer
|
||||
~ConstructParams();
|
||||
|
||||
// This is only used by the C++ compiler (since g++ 3.4) to create temporary instances.
|
||||
// Apparently the compiler will actually optimize away the use of this.
|
||||
// See bug #132300.
|
||||
// The copy constructor is semantically required by the C++ compiler
|
||||
// (since g++ 3.4) to be able to create temporary instances, depending
|
||||
// on the usage context. Apparently the compiler will actually optimize
|
||||
// away the copy, though. See bug #132300.
|
||||
ConstructParams(const ConstructParams& other);
|
||||
|
||||
private:
|
||||
// noncopyable
|
||||
// no copy assignment
|
||||
ConstructParams& operator=(const ConstructParams&);
|
||||
};
|
||||
|
||||
|
|
@ -158,7 +161,7 @@ private:
|
|||
//For some (proably, more spec-compliant) compilers, these specializations must
|
||||
//be next to the objects that they use.
|
||||
#ifndef GLIBMM_CAN_USE_DYNAMIC_CAST_IN_UNUSED_TEMPLATE_WITHOUT_DEFINITION
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS /* hide the specializations */
|
||||
# ifndef DOXYGEN_SHOULD_SKIP_THIS /* hide the specializations */
|
||||
|
||||
namespace Container_Helpers
|
||||
{
|
||||
|
|
@ -174,9 +177,9 @@ struct TypeTraits< Glib::RefPtr<T> >
|
|||
typedef typename T::BaseObjectType * CType;
|
||||
typedef typename T::BaseObjectType * CTypeNonConst;
|
||||
|
||||
static CType to_c_type (const CppType& ptr) { return Glib::unwrap(ptr); }
|
||||
static CType to_c_type (CType ptr) { return ptr; }
|
||||
static CppType to_cpp_type (CType ptr)
|
||||
static CType to_c_type (const CppType& ptr) { return Glib::unwrap(ptr); }
|
||||
static CType to_c_type (CType ptr) { return ptr; }
|
||||
static CppType to_cpp_type(CType ptr)
|
||||
{
|
||||
//return Glib::wrap(ptr, true);
|
||||
|
||||
|
|
@ -189,7 +192,7 @@ struct TypeTraits< Glib::RefPtr<T> >
|
|||
//We use dynamic_cast<> in case of multiple inheritance.
|
||||
}
|
||||
|
||||
static void release_c_type (CType ptr)
|
||||
static void release_c_type(CType ptr)
|
||||
{
|
||||
GLIBMM_DEBUG_UNREFERENCE(0, ptr);
|
||||
g_object_unref(ptr);
|
||||
|
|
@ -197,7 +200,7 @@ struct TypeTraits< Glib::RefPtr<T> >
|
|||
};
|
||||
|
||||
//This confuses the SUN Forte compiler, so we ifdef it out:
|
||||
#ifdef GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS
|
||||
# ifdef GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS
|
||||
|
||||
/** Partial specialization for pointers to const GObject instances.
|
||||
* @ingroup ContHelpers
|
||||
|
|
@ -210,9 +213,9 @@ struct TypeTraits< Glib::RefPtr<const T> >
|
|||
typedef const typename T::BaseObjectType * CType;
|
||||
typedef typename T::BaseObjectType * CTypeNonConst;
|
||||
|
||||
static CType to_c_type (const CppType& ptr) { return Glib::unwrap(ptr); }
|
||||
static CType to_c_type (CType ptr) { return ptr; }
|
||||
static CppType to_cpp_type (CType ptr)
|
||||
static CType to_c_type (const CppType& ptr) { return Glib::unwrap(ptr); }
|
||||
static CType to_c_type (CType ptr) { return ptr; }
|
||||
static CppType to_cpp_type(CType ptr)
|
||||
{
|
||||
//return Glib::wrap(ptr, true);
|
||||
|
||||
|
|
@ -225,14 +228,14 @@ struct TypeTraits< Glib::RefPtr<const T> >
|
|||
//We use dynamic_cast<> in case of multiple inheritance.
|
||||
}
|
||||
|
||||
static void release_c_type (CType ptr)
|
||||
static void release_c_type (CType ptr)
|
||||
{
|
||||
GLIBMM_DEBUG_UNREFERENCE(0, ptr);
|
||||
g_object_unref(const_cast<CTypeNonConst>(ptr));
|
||||
}
|
||||
};
|
||||
|
||||
#endif //GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS
|
||||
# endif /* GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS */
|
||||
|
||||
} //namespace Container_Helpers
|
||||
|
||||
|
|
@ -261,7 +264,7 @@ public:
|
|||
};
|
||||
|
||||
//The SUN Forte Compiler has a problem with this:
|
||||
#ifdef GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS
|
||||
# ifdef GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS
|
||||
|
||||
/** Partial specialization for RefPtr<> to const Glib::Object.
|
||||
* @ingroup glibmmValue
|
||||
|
|
@ -278,11 +281,10 @@ public:
|
|||
void set(const CppType& data) { set_object(const_cast<T*>(data.operator->())); }
|
||||
CppType get() const { return Glib::RefPtr<T>::cast_dynamic(get_object_copy()); }
|
||||
};
|
||||
#endif //GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS
|
||||
# endif /* GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS */
|
||||
|
||||
|
||||
#endif //DOXYGEN_SHOULD_SKIP_THIS
|
||||
#endif //GLIBMM_CAN_USE_DYNAMIC_CAST_IN_UNUSED_TEMPLATE_WITHOUT_DEFINITION
|
||||
# endif /* DOXYGEN_SHOULD_SKIP_THIS */
|
||||
#endif /* GLIBMM_CAN_USE_DYNAMIC_CAST_IN_UNUSED_TEMPLATE_WITHOUT_DEFINITION */
|
||||
|
||||
} // namespace Glib
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: objectbase.cc,v 1.8 2006/11/10 02:24:49 murrayc Exp $ */
|
||||
/* $Id: objectbase.cc 337 2006-11-10 02:24:49Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_OBJECTBASE_H
|
||||
#define _GLIBMM_OBJECTBASE_H
|
||||
|
||||
/* $Id: objectbase.h,v 1.13 2006/11/10 02:24:49 murrayc Exp $ */
|
||||
/* $Id: objectbase.h 385 2007-03-23 17:23:42Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -25,6 +25,7 @@
|
|||
#include <glibmm/propertyproxy.h>
|
||||
#include <glibmm/ustring.h>
|
||||
#include <glibmm/value.h>
|
||||
#include <glibmm/quark.h>
|
||||
#include <sigc++/trackable.h>
|
||||
#include <typeinfo>
|
||||
#include <glibmmconfig.h>
|
||||
|
|
@ -134,7 +135,24 @@ public:
|
|||
GObject* gobj_copy() const;
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
static ObjectBase* _get_current_wrapper(GObject* object);
|
||||
|
||||
/// This is for use by gtkmm wrappers only, and not by applications.
|
||||
static ObjectBase* _get_current_wrapper(GObject* object); //We keep this non-inline version, to preserve ABI.
|
||||
|
||||
// This is commented-out because it's not clear yet whether it's a worthwhile optimization.
|
||||
/// This is for use by gtkmm wrappers only, and not by applications.
|
||||
//
|
||||
//inline static ObjectBase* _get_current_wrapper_inline(GObject* object)
|
||||
//{
|
||||
// // This is what g_object_get_qdata does internally. However,
|
||||
// // g_object_get_qdata does an addition G_IS_OBJECT(object) check that
|
||||
// // needs three times as much time as the actual lookup.
|
||||
// if(object)
|
||||
// return static_cast<ObjectBase*>(g_datalist_id_get_data(&object->qdata, Glib::quark_));
|
||||
// else
|
||||
// return 0;
|
||||
//}
|
||||
|
||||
bool _cpp_destruction_is_in_progress() const;
|
||||
#endif //DOXYGEN_SHOULD_SKIP_THIS
|
||||
|
||||
|
|
@ -146,8 +164,21 @@ protected:
|
|||
bool cpp_destruction_in_progress_;
|
||||
|
||||
bool is_anonymous_custom_() const;
|
||||
bool is_derived_() const;
|
||||
|
||||
public: // is_derived_() must be public, so that overridden vfuncs and signal handlers can call it via ObjectBase.
|
||||
|
||||
/// This is for use by gtkmm wrappers only, and not by applications.
|
||||
bool is_derived_() const; //We keep this non-inline version, to preserve ABI.
|
||||
|
||||
//This is commented-out because it's not clear yet whether it's a worthwhile optimization.
|
||||
//
|
||||
/// This is for use by gtkmm wrappers only, and not by applications.
|
||||
//inline bool is_derived_inline_() const
|
||||
//{
|
||||
// return (custom_type_name_ != 0);
|
||||
//}
|
||||
|
||||
protected:
|
||||
static void destroy_notify_callback_(void* data);
|
||||
virtual void destroy_notify_();
|
||||
|
||||
|
|
|
|||
|
|
@ -25,11 +25,41 @@
|
|||
*/
|
||||
|
||||
#include <glibmm/utility.h>
|
||||
#include <glibmm/exceptionhandler.h>
|
||||
#include <glib/goption.h>
|
||||
|
||||
namespace Glib
|
||||
{
|
||||
|
||||
namespace Private
|
||||
{
|
||||
static const gchar* SignalProxy_translate_gtk_callback (const gchar* str, gpointer data)
|
||||
{
|
||||
Glib::ustring translated_str;
|
||||
Glib::OptionContext::SlotTranslate* the_slot =
|
||||
static_cast<Glib::OptionContext::SlotTranslate*>(data);
|
||||
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
try
|
||||
{
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
translated_str = (*the_slot)(str);
|
||||
#ifdef GLIBMM_EXCEPTIONS_ENABLED
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
Glib::exception_handlers_invoke();
|
||||
}
|
||||
#endif //GLIBMM_EXCEPTIONS_ENABLED
|
||||
return translated_str.c_str ();
|
||||
}
|
||||
|
||||
static void SignalProxy_translate_gtk_callback_destroy (gpointer data)
|
||||
{
|
||||
delete static_cast<Glib::OptionContext::SlotTranslate*>(data);
|
||||
}
|
||||
|
||||
} //namespace Private
|
||||
|
||||
OptionContext::OptionContext(const Glib::ustring& parameter_string)
|
||||
: gobject_( g_option_context_new(parameter_string.c_str()) ),
|
||||
|
|
@ -74,9 +104,18 @@ OptionGroup OptionContext::get_main_group() const
|
|||
|
||||
*/
|
||||
|
||||
|
||||
} // namespace Glib
|
||||
void OptionContext::set_translate_func (const SlotTranslate& slot)
|
||||
{
|
||||
//Create a copy of the slot. A pointer to this will be passed through the callback's data parameter.
|
||||
//It will be deleted when SignalProxy_translate_gtk_callback_destroy() is called.
|
||||
SlotTranslate* slot_copy = new SlotTranslate(slot);
|
||||
|
||||
g_option_context_set_translate_func(
|
||||
gobj(), &Private::SignalProxy_translate_gtk_callback, slot_copy,
|
||||
&Private::SignalProxy_translate_gtk_callback_destroy);
|
||||
}
|
||||
|
||||
} // namespace Glib
|
||||
|
||||
namespace
|
||||
{
|
||||
|
|
@ -156,6 +195,31 @@ bool OptionContext::parse(int& argc, char**& argv, std::auto_ptr<Glib::Error>& e
|
|||
|
||||
}
|
||||
|
||||
void OptionContext::set_summary(const Glib::ustring& summary)
|
||||
{
|
||||
g_option_context_set_summary(gobj(), summary.c_str());
|
||||
}
|
||||
|
||||
Glib::ustring OptionContext::get_summary() const
|
||||
{
|
||||
return Glib::convert_const_gchar_ptr_to_ustring(g_option_context_get_summary(const_cast<GOptionContext*>(gobj())));
|
||||
}
|
||||
|
||||
void OptionContext::set_description(const Glib::ustring& description)
|
||||
{
|
||||
g_option_context_set_description(gobj(), description.c_str());
|
||||
}
|
||||
|
||||
Glib::ustring OptionContext::get_description() const
|
||||
{
|
||||
return Glib::convert_const_gchar_ptr_to_ustring(g_option_context_get_description(const_cast<GOptionContext*>(gobj())));
|
||||
}
|
||||
|
||||
void OptionContext::set_translation_domain(const Glib::ustring& domain)
|
||||
{
|
||||
g_option_context_set_translation_domain(gobj(), domain.c_str());
|
||||
}
|
||||
|
||||
|
||||
} // namespace Glib
|
||||
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@
|
|||
#include <glibmm/optionentry.h>
|
||||
#include <glibmm/optiongroup.h>
|
||||
#include <glibmm/error.h>
|
||||
#include <sigc++/signal.h>
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
extern "C" { typedef struct _GOptionContext GOptionContext; }
|
||||
|
|
@ -103,8 +104,7 @@ public:
|
|||
*/
|
||||
void set_help_enabled(bool help_enabled = true);
|
||||
|
||||
/** Returns whether automatic <option>--help</option> generation
|
||||
* is turned on for @a context . See g_option_context_set_help_enabled().
|
||||
/** Returns: <tt>true</tt> if automatic help generation is turned on.
|
||||
* @return <tt>true</tt> if automatic help generation is turned on.
|
||||
*
|
||||
* @newin2p6.
|
||||
|
|
@ -125,8 +125,7 @@ public:
|
|||
*/
|
||||
void set_ignore_unknown_options(bool ignore_unknown = true);
|
||||
|
||||
/** Returns whether unknown options are ignored or not. See
|
||||
* g_option_context_set_ignore_unknown_options().
|
||||
/** Returns: <tt>true</tt> if unknown options are ignored.
|
||||
* @return <tt>true</tt> if unknown options are ignored.
|
||||
*
|
||||
* @newin2p6.
|
||||
|
|
@ -151,6 +150,11 @@ public:
|
|||
* @a argv array contains one of the recognized help options,
|
||||
* this function will produce help output to stdout and
|
||||
* call <tt>exit (0)</tt>.
|
||||
*
|
||||
* Note that function depends on the
|
||||
* current locale for
|
||||
* automatic character set conversion of string and filename
|
||||
* arguments.
|
||||
* @param argc A pointer to the number of command line arguments.
|
||||
* @param argv A pointer to the array of command line arguments.
|
||||
* @param error A return location for errors.
|
||||
|
|
@ -195,6 +199,68 @@ public:
|
|||
GOptionContext* gobj() { return gobject_; }
|
||||
const GOptionContext* gobj() const { return gobject_; }
|
||||
|
||||
|
||||
/** Adds a string to be displayed in --help output before the list of options. This
|
||||
* is typically a summary of the program functionality.
|
||||
*
|
||||
* Note that the summary is translated (see set_translate_func(),
|
||||
* set_translation_domain()).
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
void set_summary(const Glib::ustring& summary);
|
||||
|
||||
/** Returns: the summary
|
||||
* See set_summary() for more information
|
||||
* @return The summary
|
||||
*
|
||||
* @newin2p14.
|
||||
*/
|
||||
Glib::ustring get_summary() const;
|
||||
|
||||
/** Adds a string to be displayed in --help output after the list of
|
||||
* options. This text often includes a bug reporting address.
|
||||
*
|
||||
* Note that the summary is translated (see set_translate_func()).
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
void set_description(const Glib::ustring& description);
|
||||
|
||||
/** Returns: the description
|
||||
* See set_description() for more information
|
||||
* @return The description
|
||||
*
|
||||
* @newin2p14.
|
||||
*/
|
||||
Glib::ustring get_description() const;
|
||||
|
||||
|
||||
/** A convenience function to use gettext() for translating
|
||||
* user-visible strings.
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
void set_translation_domain(const Glib::ustring& domain);
|
||||
|
||||
/**
|
||||
* This function is used to translate user-visible strings, for --help output.
|
||||
* The function takes an untranslated string and returns a translated string
|
||||
*/
|
||||
typedef sigc::slot<Glib::ustring, const Glib::ustring&> SlotTranslate;
|
||||
|
||||
/**
|
||||
* Sets the function which is used to translate user-visible
|
||||
* strings, for --help output. Different groups can use different functions.
|
||||
*
|
||||
* If you are using gettext(), you only need to set the translation domain,
|
||||
* see set_translation_domain().
|
||||
*
|
||||
* @newin2p14
|
||||
*/
|
||||
void set_translate_func (const SlotTranslate& slot);
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
GOptionContext* gobject_;
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
#include <glibmm/private/optiongroup_p.h>
|
||||
|
||||
// -*- c++ -*-
|
||||
/* $Id: optiongroup.ccg,v 1.17 2006/01/28 12:09:22 murrayc Exp $ */
|
||||
/* $Id: optiongroup.ccg,v 1.15.4.3 2006/03/30 12:19:58 murrayc Exp $ */
|
||||
|
||||
/* Copyright (C) 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
@ -28,6 +28,7 @@
|
|||
#include <glibmm/optioncontext.h>
|
||||
#include <glibmm/utility.h>
|
||||
//#include <glibmm/containers.h>
|
||||
#include <glib/gmem.h> // g_malloc
|
||||
#include <glib/goption.h>
|
||||
|
||||
namespace Glib
|
||||
|
|
@ -43,7 +44,7 @@ static gboolean g_callback_pre_parse(GOptionContext* context, GOptionGroup* /* g
|
|||
{
|
||||
OptionContext cppContext(context, false /* take_ownership */);
|
||||
//OptionGroup cppGroup(group, true /* take_copy */); //Maybe this should be option_group.
|
||||
|
||||
|
||||
OptionGroup* option_group = static_cast<OptionGroup*>(data);
|
||||
if(option_group)
|
||||
return option_group->on_pre_parse(cppContext, *option_group);
|
||||
|
|
@ -55,7 +56,7 @@ static gboolean g_callback_post_parse(GOptionContext* context, GOptionGroup* /*
|
|||
{
|
||||
OptionContext cppContext(context, false /* take_ownership */);
|
||||
//OptionGroup cppGroup(group, true /* take_copy */); //Maybe this should be option_group.
|
||||
|
||||
|
||||
OptionGroup* option_group = static_cast<OptionGroup*>(data);
|
||||
if(option_group)
|
||||
{
|
||||
|
|
@ -69,7 +70,7 @@ static void g_callback_error(GOptionContext* context, GOptionGroup* /* group */,
|
|||
{
|
||||
OptionContext cppContext(context, false /* take_ownership */);
|
||||
//OptionGroup cppGroup(group); //Maybe this should be option_group.
|
||||
|
||||
|
||||
OptionGroup* option_group = static_cast<OptionGroup*>(data);
|
||||
if(option_group)
|
||||
return option_group->on_error(cppContext, *option_group);
|
||||
|
|
@ -105,7 +106,7 @@ OptionGroup::~OptionGroup()
|
|||
CppOptionEntry& cpp_entry = iter->second;
|
||||
cpp_entry.release_c_arg();
|
||||
}
|
||||
|
||||
|
||||
if(has_ownership_)
|
||||
{
|
||||
g_option_group_free(gobj());
|
||||
|
|
@ -116,15 +117,15 @@ OptionGroup::~OptionGroup()
|
|||
void OptionGroup::add_entry(const OptionEntry& entry)
|
||||
{
|
||||
//It does not copy the entry, so it needs to live as long as the group.
|
||||
|
||||
|
||||
//g_option_group_add_entries takes an array, with the last item in the array having a null long_name.
|
||||
//Hopefully this will be properly documented eventually - see bug #
|
||||
|
||||
|
||||
//Create a temporary array, just so we can give the correct thing to g_option_group_add_entries:
|
||||
GOptionEntry array[2];
|
||||
array[0] = *(entry.gobj()); //Copy contents.
|
||||
GLIBMM_INITIALIZE_STRUCT(array[1], GOptionEntry);
|
||||
|
||||
|
||||
g_option_group_add_entries(gobj(), array);
|
||||
}
|
||||
|
||||
|
|
@ -163,10 +164,11 @@ void OptionGroup::add_entry_with_wrapper(const OptionEntry& entry, GOptionArg ar
|
|||
const Glib::ustring name = entry.get_long_name();
|
||||
type_map_entries::iterator iterFind = map_entries_.find(name);
|
||||
if( iterFind == map_entries_.end() ) //If we have not added this entry already
|
||||
{
|
||||
{
|
||||
CppOptionEntry cppEntry;
|
||||
cppEntry.carg_type_ = arg_type;
|
||||
cppEntry.allocate_c_arg();
|
||||
cppEntry.set_c_arg_default(cpp_arg);
|
||||
|
||||
cppEntry.cpparg_ = cpp_arg;
|
||||
|
||||
|
|
@ -177,36 +179,35 @@ void OptionGroup::add_entry_with_wrapper(const OptionEntry& entry, GOptionArg ar
|
|||
|
||||
cppEntry.entry_->gobj()->arg = arg_type;
|
||||
cppEntry.entry_->gobj()->arg_data = cppEntry.carg_;
|
||||
|
||||
|
||||
//Remember the C++/C mapping so that we can use it later:
|
||||
map_entries_[name] = cppEntry;
|
||||
|
||||
add_entry(*(cppEntry.entry_));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
bool OptionGroup::on_pre_parse(OptionContext& /* context */, OptionGroup& /* group */)
|
||||
{
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool OptionGroup::on_post_parse(OptionContext& /* context */, OptionGroup& /* group */)
|
||||
{
|
||||
//Call this at the start of overrides.
|
||||
|
||||
|
||||
//TODO: Maybe put this in the C callback:
|
||||
|
||||
|
||||
//The C args have now been given values by GOption.
|
||||
//Convert C values to C++ values:
|
||||
|
||||
|
||||
for(type_map_entries::iterator iter = map_entries_.begin(); iter != map_entries_.end(); ++iter)
|
||||
{
|
||||
CppOptionEntry& cpp_entry = iter->second;
|
||||
cpp_entry.convert_c_to_cpp();
|
||||
}
|
||||
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
@ -218,20 +219,24 @@ void OptionGroup::on_error(OptionContext& /* context */, OptionGroup& /* group *
|
|||
OptionGroup::CppOptionEntry::CppOptionEntry()
|
||||
: carg_type_(G_OPTION_ARG_NONE), carg_(0), cpparg_(0), entry_(0)
|
||||
{}
|
||||
|
||||
|
||||
void OptionGroup::CppOptionEntry::allocate_c_arg()
|
||||
{
|
||||
//Create an instance of the appropriate C type.
|
||||
//This will be destroyed in the OptionGroup destructor.
|
||||
//
|
||||
//We must also call set_c_arg_default() to give these C types the specified defaults based on the C++-typed arguments.
|
||||
switch(carg_type_)
|
||||
{
|
||||
case G_OPTION_ARG_STRING: //The char* will be for UTF8 strins.
|
||||
case G_OPTION_ARG_FILENAME: //The char* will be for strings in the current locale's encoding.
|
||||
{
|
||||
char** typed_arg = new char*;
|
||||
*typed_arg = 0; //The C code will allocate a char* and put it here, for us to g_free() later.
|
||||
//The C code will allocate a char* and put it here, for us to g_free() later.
|
||||
//Alternatively, set_c_arg_default() might allocate a char*, and the C code might or might not free and replace that.
|
||||
*typed_arg = 0;
|
||||
carg_ = typed_arg;
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_INT:
|
||||
|
|
@ -239,7 +244,7 @@ void OptionGroup::CppOptionEntry::allocate_c_arg()
|
|||
int* typed_arg = new int;
|
||||
*typed_arg = 0;
|
||||
carg_ = typed_arg;
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_STRING_ARRAY:
|
||||
|
|
@ -248,7 +253,7 @@ void OptionGroup::CppOptionEntry::allocate_c_arg()
|
|||
char*** typed_arg = new char**;
|
||||
*typed_arg = 0;
|
||||
carg_ = typed_arg;
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_NONE: /* Actually a boolean. */
|
||||
|
|
@ -256,7 +261,88 @@ void OptionGroup::CppOptionEntry::allocate_c_arg()
|
|||
gboolean* typed_arg = new gboolean;
|
||||
*typed_arg = 0;
|
||||
carg_ = typed_arg;
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void OptionGroup::CppOptionEntry::set_c_arg_default(void* cpp_arg)
|
||||
{
|
||||
switch(carg_type_)
|
||||
{
|
||||
case G_OPTION_ARG_INT:
|
||||
{
|
||||
*static_cast<int*>(carg_) = *static_cast<int*>(cpp_arg);
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_NONE:
|
||||
{
|
||||
*static_cast<gboolean*>(carg_) = *static_cast<bool*>(cpp_arg);
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_STRING:
|
||||
{
|
||||
Glib::ustring* typed_cpp_arg = static_cast<Glib::ustring*>(cpp_arg);
|
||||
if(typed_cpp_arg && !typed_cpp_arg->empty())
|
||||
{
|
||||
const char** typed_c_arg = static_cast<const char**>(carg_);
|
||||
*typed_c_arg = g_strdup(typed_cpp_arg->c_str()); //Freed in release_c_arg().
|
||||
}
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_FILENAME:
|
||||
{
|
||||
std::string* typed_cpp_arg = static_cast<std::string*>(cpp_arg);
|
||||
if(typed_cpp_arg && !typed_cpp_arg->empty())
|
||||
{
|
||||
const char** typed_c_arg = static_cast<const char**>(carg_);
|
||||
*typed_c_arg = g_strdup(typed_cpp_arg->c_str()); //Freed in release_c_arg().
|
||||
}
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_STRING_ARRAY:
|
||||
{
|
||||
std::vector<Glib::ustring>* typed_cpp_arg = static_cast<std::vector<Glib::ustring>*>(cpp_arg);
|
||||
if(typed_cpp_arg)
|
||||
{
|
||||
std::vector<Glib::ustring>& vec = *typed_cpp_arg;
|
||||
const char** array = static_cast<const char**>( g_malloc(sizeof(gchar*) * (vec.size() + 1)) );
|
||||
|
||||
for(std::vector<Glib::ustring>::size_type i = 0; i < vec.size(); ++i)
|
||||
{
|
||||
array[i] = g_strdup( vec[i].c_str() );
|
||||
}
|
||||
|
||||
array[vec.size()] = 0;
|
||||
|
||||
const char*** typed_c_arg = static_cast<const char***>(carg_);
|
||||
*typed_c_arg = array;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_FILENAME_ARRAY:
|
||||
{
|
||||
std::vector<std::string>* typed_cpp_arg = static_cast<std::vector<std::string>*>(cpp_arg);
|
||||
if(typed_cpp_arg)
|
||||
{
|
||||
std::vector<std::string>& vec = *typed_cpp_arg;
|
||||
const char** array = static_cast<const char**>( g_malloc(sizeof(gchar*) * (vec.size() + 1)) );
|
||||
|
||||
for(std::vector<Glib::ustring>::size_type i = 0; i < vec.size(); ++i)
|
||||
{
|
||||
array[i] = g_strdup( vec[i].c_str() );
|
||||
}
|
||||
|
||||
array[vec.size()] = 0;
|
||||
|
||||
const char*** typed_c_arg = static_cast<const char***>(carg_);
|
||||
*typed_c_arg = array;
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
|
@ -277,15 +363,15 @@ void OptionGroup::CppOptionEntry::release_c_arg()
|
|||
case G_OPTION_ARG_STRING:
|
||||
case G_OPTION_ARG_FILENAME:
|
||||
{
|
||||
char** typed_arg = (char**)carg_;
|
||||
char** typed_arg = static_cast<char**>(carg_);
|
||||
g_free(*typed_arg); //Free the char* string at type_arg, which was allocated by the C code.
|
||||
delete typed_arg; //Delete the char** that we allocated in allocate_c_arg;
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_INT:
|
||||
{
|
||||
int* typed_arg = (int*)carg_;
|
||||
int* typed_arg = static_cast<int*>(carg_);
|
||||
delete typed_arg;
|
||||
|
||||
break;
|
||||
|
|
@ -298,23 +384,23 @@ void OptionGroup::CppOptionEntry::release_c_arg()
|
|||
}
|
||||
case G_OPTION_ARG_NONE: /* Actually a boolean. */
|
||||
{
|
||||
gboolean* typed_arg = (gboolean*)carg_;
|
||||
gboolean* typed_arg = static_cast<gboolean*>(carg_);
|
||||
delete typed_arg;
|
||||
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
/* TODO:
|
||||
G_OPTION_ARG_CALLBACK,
|
||||
*/
|
||||
/* TODO:
|
||||
G_OPTION_ARG_CALLBACK,
|
||||
*/
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
carg_ = 0;
|
||||
}
|
||||
|
||||
|
||||
if(entry_)
|
||||
delete entry_;
|
||||
}
|
||||
|
|
@ -325,44 +411,44 @@ void OptionGroup::CppOptionEntry::convert_c_to_cpp()
|
|||
{
|
||||
case G_OPTION_ARG_STRING:
|
||||
{
|
||||
char** typed_arg = (char**)carg_;
|
||||
Glib::ustring* typed_cpp_arg = (Glib::ustring*)cpparg_;
|
||||
char** typed_arg = static_cast<char**>(carg_);
|
||||
Glib::ustring* typed_cpp_arg = static_cast<Glib::ustring*>(cpparg_);
|
||||
if(typed_arg && typed_cpp_arg)
|
||||
{
|
||||
char* pch = *typed_arg;
|
||||
(*typed_cpp_arg) = Glib::convert_const_gchar_ptr_to_ustring(pch);
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
case G_OPTION_ARG_FILENAME:
|
||||
{
|
||||
char** typed_arg = (char**)carg_;
|
||||
std::string* typed_cpp_arg = (std::string*)cpparg_;
|
||||
char** typed_arg = static_cast<char**>(carg_);
|
||||
std::string* typed_cpp_arg = static_cast<std::string*>(cpparg_);
|
||||
if(typed_arg && typed_cpp_arg)
|
||||
{
|
||||
char* pch = *typed_arg;
|
||||
(*typed_cpp_arg) = Glib::convert_const_gchar_ptr_to_stdstring(pch);
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
case G_OPTION_ARG_INT:
|
||||
{
|
||||
*((int*)cpparg_) = *((int*)carg_);
|
||||
*((int*)cpparg_) = *(static_cast<int*>(carg_));
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_STRING_ARRAY:
|
||||
{
|
||||
char*** typed_arg = (char***)carg_;
|
||||
vecustrings* typed_cpp_arg = (vecustrings*)cpparg_;
|
||||
char*** typed_arg = static_cast<char***>(carg_);
|
||||
vecustrings* typed_cpp_arg = static_cast<vecustrings*>(cpparg_);
|
||||
if(typed_arg && typed_cpp_arg)
|
||||
{
|
||||
typed_cpp_arg->clear();
|
||||
|
||||
|
||||
//The C array seems to be null-terminated.
|
||||
//Glib::StringArrayHandle array_handle(*typed_arg, Glib::OWNERSHIP_NONE);
|
||||
|
||||
|
||||
//The SUN Forte compiler complains about this:
|
||||
// "optiongroup.cc", line 354: Error: Cannot assign Glib::ArrayHandle<Glib::ustring,
|
||||
// Glib::Container_Helpers::TypeTraits<Glib::ustring>> to std::vector<Glib::ustring> without
|
||||
|
|
@ -375,14 +461,14 @@ void OptionGroup::CppOptionEntry::convert_c_to_cpp()
|
|||
// cxx: Error: ../../glib/glibmm/containerhandle_shared.h, line 149: the operand
|
||||
// of a pointer dynamic_cast must be a pointer to a complete class type
|
||||
// return dynamic_cast<CppType>(Glib::wrap_auto(cobj, false /* take_copy */));
|
||||
|
||||
|
||||
//for(Glib::StringArrayHandle::iterator iter = array_handle.begin(); iter != array_handle.end(); ++iter)
|
||||
//{
|
||||
// typed_cpp_arg->push_back(*iter);
|
||||
//}
|
||||
|
||||
|
||||
//So we do this:
|
||||
|
||||
|
||||
char** char_array_next = *typed_arg;
|
||||
while(char_array_next && *char_array_next)
|
||||
{
|
||||
|
|
@ -390,19 +476,19 @@ void OptionGroup::CppOptionEntry::convert_c_to_cpp()
|
|||
++char_array_next;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_FILENAME_ARRAY:
|
||||
{
|
||||
char*** typed_arg = (char***)carg_;
|
||||
vecustrings* typed_cpp_arg = (vecustrings*)cpparg_;
|
||||
char*** typed_arg = static_cast<char***>(carg_);
|
||||
vecustrings* typed_cpp_arg = static_cast<vecustrings*>(cpparg_);
|
||||
if(typed_arg && typed_cpp_arg)
|
||||
{
|
||||
typed_cpp_arg->clear();
|
||||
|
||||
|
||||
//See comments above about the SUN Forte and Tru64 compilers.
|
||||
|
||||
|
||||
char** char_array_next = *typed_arg;
|
||||
while(char_array_next && *char_array_next)
|
||||
{
|
||||
|
|
@ -410,20 +496,20 @@ void OptionGroup::CppOptionEntry::convert_c_to_cpp()
|
|||
++char_array_next;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
break;
|
||||
}
|
||||
case G_OPTION_ARG_NONE: /* Actually a boolean. */
|
||||
{
|
||||
*((bool*)cpparg_) = *((gboolean*)carg_);
|
||||
*(static_cast<bool*>(cpparg_)) = *(static_cast<gboolean*>(carg_));
|
||||
break;
|
||||
}
|
||||
default:
|
||||
{
|
||||
/* TODO:
|
||||
G_OPTION_ARG_CALLBACK,
|
||||
*/
|
||||
break;
|
||||
G_OPTION_ARG_CALLBACK,
|
||||
*/
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -433,7 +519,7 @@ GOptionGroup* OptionGroup::gobj_give_ownership()
|
|||
has_ownership_ = false;
|
||||
return gobj();
|
||||
}
|
||||
|
||||
|
||||
} // namespace Glib
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
#define _GLIBMM_OPTIONGROUP_H
|
||||
|
||||
|
||||
/* $Id: optiongroup.hg,v 1.10 2005/01/10 17:42:17 murrayc Exp $ */
|
||||
/* $Id: optiongroup.hg,v 1.10.4.1 2006/03/30 12:19:58 murrayc Exp $ */
|
||||
|
||||
/* Copyright (C) 2004 The glibmm Development Team
|
||||
*
|
||||
|
|
@ -72,20 +72,20 @@ public:
|
|||
virtual bool on_post_parse(OptionContext& context, OptionGroup& group);
|
||||
virtual void on_error(OptionContext& context, OptionGroup& group);
|
||||
|
||||
|
||||
|
||||
void add_entry(const OptionEntry& entry);
|
||||
|
||||
|
||||
|
||||
typedef std::vector<Glib::ustring> vecustrings;
|
||||
typedef std::vector<std::string> vecstrings;
|
||||
|
||||
|
||||
void add_entry(const OptionEntry& entry, bool& arg);
|
||||
void add_entry(const OptionEntry& entry, int& arg);
|
||||
void add_entry(const OptionEntry& entry, Glib::ustring& arg);
|
||||
void add_entry_filename(const OptionEntry& entry, std::string& arg);
|
||||
void add_entry(const OptionEntry& entry, vecustrings& arg);
|
||||
void add_entry_filename(const OptionEntry& entry, vecstrings& arg);
|
||||
|
||||
|
||||
/* TODO:
|
||||
void g_option_group_set_translate_func (GOptionGroup *group,
|
||||
GTranslateFunc func,
|
||||
|
|
@ -100,36 +100,41 @@ void g_option_group_set_translate_func (GOptionGroup *group,
|
|||
* @param domain The domain to use.
|
||||
*/
|
||||
void set_translation_domain(const Glib::ustring& domain);
|
||||
|
||||
|
||||
GOptionGroup* gobj() { return gobject_; }
|
||||
const GOptionGroup* gobj() const { return gobject_; }
|
||||
GOptionGroup* gobj_give_ownership();
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_SKIP_THIS
|
||||
/** This is not public API. It is an implementation detail.
|
||||
*/
|
||||
class CppOptionEntry
|
||||
{
|
||||
public:
|
||||
CppOptionEntry();
|
||||
|
||||
|
||||
void allocate_c_arg();
|
||||
void set_c_arg_default(void* cpp_arg);
|
||||
void convert_c_to_cpp();
|
||||
void release_c_arg();
|
||||
|
||||
|
||||
GOptionArg carg_type_;
|
||||
void* carg_;
|
||||
void* cpparg_;
|
||||
OptionEntry* entry_;
|
||||
};
|
||||
|
||||
|
||||
void add_entry_with_wrapper(const OptionEntry& entry, GOptionArg arg_type, void* cpp_arg);
|
||||
|
||||
|
||||
//Map of entry names to CppOptionEntry:
|
||||
typedef std::map<Glib::ustring, CppOptionEntry> type_map_entries;
|
||||
type_map_entries map_entries_;
|
||||
|
||||
|
||||
GOptionGroup* gobject_;
|
||||
bool has_ownership_; //Whether the gobject_ belongs to this C++ instance.
|
||||
#endif //DOXYGEN_SHOULD_SKIP_THIS
|
||||
|
||||
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: pattern.cc,v 1.1.1.1 2003/01/07 16:58:51 murrayc Exp $ */
|
||||
/* $Id: pattern.cc 2 2003-01-07 16:59:16Z murrayc $ */
|
||||
|
||||
/* pattern.cc
|
||||
*
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
#ifndef _GLIBMM_PATTERN_H
|
||||
#define _GLIBMM_PATTERN_H
|
||||
|
||||
/* $Id: pattern.h,v 1.1.1.1 2003/01/07 16:58:51 murrayc Exp $ */
|
||||
/* $Id: pattern.h 2 2003-01-07 16:59:16Z murrayc $ */
|
||||
|
||||
/* pattern.h
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,451 +0,0 @@
|
|||
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||
# glib/glibmm/private/Makefile. Generated from Makefile.in by configure.
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
|
||||
|
||||
srcdir = .
|
||||
top_srcdir = ../../..
|
||||
|
||||
pkgdatadir = $(datadir)/glibmm
|
||||
pkglibdir = $(libdir)/glibmm
|
||||
pkgincludedir = $(includedir)/glibmm
|
||||
top_builddir = ../../..
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = /usr/bin/install -c
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = i686-pc-linux-gnu
|
||||
host_triplet = i686-pc-linux-gnu
|
||||
DIST_COMMON = $(am__private_include_HEADERS_DIST) \
|
||||
$(srcdir)/../../src/Makefile_list_of_hg.am_fragment \
|
||||
$(srcdir)/Makefile.am $(srcdir)/Makefile.in \
|
||||
$(top_srcdir)/build_shared/Makefile_gensrc_platform.am_fragment
|
||||
subdir = glib/glibmm/private
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/scripts/cxx.m4 \
|
||||
$(top_srcdir)/scripts/cxx_std.m4 \
|
||||
$(top_srcdir)/scripts/docgen.m4 \
|
||||
$(top_srcdir)/scripts/glibmm_check_perl.m4 \
|
||||
$(top_srcdir)/scripts/macros.m4 \
|
||||
$(top_srcdir)/scripts/reduced.m4 $(top_srcdir)/scripts/sun.m4 \
|
||||
$(top_srcdir)/configure.in
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h \
|
||||
$(top_builddir)/glib/glibmmconfig.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__private_include_HEADERS_DIST = convert_p.h date_p.h fileutils_p.h \
|
||||
iochannel_p.h keyfile_p.h markup_p.h module_p.h \
|
||||
optioncontext_p.h optionentry_p.h optiongroup_p.h shell_p.h \
|
||||
spawn_p.h thread_p.h unicode_p.h interface_p.h object_p.h
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
*) f=$$p;; \
|
||||
esac;
|
||||
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
|
||||
am__installdirs = "$(DESTDIR)$(private_includedir)"
|
||||
private_includeHEADERS_INSTALL = $(INSTALL_HEADER)
|
||||
HEADERS = $(private_include_HEADERS)
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
ACLOCAL = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run aclocal-1.9 -I ./scripts
|
||||
AMDEP_FALSE = #
|
||||
AMDEP_TRUE =
|
||||
AMTAR = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run tar
|
||||
AR = ar
|
||||
AS = as
|
||||
AUTOCONF = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run autoconf
|
||||
AUTOHEADER = :
|
||||
AUTOMAKE = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run automake-1.9
|
||||
AWK = mawk
|
||||
CC = gcc
|
||||
CCDEPMODE = depmode=gcc3
|
||||
CFLAGS = -g -O2
|
||||
CPP = gcc -E
|
||||
CPPFLAGS =
|
||||
CXX = g++
|
||||
CXXCPP = g++ -E
|
||||
CXXDEPMODE = depmode=gcc3
|
||||
CXXFLAGS = -g -O2 -Wall -Wno-long-long
|
||||
CYGPATH_W = echo
|
||||
DEFS = -DHAVE_CONFIG_H
|
||||
DEPDIR = .deps
|
||||
DISABLE_DEPRECATED_API_CFLAGS =
|
||||
DISABLE_DEPRECATED_CFLAGS =
|
||||
DLLTOOL = dlltool
|
||||
ECHO = echo
|
||||
ECHO_C =
|
||||
ECHO_N = -n
|
||||
ECHO_T =
|
||||
EGREP = grep -E
|
||||
EXEEXT =
|
||||
F77 =
|
||||
FFLAGS =
|
||||
GLIBMM_CFLAGS = -I/usr/include/sigc++-2.0 -I/usr/lib/sigc++-2.0/include -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
|
||||
GLIBMM_LIBS = -Wl,--export-dynamic -lsigc-2.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
|
||||
GLIBMM_MAJOR_VERSION = 2
|
||||
GLIBMM_MICRO_VERSION = 3
|
||||
GLIBMM_MINOR_VERSION = 13
|
||||
GLIBMM_RELEASE = 2.13
|
||||
GLIBMM_VERSION = 2.13.3
|
||||
GTHREAD_CFLAGS = -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
|
||||
GTHREAD_LIBS = -pthread -lgthread-2.0 -lrt -lglib-2.0
|
||||
GTKMMPROC_MERGECDOCS =
|
||||
GTKMM_DOXYGEN_INPUT = /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/glib/glibmm/
|
||||
GTKMM_FALSE_FALSE =
|
||||
GTKMM_FALSE_TRUE = #
|
||||
INSTALL_DATA = ${INSTALL} -m 644
|
||||
INSTALL_PROGRAM = ${INSTALL}
|
||||
INSTALL_SCRIPT = ${INSTALL}
|
||||
INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
|
||||
LDFLAGS =
|
||||
LIBGLIBMM_SO_VERSION = 1:24:0
|
||||
LIBOBJS =
|
||||
LIBS =
|
||||
LIBTOOL = $(SHELL) $(top_builddir)/libtool
|
||||
LN_S = ln -s
|
||||
LTLIBOBJS =
|
||||
M4 = m4
|
||||
MAINT = #
|
||||
MAINTAINER_MODE_FALSE =
|
||||
MAINTAINER_MODE_TRUE = #
|
||||
MAKEINFO = ${SHELL} /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/missing --run makeinfo
|
||||
OBJDUMP = objdump
|
||||
OBJEXT = o
|
||||
OS_WIN32_FALSE =
|
||||
OS_WIN32_TRUE = #
|
||||
PACKAGE = glibmm
|
||||
PACKAGE_BUGREPORT =
|
||||
PACKAGE_NAME =
|
||||
PACKAGE_STRING =
|
||||
PACKAGE_TARNAME =
|
||||
PACKAGE_VERSION =
|
||||
PATH_SEPARATOR = :
|
||||
PERL_PATH = /usr/bin/perl
|
||||
PKG_CONFIG = /usr/bin/pkg-config
|
||||
PLATFORM_WIN32_FALSE =
|
||||
PLATFORM_WIN32_TRUE = #
|
||||
RANLIB = ranlib
|
||||
SET_MAKE =
|
||||
SHELL = /bin/bash
|
||||
STRIP = strip
|
||||
VERSION = 2.13.3
|
||||
ac_ct_AR = ar
|
||||
ac_ct_AS =
|
||||
ac_ct_CC = gcc
|
||||
ac_ct_CXX = g++
|
||||
ac_ct_DLLTOOL =
|
||||
ac_ct_F77 =
|
||||
ac_ct_OBJDUMP =
|
||||
ac_ct_RANLIB = ranlib
|
||||
ac_ct_STRIP = strip
|
||||
ac_pt_PKG_CONFIG = /usr/bin/pkg-config
|
||||
am__fastdepCC_FALSE = #
|
||||
am__fastdepCC_TRUE =
|
||||
am__fastdepCXX_FALSE = #
|
||||
am__fastdepCXX_TRUE =
|
||||
am__include = include
|
||||
am__leading_dot = .
|
||||
am__quote =
|
||||
am__tar = ${AMTAR} chof - "$$tardir"
|
||||
am__untar = ${AMTAR} xf -
|
||||
bindir = ${exec_prefix}/bin
|
||||
build = i686-pc-linux-gnu
|
||||
build_alias =
|
||||
build_cpu = i686
|
||||
build_os = linux-gnu
|
||||
build_vendor = pc
|
||||
datadir = ${prefix}/share
|
||||
exec_prefix = ${prefix}
|
||||
host = i686-pc-linux-gnu
|
||||
host_alias =
|
||||
host_cpu = i686
|
||||
host_os = linux-gnu
|
||||
host_vendor = pc
|
||||
includedir = ${prefix}/include
|
||||
infodir = ${prefix}/info
|
||||
install_sh = /home/carl/mnt/hg/ardour.org/trunk/libs/glibmm2/scripts/install-sh
|
||||
libdir = ${exec_prefix}/lib
|
||||
libexecdir = ${exec_prefix}/libexec
|
||||
localstatedir = ${prefix}/var
|
||||
mandir = ${prefix}/man
|
||||
mkdir_p = mkdir -p --
|
||||
oldincludedir = /usr/include
|
||||
prefix = /usr/local
|
||||
program_transform_name = s,x,x,
|
||||
sbindir = ${exec_prefix}/sbin
|
||||
sharedstatedir = ${prefix}/com
|
||||
sysconfdir = ${prefix}/etc
|
||||
target_alias =
|
||||
files_posix_hg =
|
||||
files_win32_hg =
|
||||
files_general_hg = convert.hg date.hg fileutils.hg iochannel.hg keyfile.hg markup.hg module.hg optioncontext.hg optionentry.hg optiongroup.hg shell.hg spawn.hg thread.hg unicode.hg
|
||||
files_all_hg = $(files_general_hg) $(files_posix_hg) $(files_win32_hg)
|
||||
files_hg = $(files_general_hg) $(files_posix_hg)
|
||||
#files_hg = $(files_general_hg) $(files_win32_hg)
|
||||
files_built_h = $(files_hg:.hg=_p.h)
|
||||
files_built_all_h = $(files_all_hg:.hg=_p.h)
|
||||
files_extra_h = interface_p.h object_p.h
|
||||
files_extra_all_h = interface_p.h object_p.h
|
||||
dist_sources = $(files_built_all_h) $(files_extra_all_h)
|
||||
DISTFILES = $(DIST_COMMON) $(dist_sources)
|
||||
private_includedir = $(includedir)/glibmm-2.4/glibmm/private
|
||||
private_include_HEADERS = $(files_built_h) $(files_extra_h)
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
$(srcdir)/Makefile.in: # $(srcdir)/Makefile.am $(srcdir)/../../src/Makefile_list_of_hg.am_fragment $(top_srcdir)/build_shared/Makefile_gensrc_platform.am_fragment $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
||||
&& exit 0; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu glib/glibmm/private/Makefile'; \
|
||||
cd $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu glib/glibmm/private/Makefile
|
||||
.PRECIOUS: Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: # $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): # $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool
|
||||
uninstall-info-am:
|
||||
install-private_includeHEADERS: $(private_include_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(private_includedir)" || $(mkdir_p) "$(DESTDIR)$(private_includedir)"
|
||||
@list='$(private_include_HEADERS)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f=$(am__strip_dir) \
|
||||
echo " $(private_includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(private_includedir)/$$f'"; \
|
||||
$(private_includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(private_includedir)/$$f"; \
|
||||
done
|
||||
|
||||
uninstall-private_includeHEADERS:
|
||||
@$(NORMAL_UNINSTALL)
|
||||
@list='$(private_include_HEADERS)'; for p in $$list; do \
|
||||
f=$(am__strip_dir) \
|
||||
echo " rm -f '$(DESTDIR)$(private_includedir)/$$f'"; \
|
||||
rm -f "$(DESTDIR)$(private_includedir)/$$f"; \
|
||||
done
|
||||
|
||||
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
mkid -fID $$unique
|
||||
tags: TAGS
|
||||
|
||||
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
|
||||
test -n "$$unique" || unique=$$empty_fix; \
|
||||
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
|
||||
$$tags $$unique; \
|
||||
fi
|
||||
ctags: CTAGS
|
||||
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
|
||||
$(TAGS_FILES) $(LISP)
|
||||
tags=; \
|
||||
here=`pwd`; \
|
||||
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
|
||||
unique=`for i in $$list; do \
|
||||
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
|
||||
done | \
|
||||
$(AWK) ' { files[$$0] = 1; } \
|
||||
END { for (i in files) print i; }'`; \
|
||||
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|
||||
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
|
||||
$$tags $$unique
|
||||
|
||||
GTAGS:
|
||||
here=`$(am__cd) $(top_builddir) && pwd` \
|
||||
&& cd $(top_srcdir) \
|
||||
&& gtags -i $(GTAGS_ARGS) $$here
|
||||
|
||||
distclean-tags:
|
||||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
$(mkdir_p) $(distdir)/../../../build_shared $(distdir)/../../src
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
|
||||
esac; \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||
dir="/$$dir"; \
|
||||
$(mkdir_p) "$(distdir)$$dir"; \
|
||||
else \
|
||||
dir=''; \
|
||||
fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
||||
else \
|
||||
test -f $(distdir)/$$file \
|
||||
|| cp -p $$d/$$file $(distdir)/$$file \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile $(HEADERS)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(private_includedir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
`test -z '$(STRIP)' || \
|
||||
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic distclean-libtool \
|
||||
distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am: install-private_includeHEADERS
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic \
|
||||
maintainer-clean-local
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-private_includeHEADERS
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool ctags distclean distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-exec install-exec-am install-info \
|
||||
install-info-am install-man install-private_includeHEADERS \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
maintainer-clean maintainer-clean-generic \
|
||||
maintainer-clean-local mostlyclean mostlyclean-generic \
|
||||
mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
|
||||
uninstall-am uninstall-info-am \
|
||||
uninstall-private_includeHEADERS
|
||||
|
||||
|
||||
maintainer-clean-local:
|
||||
(cd $(srcdir) && rm -f $(files_built_h))
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
# Makefile.in generated by automake 1.9.6 from Makefile.am.
|
||||
# Makefile.in generated by automake 1.10 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
# 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
|
@ -14,15 +14,11 @@
|
|||
|
||||
@SET_MAKE@
|
||||
|
||||
srcdir = @srcdir@
|
||||
top_srcdir = @top_srcdir@
|
||||
VPATH = @srcdir@
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
top_builddir = ../../..
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
INSTALL = @INSTALL@
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
|
|
@ -42,8 +38,8 @@ DIST_COMMON = $(am__private_include_HEADERS_DIST) \
|
|||
$(top_srcdir)/build_shared/Makefile_gensrc_platform.am_fragment
|
||||
subdir = glib/glibmm/private
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/scripts/cxx.m4 \
|
||||
$(top_srcdir)/scripts/cxx_std.m4 \
|
||||
am__aclocal_m4_deps = $(top_srcdir)/scripts/c_std.m4 \
|
||||
$(top_srcdir)/scripts/cxx.m4 $(top_srcdir)/scripts/cxx_std.m4 \
|
||||
$(top_srcdir)/scripts/docgen.m4 \
|
||||
$(top_srcdir)/scripts/glibmm_check_perl.m4 \
|
||||
$(top_srcdir)/scripts/macros.m4 \
|
||||
|
|
@ -59,8 +55,9 @@ SOURCES =
|
|||
DIST_SOURCES =
|
||||
am__private_include_HEADERS_DIST = convert_p.h date_p.h fileutils_p.h \
|
||||
iochannel_p.h keyfile_p.h markup_p.h module_p.h \
|
||||
optioncontext_p.h optionentry_p.h optiongroup_p.h shell_p.h \
|
||||
spawn_p.h thread_p.h unicode_p.h interface_p.h object_p.h
|
||||
optioncontext_p.h optionentry_p.h optiongroup_p.h regex_p.h \
|
||||
shell_p.h spawn_p.h thread_p.h unicode_p.h interface_p.h \
|
||||
object_p.h
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
|
|
@ -73,8 +70,6 @@ HEADERS = $(private_include_HEADERS)
|
|||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMDEP_FALSE = @AMDEP_FALSE@
|
||||
AMDEP_TRUE = @AMDEP_TRUE@
|
||||
AMTAR = @AMTAR@
|
||||
AR = @AR@
|
||||
AS = @AS@
|
||||
|
|
@ -112,12 +107,12 @@ GLIBMM_MICRO_VERSION = @GLIBMM_MICRO_VERSION@
|
|||
GLIBMM_MINOR_VERSION = @GLIBMM_MINOR_VERSION@
|
||||
GLIBMM_RELEASE = @GLIBMM_RELEASE@
|
||||
GLIBMM_VERSION = @GLIBMM_VERSION@
|
||||
GREP = @GREP@
|
||||
GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
|
||||
GTHREAD_LIBS = @GTHREAD_LIBS@
|
||||
GTKMMPROC_MERGECDOCS = @GTKMMPROC_MERGECDOCS@
|
||||
GTKMM_DOXYGEN_INPUT = @GTKMM_DOXYGEN_INPUT@
|
||||
GTKMM_FALSE_FALSE = @GTKMM_FALSE_FALSE@
|
||||
GTKMM_FALSE_TRUE = @GTKMM_FALSE_TRUE@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
|
|
@ -131,13 +126,10 @@ LN_S = @LN_S@
|
|||
LTLIBOBJS = @LTLIBOBJS@
|
||||
M4 = @M4@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OS_WIN32_FALSE = @OS_WIN32_FALSE@
|
||||
OS_WIN32_TRUE = @OS_WIN32_TRUE@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
|
|
@ -147,27 +139,18 @@ PACKAGE_VERSION = @PACKAGE_VERSION@
|
|||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PERL_PATH = @PERL_PATH@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
PLATFORM_WIN32_FALSE = @PLATFORM_WIN32_FALSE@
|
||||
PLATFORM_WIN32_TRUE = @PLATFORM_WIN32_TRUE@
|
||||
RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
STRIP = @STRIP@
|
||||
VERSION = @VERSION@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_AS = @ac_ct_AS@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_DLLTOOL = @ac_ct_DLLTOOL@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
|
||||
ac_ct_RANLIB = @ac_ct_RANLIB@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
|
|
@ -179,31 +162,42 @@ build_alias = @build_alias@
|
|||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
files_posix_hg =
|
||||
files_win32_hg =
|
||||
files_general_hg = convert.hg date.hg fileutils.hg iochannel.hg keyfile.hg markup.hg module.hg optioncontext.hg optionentry.hg optiongroup.hg shell.hg spawn.hg thread.hg unicode.hg
|
||||
files_general_hg = convert.hg date.hg fileutils.hg iochannel.hg keyfile.hg markup.hg module.hg optioncontext.hg optionentry.hg optiongroup.hg regex.hg shell.hg spawn.hg thread.hg unicode.hg
|
||||
files_all_hg = $(files_general_hg) $(files_posix_hg) $(files_win32_hg)
|
||||
@OS_WIN32_FALSE@files_hg = $(files_general_hg) $(files_posix_hg)
|
||||
@OS_WIN32_TRUE@files_hg = $(files_general_hg) $(files_win32_hg)
|
||||
|
|
@ -253,13 +247,9 @@ mostlyclean-libtool:
|
|||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
|
||||
distclean-libtool:
|
||||
-rm -f libtool
|
||||
uninstall-info-am:
|
||||
install-private_includeHEADERS: $(private_include_HEADERS)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(private_includedir)" || $(mkdir_p) "$(DESTDIR)$(private_includedir)"
|
||||
test -z "$(private_includedir)" || $(MKDIR_P) "$(DESTDIR)$(private_includedir)"
|
||||
@list='$(private_include_HEADERS)'; for p in $$list; do \
|
||||
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
|
||||
f=$(am__strip_dir) \
|
||||
|
|
@ -324,23 +314,21 @@ distclean-tags:
|
|||
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
|
||||
|
||||
distdir: $(DISTFILES)
|
||||
$(mkdir_p) $(distdir)/../../../build_shared $(distdir)/../../src
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
case $$file in \
|
||||
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
|
||||
esac; \
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
|
||||
dir="/$$dir"; \
|
||||
$(mkdir_p) "$(distdir)$$dir"; \
|
||||
else \
|
||||
dir=''; \
|
||||
fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
||||
fi; \
|
||||
|
|
@ -356,7 +344,7 @@ check: check-am
|
|||
all-am: Makefile $(HEADERS)
|
||||
installdirs:
|
||||
for dir in "$(DESTDIR)$(private_includedir)"; do \
|
||||
test -z "$$dir" || $(mkdir_p) "$$dir"; \
|
||||
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
|
||||
done
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
|
|
@ -388,8 +376,7 @@ clean-am: clean-generic clean-libtool mostlyclean-am
|
|||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic distclean-libtool \
|
||||
distclean-tags
|
||||
distclean-am: clean-am distclean-generic distclean-tags
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
|
|
@ -403,12 +390,20 @@ info-am:
|
|||
|
||||
install-data-am: install-private_includeHEADERS
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
|
|
@ -428,20 +423,23 @@ ps: ps-am
|
|||
|
||||
ps-am:
|
||||
|
||||
uninstall-am: uninstall-info-am uninstall-private_includeHEADERS
|
||||
uninstall-am: uninstall-private_includeHEADERS
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
|
||||
clean-libtool ctags distclean distclean-generic \
|
||||
distclean-libtool distclean-tags distdir dvi dvi-am html \
|
||||
html-am info info-am install install-am install-data \
|
||||
install-data-am install-exec install-exec-am install-info \
|
||||
install-info-am install-man install-private_includeHEADERS \
|
||||
install-data-am install-dvi install-dvi-am install-exec \
|
||||
install-exec-am install-html install-html-am install-info \
|
||||
install-info-am install-man install-pdf install-pdf-am \
|
||||
install-private_includeHEADERS install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
maintainer-clean maintainer-clean-generic \
|
||||
maintainer-clean-local mostlyclean mostlyclean-generic \
|
||||
mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
|
||||
uninstall-am uninstall-info-am \
|
||||
uninstall-private_includeHEADERS
|
||||
uninstall-am uninstall-private_includeHEADERS
|
||||
|
||||
|
||||
maintainer-clean-local:
|
||||
|
|
|
|||
8
libs/glibmm2/glib/glibmm/private/regex_p.h
Normal file
8
libs/glibmm2/glib/glibmm/private/regex_p.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
// -*- c++ -*-
|
||||
// Generated by gtkmmproc -- DO NOT MODIFY!
|
||||
#ifndef _GLIBMM_REGEX_P_H
|
||||
#define _GLIBMM_REGEX_P_H
|
||||
|
||||
|
||||
#endif /* _GLIBMM_REGEX_P_H */
|
||||
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: property.cc,v 1.3 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: property.cc 291 2006-05-12 08:08:45Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
// -*- c++ -*-
|
||||
#ifndef _GLIBMM_PROPERTY_H
|
||||
#define _GLIBMM_PROPERTY_H
|
||||
/* $Id: property.h,v 1.6 2006/05/12 08:08:43 murrayc Exp $ */
|
||||
/* $Id: property.h 291 2006-05-12 08:08:45Z murrayc $ */
|
||||
|
||||
/* Copyright 2002 The gtkmm Development Team
|
||||
*
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- c++ -*-
|
||||
/* $Id: propertyproxy.cc,v 1.1.1.1 2003/01/07 16:58:51 murrayc Exp $ */
|
||||
/* $Id: propertyproxy.cc 2 2003-01-07 16:59:16Z murrayc $ */
|
||||
|
||||
/* propertyproxy.cc
|
||||
*
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue