[nautilus-actions] maintainer/run-autogen.sh is runnable from Ubuntu 12 LTS



commit 0256f5b3029bfc6746060198feac68abc39b5a68
Author: Pierre Wieser <pwieser trychlos org>
Date:   Thu Feb 16 17:45:14 2017 +0100

    maintainer/run-autogen.sh is runnable from Ubuntu 12 LTS
    
    This is needed to make sure that running configure from Ubuntu 12 LTS
    (which happens to be the oldest targeted distribution for now) will
    not have version issues with autoconf/automake/aclocal.

 INSTALL                        |   12 ++++----
 configure.ac                   |   46 +++++++++++++++++++--------------
 data/gconf-schemas/Makefile.am |    8 +++---
 maintainer/run-autogen.sh      |   54 +++++++++++++++++++++++----------------
 4 files changed, 68 insertions(+), 52 deletions(-)
---
diff --git a/INSTALL b/INSTALL
index 2099840..a1e89e1 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,7 +1,7 @@
 Installation Instructions
 *************************
 
-Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
+Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
 Inc.
 
    Copying and distribution of this file, with or without modification,
@@ -12,8 +12,8 @@ without warranty of any kind.
 Basic Installation
 ==================
 
-   Briefly, the shell command `./configure && make && make install'
-should configure, build, and install this package.  The following
+   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
@@ -309,10 +309,9 @@ causes the specified `gcc' to be used as the C compiler (unless it is
 overridden in the site shell script).
 
 Unfortunately, this technique does not work for `CONFIG_SHELL' due to
-an Autoconf limitation.  Until the limitation is lifted, you can use
-this workaround:
+an Autoconf bug.  Until the bug is fixed you can use this workaround:
 
-     CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
+     CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
 
 `configure' Invocation
 ======================
@@ -368,3 +367,4 @@ operates.
 
 `configure' also accepts some other, not widely useful, options.  Run
 `configure --help' for more details.
+
diff --git a/configure.ac b/configure.ac
index f3a7b1b..f8a28da 100644
--- a/configure.ac
+++ b/configure.ac
@@ -88,6 +88,12 @@ if test "${GLIB_GENMARSHAL}" = "no"; then
        AC_MSG_WARN([glib2-devel installed, but glib-genmarshal not found])
        let fma_fatal_count+=1
 fi
+
+# add --enable-docs (for all documentation stuff)
+# have to be set early in the configure.ac in order to set all needed
+# variables
+FMA_ENABLE_DOCS
+
 # Have and want GConf support ?
 # As of 3.4 release, we are deprecating GConf, disabling it by default.
 # We only search for the libraries when explicitely required from 
@@ -118,6 +124,26 @@ FMA_TARGET_FILE_MANAGER
 # add --with-default-io-provider option
 FMA_SET_DEFAULT_IO_PROVIDER([io-desktop])
 
+# Enable deprecated functions ?
+FMA_MAINTAINER_CHECK_FOR_DEPRECATED
+
+# check for gtk-doc
+# - starting with gtk-doc 1.16, is able to handle srcdir != builddir
+# - API documentation should not be built (would be incomplete) when deprecated
+#   symbols are not enabled
+GTK_DOC_CHECK([1.16],[--flavour no-tmpl])
+if test "${enable_gtk_doc}" = "yes" -a "${enable_deprecated}" = "no"; then
+       AC_MSG_WARN([API documentation will be incomplete as deprecated symbols are disabled])
+fi
+
+# check for gnome-doc-utils
+# - starting with N-A 3.1.5, gnome-doc-utils is no more required when one want
+#   compile the tarball distribution (i.e. without regenerating users's manuals)
+GNOME_DOC_INIT(,,[gdu_cv_have_gdu=no])
+
+# add --enable-html-manuals and --enable-pdf-manuals configure options
+FMA_ENABLE_MANUALS
+
 ###
 
 AC_CONFIG_FILES([
@@ -152,26 +178,6 @@ AC_CONFIG_FILES([
        src/utils/Makefile
 ])
 
-# Enable deprecated functions ?
-FMA_MAINTAINER_CHECK_FOR_DEPRECATED
-
-# check for gtk-doc
-# - starting with gtk-doc 1.16, is able to handle srcdir != builddir
-# - API documentation should not be built (would be incomplete) when deprecated
-#   symbols are not enabled
-GTK_DOC_CHECK([1.16],[--flavour no-tmpl])
-if test "${enable_gtk_doc}" = "yes" -a "${enable_deprecated}" = "no"; then
-       AC_MSG_WARN([API documentation will be incomplete as deprecated symbols are disabled])
-fi
-
-# check for gnome-doc-utils
-# - starting with N-A 3.1.5, gnome-doc-utils is no more required when one want
-#   compile the tarball distribution (i.e. without regenerating users's manuals)
-GNOME_DOC_INIT(,,[gdu_cv_have_gdu=no])
-
-# add --enable-html-manuals and --enable-pdf-manuals configure options
-FMA_ENABLE_MANUALS
-
 # display and keep configuration informations
 config_options="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" 
 AC_DEFINE_UNQUOTED([FMA_CONFIG_OPTIONS],["$0 ${config_options}"],["Configure options"])
diff --git a/data/gconf-schemas/Makefile.am b/data/gconf-schemas/Makefile.am
index 9595483..f846b2d 100644
--- a/data/gconf-schemas/Makefile.am
+++ b/data/gconf-schemas/Makefile.am
@@ -44,9 +44,9 @@ schemas_DATA = $(schemas_files)
 @INTLTOOL_SCHEMAS_RULE@
 
 if GCONF_SCHEMAS_INSTALL
-NA_INSTALL_SCHEMAS  = yes
+FMA_INSTALL_SCHEMAS  = yes
 else
-NA_INSTALL_SCHEMAS = no
+FMA_INSTALL_SCHEMAS = no
 endif
 
 EXTRA_DIST = \
@@ -54,7 +54,7 @@ EXTRA_DIST = \
        $(NULL)
 
 install-data-hook:
-       @if test "$(NA_INSTALL_SCHEMAS)" = "yes"; then \
+       @if test "$(FMA_INSTALL_SCHEMAS)" = "yes"; then \
                if test `id -u` != 0; then \
                        echo "***"; \
                        echo "*** You need to be root to install GConf schemas"; \
@@ -69,7 +69,7 @@ install-data-hook:
 CLEANFILES = $(schemas_files)
 
 uninstall-hook:
-       @if test "$(NA_INSTALL_SCHEMAS)" = "yes"; then \
+       @if test "$(FMA_INSTALL_SCHEMAS)" = "yes"; then \
                for p in $(schemas_DATA); do \
                        GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) 
--makefile-uninstall-rule $$p; \
                done \
diff --git a/maintainer/run-autogen.sh b/maintainer/run-autogen.sh
index e478d66..5300f77 100755
--- a/maintainer/run-autogen.sh
+++ b/maintainer/run-autogen.sh
@@ -34,7 +34,7 @@
 #    maintainer development box (and thus are installed in maintainer/
 #    directory), while run-configure.sh is meant to build
 #    from anywhere (thus simulating the packager machines, and is so
-#    built at the root of the source tree)
+#    created at the root of the source tree)
 # -> on the maintainer development box, _build and _install are
 #    subdirectories of the root source tree
 # -> on the virtual guests simulating packager machines, _build and
@@ -42,13 +42,13 @@
 #    running run-configure.sh
 #
 # pwi 2013- 9-26
-# As a recall, I use two configurations for two distinct uses:
-# - first, and the most often, i.e. when developing the code, I try to
-#   not use any deprecated function; I so ask to configure to just
-#   disable them..
-# - but, when updating the developer reference manual, I want deprecated
-#   functions to be at least listed as deprecated, and I so to enable
-#   there deprecated functions with configure.
+# As a recall, I mainly use two configurations:
+# - in day-to-day development. when developing the code, deprecated
+#   functions are not used (should not be used at least); configure
+#   is so run with default features only;
+# - but, when updating the developer reference manual and when building
+#   the distributed tarball, I want deprecated functions to be declared
+#   and documentation build tools to be used.
 #
 # pwi 2013- 9-26
 # Get rid of 'target' environment variable, as doc generation is a
@@ -57,16 +57,31 @@
 # pwi 2015- 9-10
 # gnome-common is deprecated
 # see: https://wiki.gnome.org/Projects/GnomeCommon/Migration
-
-if [ ! -f configure.ac ]; then
-       echo "> This script is a maintainer-only script." 1>&2
-       echo "> It is only meant to be run from the top source directory." 1>&2
+#
+# pwi 2017- 2-16
+# The 'configure' script is to be run in all targeted distributions.
+# In order to avoid versions issues, the script itself should be built
+# from the oldest distribution.
+# This implies that documentation build tools (gtk-doc, gnome-doc-utils,
+# pdflatex, etc.) should also be installed on this distribution.
+
+#if [ ! -f configure.ac ]; then
+#      echo "> This script is a maintainer-only script." 1>&2
+#      echo "> It is only meant to be run from the top source directory." 1>&2
+#      exit 1
+#fi
+
+# we shouldn't run this script from the maintainer machine
+if [ "$(uname -n)" -eq "xps13" ]; then
+       echo "> This script should be run from the oldest targeted distribution." 1>&2
        exit 1
 fi
 
 maintainer_dir=$(cd ${0%/*}; pwd)
 top_srcdir="${maintainer_dir%/*}"
 
+(
+cd "${top_srcdir}"
 PkgName=`autoconf --trace 'AC_INIT:$1' configure.ac`
 pkgname=$(echo $PkgName | tr '[[:upper:]]' '[[:lower:]]')
 
@@ -79,16 +94,14 @@ for d in $(find ${top_srcdir} -maxdepth 2 -type d -name "${pkgname}-*"); do
        rm -fr $d
 done
 
-# tools required version
-source ${top_srcdir}/fma_required_versions
-
 echo "> Running aclocal"
-aclocal --install || exit 1
+m4_dir=`autoconf --trace 'AC_CONFIG_MACRO_DIR:$1' configure.ac`
+aclocal -I "${m4_dir}" --install || exit 1
 
 # requires gtk-doc package
 # used for Developer Reference Manual generation (devhelp)
 echo "> Running gtkdocize"
-gtkdocize || exit 1
+gtkdocize --copy || exit 1
 
 echo "> Running autoreconf"
 autoreconf --verbose --force --install -Wno-portability || exit 1
@@ -144,11 +157,7 @@ conf_args="\${conf_args} --sysconfdir=/etc"
 conf_args="\${conf_args} --with-nautilus-extdir=\${heredir}/_install/lib/nautilus"
 conf_args="\${conf_args} --with-nemo-extdir=\${heredir}/_install/lib/nemo"
 conf_args="\${conf_args} --enable-maintainer-mode"
-conf_args="\${conf_args} --enable-scrollkeeper"
-conf_args="\${conf_args} --enable-gtk-doc"
-conf_args="\${conf_args} --enable-gtk-doc-html"
-conf_args="\${conf_args} --enable-html-manuals"
-conf_args="\${conf_args} --enable-pdf-manuals"
+conf_args="\${conf_args} --enable-docs"
 conf_args="\${conf_args} $*"
 conf_args="\${conf_args} \$*"
 
@@ -166,3 +175,4 @@ chmod a+x ${runconf}
 ${runconf} &&
 make -C _build &&
 make -C _build install
+)


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