diff options
author | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2019-12-24 12:14:29 +0000 |
---|---|---|
committer | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2019-12-24 12:14:29 +0000 |
commit | eddb65117ff02553db680d50b343589e30920b91 (patch) | |
tree | e45288d92738a6c9a3a0e7f39fb330781b300b6f /util | |
parent | aae1977dc399bac92d04f038ad900ae541459e69 (diff) |
Update to makedepend 1.0.6
Diffstat (limited to 'util')
-rw-r--r-- | util/makedepend/ChangeLog | 167 | ||||
-rw-r--r-- | util/makedepend/Makefile.am | 2 | ||||
-rw-r--r-- | util/makedepend/Makefile.in | 4 | ||||
-rw-r--r-- | util/makedepend/README | 25 | ||||
-rw-r--r-- | util/makedepend/README.md | 20 | ||||
-rw-r--r-- | util/makedepend/aclocal.m4 | 289 | ||||
-rw-r--r-- | util/makedepend/autogen.sh | 12 | ||||
-rw-r--r-- | util/makedepend/compile | 2 | ||||
-rw-r--r-- | util/makedepend/configure | 131 | ||||
-rw-r--r-- | util/makedepend/configure.ac | 14 | ||||
-rw-r--r-- | util/makedepend/def.h | 6 | ||||
-rw-r--r-- | util/makedepend/ifparser.c | 6 | ||||
-rw-r--r-- | util/makedepend/main.c | 6 | ||||
-rw-r--r-- | util/makedepend/parse.c | 4 | ||||
-rw-r--r-- | util/makedepend/pr.c | 53 | ||||
-rw-r--r-- | util/makedepend/test-driver | 35 |
16 files changed, 552 insertions, 224 deletions
diff --git a/util/makedepend/ChangeLog b/util/makedepend/ChangeLog index 52789fd66..12ef184d6 100644 --- a/util/makedepend/ChangeLog +++ b/util/makedepend/ChangeLog @@ -1,3 +1,170 @@ +commit e4971e9507f989d68c97a92edd1e6e1881ad1d55 +Author: Alan Coopersmith <alan.coopersmith@oracle.com> +Date: Sat Mar 16 16:39:07 2019 -0700 + + makedepend 1.0.6 + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit 7897a5b8edd142d4de63933db3e544262006289e +Author: Alan Coopersmith <alan.coopersmith@oracle.com> +Date: Fri Dec 7 20:35:14 2018 -0800 + + Update configure.ac bug URL for gitlab migration + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit 277eaf65d43f9fe9d3d223810e1872c32436c01e +Author: Alan Coopersmith <alan.coopersmith@oracle.com> +Date: Mon Nov 19 23:40:18 2018 -0800 + + Update README for gitlab migration + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit d15117c98a071b8fd30fb163fc45cb37db760654 +Author: Alan Coopersmith <alan.coopersmith@oracle.com> +Date: Sat May 5 10:54:59 2018 -0700 + + Simplify writing of output lines to Makefile + + Instead of writing everything to a temporary buffer, and then using + fwrite() to have it fputc() one character at a time into the stdio + buffer, just use fprintf() directly to save a copy and write in + larger blocks. + + Testing on Solaris on makedepend's own source files showed a + reduction in memcpy's from 4037 to 3108, and in _dowrite calls + in stdio from 1173 to 168, but no change in actual write calls + from stdio's buffer to the file. + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit 4f410f3ed29fdb0f98be1e01930ba1a909a36ef0 +Author: Alan Coopersmith <alan.coopersmith@oracle.com> +Date: Sat May 5 10:05:44 2018 -0700 + + Remove unused variable whitespace + + Use of it was removed in commit 275c17136006f9d, but we kept setting + it anyway. + + Resolves gcc 7.3 warning: + main.c: In function ‘getnextline’: + main.c:587:10: warning: variable ‘whitespace’ set but not used [-Wunused-but-set-variable] + boolean whitespace = FALSE; + ^~~~~~~~~~ + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit 223b315a9148ec0091837f2e369bbb3ec5d49e11 +Author: Alan Coopersmith <alan.coopersmith@oracle.com> +Date: Sat May 5 10:00:38 2018 -0700 + + Fix bad indentation in ifparser.c + + ifparser.c: In function ‘parse_product’: + ifparser.c:300:5: warning: this ‘else’ clause does not guard... [-Wmisleading-indentation] + else + ^~~~ + ifparser.c:302:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘else’ + break; + ^~~~~ + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit 13385d8add69156805f824cedcdad2986a23662d +Author: Antonio Larrosa <alarrosa@suse.com> +Date: Tue Feb 2 18:31:27 2016 +0100 + + Quote colons in filenames/paths + + Makefile doesn't like colons in filenames/paths so they must + be quoted in the output. Otherwise makedepend doesn't work with + full paths that contain a colon. + + V2: Use quoted filename when measuring name length + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit 5fb14ee51f849ec86c109bae101ae3f7b7ed7e39 +Author: David Boyce <boyski@users.sourceforge.net> +Date: Fri Dec 27 18:50:38 2013 -0800 + + Bumped -I flag limit in makedepend from 64 to 512. + + Clearly a limit of 64 -I flags is too low (we hit it); it might be + a good style recommendation but shouldn't be a hard limit. + 512 is a fairly random replacement value. + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit 0860822bb2a1bbc6e40758e2e6413181b26b6b04 +Author: Dirk <doj@cubic.org> +Date: Thu Feb 11 18:48:13 2016 +0000 + + missing bounds check in makedepend for file arguments + + When assigning source code files from the command line to the fp pointer, + no bounds check is done and if more than MAXFILES file names are specified + on the command line, memory will be overridden out of bounds. + + https://bugs.freedesktop.org/show_bug.cgi?id=94099 + + Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> + Tested-by: Alan Coopersmith <alan.coopersmith@oracle.com> + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + +commit 72cc0b7713b28ffd03271526c81d1ad9d2183a82 +Author: Mihail Konev <k.mvc@ya.ru> +Date: Thu Jan 26 13:52:49 2017 +1000 + + autogen: add default patch prefix + + Signed-off-by: Mihail Konev <k.mvc@ya.ru> + +commit f11006e04bb87b060cc6a5b64f4dd0eeb8b3447f +Author: Emil Velikov <emil.l.velikov@gmail.com> +Date: Mon Mar 9 12:00:52 2015 +0000 + + autogen.sh: use quoted string variables + + Place quotes around the $srcdir, $ORIGDIR and $0 variables to prevent + fall-outs, when they contain space. + + Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> + Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit c5cc6e0ff2d60133a4b7560df67607ceeb9d55a6 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Tue Jan 24 10:32:07 2017 +1000 + + autogen.sh: use exec instead of waiting for configure to finish + + Syncs the invocation of configure with the one from the server. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + Reviewed-by: Emil Velikov <emil.velikov@collabora.com> + +commit a4f82f917a9b0802b70cd80c21d2e53688e2b9b3 +Author: Alan Coopersmith <alan.coopersmith@oracle.com> +Date: Sat Mar 12 10:11:03 2016 -0800 + + Use do { ... } while(0) idiom to make debug() macro safer + + Cleans up several -Wempty-body warnings from gcc 5.3 + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + Reviewed-by: Adam Jackson <ajax@redhat.com> + +commit 9da873c5a036c95aa24a7dc3562d405609262381 +Author: Alan Coopersmith <alan.coopersmith@oracle.com> +Date: Fri Aug 2 21:49:39 2013 -0700 + + Constify a pair of local string pointers + + Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> + commit 30859adfd6a6523a92a637ca26bd61ce59680a1b Author: Alan Coopersmith <alan.coopersmith@oracle.com> Date: Mon Jul 22 22:14:36 2013 -0700 diff --git a/util/makedepend/Makefile.am b/util/makedepend/Makefile.am index 30e0a0d95..00b695ef8 100644 --- a/util/makedepend/Makefile.am +++ b/util/makedepend/Makefile.am @@ -15,7 +15,7 @@ AM_CPPFLAGS = -DOBJSUFFIX=\".${OBJEXT}\" -DINCLUDEDIR=\"/usr/include\" AM_CPPFLAGS += $(X_CFLAGS) AM_CFLAGS = $(CWARNFLAGS) -EXTRA_DIST = autogen.sh makedepend.man +EXTRA_DIST = autogen.sh makedepend.man README.md # Man page appmandir = $(APP_MAN_DIR) diff --git a/util/makedepend/Makefile.in b/util/makedepend/Makefile.in index 353176405..3d1f96ff4 100644 --- a/util/makedepend/Makefile.in +++ b/util/makedepend/Makefile.in @@ -53,7 +53,7 @@ build_triplet = @build@ host_triplet = @host@ bin_PROGRAMS = makedepend$(EXEEXT) subdir = . -DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ +DIST_COMMON = $(am__configure_deps) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in $(srcdir)/makedepend-config.h.in \ $(top_srcdir)/configure AUTHORS COPYING ChangeLog compile \ config.guess config.sub depcomp install-sh missing @@ -300,7 +300,7 @@ makedepend_SOURCES = include.c \ AM_CPPFLAGS = -DOBJSUFFIX=\".${OBJEXT}\" -DINCLUDEDIR=\"/usr/include\" \ $(X_CFLAGS) AM_CFLAGS = $(CWARNFLAGS) -EXTRA_DIST = autogen.sh makedepend.man ChangeLog \ +EXTRA_DIST = autogen.sh makedepend.man README.md ChangeLog \ tests/28045/makedep.sh tests/28045/foo.cpp # Man page diff --git a/util/makedepend/README b/util/makedepend/README deleted file mode 100644 index 4376dcd01..000000000 --- a/util/makedepend/README +++ /dev/null @@ -1,25 +0,0 @@ -makedepend - create dependencies in makefiles - -All questions regarding this software should be directed at the -Xorg mailing list: - - http://lists.freedesktop.org/mailman/listinfo/xorg - -Please submit bug reports to the Xorg bugzilla: - - https://bugs.freedesktop.org/enter_bug.cgi?product=xorg - -The master development code repository can be found at: - - git://anongit.freedesktop.org/git/xorg/util/makedepend - - http://cgit.freedesktop.org/xorg/util/makedepend - -For patch submission instructions, see: - - http://www.x.org/wiki/Development/Documentation/SubmittingPatches - -For more information on the git code manager, see: - - http://wiki.x.org/wiki/GitPage - diff --git a/util/makedepend/README.md b/util/makedepend/README.md new file mode 100644 index 000000000..ba02cbc11 --- /dev/null +++ b/util/makedepend/README.md @@ -0,0 +1,20 @@ +makedepend - create dependencies in makefiles +--------------------------------------------- + +makedepend parses C sources to make dependency lists for Makefiles. + +All questions regarding this software should be directed at the +Xorg mailing list: + + https://lists.x.org/mailman/listinfo/xorg + +The master development code repository can be found at: + + https://gitlab.freedesktop.org/xorg/util/makedepend + +Please submit bug reports and requests to merge patches there. + +For patch submission instructions, see: + + https://www.x.org/wiki/Development/Documentation/SubmittingPatches + diff --git a/util/makedepend/aclocal.m4 b/util/makedepend/aclocal.m4 index 13beddec8..2a518c4b6 100644 --- a/util/makedepend/aclocal.m4 +++ b/util/makedepend/aclocal.m4 @@ -19,32 +19,63 @@ You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) -# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- -# serial 1 (pkg-config-0.24) -# -# Copyright © 2004 Scott James Remnant <scott@netsplit.com>. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# PKG_PROG_PKG_CONFIG([MIN-VERSION]) -# ---------------------------------- +dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +dnl serial 11 (pkg-config-0.29.1) +dnl +dnl Copyright © 2004 Scott James Remnant <scott@netsplit.com>. +dnl Copyright © 2012-2015 Dan Nicholson <dbn.lists@gmail.com> +dnl +dnl This program is free software; you can redistribute it and/or modify +dnl it under the terms of the GNU General Public License as published by +dnl the Free Software Foundation; either version 2 of the License, or +dnl (at your option) any later version. +dnl +dnl This program is distributed in the hope that it will be useful, but +dnl WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl General Public License for more details. +dnl +dnl You should have received a copy of the GNU General Public License +dnl along with this program; if not, write to the Free Software +dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +dnl 02111-1307, USA. +dnl +dnl As a special exception to the GNU General Public License, if you +dnl distribute this file as part of a program that contains a +dnl configuration script generated by Autoconf, you may include it under +dnl the same distribution terms that you use for the rest of that +dnl program. + +dnl PKG_PREREQ(MIN-VERSION) +dnl ----------------------- +dnl Since: 0.29 +dnl +dnl Verify that the version of the pkg-config macros are at least +dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's +dnl installed version of pkg-config, this checks the developer's version +dnl of pkg.m4 when generating configure. +dnl +dnl To ensure that this macro is defined, also add: +dnl m4_ifndef([PKG_PREREQ], +dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) +dnl +dnl See the "Since" comment for each macro you use to see what version +dnl of the macros you require. +m4_defun([PKG_PREREQ], +[m4_define([PKG_MACROS_VERSION], [0.29.1]) +m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, + [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) +])dnl PKG_PREREQ + +dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) +dnl ---------------------------------- +dnl Since: 0.16 +dnl +dnl Search for the pkg-config tool and set the PKG_CONFIG variable to +dnl first found in the path. Checks that the version of pkg-config found +dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is +dnl used since that's the first version where most current features of +dnl pkg-config existed. AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) @@ -66,18 +97,19 @@ if test -n "$PKG_CONFIG"; then PKG_CONFIG="" fi fi[]dnl -])# PKG_PROG_PKG_CONFIG +])dnl PKG_PROG_PKG_CONFIG -# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -# -# Check to see whether a particular set of modules exists. Similar -# to PKG_CHECK_MODULES(), but does not set variables or print errors. -# -# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) -# only at the first occurence in configure.ac, so if the first place -# it's called might be skipped (such as if it is within an "if", you -# have to call PKG_CHECK_EXISTS manually -# -------------------------------------------------------------- +dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +dnl ------------------------------------------------------------------- +dnl Since: 0.18 +dnl +dnl Check to see whether a particular set of modules exists. Similar to +dnl PKG_CHECK_MODULES(), but does not set variables or print errors. +dnl +dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +dnl only at the first occurence in configure.ac, so if the first place +dnl it's called might be skipped (such as if it is within an "if", you +dnl have to call PKG_CHECK_EXISTS manually AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl if test -n "$PKG_CONFIG" && \ @@ -87,8 +119,10 @@ m4_ifvaln([$3], [else $3])dnl fi]) -# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) -# --------------------------------------------- +dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) +dnl --------------------------------------------- +dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting +dnl pkg_failed based on the result. m4_define([_PKG_CONFIG], [if test -n "$$1"; then pkg_cv_[]$1="$$1" @@ -100,10 +134,11 @@ m4_define([_PKG_CONFIG], else pkg_failed=untried fi[]dnl -])# _PKG_CONFIG +])dnl _PKG_CONFIG -# _PKG_SHORT_ERRORS_SUPPORTED -# ----------------------------- +dnl _PKG_SHORT_ERRORS_SUPPORTED +dnl --------------------------- +dnl Internal check to see if pkg-config supports short errors. AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG]) if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then @@ -111,19 +146,17 @@ if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then else _pkg_short_errors_supported=no fi[]dnl -])# _PKG_SHORT_ERRORS_SUPPORTED +])dnl _PKG_SHORT_ERRORS_SUPPORTED -# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], -# [ACTION-IF-NOT-FOUND]) -# -# -# Note that if there is a possibility the first call to -# PKG_CHECK_MODULES might not happen, you should be sure to include an -# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac -# -# -# -------------------------------------------------------------- +dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], +dnl [ACTION-IF-NOT-FOUND]) +dnl -------------------------------------------------------------- +dnl Since: 0.4.0 +dnl +dnl Note that if there is a possibility the first call to +dnl PKG_CHECK_MODULES might not happen, you should be sure to include an +dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl @@ -177,16 +210,40 @@ else AC_MSG_RESULT([yes]) $3 fi[]dnl -])# PKG_CHECK_MODULES +])dnl PKG_CHECK_MODULES + +dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], +dnl [ACTION-IF-NOT-FOUND]) +dnl --------------------------------------------------------------------- +dnl Since: 0.29 +dnl +dnl Checks for existence of MODULES and gathers its build flags with +dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags +dnl and VARIABLE-PREFIX_LIBS from --libs. +dnl +dnl Note that if there is a possibility the first call to +dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to +dnl include an explicit call to PKG_PROG_PKG_CONFIG in your +dnl configure.ac. +AC_DEFUN([PKG_CHECK_MODULES_STATIC], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +_save_PKG_CONFIG=$PKG_CONFIG +PKG_CONFIG="$PKG_CONFIG --static" +PKG_CHECK_MODULES($@) +PKG_CONFIG=$_save_PKG_CONFIG[]dnl +])dnl PKG_CHECK_MODULES_STATIC -# PKG_INSTALLDIR(DIRECTORY) -# ------------------------- -# Substitutes the variable pkgconfigdir as the location where a module -# should install pkg-config .pc files. By default the directory is -# $libdir/pkgconfig, but the default can be changed by passing -# DIRECTORY. The user can override through the --with-pkgconfigdir -# parameter. + +dnl PKG_INSTALLDIR([DIRECTORY]) +dnl ------------------------- +dnl Since: 0.27 +dnl +dnl Substitutes the variable pkgconfigdir as the location where a module +dnl should install pkg-config .pc files. By default the directory is +dnl $libdir/pkgconfig, but the default can be changed by passing +dnl DIRECTORY. The user can override through the --with-pkgconfigdir +dnl parameter. AC_DEFUN([PKG_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) m4_pushdef([pkg_description], @@ -197,16 +254,18 @@ AC_ARG_WITH([pkgconfigdir], AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) -]) dnl PKG_INSTALLDIR +])dnl PKG_INSTALLDIR -# PKG_NOARCH_INSTALLDIR(DIRECTORY) -# ------------------------- -# Substitutes the variable noarch_pkgconfigdir as the location where a -# module should install arch-independent pkg-config .pc files. By -# default the directory is $datadir/pkgconfig, but the default can be -# changed by passing DIRECTORY. The user can override through the -# --with-noarch-pkgconfigdir parameter. +dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) +dnl -------------------------------- +dnl Since: 0.27 +dnl +dnl Substitutes the variable noarch_pkgconfigdir as the location where a +dnl module should install arch-independent pkg-config .pc files. By +dnl default the directory is $datadir/pkgconfig, but the default can be +dnl changed by passing DIRECTORY. The user can override through the +dnl --with-noarch-pkgconfigdir parameter. AC_DEFUN([PKG_NOARCH_INSTALLDIR], [m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) m4_pushdef([pkg_description], @@ -217,7 +276,24 @@ AC_ARG_WITH([noarch-pkgconfigdir], AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) m4_popdef([pkg_default]) m4_popdef([pkg_description]) -]) dnl PKG_NOARCH_INSTALLDIR +])dnl PKG_NOARCH_INSTALLDIR + + +dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, +dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +dnl ------------------------------------------- +dnl Since: 0.28 +dnl +dnl Retrieves the value of the pkg-config variable for the given module. +AC_DEFUN([PKG_CHECK_VAR], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl + +_PKG_CONFIG([$1], [variable="][$3]["], [$2]) +AS_VAR_COPY([$1], [pkg_cv_][$1]) + +AS_VAR_IF([$1], [""], [$5], [$4])dnl +])dnl PKG_CHECK_VAR # Copyright (C) 2002-2012 Free Software Foundation, Inc. # @@ -606,15 +682,6 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) -# Copyright (C) 1996-2012 Free Software Foundation, Inc. -# -# This file 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. - -# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS. -AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)]) - # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996-2012 Free Software Foundation, Inc. @@ -1251,7 +1318,7 @@ AC_SUBST([am__untar]) dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure. dnl -dnl Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. +dnl Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved. dnl dnl Permission is hereby granted, free of charge, to any person obtaining a dnl copy of this software and associated documentation files (the "Software"), @@ -1288,7 +1355,7 @@ dnl DEALINGS IN THE SOFTWARE. # See the "minimum version" comment for each macro you use to see what # version you require. m4_defun([XORG_MACROS_VERSION],[ -m4_define([vers_have], [1.19.0]) +m4_define([vers_have], [1.19.2]) m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.]))) m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.]))) m4_if(m4_cmp(maj_have, maj_needed), 0,, @@ -1366,6 +1433,17 @@ AC_DEFUN([XORG_MANPAGE_SECTIONS],[ AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AC_PROG_SED]) +case $host_os in + solaris*) + # Solaris 2.0 - 11.3 use SysV man page section numbers, so we + # check for a man page file found in later versions that use + # traditional section numbers instead + AC_CHECK_FILE([/usr/share/man/man7/attributes.7], + [SYSV_MAN_SECTIONS=false], [SYSV_MAN_SECTIONS=true]) + ;; + *) SYSV_MAN_SECTIONS=false ;; +esac + if test x$APP_MAN_SUFFIX = x ; then APP_MAN_SUFFIX=1 fi @@ -1381,9 +1459,9 @@ if test x$LIB_MAN_DIR = x ; then fi if test x$FILE_MAN_SUFFIX = x ; then - case $host_os in - solaris*) FILE_MAN_SUFFIX=4 ;; - *) FILE_MAN_SUFFIX=5 ;; + case $SYSV_MAN_SECTIONS in + true) FILE_MAN_SUFFIX=4 ;; + *) FILE_MAN_SUFFIX=5 ;; esac fi if test x$FILE_MAN_DIR = x ; then @@ -1391,9 +1469,9 @@ if test x$FILE_MAN_DIR = x ; then fi if test x$MISC_MAN_SUFFIX = x ; then - case $host_os in - solaris*) MISC_MAN_SUFFIX=5 ;; - *) MISC_MAN_SUFFIX=7 ;; + case $SYSV_MAN_SECTIONS in + true) MISC_MAN_SUFFIX=5 ;; + *) MISC_MAN_SUFFIX=7 ;; esac fi if test x$MISC_MAN_DIR = x ; then @@ -1401,9 +1479,9 @@ if test x$MISC_MAN_DIR = x ; then fi if test x$DRIVER_MAN_SUFFIX = x ; then - case $host_os in - solaris*) DRIVER_MAN_SUFFIX=7 ;; - *) DRIVER_MAN_SUFFIX=4 ;; + case $SYSV_MAN_SECTIONS in + true) DRIVER_MAN_SUFFIX=7 ;; + *) DRIVER_MAN_SUFFIX=4 ;; esac fi if test x$DRIVER_MAN_DIR = x ; then @@ -1411,9 +1489,9 @@ if test x$DRIVER_MAN_DIR = x ; then fi if test x$ADMIN_MAN_SUFFIX = x ; then - case $host_os in - solaris*) ADMIN_MAN_SUFFIX=1m ;; - *) ADMIN_MAN_SUFFIX=8 ;; + case $SYSV_MAN_SECTIONS in + true) ADMIN_MAN_SUFFIX=1m ;; + *) ADMIN_MAN_SUFFIX=8 ;; esac fi if test x$ADMIN_MAN_DIR = x ; then @@ -1674,13 +1752,24 @@ m4_ifval([$1], fi]) # Test for the ability of xmlto to generate a text target +# +# NOTE: xmlto 0.0.27 or higher return a non-zero return code in the +# following test for empty XML docbook files. +# For compatibility reasons use the following empty XML docbook file and if +# it fails try it again with a non-empty XML file. have_xmlto_text=no cat > conftest.xml << "EOF" EOF AS_IF([test "$have_xmlto" = yes], [AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1], [have_xmlto_text=yes], - [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])]) + [# Try it again with a non-empty XML file. + cat > conftest.xml << "EOF" +<x></x> +EOF + AS_IF([$XMLTO --skip-validation txt conftest.xml >/dev/null 2>&1], + [have_xmlto_text=yes], + [AC_MSG_WARN([xmlto cannot generate text format, this format skipped])])])]) rm -f conftest.xml AM_CONDITIONAL([HAVE_XMLTO_TEXT], [test $have_xmlto_text = yes]) AM_CONDITIONAL([HAVE_XMLTO], [test "$have_xmlto" = yes]) @@ -3076,8 +3165,9 @@ AC_REQUIRE([PKG_PROG_PKG_CONFIG]) macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros` INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \ mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \ -|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \ -echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)" +|| (rm -f \$(top_srcdir)/.INSTALL.tmp; test -e \$(top_srcdir)/INSTALL || ( \ +touch \$(top_srcdir)/INSTALL; \ +echo 'failed to copy INSTALL from util-macros: installing empty INSTALL.' >&2))" AC_SUBST([INSTALL_CMD]) ]) # XORG_INSTALL dnl Copyright 2005 Red Hat, Inc @@ -3138,10 +3228,11 @@ AC_DEFUN([XORG_RELEASE_VERSION],[ # # AC_DEFUN([XORG_CHANGELOG], [ -CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \ +CHANGELOG_CMD="((GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp) 2>/dev/null && \ mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \ -|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \ -echo 'git directory not found: installing possibly empty changelog.' >&2)" +|| (rm -f \$(top_srcdir)/.changelog.tmp; test -e \$(top_srcdir)/ChangeLog || ( \ +touch \$(top_srcdir)/ChangeLog; \ +echo 'git failed to create ChangeLog: installing empty ChangeLog.' >&2))" AC_SUBST([CHANGELOG_CMD]) ]) # XORG_CHANGELOG diff --git a/util/makedepend/autogen.sh b/util/makedepend/autogen.sh index dfba2dfc9..8ff2ccc11 100644 --- a/util/makedepend/autogen.sh +++ b/util/makedepend/autogen.sh @@ -1,15 +1,17 @@ #! /bin/sh - -srcdir=`dirname $0` +srcdir=`dirname "$0"` test -z "$srcdir" && srcdir=. ORIGDIR=`pwd` -cd $srcdir +cd "$srcdir" autoreconf -v --install || exit 1 -cd $ORIGDIR || exit $? +cd "$ORIGDIR" || exit $? + +git config --local --get format.subjectPrefix >/dev/null 2>&1 || + git config --local format.subjectPrefix "PATCH util/makedepend" if test -z "$NOCONFIGURE"; then - $srcdir/configure "$@" + exec "$srcdir"/configure "$@" fi diff --git a/util/makedepend/compile b/util/makedepend/compile index 531136b06..a85b723c7 100644 --- a/util/makedepend/compile +++ b/util/makedepend/compile @@ -3,7 +3,7 @@ scriptversion=2012-10-14.11; # UTC -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # Written by Tom Tromey <tromey@cygnus.com>. # # This program is free software; you can redistribute it and/or modify diff --git a/util/makedepend/configure b/util/makedepend/configure index f16ae19fd..54e9d4b83 100644 --- a/util/makedepend/configure +++ b/util/makedepend/configure @@ -1,8 +1,8 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for makedepend 1.0.4. +# Generated by GNU Autoconf 2.69 for makedepend 1.0.6. # -# Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>. +# Report bugs to <https://gitlab.freedesktop.org/xorg/util/makedepend/issues>. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -267,7 +267,7 @@ fi $as_echo "$0: be upgraded to zsh 4.3.4 or later." else $as_echo "$0: Please tell bug-autoconf@gnu.org and -$0: https://bugs.freedesktop.org/enter_bug.cgi?product=xorg +$0: https://gitlab.freedesktop.org/xorg/util/makedepend/issues $0: about your system, including any error possibly output $0: before this message. Then install a modern shell, or $0: manually run the script under such a shell if you do @@ -581,11 +581,12 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='makedepend' PACKAGE_TARNAME='makedepend' -PACKAGE_VERSION='1.0.4' -PACKAGE_STRING='makedepend 1.0.4' -PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' +PACKAGE_VERSION='1.0.6' +PACKAGE_STRING='makedepend 1.0.6' +PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/util/makedepend/issues' PACKAGE_URL='' +ac_unique_file="Makefile.am" # Factoring default headers for most tests. ac_includes_default="\ #include <stdio.h> @@ -1318,7 +1319,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures makedepend 1.0.4 to adapt to many kinds of systems. +\`configure' configures makedepend 1.0.6 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1388,7 +1389,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of makedepend 1.0.4:";; + short | recursive ) echo "Configuration of makedepend 1.0.6:";; esac cat <<\_ACEOF @@ -1441,7 +1442,7 @@ Some influential environment variables: Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. -Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>. +Report bugs to <https://gitlab.freedesktop.org/xorg/util/makedepend/issues>. _ACEOF ac_status=$? fi @@ -1504,7 +1505,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -makedepend configure 1.0.4 +makedepend configure 1.0.6 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1828,7 +1829,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by makedepend $as_me 1.0.4, which was +It was created by makedepend $as_me 1.0.6, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2176,6 +2177,11 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu + +ac_config_headers="$ac_config_headers makedepend-config.h" + + +# Initialize Automake am__api_version='1.12' ac_aux_dir= @@ -2652,7 +2658,7 @@ fi # Define the identity of the package. PACKAGE='makedepend' - VERSION='1.0.4' + VERSION='1.0.6' cat >>confdefs.h <<_ACEOF @@ -2699,31 +2705,6 @@ am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 -$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } - # Check whether --enable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then : - enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval -else - USE_MAINTAINER_MODE=no -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 -$as_echo "$USE_MAINTAINER_MODE" >&6; } - if test $USE_MAINTAINER_MODE = yes; then - MAINTAINER_MODE_TRUE= - MAINTAINER_MODE_FALSE='#' -else - MAINTAINER_MODE_TRUE='#' - MAINTAINER_MODE_FALSE= -fi - - MAINT=$MAINTAINER_MODE_TRUE - - -ac_config_headers="$ac_config_headers makedepend-config.h" - - # Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS @@ -10322,10 +10303,11 @@ _ACEOF -CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp && \ +CHANGELOG_CMD="((GIT_DIR=\$(top_srcdir)/.git git log > \$(top_srcdir)/.changelog.tmp) 2>/dev/null && \ mv \$(top_srcdir)/.changelog.tmp \$(top_srcdir)/ChangeLog) \ -|| (rm -f \$(top_srcdir)/.changelog.tmp; touch \$(top_srcdir)/ChangeLog; \ -echo 'git directory not found: installing possibly empty changelog.' >&2)" +|| (rm -f \$(top_srcdir)/.changelog.tmp; test -e \$(top_srcdir)/ChangeLog || ( \ +touch \$(top_srcdir)/ChangeLog; \ +echo 'git failed to create ChangeLog: installing empty ChangeLog.' >&2))" @@ -10333,13 +10315,44 @@ echo 'git directory not found: installing possibly empty changelog.' >&2)" macros_datadir=`$PKG_CONFIG --print-errors --variable=pkgdatadir xorg-macros` INSTALL_CMD="(cp -f "$macros_datadir/INSTALL" \$(top_srcdir)/.INSTALL.tmp && \ mv \$(top_srcdir)/.INSTALL.tmp \$(top_srcdir)/INSTALL) \ -|| (rm -f \$(top_srcdir)/.INSTALL.tmp; touch \$(top_srcdir)/INSTALL; \ -echo 'util-macros \"pkgdatadir\" from xorg-macros.pc not found: installing possibly empty INSTALL.' >&2)" +|| (rm -f \$(top_srcdir)/.INSTALL.tmp; test -e \$(top_srcdir)/INSTALL || ( \ +touch \$(top_srcdir)/INSTALL; \ +echo 'failed to copy INSTALL from util-macros: installing empty INSTALL.' >&2))" + + +case $host_os in + solaris*) + # Solaris 2.0 - 11.3 use SysV man page section numbers, so we + # check for a man page file found in later versions that use + # traditional section numbers instead + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for /usr/share/man/man7/attributes.7" >&5 +$as_echo_n "checking for /usr/share/man/man7/attributes.7... " >&6; } +if ${ac_cv_file__usr_share_man_man7_attributes_7+:} false; then : + $as_echo_n "(cached) " >&6 +else + test "$cross_compiling" = yes && + as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5 +if test -r "/usr/share/man/man7/attributes.7"; then + ac_cv_file__usr_share_man_man7_attributes_7=yes +else + ac_cv_file__usr_share_man_man7_attributes_7=no +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_file__usr_share_man_man7_attributes_7" >&5 +$as_echo "$ac_cv_file__usr_share_man_man7_attributes_7" >&6; } +if test "x$ac_cv_file__usr_share_man_man7_attributes_7" = xyes; then : + SYSV_MAN_SECTIONS=false +else + SYSV_MAN_SECTIONS=true +fi + ;; + *) SYSV_MAN_SECTIONS=false ;; +esac if test x$APP_MAN_SUFFIX = x ; then APP_MAN_SUFFIX=1 @@ -10356,9 +10369,9 @@ if test x$LIB_MAN_DIR = x ; then fi if test x$FILE_MAN_SUFFIX = x ; then - case $host_os in - solaris*) FILE_MAN_SUFFIX=4 ;; - *) FILE_MAN_SUFFIX=5 ;; + case $SYSV_MAN_SECTIONS in + true) FILE_MAN_SUFFIX=4 ;; + *) FILE_MAN_SUFFIX=5 ;; esac fi if test x$FILE_MAN_DIR = x ; then @@ -10366,9 +10379,9 @@ if test x$FILE_MAN_DIR = x ; then fi if test x$MISC_MAN_SUFFIX = x ; then - case $host_os in - solaris*) MISC_MAN_SUFFIX=5 ;; - *) MISC_MAN_SUFFIX=7 ;; + case $SYSV_MAN_SECTIONS in + true) MISC_MAN_SUFFIX=5 ;; + *) MISC_MAN_SUFFIX=7 ;; esac fi if test x$MISC_MAN_DIR = x ; then @@ -10376,9 +10389,9 @@ if test x$MISC_MAN_DIR = x ; then fi if test x$DRIVER_MAN_SUFFIX = x ; then - case $host_os in - solaris*) DRIVER_MAN_SUFFIX=7 ;; - *) DRIVER_MAN_SUFFIX=4 ;; + case $SYSV_MAN_SECTIONS in + true) DRIVER_MAN_SUFFIX=7 ;; + *) DRIVER_MAN_SUFFIX=4 ;; esac fi if test x$DRIVER_MAN_DIR = x ; then @@ -10386,9 +10399,9 @@ if test x$DRIVER_MAN_DIR = x ; then fi if test x$ADMIN_MAN_SUFFIX = x ; then - case $host_os in - solaris*) ADMIN_MAN_SUFFIX=1m ;; - *) ADMIN_MAN_SUFFIX=8 ;; + case $SYSV_MAN_SECTIONS in + true) ADMIN_MAN_SUFFIX=1m ;; + *) ADMIN_MAN_SUFFIX=8 ;; esac fi if test x$ADMIN_MAN_DIR = x ; then @@ -11006,10 +11019,6 @@ if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then - as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then as_fn_error $? "conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -11419,7 +11428,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by makedepend $as_me 1.0.4, which was +This file was extended by makedepend $as_me 1.0.6, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -11479,13 +11488,13 @@ $config_headers Configuration commands: $config_commands -Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>." +Report bugs to <https://gitlab.freedesktop.org/xorg/util/makedepend/issues>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -makedepend config.status 1.0.4 +makedepend config.status 1.0.6 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/util/makedepend/configure.ac b/util/makedepend/configure.ac index 190268c02..6379d7848 100644 --- a/util/makedepend/configure.ac +++ b/util/makedepend/configure.ac @@ -1,9 +1,15 @@ +dnl +dnl Process this file with autoconf to create configure. + +# Initialize Autoconf AC_PREREQ([2.60]) -AC_INIT([makedepend], [1.0.4], - [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg]) +AC_INIT([makedepend], [1.0.6], + [https://gitlab.freedesktop.org/xorg/util/makedepend/issues]) +AC_CONFIG_SRCDIR([Makefile.am]) +AC_CONFIG_HEADERS([makedepend-config.h]) + +# Initialize Automake AM_INIT_AUTOMAKE([foreign dist-bzip2]) -AM_MAINTAINER_MODE -AM_CONFIG_HEADER([makedepend-config.h]) # Require X.Org macros 1.8 or later for MAN_SUBSTS set by XORG_MANPAGE_SECTIONS m4_ifndef([XORG_MACROS_VERSION], diff --git a/util/makedepend/def.h b/util/makedepend/def.h index 1930cdeed..17ce537f3 100644 --- a/util/makedepend/def.h +++ b/util/makedepend/def.h @@ -41,7 +41,7 @@ in this Software without prior written authorization from The Open Group. #define MAXDEFINES 512 #define MAXFILES 2048 #define MAXINCFILES 128 /* "-include" files */ -#define MAXDIRS 64 +#define MAXDIRS 512 /* -I flags */ #define SYMTABINC 10 /* must be > 1 for define() to work right */ #define TRUE 1 #define FALSE 0 @@ -82,9 +82,9 @@ extern int _debugmask; * 3 show #include SYMBOL * 4-6 unused */ -#define debug(level,arg) { if (_debugmask & (1 << level)) warning arg; } +#define debug(level,arg) do { if (_debugmask & (1 << level)) warning arg; } while(0) #else -#define debug(level,arg) /**/ +#define debug(level,arg) do { /**/ } while (0) #endif /* DEBUG */ typedef unsigned char boolean; diff --git a/util/makedepend/ifparser.c b/util/makedepend/ifparser.c index 0efa550bf..4fb4d5895 100644 --- a/util/makedepend/ifparser.c +++ b/util/makedepend/ifparser.c @@ -295,10 +295,10 @@ parse_product (IfParser *g, const char *cp, long *valp) case '/': DO (cp = parse_product (g, cp + 1, &rightval)); - if (rightval) + if (rightval) *valp = (*valp / rightval); - else - *valp = LONG_MAX; + else + *valp = LONG_MAX; break; case '%': diff --git a/util/makedepend/main.c b/util/makedepend/main.c index e73cd8d68..871588151 100644 --- a/util/makedepend/main.c +++ b/util/makedepend/main.c @@ -232,6 +232,9 @@ main(int argc, char *argv[]) /* treat +thing as an option for C++ */ if (endmarker && **argv == '+') continue; + if (fp >= filelist + MAXFILES) { + fatalerr("Too many source files. Limit is %i files.\n", MAXFILES); + } *fp++ = argv[0]; continue; } @@ -581,7 +584,6 @@ char *getnextline(struct filepointer *filep) *eof, /* end of file pointer */ *bol; /* beginning of line pointer */ int lineno; /* line number */ - boolean whitespace = FALSE; /* * Fake the "-include" line files in form of #include to the @@ -611,7 +613,6 @@ char *getnextline(struct filepointer *filep) p++; bol++; } - whitespace = TRUE; } if (*p == '/' && (p+1) < eof && *(p+1) == '*') { @@ -683,7 +684,6 @@ char *getnextline(struct filepointer *filep) --p; } bol = p+1; - whitespace = FALSE; } } if (*bol != '#') diff --git a/util/makedepend/parse.c b/util/makedepend/parse.c index e5240c3b3..1e2f2630b 100644 --- a/util/makedepend/parse.c +++ b/util/makedepend/parse.c @@ -496,8 +496,8 @@ merge2defines(struct inclist *file1, struct inclist *file2) while ((last1 >= first1) && (last2 >= first2)) { - char *s1=file1->i_defs[first1]->s_name; - char *s2=file2->i_defs[first2]->s_name; + const char *s1 = file1->i_defs[first1]->s_name; + const char *s2 = file2->i_defs[first2]->s_name; if (strcmp(s1,s2) < 0) i_defs[first++]=file1->i_defs[first1++]; diff --git a/util/makedepend/pr.c b/util/makedepend/pr.c index 04abef94d..4744d5656 100644 --- a/util/makedepend/pr.c +++ b/util/makedepend/pr.c @@ -63,28 +63,65 @@ add_include(struct filepointer *filep, struct inclist *file, } } +/** + * Replaces all ":" occurrences in @p input with "\:" using @p outputbuffer (of size @p bufsize) + * possibly to hold the result. @p returns the string with quoted colons + */ +static const char * +quoteColons(const char *input, char *outputbuffer, size_t bufsize) +{ + const char *tmp=input; + const char *loc; + char *output=outputbuffer; + + loc = strchr(input, ':'); + if (loc == NULL) { + return input; + } + + tmp=input; + while (loc != NULL && bufsize > loc-tmp+2 ) { + memcpy(output, tmp, loc-tmp); + output+=loc-tmp; + bufsize-=loc-tmp+2; + tmp=loc+1; + *output='\\'; + output++; + *output=':'; + output++; + loc = strchr(tmp, ':'); + } + + if (strlen(tmp) <= bufsize) + strcpy(output, tmp); + else { + strncpy(output, tmp, bufsize-1); + output[bufsize]=0; + } + return outputbuffer; +} + static void pr(struct inclist *ip, const char *file, const char *base) { static const char *lastfile; static int current_len; register int len, i; - char buf[ BUFSIZ ]; + const char * quoted; + char quotebuf[ BUFSIZ ]; printed = TRUE; - len = strlen(ip->i_file)+1; + quoted = quoteColons(ip->i_file, quotebuf, sizeof(quotebuf)); + len = strlen(quoted)+1; if (current_len + len > width || file != lastfile) { lastfile = file; - snprintf(buf, sizeof(buf), "\n%s%s%s: %s", - objprefix, base, objsuffix, ip->i_file); - len = current_len = strlen(buf); + current_len = fprintf(stdout, "\n%s%s%s: %s", + objprefix, base, objsuffix, quoted); } else { - buf[0] = ' '; - strcpy(buf+1, ip->i_file); + fprintf(stdout, " %s", quoted); current_len += len; } - fwrite(buf, len, 1, stdout); /* * If verbose is set, then print out what this file includes. diff --git a/util/makedepend/test-driver b/util/makedepend/test-driver index 32bf39e83..8e575b017 100644 --- a/util/makedepend/test-driver +++ b/util/makedepend/test-driver @@ -1,9 +1,9 @@ #! /bin/sh # test-driver - basic testsuite driver script. -scriptversion=2012-06-27.10; # UTC +scriptversion=2013-07-13.22; # UTC -# Copyright (C) 2011-2013 Free Software Foundation, Inc. +# Copyright (C) 2011-2014 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -44,13 +44,12 @@ print_usage () Usage: test-driver --test-name=NAME --log-file=PATH --trs-file=PATH [--expect-failure={yes|no}] [--color-tests={yes|no}] - [--enable-hard-errors={yes|no}] [--] TEST-SCRIPT + [--enable-hard-errors={yes|no}] [--] + TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS] The '--test-name', '--log-file' and '--trs-file' options are mandatory. END } -# TODO: better error handling in option parsing (in particular, ensure -# TODO: $log_file, $trs_file and $test_name are defined). test_name= # Used for reporting. log_file= # Where to save the output of the test script. trs_file= # Where to save the metadata of the test run. @@ -69,10 +68,23 @@ while test $# -gt 0; do --enable-hard-errors) enable_hard_errors=$2; shift;; --) shift; break;; -*) usage_error "invalid option: '$1'";; + *) break;; esac shift done +missing_opts= +test x"$test_name" = x && missing_opts="$missing_opts --test-name" +test x"$log_file" = x && missing_opts="$missing_opts --log-file" +test x"$trs_file" = x && missing_opts="$missing_opts --trs-file" +if test x"$missing_opts" != x; then + usage_error "the following mandatory options are missing:$missing_opts" +fi + +if test $# -eq 0; then + usage_error "missing argument" +fi + if test $color_tests = yes; then # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'. red='[0;31m' # Red. @@ -94,11 +106,14 @@ trap "st=143; $do_exit" 15 # Test script is run here. "$@" >$log_file 2>&1 estatus=$? + if test $enable_hard_errors = no && test $estatus -eq 99; then - estatus=1 + tweaked_estatus=1 +else + tweaked_estatus=$estatus fi -case $estatus:$expect_failure in +case $tweaked_estatus:$expect_failure in 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; 0:*) col=$grn res=PASS recheck=no gcopy=no;; 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; @@ -107,6 +122,12 @@ case $estatus:$expect_failure in *:*) col=$red res=FAIL recheck=yes gcopy=yes;; esac +# Report the test outcome and exit status in the logs, so that one can +# know whether the test passed or failed simply by looking at the '.log' +# file, without the need of also peaking into the corresponding '.trs' +# file (automake bug#11814). +echo "$res $test_name (exit status: $estatus)" >>$log_file + # Report outcome to console. echo "${col}${res}${std}: $test_name" |