Commit 0256f5b3 authored by Pierre Wieser's avatar Pierre Wieser

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.
parent ea6fe6be
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.
......@@ -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"])
......
......@@ -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 \
......
......@@ -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
)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment