Add shave so that we can see the steaming piles of warnings generated.
The old style output can be reenabled for build system debugging using "make V=1", or --disable-shave at configure time.
This commit is contained in:
parent
4474c200a1
commit
181cc08c89
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -35,6 +35,8 @@ install-sh
|
||||||
libtool
|
libtool
|
||||||
ltmain.sh
|
ltmain.sh
|
||||||
missing
|
missing
|
||||||
|
shave
|
||||||
|
shave-libtool
|
||||||
TAGS
|
TAGS
|
||||||
tags
|
tags
|
||||||
cscope*
|
cscope*
|
||||||
|
|
|
@ -32,6 +32,11 @@ AC_CONFIG_SRCDIR([Makefile.am])
|
||||||
AM_INIT_AUTOMAKE([dist-bzip2 foreign])
|
AM_INIT_AUTOMAKE([dist-bzip2 foreign])
|
||||||
AM_MAINTAINER_MODE
|
AM_MAINTAINER_MODE
|
||||||
|
|
||||||
|
AC_CONFIG_FILES([
|
||||||
|
shave
|
||||||
|
shave-libtool
|
||||||
|
])
|
||||||
|
|
||||||
# Require xorg-macros version 1.2.0 or newer for XORG_CHANGELOG and
|
# Require xorg-macros version 1.2.0 or newer for XORG_CHANGELOG and
|
||||||
# XORG_CWARNFLAGS
|
# XORG_CWARNFLAGS
|
||||||
m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.2 or later before running autoconf/autogen])])
|
m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.2 or later before running autoconf/autogen])])
|
||||||
|
@ -1878,6 +1883,8 @@ AC_SUBST([prefix])
|
||||||
XORG_MANPAGE_SECTIONS
|
XORG_MANPAGE_SECTIONS
|
||||||
XORG_CHANGELOG
|
XORG_CHANGELOG
|
||||||
|
|
||||||
|
SHAVE_INIT([.], [enable])
|
||||||
|
|
||||||
AC_OUTPUT([
|
AC_OUTPUT([
|
||||||
Makefile
|
Makefile
|
||||||
glx/Makefile
|
glx/Makefile
|
||||||
|
|
73
m4/shave.m4
Normal file
73
m4/shave.m4
Normal file
|
@ -0,0 +1,73 @@
|
||||||
|
dnl Make automake/libtool output more friendly to humans
|
||||||
|
dnl
|
||||||
|
dnl SHAVE_INIT([shavedir],[default_mode])
|
||||||
|
dnl
|
||||||
|
dnl shavedir: the directory where the shave scripts are, it defaults to
|
||||||
|
dnl $(top_builddir)
|
||||||
|
dnl default_mode: (enable|disable) default shave mode. This parameter
|
||||||
|
dnl controls shave's behaviour when no option has been
|
||||||
|
dnl given to configure. It defaults to disable.
|
||||||
|
dnl
|
||||||
|
dnl * SHAVE_INIT should be called late in your configure.(ac|in) file (just
|
||||||
|
dnl before AC_CONFIG_FILE/AC_OUTPUT is perfect. This macro rewrites CC and
|
||||||
|
dnl LIBTOOL, you don't want the configure tests to have these variables
|
||||||
|
dnl re-defined.
|
||||||
|
dnl * This macro requires GNU make's -s option.
|
||||||
|
|
||||||
|
AC_DEFUN([_SHAVE_ARG_ENABLE],
|
||||||
|
[
|
||||||
|
AC_ARG_ENABLE([shave],
|
||||||
|
AS_HELP_STRING(
|
||||||
|
[--enable-shave],
|
||||||
|
[use shave to make the build pretty [[default=$1]]]),,
|
||||||
|
[enable_shave=$1]
|
||||||
|
)
|
||||||
|
])
|
||||||
|
|
||||||
|
AC_DEFUN([SHAVE_INIT],
|
||||||
|
[
|
||||||
|
dnl you can tweak the default value of enable_shave
|
||||||
|
m4_if([$2], [enable], [_SHAVE_ARG_ENABLE(yes)], [_SHAVE_ARG_ENABLE(no)])
|
||||||
|
|
||||||
|
if test x"$enable_shave" = xyes; then
|
||||||
|
dnl where can we find the shave scripts?
|
||||||
|
m4_if([$1],,
|
||||||
|
[shavedir="$ac_pwd"],
|
||||||
|
[shavedir="$ac_pwd/$1"])
|
||||||
|
AC_SUBST(shavedir)
|
||||||
|
|
||||||
|
dnl make is now quiet
|
||||||
|
AC_SUBST([MAKEFLAGS], [-s])
|
||||||
|
AC_SUBST([AM_MAKEFLAGS], ['`test -z $V && echo -s`'])
|
||||||
|
|
||||||
|
dnl we need sed
|
||||||
|
AC_CHECK_PROG(SED,sed,sed,false)
|
||||||
|
|
||||||
|
dnl substitute libtool
|
||||||
|
SHAVE_SAVED_LIBTOOL=$LIBTOOL
|
||||||
|
LIBTOOL="${SHELL} ${shavedir}/shave-libtool '${SHAVE_SAVED_LIBTOOL}'"
|
||||||
|
AC_SUBST(LIBTOOL)
|
||||||
|
|
||||||
|
dnl substitute cc/cxx
|
||||||
|
SHAVE_SAVED_CC=$CC
|
||||||
|
SHAVE_SAVED_CXX=$CXX
|
||||||
|
SHAVE_SAVED_FC=$FC
|
||||||
|
SHAVE_SAVED_F77=$F77
|
||||||
|
CC="${SHELL} ${shavedir}/shave cc ${SHAVE_SAVED_CC}"
|
||||||
|
CXX="${SHELL} ${shavedir}/shave cxx ${SHAVE_SAVED_CXX}"
|
||||||
|
FC="${SHELL} ${shavedir}/shave fc ${SHAVE_SAVED_FC}"
|
||||||
|
F77="${SHELL} ${shavedir}/shave f77 ${SHAVE_SAVED_F77}"
|
||||||
|
AC_SUBST(CC)
|
||||||
|
AC_SUBST(CXX)
|
||||||
|
AC_SUBST(FC)
|
||||||
|
AC_SUBST(F77)
|
||||||
|
|
||||||
|
V=@
|
||||||
|
else
|
||||||
|
V=1
|
||||||
|
fi
|
||||||
|
Q='$(V:1=)'
|
||||||
|
AC_SUBST(V)
|
||||||
|
AC_SUBST(Q)
|
||||||
|
])
|
||||||
|
|
69
shave-libtool.in
Normal file
69
shave-libtool.in
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# we need sed
|
||||||
|
SED=@SED@
|
||||||
|
if test -z "$SED" ; then
|
||||||
|
SED=sed
|
||||||
|
fi
|
||||||
|
|
||||||
|
lt_unmangle ()
|
||||||
|
{
|
||||||
|
last_result=`echo $1 | $SED -e 's#.libs/##' -e 's#[0-9a-zA-Z_\-\.]*_la-##'`
|
||||||
|
}
|
||||||
|
|
||||||
|
# the real libtool to use
|
||||||
|
LIBTOOL="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
# if 1, don't print anything, the underlaying wrapper will do it
|
||||||
|
pass_though=0
|
||||||
|
|
||||||
|
# scan the arguments, keep the right ones for libtool, and discover the mode
|
||||||
|
preserved_args=
|
||||||
|
while test "$#" -gt 0; do
|
||||||
|
opt="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
case $opt in
|
||||||
|
--mode=*)
|
||||||
|
mode=`echo $opt | $SED -e 's/[-_a-zA-Z0-9]*=//'`
|
||||||
|
preserved_args="$preserved_args $opt"
|
||||||
|
;;
|
||||||
|
-o)
|
||||||
|
lt_output="$1"
|
||||||
|
preserved_args="$preserved_args $opt"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
preserved_args="$preserved_args $opt"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
case "$mode" in
|
||||||
|
compile)
|
||||||
|
# shave will be called and print the actual CC/CXX/LINK line
|
||||||
|
preserved_args="$preserved_args --shave-mode=$mode"
|
||||||
|
pass_though=1
|
||||||
|
;;
|
||||||
|
link)
|
||||||
|
preserved_args="$preserved_args --shave-mode=$mode"
|
||||||
|
Q=" LINK "
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
# let's u
|
||||||
|
# echo "*** libtool: Unimplemented mode: $mode, fill a bug report"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
lt_unmangle "$lt_output"
|
||||||
|
output=$last_result
|
||||||
|
|
||||||
|
if test -z $V; then
|
||||||
|
if test $pass_though -eq 0; then
|
||||||
|
echo "$Q$output"
|
||||||
|
fi
|
||||||
|
$LIBTOOL --silent $preserved_args
|
||||||
|
else
|
||||||
|
echo $LIBTOOL $preserved_args
|
||||||
|
$LIBTOOL $preserved_args
|
||||||
|
fi
|
76
shave.in
Normal file
76
shave.in
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# we need sed
|
||||||
|
SED=@SED@
|
||||||
|
if test -z "$SED" ; then
|
||||||
|
SED=sed
|
||||||
|
fi
|
||||||
|
|
||||||
|
lt_unmangle ()
|
||||||
|
{
|
||||||
|
last_result=`echo $1 | $SED -e 's#.libs/##' -e 's#[0-9a-zA-Z_\-\.]*_la-##'`
|
||||||
|
}
|
||||||
|
|
||||||
|
# the tool to wrap (cc, cxx, ar, ranlib, ..)
|
||||||
|
tool="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
# the reel tool (to call)
|
||||||
|
REEL_TOOL="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
pass_through=0
|
||||||
|
preserved_args=
|
||||||
|
while test "$#" -gt 0; do
|
||||||
|
opt="$1"
|
||||||
|
shift
|
||||||
|
|
||||||
|
case $opt in
|
||||||
|
--shave-mode=*)
|
||||||
|
mode=`echo $opt | $SED -e 's/[-_a-zA-Z0-9]*=//'`
|
||||||
|
;;
|
||||||
|
-o)
|
||||||
|
lt_output="$1"
|
||||||
|
preserved_args="$preserved_args $opt"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
preserved_args="$preserved_args $opt"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# mode=link is handled in the libtool wrapper
|
||||||
|
case "$mode,$tool" in
|
||||||
|
link,*)
|
||||||
|
pass_through=1
|
||||||
|
;;
|
||||||
|
*,cxx)
|
||||||
|
Q=" CXX "
|
||||||
|
;;
|
||||||
|
*,cc)
|
||||||
|
Q=" CC "
|
||||||
|
;;
|
||||||
|
*,fc)
|
||||||
|
Q=" FC "
|
||||||
|
;;
|
||||||
|
*,f77)
|
||||||
|
Q=" F77 "
|
||||||
|
;;
|
||||||
|
*,*)
|
||||||
|
# should not happen
|
||||||
|
Q=" CC "
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
lt_unmangle "$lt_output"
|
||||||
|
output=$last_result
|
||||||
|
|
||||||
|
if test -z $V; then
|
||||||
|
if test $pass_through -eq 0; then
|
||||||
|
echo "$Q$output"
|
||||||
|
fi
|
||||||
|
$REEL_TOOL $preserved_args
|
||||||
|
else
|
||||||
|
echo $REEL_TOOL $preserved_args
|
||||||
|
$REEL_TOOL $preserved_args
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user