[libgsf] compilation: drop support for gnome-vfs



commit 7a0b8d3a59ae54fabce1d98a036ecd64946ec02c
Author: Morten Welinder <terra gnome org>
Date:   Wed Dec 7 14:37:33 2011 -0500

    compilation: drop support for gnome-vfs
    
    This has long been superceded gio.

 INSTALL                         |  243 ++++++++++++++++++++------
 Makefile.am                     |    6 +-
 NEWS                            |    1 +
 configure.in                    |   55 +------
 gsf-gnome/.gitignore            |    9 -
 gsf-gnome/Makefile.am           |   25 ---
 gsf-gnome/gsf-input-gnomevfs.c  |  367 ---------------------------------------
 gsf-gnome/gsf-input-gnomevfs.h  |   53 ------
 gsf-gnome/gsf-output-gnomevfs.c |  286 ------------------------------
 gsf-gnome/gsf-output-gnomevfs.h |   49 -----
 gsf/gsf-input.c                 |   40 -----
 libgsf-gnome-1.spec.in          |   80 ---------
 python/Makefile.am              |   18 --
 python/gsfgnome.defs            |   57 ------
 python/gsfgnome.override        |   98 -----------
 python/gsfgnomemodule.c         |   47 -----
 16 files changed, 191 insertions(+), 1243 deletions(-)
---
diff --git a/INSTALL b/INSTALL
index 23e5f25..7d1c323 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,16 +1,25 @@
 Installation Instructions
 *************************
 
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
-Software Foundation, Inc.
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
+2006, 2007, 2008, 2009 Free Software Foundation, Inc.
 
-This file is free documentation; the Free Software Foundation gives
-unlimited permission to copy, distribute and modify it.
+   Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.  This file is offered as-is,
+without warranty of any kind.
 
 Basic Installation
 ==================
 
-These are generic installation instructions.
+   Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package.  The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package.  Some packages provide this
+`INSTALL' file but do not implement all of the features documented
+below.  The lack of an optional feature in a given package is not
+necessarily a bug.  More recommendations for GNU packages can be found
+in *note Makefile Conventions: (standards)Makefile Conventions.
 
    The `configure' shell script attempts to guess correct values for
 various system-dependent variables used during compilation.  It uses
@@ -23,9 +32,9 @@ debugging `configure').
 
    It can also use an optional file (typically called `config.cache'
 and enabled with `--cache-file=config.cache' or simply `-C') that saves
-the results of its tests to speed up reconfiguring.  (Caching is
+the results of its tests to speed up reconfiguring.  Caching is
 disabled by default to prevent problems with accidental use of stale
-cache files.)
+cache files.
 
    If you need to do unusual things to compile the package, please try
 to figure out how `configure' could check whether to do them, and mail
@@ -35,30 +44,37 @@ some point `config.cache' contains results you don't want to keep, you
 may remove or edit it.
 
    The file `configure.ac' (or `configure.in') is used to create
-`configure' by a program called `autoconf'.  You only need
-`configure.ac' if you want to change it or regenerate `configure' using
-a newer version of `autoconf'.
+`configure' by a program called `autoconf'.  You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
 
-The simplest way to compile this package is:
+   The simplest way to compile this package is:
 
   1. `cd' to the directory containing the package's source code and type
-     `./configure' to configure the package for your system.  If you're
-     using `csh' on an old version of System V, you might need to type
-     `sh ./configure' instead to prevent `csh' from trying to execute
-     `configure' itself.
+     `./configure' to configure the package for your system.
 
-     Running `configure' takes awhile.  While running, it prints some
-     messages telling which features it is checking for.
+     Running `configure' might take a while.  While running, it prints
+     some messages telling which features it is checking for.
 
   2. Type `make' to compile the package.
 
   3. Optionally, type `make check' to run any self-tests that come with
-     the package.
+     the package, generally using the just-built uninstalled binaries.
 
   4. Type `make install' to install the programs and any data files and
-     documentation.
-
-  5. You can remove the program binaries and object files from the
+     documentation.  When installing into a prefix owned by root, it is
+     recommended that the package be configured and built as a regular
+     user, and only the `make install' phase executed with root
+     privileges.
+
+  5. Optionally, type `make installcheck' to repeat any self-tests, but
+     this time using the binaries in their final installed location.
+     This target does not install anything.  Running this target as a
+     regular user, particularly if the prior `make install' required
+     root privileges, verifies that the installation completed
+     correctly.
+
+  6. You can remove the program binaries and object files from the
      source code directory by typing `make clean'.  To also remove the
      files that `configure' created (so you can compile the package for
      a different kind of computer), type `make distclean'.  There is
@@ -67,45 +83,69 @@ The simplest way to compile this package is:
      all sorts of other programs in order to regenerate files that came
      with the distribution.
 
+  7. Often, you can also type `make uninstall' to remove the installed
+     files again.  In practice, not all packages have tested that
+     uninstallation works correctly, even though it is required by the
+     GNU Coding Standards.
+
+  8. Some packages, particularly those that use Automake, provide `make
+     distcheck', which can by used by developers to test that all other
+     targets like `make install' and `make uninstall' work correctly.
+     This target is generally not run by end users.
+
 Compilers and Options
 =====================
 
-Some systems require unusual options for compilation or linking that the
-`configure' script does not know about.  Run `./configure --help' for
-details on some of the pertinent environment variables.
+   Some systems require unusual options for compilation or linking that
+the `configure' script does not know about.  Run `./configure --help'
+for details on some of the pertinent environment variables.
 
    You can give `configure' initial values for configuration parameters
 by setting variables in the command line or in the environment.  Here
 is an example:
 
-     ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+     ./configure CC=c99 CFLAGS=-g LIBS=-lposix
 
    *Note Defining Variables::, for more details.
 
 Compiling For Multiple Architectures
 ====================================
 
-You can compile the package for more than one kind of computer at the
+   You can compile the package for more than one kind of computer at the
 same time, by placing the object files for each architecture in their
-own directory.  To do this, you must use a version of `make' that
-supports the `VPATH' variable, such as GNU `make'.  `cd' to the
+own directory.  To do this, you can use GNU `make'.  `cd' to the
 directory where you want the object files and executables to go and run
 the `configure' script.  `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.
+source code in the directory that `configure' is in and in `..'.  This
+is known as a "VPATH" build.
+
+   With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory.  After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
 
-   If you have to use a `make' that does not support the `VPATH'
-variable, you have to compile the package for one architecture at a
-time in the source code directory.  After you have installed the
-package for one architecture, use `make distclean' before reconfiguring
-for another architecture.
+   On MacOS X 10.5 and later systems, you can create libraries and
+executables that work on multiple system types--known as "fat" or
+"universal" binaries--by specifying multiple `-arch' options to the
+compiler but only a single `-arch' option to the preprocessor.  Like
+this:
+
+     ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+                 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+                 CPP="gcc -E" CXXCPP="g++ -E"
+
+   This is not guaranteed to produce working output in all cases, you
+may have to build one architecture at a time and combine the results
+using the `lipo' tool if you have problems.
 
 Installation Names
 ==================
 
-By default, `make install' installs the package's commands under
+   By default, `make install' installs the package's commands under
 `/usr/local/bin', include files under `/usr/local/include', etc.  You
 can specify an installation prefix other than `/usr/local' by giving
-`configure' the option `--prefix=PREFIX'.
+`configure' the option `--prefix=PREFIX', where PREFIX must be an
+absolute file name.
 
    You can specify separate installation prefixes for
 architecture-specific files and architecture-independent files.  If you
@@ -116,16 +156,47 @@ Documentation and other data files still use the regular prefix.
    In addition, if you use an unusual directory layout you can give
 options like `--bindir=DIR' to specify different values for particular
 kinds of files.  Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them.
+you can set and what kinds of files go in them.  In general, the
+default for these options is expressed in terms of `${prefix}', so that
+specifying just `--prefix' will affect all of the other directory
+specifications that were not explicitly provided.
+
+   The most portable way to affect installation locations is to pass the
+correct locations to `configure'; however, many packages provide one or
+both of the following shortcuts of passing variable assignments to the
+`make install' command line to change installation locations without
+having to reconfigure or recompile.
+
+   The first method involves providing an override variable for each
+affected directory.  For example, `make install
+prefix=/alternate/directory' will choose an alternate location for all
+directory configuration variables that were expressed in terms of
+`${prefix}'.  Any directories that were specified during `configure',
+but not in terms of `${prefix}', must each be overridden at install
+time for the entire installation to be relocated.  The approach of
+makefile variable overrides for each directory variable is required by
+the GNU Coding Standards, and ideally causes no recompilation.
+However, some platforms have known limitations with the semantics of
+shared libraries that end up requiring recompilation when using this
+method, particularly noticeable in packages that use GNU Libtool.
+
+   The second method involves providing the `DESTDIR' variable.  For
+example, `make install DESTDIR=/alternate/directory' will prepend
+`/alternate/directory' before all installation names.  The approach of
+`DESTDIR' overrides is not required by the GNU Coding Standards, and
+does not work on platforms that have drive letters.  On the other hand,
+it does better at avoiding recompilation issues, and works well even
+when some directory options were not specified in terms of `${prefix}'
+at `configure' time.
+
+Optional Features
+=================
 
    If the package supports it, you can cause programs to be installed
 with an extra prefix or suffix on their names by giving `configure' the
 option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
 
-Optional Features
-=================
-
-Some packages pay attention to `--enable-FEATURE' options to
+   Some packages pay attention to `--enable-FEATURE' options to
 `configure', where FEATURE indicates an optional part of the package.
 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
 is something like `gnu-as' or `x' (for the X Window System).  The
@@ -137,14 +208,53 @@ find the X include and library files automatically, but if it doesn't,
 you can use the `configure' options `--x-includes=DIR' and
 `--x-libraries=DIR' to specify their locations.
 
+   Some packages offer the ability to configure how verbose the
+execution of `make' will be.  For these packages, running `./configure
+--enable-silent-rules' sets the default to minimal output, which can be
+overridden with `make V=1'; while running `./configure
+--disable-silent-rules' sets the default to verbose, which can be
+overridden with `make V=0'.
+
+Particular systems
+==================
+
+   On HP-UX, the default C compiler is not ANSI C compatible.  If GNU
+CC is not installed, it is recommended to use the following options in
+order to use an ANSI C compiler:
+
+     ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
+
+and if that doesn't work, install pre-built binaries of GCC for HP-UX.
+
+   On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
+parse its `<wchar.h>' header file.  The option `-nodtk' can be used as
+a workaround.  If GNU CC is not installed, it is therefore recommended
+to try
+
+     ./configure CC="cc"
+
+and if that doesn't work, try
+
+     ./configure CC="cc -nodtk"
+
+   On Solaris, don't put `/usr/ucb' early in your `PATH'.  This
+directory contains several dysfunctional programs; working variants of
+these programs are available in `/usr/bin'.  So, if you need `/usr/ucb'
+in your `PATH', put it _after_ `/usr/bin'.
+
+   On Haiku, software installed for all users goes in `/boot/common',
+not `/usr/local'.  It is recommended to use the following options:
+
+     ./configure --prefix=/boot/common
+
 Specifying the System Type
 ==========================
 
-There may be some features `configure' cannot figure out automatically,
-but needs to determine by the type of machine the package will run on.
-Usually, assuming the package is built to be run on the _same_
-architectures, `configure' can figure that out, but if it prints a
-message saying it cannot guess the machine type, give it the
+   There may be some features `configure' cannot figure out
+automatically, but needs to determine by the type of machine the package
+will run on.  Usually, assuming the package is built to be run on the
+_same_ architectures, `configure' can figure that out, but if it prints
+a message saying it cannot guess the machine type, give it the
 `--build=TYPE' option.  TYPE can either be a short name for the system
 type, such as `sun4', or a canonical name which has the form:
 
@@ -152,7 +262,8 @@ type, such as `sun4', or a canonical name which has the form:
 
 where SYSTEM can have one of these forms:
 
-     OS KERNEL-OS
+     OS
+     KERNEL-OS
 
    See the file `config.sub' for the possible values of each field.  If
 `config.sub' isn't included in this package, then this package doesn't
@@ -170,9 +281,9 @@ eventually be run) with `--host=TYPE'.
 Sharing Defaults
 ================
 
-If you want to set default values for `configure' scripts to share, you
-can create a site shell script called `config.site' that gives default
-values for variables like `CC', `cache_file', and `prefix'.
+   If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
 `configure' looks for `PREFIX/share/config.site' if it exists, then
 `PREFIX/etc/config.site' if it exists.  Or, you can set the
 `CONFIG_SITE' environment variable to the location of the site script.
@@ -181,7 +292,7 @@ A warning: not all `configure' scripts look for a site script.
 Defining Variables
 ==================
 
-Variables not defined in a site shell script can be set in the
+   Variables not defined in a site shell script can be set in the
 environment passed to `configure'.  However, some packages may run
 configure again during the build, and the customized values of these
 variables may be lost.  In order to avoid this problem, you should set
@@ -190,21 +301,29 @@ them in the `configure' command line, using `VAR=value'.  For example:
      ./configure CC=/usr/local2/bin/gcc
 
 causes the specified `gcc' to be used as the C compiler (unless it is
-overridden in the site shell script).  Here is a another example:
+overridden in the site shell script).
 
-     /bin/bash ./configure CONFIG_SHELL=/bin/bash
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug.  Until the bug is fixed you can use this workaround:
 
-Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
-configuration-related scripts to be executed by `/bin/bash'.
+     CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
 
 `configure' Invocation
 ======================
 
-`configure' recognizes the following options to control how it operates.
+   `configure' recognizes the following options to control how it
+operates.
 
 `--help'
 `-h'
-     Print a summary of the options to `configure', and exit.
+     Print a summary of all of the options to `configure', and exit.
+
+`--help=short'
+`--help=recursive'
+     Print a summary of the options unique to this package's
+     `configure', and exit.  The `short' variant lists options used
+     only in the top level, while the `recursive' variant lists options
+     also present in any nested packages.
 
 `--version'
 `-V'
@@ -231,6 +350,16 @@ configuration-related scripts to be executed by `/bin/bash'.
      Look for the package's source code in directory DIR.  Usually
      `configure' can determine that directory automatically.
 
+`--prefix=DIR'
+     Use DIR as the installation prefix.  *note Installation Names::
+     for more details, including other options available for fine-tuning
+     the installation locations.
+
+`--no-create'
+`-n'
+     Run the configure checks, but stop before creating any output
+     files.
+
 `configure' also accepts some other, not widely useful, options.  Run
 `configure --help' for more details.
 
diff --git a/Makefile.am b/Makefile.am
index e5ca6a9..a67a74c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -3,14 +3,11 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = libgsf-1.pc
 
-if WITH_LIBGSF_GNOME
-  pkgconfig_DATA += libgsf-gnome-1.pc
-endif
 if WITH_WIN32
   pkgconfig_DATA += libgsf-win32-1.pc
 endif
 
-SUBDIRS = po gsf gsf-gnome gsf-win32 doc tools tests m4
+SUBDIRS = po gsf gsf-win32 doc tools tests m4
 
 if WITH_PYTHON
   SUBDIRS += python
@@ -24,7 +21,6 @@ EXTRA_DIST = BUGS HACKING	\
 	intltool-merge.in	\
 	intltool-update.in	\
 	libgsf-1.spec		\
-	libgsf-gnome-1.spec	\
 	dumpdef.pl
 
 DISTCLEANFILES = intltool-extract intltool-merge intltool-update
diff --git a/NEWS b/NEWS
index 13b1437..98954b6 100644
--- a/NEWS
+++ b/NEWS
@@ -8,6 +8,7 @@ Morten:
 	* Fix resource limiting in thumbnailer.
 	* Ensure GsfOutput::name and GsfInput::name notifications.
 	* Cleanup old code.
+	* Drop support for gnome-vfs and bonobo.
 
 --------------------------------------------------------------------------
 libgsf 1.14.21
diff --git a/configure.in b/configure.in
index cda9653..9b72c1e 100644
--- a/configure.in
+++ b/configure.in
@@ -68,20 +68,13 @@ ifelse([
   second argument (the module list).
   As a handy workaround, we use shell variables.
 ])
-dnl Modules common to libgsf and libgsf-gnome
-common_reqs="
-    gobject-2.0 >= 2.16.0
-    glib-2.0 >= 2.16.0
-"
 dnl Modules required for libgsf
 libgsf_reqs="
-    $common_reqs
+    gobject-2.0 >= 2.16.0
+    glib-2.0 >= 2.16.0
     libxml-2.0 >= 2.4.16
 "
-dnl Modules required for libgsf-gnome
-libgsf_gnome_reqs="
-    $common_reqs
-"
+
 PKG_CHECK_MODULES(LIBGSF, $libgsf_reqs)
 
 ## this should come after `AC_PROG_CC'
@@ -402,34 +395,6 @@ want_gio=$have_gio
 
 dnl ****************************************************************************
 
-dnl gnome
-dnl
-
-want_gnome=no
-
-want_gnome_vfs=auto
-AC_ARG_WITH(gnome_vfs,
-	[--{with,without}-gnome-vfs   Build wrappers for GNOME-VFS],
-	[case $withval in
-	yes) want_gnome_vfs=yes;;
-	no) want_gnome_vfs=no;;
-	esac[]dnl
-])
-if test $want_gnome_vfs = auto -a "$want_gio" = yes; then
-   	want_gnome_vfs=yes
-fi
-GNOMEVFS_REQ=
-if test $want_gnome_vfs = yes; then
-   	if test "$want_gio" = yes; then
-		CFLAGS="$CFLAGS -DLIBGSF_GNOMEVFS_VIA_GIO"
-	else
-                GNOMEVFS_REQ="gnome-vfs-2.0 >= 2.2.0 gnome-vfs-module-2.0 >= 2.2.0"
-	        libgsf_gnome_reqs="$libgsf_gnome_reqs $GNOMEVFS_REQ"
-		want_gnome=yes
-	fi
-fi
-AC_SUBST(GNOMEVFS_REQ)
-
 want_gdk_pixbuf=no
 dnl check for gdk_pixbuf
 AC_ARG_WITH(gdk_pixbuf,
@@ -453,17 +418,6 @@ else
 	 fi])
 fi
 
-have_gnome=no
-if test $want_gnome = no ; then 
-    AC_MSG_WARN([GNOME support disabled, as requested (Use --with-gnome-vfs to enable)])
-else
-    PKG_CHECK_MODULES(LIBGSF_GNOME, $libgsf_gnome_reqs,
-	[have_gnome=yes],
-	[AC_MSG_ERROR([GNOME support requested, but not available.])])
-fi
-AM_CONDITIONAL(WITH_LIBGSF_GNOME, test $have_gnome = yes)
-AM_CONDITIONAL(WITH_LIBGSF_GNOMEVFS, test $want_gnome_vfs = yes)
-
 # ===================
 # GConf configuration
 AC_ARG_WITH([gconf],
@@ -500,7 +454,6 @@ Makefile
 m4/Makefile
 doc/Makefile
 gsf/Makefile
-gsf-gnome/Makefile
 gsf-win32/Makefile
 tests/Makefile
 tools/Makefile
@@ -511,8 +464,6 @@ gsf/version.c
 doc/version.xml
 libgsf-1.pc
 libgsf-1.spec
-libgsf-gnome-1.pc
-libgsf-gnome-1.spec
 libgsf-win32-1.pc
 libgsf-zip
 ])
diff --git a/gsf/gsf-input.c b/gsf/gsf-input.c
index 23913f3..eb0c151 100644
--- a/gsf/gsf-input.c
+++ b/gsf/gsf-input.c
@@ -612,43 +612,3 @@ gsf_input_uncompress (GsfInput *src)
 	(void)gsf_input_seek (src, cur_offset, G_SEEK_SET);
 	return src;
 }
-
-#if 0
-
-#include <gsf/gsf-input-stdio.h>
-
-#ifdef HAVE_GNOME
-#include <gsf-gnome/gsf-input-gnomevfs.h>
-#endif
-
-GsfInput *
-gsf_input_new_for_uri (char const * uri, GError ** err)
-{
-	GsfInput * input = NULL;
-	size_t len;
-
-	g_return_val_if_fail (uri, NULL);
-
-	len = strlen (uri);
-	g_return_val_if_fail (len, NULL);
-
-	if (len > 3 && !strstr (uri, ":/")) {
-		/* assume plain file */
-		input = gsf_input_stdio_new (uri, err);
-	} else {
-#if HAVE_GNOME
-		/* have gnome, let GnomeVFS deal with this */
-		input = gsf_input_gnomevfs_new (uri, err);
-#else
-		if (len > 7 && !strncmp (uri, "file:/", 6)) {
-			/* dumb attempt to translate this into a local path */
-			input = gsf_input_stdio_new (uri+7, err);
-		}
-		/* else: unknown or unhandled protocol - bail */
-#endif
-	}
-
-	return input;
-}
-
-#endif
diff --git a/python/Makefile.am b/python/Makefile.am
index 55bef23..4a57c84 100644
--- a/python/Makefile.am
+++ b/python/Makefile.am
@@ -9,26 +9,8 @@ CLEANFILES =
 EXTRA_DIST = gsf-arg-types.py
 pygsfexec_LTLIBRARIES =
 
-if WITH_LIBGSF_GNOME
-  pygsfexec_LTLIBRARIES += gnomemodule.la
-endif
-
 pygsfexec_LTLIBRARIES += _gsfmodule.la
 
-gnomemodule_la_CFLAGS = \
-	-I$(top_srcdir)		\
-	$(LIBGSF_CFLAGS) $(LIBGSF_GNOME_CFLAGS) $(ORBIT_PYTHON_CFLAGS)
-gnomemodule_la_LDFLAGS = -module -avoid-version -export-symbols-regex initgnome
-gnomemodule_la_LIBADD = \
-	$(top_builddir)/gsf-gnome/libgsf-gnome-1.la	\
-	$(top_builddir)/gsf/libgsf-1.la			\
-	$(LIBGSF_LIBS) $(LIBGSF_GNOME_LIBS)
-gnomemodule_la_SOURCES = gsfgnomemodule.c
-nodist_gnomemodule_la_SOURCES = gsfgnome.c
-CLEANFILES += gsfgnome.c
-EXTRA_DIST += gsfgnome.defs gsfgnome.override  
-gsfgnome.c: gsfgnome.defs gsfgnome.override gsf-arg-types.py
-
 _gsfmodule_la_CFLAGS = 		\
 	-I$(top_srcdir)		\
 	$(LIBGSF_CFLAGS)



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