From: DongHun Kwak Date: Mon, 23 Sep 2019 02:03:38 +0000 (+0900) Subject: Imported Upstream version 1.31 X-Git-Tag: upstream/1.31^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=27760d608a4b1bfe9af5b21fcc7552c5e513a5ca;p=platform%2Fupstream%2Fgtk-doc.git Imported Upstream version 1.31 --- diff --git a/Makefile.in b/Makefile.in index f5057bc..2316894 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15.1 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2017 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -174,7 +174,7 @@ am__recursive_targets = \ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - cscope distdir dist dist-all distcheck + cscope distdir distdir-am dist dist-all distcheck am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -210,7 +210,7 @@ am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/gtk-doc.pc.in \ $(top_srcdir)/build-aux/missing \ $(top_srcdir)/gtkdoc/config.py.in AUTHORS COPYING ChangeLog \ INSTALL NEWS README TODO build-aux/compile \ - build-aux/config.guess build-aux/config.sub build-aux/depcomp \ + build-aux/config.guess build-aux/config.sub \ build-aux/install-sh build-aux/ltmain.sh build-aux/missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) @@ -392,7 +392,6 @@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -547,8 +546,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -814,7 +813,10 @@ distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -rm -f cscope.out cscope.in.out cscope.po.out cscope.files -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @case `sed 15q $(srcdir)/NEWS` in \ *"$(VERSION)"*) : ;; \ *) \ diff --git a/NEWS b/NEWS index 1fb2431..83ef24c 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,8 @@ +GTK-Doc 1.31 (Aug 5 2019) +=============== + +Nonmaintainer release to fix "Wrong permissions for style CSS file" (#84) + GTK-Doc 1.30 (May 08 2019) =============== @@ -41,7 +46,7 @@ Note that this is a nonmaintainer release and that tests are known to be broken. Changes - o 674163 : –   html-build.stamp rule broken for out-of-tree builds with absolute paths + o 674163 : html-build.stamp rule broken for out-of-tree builds with absolute paths o 795744 : Too much escaped string - " & lt;child > " in description of " GtkOverlay as GtkBuildable " section o 796011 : Crash in ScanDirectory caused by overlooked use of renamed `dir` variable o 796012 : Several places in rebase.py incorrectly use `match.groups(1)` instead of `match.group(1)`, one causes a crash diff --git a/aclocal.m4 b/aclocal.m4 index 66f3a3b..5fd2804 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.15.1 -*- Autoconf -*- +# generated automatically by aclocal 1.16.1 -*- Autoconf -*- -# Copyright (C) 1996-2017 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -20,9 +20,9 @@ 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'.])]) -dnl pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- -dnl serial 11 (pkg-config-0.29) -dnl +# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +# serial 11 (pkg-config-0.29.1) + dnl Copyright © 2004 Scott James Remnant . dnl Copyright © 2012-2015 Dan Nicholson dnl @@ -63,7 +63,7 @@ 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]) +[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 @@ -296,6 +296,74 @@ AS_VAR_COPY([$1], [pkg_cv_][$1]) AS_VAR_IF([$1], [""], [$5], [$4])dnl ])dnl PKG_CHECK_VAR +dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND], +dnl [DESCRIPTION], [DEFAULT]) +dnl ------------------------------------------ +dnl +dnl Prepare a "--with-" configure option using the lowercase +dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and +dnl PKG_CHECK_MODULES in a single macro. +AC_DEFUN([PKG_WITH_MODULES], +[ +m4_pushdef([with_arg], m4_tolower([$1])) + +m4_pushdef([description], + [m4_default([$5], [build with ]with_arg[ support])]) + +m4_pushdef([def_arg], [m4_default([$6], [auto])]) +m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes]) +m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no]) + +m4_case(def_arg, + [yes],[m4_pushdef([with_without], [--without-]with_arg)], + [m4_pushdef([with_without],[--with-]with_arg)]) + +AC_ARG_WITH(with_arg, + AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),, + [AS_TR_SH([with_]with_arg)=def_arg]) + +AS_CASE([$AS_TR_SH([with_]with_arg)], + [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)], + [auto],[PKG_CHECK_MODULES([$1],[$2], + [m4_n([def_action_if_found]) $3], + [m4_n([def_action_if_not_found]) $4])]) + +m4_popdef([with_arg]) +m4_popdef([description]) +m4_popdef([def_arg]) + +])dnl PKG_WITH_MODULES + +dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [DESCRIPTION], [DEFAULT]) +dnl ----------------------------------------------- +dnl +dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES +dnl check._[VARIABLE-PREFIX] is exported as make variable. +AC_DEFUN([PKG_HAVE_WITH_MODULES], +[ +PKG_WITH_MODULES([$1],[$2],,,[$3],[$4]) + +AM_CONDITIONAL([HAVE_][$1], + [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"]) +])dnl PKG_HAVE_WITH_MODULES + +dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [DESCRIPTION], [DEFAULT]) +dnl ------------------------------------------------------ +dnl +dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after +dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make +dnl and preprocessor variable. +AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES], +[ +PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4]) + +AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"], + [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])]) +])dnl PKG_HAVE_DEFINE_WITH_MODULES + AC_DEFUN([YELP_HELP_INIT], [ AC_REQUIRE([AC_PROG_LN_S]) @@ -478,13 +546,7 @@ install-help: $(_HELP_LC_FILES) elif test "x$$lc" != "xC"; then \ if test "x$(YELP_LC_MEDIA_LINKS)" != "x"; then \ echo "$(LN_S) -f $(HELP_DIR)/C/$(HELP_ID)/$$f $$helpdir$$f"; \ - dname="$$f"; \ - pars="../"; \ - while test "$$dname" != "." -a "$$dname" != "/"; do \ - pars="../$$pars"; \ - dname=$$(dirname "$$dname"); \ - done; \ - $(LN_S) -f $$pars"C/$(HELP_ID)/$$f" "$$helpdir$$f" || exit 1; \ + $(LN_S) -f "$(HELP_DIR)/C/$(HELP_ID)/$$f" "$$helpdir$$f" || exit 1; \ fi; \ fi; \ done; \ @@ -516,7 +578,7 @@ AC_SUBST([YELP_HELP_RULES]) m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([YELP_HELP_RULES])]) ]) -# Copyright (C) 2002-2017 Free Software Foundation, Inc. +# Copyright (C) 2002-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -528,10 +590,10 @@ m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([YELP_HELP_RULES])]) # generated from the m4 files accompanying Automake X.Y. # (This private macro should not be called outside this file.) AC_DEFUN([AM_AUTOMAKE_VERSION], -[am__api_version='1.15' +[am__api_version='1.16' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.15.1], [], +m4_if([$1], [1.16.1], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -547,14 +609,14 @@ m4_define([_AM_AUTOCONF_VERSION], []) # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.15.1])dnl +[AM_AUTOMAKE_VERSION([1.16.1])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001-2017 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -606,7 +668,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd` # AM_CONDITIONAL -*- Autoconf -*- -# Copyright (C) 1997-2017 Free Software Foundation, Inc. +# Copyright (C) 1997-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -637,7 +699,7 @@ AC_CONFIG_COMMANDS_PRE( Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999-2017 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -828,13 +890,12 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999-2017 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 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_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], @@ -842,49 +903,41 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac + # TODO: see whether this extra hack can be removed once we start + # requiring Autoconf 2.70 or later. + AS_CASE([$CONFIG_FILES], + [*\'*], [eval set x "$CONFIG_FILES"], + [*], [set x $CONFIG_FILES]) shift - for mf + # Used to flag and report bootstrapping failures. + am_rc=0 + for am_mf do # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line + am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile which includes + # dependency-tracking related rules and includes. + # Grep'ing the whole file directly is not great: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`AS_DIRNAME("$mf")` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "$am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`AS_DIRNAME(["$file"])` - AS_MKDIR_P([$dirpart/$fdir]) - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done + sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ + || continue + am_dirpart=`AS_DIRNAME(["$am_mf"])` + am_filepart=`AS_BASENAME(["$am_mf"])` + AM_RUN_LOG([cd "$am_dirpart" \ + && sed -e '/# am--include-marker/d' "$am_filepart" \ + | $MAKE -f - am--depfiles]) || am_rc=$? done + if test $am_rc -ne 0; then + AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments + for automatic dependency tracking. Try re-running configure with the + '--disable-dependency-tracking' option to at least be able to build + the package (albeit without support for automatic dependency tracking).]) + fi + AS_UNSET([am_dirpart]) + AS_UNSET([am_filepart]) + AS_UNSET([am_mf]) + AS_UNSET([am_rc]) + rm -f conftest-deps.mk } ])# _AM_OUTPUT_DEPENDENCY_COMMANDS @@ -893,18 +946,17 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # -# This code is only required when automatic dependency tracking -# is enabled. FIXME. This creates each '.P' file that we will -# need in order to bootstrap the dependency handling code. +# This code is only required when automatic dependency tracking is enabled. +# This creates each '.Po' and '.Plo' makefile fragment that we'll need in +# order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], - [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) -]) + [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])]) # Do all the work for Automake. -*- Autoconf -*- -# Copyright (C) 1996-2017 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -991,8 +1043,8 @@ AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl AC_REQUIRE([AC_PROG_MKDIR_P])dnl # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: -# -# +# +# AC_SUBST([mkdir_p], ['$(MKDIR_P)']) # We need awk for the "check" target (and possibly the TAP driver). The # system "awk" is bad on some platforms. @@ -1059,7 +1111,7 @@ END Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . +that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM @@ -1101,7 +1153,7 @@ for _am_header in $config_headers :; do done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001-2017 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1122,7 +1174,7 @@ if test x"${install_sh+set}" != xset; then fi AC_SUBST([install_sh])]) -# Copyright (C) 2003-2017 Free Software Foundation, Inc. +# Copyright (C) 2003-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1144,7 +1196,7 @@ AC_SUBST([am__leading_dot])]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering -# Copyright (C) 1996-2017 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1179,7 +1231,7 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) # Check to see how 'make' treats includes. -*- Autoconf -*- -# Copyright (C) 2001-2017 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1187,49 +1239,42 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) # AM_MAKE_INCLUDE() # ----------------- -# Check to see how make treats includes. +# Check whether make has an 'include' directive that can support all +# the idioms we need for our automatic dependency tracking code. AC_DEFUN([AM_MAKE_INCLUDE], -[am_make=${MAKE-make} -cat > confinc << 'END' +[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive]) +cat > confinc.mk << 'END' am__doit: - @echo this is the am__doit target + @echo this is the am__doit target >confinc.out .PHONY: am__doit END -# If we don't find an include directive, just comment out the code. -AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= -_am_result=none -# First try GNU make style include. -echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. -case `$am_make -s -f confmf 2> /dev/null` in #( -*the\ am__doit\ target*) - am__include=include - am__quote= - _am_result=GNU - ;; -esac -# Now try BSD make style include. -if test "$am__include" = "#"; then - echo '.include "confinc"' > confmf - case `$am_make -s -f confmf 2> /dev/null` in #( - *the\ am__doit\ target*) - am__include=.include - am__quote="\"" - _am_result=BSD - ;; - esac -fi -AC_SUBST([am__include]) -AC_SUBST([am__quote]) -AC_MSG_RESULT([$_am_result]) -rm -f confinc confmf -]) +# BSD make does it like this. +echo '.include "confinc.mk" # ignored' > confmf.BSD +# Other make implementations (GNU, Solaris 10, AIX) do it like this. +echo 'include confinc.mk # ignored' > confmf.GNU +_am_result=no +for s in GNU BSD; do + AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out]) + AS_CASE([$?:`cat confinc.out 2>/dev/null`], + ['0:this is the am__doit target'], + [AS_CASE([$s], + [BSD], [am__include='.include' am__quote='"'], + [am__include='include' am__quote=''])]) + if test "$am__include" != "#"; then + _am_result="yes ($s style)" + break + fi +done +rm -f confinc.* confmf.* +AC_MSG_RESULT([${_am_result}]) +AC_SUBST([am__include])]) +AC_SUBST([am__quote])]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- -# Copyright (C) 1997-2017 Free Software Foundation, Inc. +# Copyright (C) 1997-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1268,7 +1313,7 @@ fi # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001-2017 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1297,7 +1342,7 @@ AC_DEFUN([_AM_SET_OPTIONS], AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) -# Copyright (C) 1999-2017 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1344,7 +1389,7 @@ AC_LANG_POP([C])]) # For backward compatibility. AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) -# Copyright (C) 1999-2017 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1377,10 +1422,12 @@ AC_DEFUN([AM_PATH_PYTHON], [ dnl Find a Python interpreter. Python versions prior to 2.0 are not dnl supported. (2.0 was released on October 16, 2000). - dnl FIXME: Remove the need to hard-code Python versions here. m4_define_default([_AM_PYTHON_INTERPRETER_LIST], -[python python2 python3 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2.7 dnl - python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0]) +[python python2 python3 dnl + python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 dnl + python3.2 python3.1 python3.0 dnl + python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 dnl + python2.0]) AC_ARG_VAR([PYTHON], [the Python interpreter]) @@ -1580,7 +1627,7 @@ for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]] sys.exit(sys.hexversion < minverhex)" AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) -# Copyright (C) 2001-2017 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1599,7 +1646,7 @@ AC_DEFUN([AM_RUN_LOG], # Check to make sure that the build environment is sane. -*- Autoconf -*- -# Copyright (C) 1996-2017 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1680,7 +1727,7 @@ AC_CONFIG_COMMANDS_PRE( rm -f conftest.file ]) -# Copyright (C) 2009-2017 Free Software Foundation, Inc. +# Copyright (C) 2009-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1740,7 +1787,7 @@ AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001-2017 Free Software Foundation, Inc. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1768,7 +1815,7 @@ fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006-2017 Free Software Foundation, Inc. +# Copyright (C) 2006-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1787,7 +1834,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004-2017 Free Software Foundation, Inc. +# Copyright (C) 2004-2018 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, diff --git a/build-aux/compile b/build-aux/compile index a85b723..99e5052 100755 --- a/build-aux/compile +++ b/build-aux/compile @@ -1,9 +1,9 @@ #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2012-10-14.11; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2014 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 Free Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify @@ -17,7 +17,7 @@ scriptversion=2012-10-14.11; # UTC # 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, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -255,7 +255,8 @@ EOF echo "compile $scriptversion" exit $? ;; - cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ + icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac @@ -339,9 +340,9 @@ exit $ret # Local Variables: # mode: shell-script # sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff --git a/build-aux/config.guess b/build-aux/config.guess index 31e01ef..b33c9e8 100755 --- a/build-aux/config.guess +++ b/build-aux/config.guess @@ -1,8 +1,8 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright 1992-2017 Free Software Foundation, Inc. +# Copyright 1992-2018 Free Software Foundation, Inc. -timestamp='2017-11-07' +timestamp='2018-08-29' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -50,7 +50,7 @@ version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. -Copyright 1992-2017 Free Software Foundation, Inc. +Copyright 1992-2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -84,8 +84,6 @@ if test $# != 0; then exit 1 fi -trap 'exit 1' 1 2 15 - # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a @@ -96,34 +94,39 @@ trap 'exit 1' 1 2 15 # Portable tmp directory creation inspired by the Autoconf team. -set_cc_for_build=' -trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -: ${TMPDIR=/tmp} ; - { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || - { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || - { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || - { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -dummy=$tmp/dummy ; -tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -case $CC_FOR_BUILD,$HOST_CC,$CC in - ,,) echo "int x;" > $dummy.c ; - for c in cc gcc c89 c99 ; do - if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then - CC_FOR_BUILD="$c"; break ; - fi ; - done ; - if test x"$CC_FOR_BUILD" = x ; then - CC_FOR_BUILD=no_compiler_found ; - fi - ;; - ,,*) CC_FOR_BUILD=$CC ;; - ,*,*) CC_FOR_BUILD=$HOST_CC ;; -esac ; set_cc_for_build= ;' +tmp= +# shellcheck disable=SC2172 +trap 'test -z "$tmp" || rm -fr "$tmp"' 1 2 13 15 +trap 'exitcode=$?; test -z "$tmp" || rm -fr "$tmp"; exit $exitcode' 0 + +set_cc_for_build() { + : "${TMPDIR=/tmp}" + # shellcheck disable=SC2039 + { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || + { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || + { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || + { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } + dummy=$tmp/dummy + case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in + ,,) echo "int x;" > "$dummy.c" + for driver in cc gcc c89 c99 ; do + if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then + CC_FOR_BUILD="$driver" + break + fi + done + if test x"$CC_FOR_BUILD" = x ; then + CC_FOR_BUILD=no_compiler_found + fi + ;; + ,,*) CC_FOR_BUILD=$CC ;; + ,*,*) CC_FOR_BUILD=$HOST_CC ;; + esac +} # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) -if (test -f /.attbin/uname) >/dev/null 2>&1 ; then +if test -f /.attbin/uname ; then PATH=$PATH:/.attbin ; export PATH fi @@ -132,14 +135,14 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown -case "${UNAME_SYSTEM}" in +case "$UNAME_SYSTEM" in Linux|GNU|GNU/*) # If the system lacks a compiler, then just pick glibc. # We could probably try harder. LIBC=gnu - eval $set_cc_for_build - cat <<-EOF > $dummy.c + set_cc_for_build + cat <<-EOF > "$dummy.c" #include #if defined(__UCLIBC__) LIBC=uclibc @@ -149,13 +152,20 @@ Linux|GNU|GNU/*) LIBC=gnu #endif EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` + eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`" + + # If ldd exists, use it to detect musl libc. + if command -v ldd >/dev/null && \ + ldd --version 2>&1 | grep -q ^musl + then + LIBC=musl + fi ;; esac # Note: order is significant - the case branches are not exclusive. -case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in +case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, @@ -169,30 +179,30 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # portion of the name. We always set it to "unknown". sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ - /sbin/$sysctl 2>/dev/null || \ - /usr/sbin/$sysctl 2>/dev/null || \ + "/sbin/$sysctl" 2>/dev/null || \ + "/usr/sbin/$sysctl" 2>/dev/null || \ echo unknown)` - case "${UNAME_MACHINE_ARCH}" in + case "$UNAME_MACHINE_ARCH" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; sh5el) machine=sh5le-unknown ;; earmv*) - arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` - endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` - machine=${arch}${endian}-unknown + arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` + endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` + machine="${arch}${endian}"-unknown ;; - *) machine=${UNAME_MACHINE_ARCH}-unknown ;; + *) machine="$UNAME_MACHINE_ARCH"-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently (or will in the future) and ABI. - case "${UNAME_MACHINE_ARCH}" in + case "$UNAME_MACHINE_ARCH" in earm*) os=netbsdelf ;; arm*|i386|m68k|ns32k|sh3*|sparc|vax) - eval $set_cc_for_build + set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ELF__ then @@ -208,10 +218,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in ;; esac # Determine ABI tags. - case "${UNAME_MACHINE_ARCH}" in + case "$UNAME_MACHINE_ARCH" in earm*) expr='s/^earmv[0-9]/-eabi/;s/eb$//' - abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` + abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` ;; esac # The OS release @@ -219,52 +229,55 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. - case "${UNAME_VERSION}" in + case "$UNAME_VERSION" in Debian*) release='-gnu' ;; *) - release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2` + release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. - echo "${machine}-${os}${release}${abi}" + echo "$machine-${os}${release}${abi-}" exit ;; *:Bitrig:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} + echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE" exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} + echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE" exit ;; *:LibertyBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` - echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} + echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE" exit ;; *:MidnightBSD:*:*) - echo ${UNAME_MACHINE}-unknown-midnightbsd${UNAME_RELEASE} + echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE" exit ;; *:ekkoBSD:*:*) - echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} + echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE" exit ;; *:SolidBSD:*:*) - echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} + echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE" exit ;; macppc:MirBSD:*:*) - echo powerpc-unknown-mirbsd${UNAME_RELEASE} + echo powerpc-unknown-mirbsd"$UNAME_RELEASE" exit ;; *:MirBSD:*:*) - echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} + echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE" exit ;; *:Sortix:*:*) - echo ${UNAME_MACHINE}-unknown-sortix + echo "$UNAME_MACHINE"-unknown-sortix exit ;; *:Redox:*:*) - echo ${UNAME_MACHINE}-unknown-redox + echo "$UNAME_MACHINE"-unknown-redox exit ;; + mips:OSF1:*.*) + echo mips-dec-osf1 + exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) @@ -316,7 +329,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` + echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`" # Reset EXIT trap before exiting to avoid spurious non-zero exit code. exitcode=$? trap '' 0 @@ -325,10 +338,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in echo m68k-unknown-sysv4 exit ;; *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos + echo "$UNAME_MACHINE"-unknown-amigaos exit ;; *:[Mm]orph[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-morphos + echo "$UNAME_MACHINE"-unknown-morphos exit ;; *:OS/390:*:*) echo i370-ibm-openedition @@ -340,7 +353,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in echo powerpc-ibm-os400 exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} + echo arm-acorn-riscix"$UNAME_RELEASE" exit ;; arm*:riscos:*:*|arm*:RISCOS:*:*) echo arm-unknown-riscos @@ -367,38 +380,33 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in sparc) echo sparc-icl-nx7; exit ;; esac ;; s390x:SunOS:*:*) - echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" exit ;; sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" exit ;; i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) - echo i386-pc-auroraux${UNAME_RELEASE} + echo i386-pc-auroraux"$UNAME_RELEASE" exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - eval $set_cc_for_build - SUN_ARCH=i386 - # If there is a compiler, see if it is configured for 64-bit objects. - # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. - # This test works for both compilers. - if [ "$CC_FOR_BUILD" != no_compiler_found ]; then - if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ - (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ - grep IS_64BIT_ARCH >/dev/null - then - SUN_ARCH=x86_64 - fi - fi - echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + UNAME_REL="`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`" + case `isainfo -b` in + 32) + echo i386-pc-solaris2"$UNAME_REL" + ;; + 64) + echo x86_64-pc-solaris2"$UNAME_REL" + ;; + esac exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; sun4*:SunOS:*:*) case "`/usr/bin/arch -k`" in @@ -407,25 +415,25 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` + echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`" exit ;; sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} + echo m68k-sun-sunos"$UNAME_RELEASE" exit ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3 + test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 case "`/bin/arch`" in sun3) - echo m68k-sun-sunos${UNAME_RELEASE} + echo m68k-sun-sunos"$UNAME_RELEASE" ;; sun4) - echo sparc-sun-sunos${UNAME_RELEASE} + echo sparc-sun-sunos"$UNAME_RELEASE" ;; esac exit ;; aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} + echo sparc-auspex-sunos"$UNAME_RELEASE" exit ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not @@ -436,44 +444,44 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} + echo m68k-atari-mint"$UNAME_RELEASE" exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} + echo m68k-atari-mint"$UNAME_RELEASE" exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} + echo m68k-atari-mint"$UNAME_RELEASE" exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} + echo m68k-milan-mint"$UNAME_RELEASE" exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} + echo m68k-hades-mint"$UNAME_RELEASE" exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} + echo m68k-unknown-mint"$UNAME_RELEASE" exit ;; m68k:machten:*:*) - echo m68k-apple-machten${UNAME_RELEASE} + echo m68k-apple-machten"$UNAME_RELEASE" exit ;; powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} + echo powerpc-apple-machten"$UNAME_RELEASE" exit ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit ;; RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} + echo mips-dec-ultrix"$UNAME_RELEASE" exit ;; VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} + echo vax-dec-ultrix"$UNAME_RELEASE" exit ;; 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} + echo clipper-intergraph-clix"$UNAME_RELEASE" exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { @@ -494,11 +502,11 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in exit (-1); } EOF - $CC_FOR_BUILD -o $dummy $dummy.c && - dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && - SYSTEM_NAME=`$dummy $dummyarg` && + $CC_FOR_BUILD -o "$dummy" "$dummy.c" && + dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && + SYSTEM_NAME=`"$dummy" "$dummyarg"` && { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos${UNAME_RELEASE} + echo mips-mips-riscos"$UNAME_RELEASE" exit ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax @@ -524,17 +532,17 @@ EOF AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ] then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ - [ ${TARGET_BINARY_INTERFACE}x = x ] + if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \ + [ "$TARGET_BINARY_INTERFACE"x = x ] then - echo m88k-dg-dgux${UNAME_RELEASE} + echo m88k-dg-dgux"$UNAME_RELEASE" else - echo m88k-dg-dguxbcs${UNAME_RELEASE} + echo m88k-dg-dguxbcs"$UNAME_RELEASE" fi else - echo i586-dg-dgux${UNAME_RELEASE} + echo i586-dg-dgux"$UNAME_RELEASE" fi exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) @@ -551,7 +559,7 @@ EOF echo m68k-tektronix-bsd exit ;; *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` + echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`" exit ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id @@ -563,14 +571,14 @@ EOF if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" fi - echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} + echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV" exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #include main() @@ -581,7 +589,7 @@ EOF exit(0); } EOF - if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` + if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` then echo "$SYSTEM_NAME" else @@ -595,7 +603,7 @@ EOF exit ;; *:AIX:*:[4567]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` - if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then + if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc @@ -604,9 +612,9 @@ EOF IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` else - IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} + IBM_REV="$UNAME_VERSION.$UNAME_RELEASE" fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} + echo "$IBM_ARCH"-ibm-aix"$IBM_REV" exit ;; *:AIX:*:*) echo rs6000-ibm-aix @@ -615,7 +623,7 @@ EOF echo romp-ibm-bsd4.4 exit ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to + echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to exit ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx @@ -630,28 +638,28 @@ EOF echo m68k-hp-bsd4.4 exit ;; 9000/[34678]??:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in + HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` + case "$UNAME_MACHINE" in 9000/31?) HP_ARCH=m68000 ;; 9000/[34]??) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in + case "$sc_cpu_version" in 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in + case "$sc_kernel_bits" in 32) HP_ARCH=hppa2.0n ;; 64) HP_ARCH=hppa2.0w ;; '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 esac ;; esac fi - if [ "${HP_ARCH}" = "" ]; then - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + if [ "$HP_ARCH" = "" ]; then + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #define _HPUX_SOURCE #include @@ -684,13 +692,13 @@ EOF exit (0); } EOF - (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` + (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac - if [ ${HP_ARCH} = hppa2.0w ] + if [ "$HP_ARCH" = hppa2.0w ] then - eval $set_cc_for_build + set_cc_for_build # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler @@ -709,15 +717,15 @@ EOF HP_ARCH=hppa64 fi fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} + echo "$HP_ARCH"-hp-hpux"$HPUX_REV" exit ;; ia64:HP-UX:*:*) - HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - echo ia64-hp-hpux${HPUX_REV} + HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'` + echo ia64-hp-hpux"$HPUX_REV" exit ;; 3050*:HI-UX:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #include int main () @@ -742,7 +750,7 @@ EOF exit (0); } EOF - $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && + $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && { echo "$SYSTEM_NAME"; exit; } echo unknown-hitachi-hiuxwe2 exit ;; @@ -763,9 +771,9 @@ EOF exit ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk + echo "$UNAME_MACHINE"-unknown-osf1mk else - echo ${UNAME_MACHINE}-unknown-osf1 + echo "$UNAME_MACHINE"-unknown-osf1 fi exit ;; parisc*:Lites*:*:*) @@ -790,109 +798,120 @@ EOF echo c4-convex-bsd exit ;; CRAY*Y-MP:*:*:*) - echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ + echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit ;; CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*T3E:*:*:*) - echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*SV1:*:*:*) - echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; *:UNICOS/mp:*:*) - echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/' exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` + FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE" exit ;; sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} + echo sparc-unknown-bsdi"$UNAME_RELEASE" exit ;; *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} + echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE" + exit ;; + arm:FreeBSD:*:*) + UNAME_PROCESSOR=`uname -p` + set_cc_for_build + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabi + else + echo "${UNAME_PROCESSOR}"-unknown-freebsd"`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`"-gnueabihf + fi exit ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`/usr/bin/uname -p` - case ${UNAME_PROCESSOR} in + case "$UNAME_PROCESSOR" in amd64) UNAME_PROCESSOR=x86_64 ;; i386) UNAME_PROCESSOR=i586 ;; esac - echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" exit ;; i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin + echo "$UNAME_MACHINE"-pc-cygwin exit ;; *:MINGW64*:*) - echo ${UNAME_MACHINE}-pc-mingw64 + echo "$UNAME_MACHINE"-pc-mingw64 exit ;; *:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 + echo "$UNAME_MACHINE"-pc-mingw32 exit ;; *:MSYS*:*) - echo ${UNAME_MACHINE}-pc-msys + echo "$UNAME_MACHINE"-pc-msys exit ;; i*:PW*:*) - echo ${UNAME_MACHINE}-pc-pw32 + echo "$UNAME_MACHINE"-pc-pw32 exit ;; *:Interix*:*) - case ${UNAME_MACHINE} in + case "$UNAME_MACHINE" in x86) - echo i586-pc-interix${UNAME_RELEASE} + echo i586-pc-interix"$UNAME_RELEASE" exit ;; authenticamd | genuineintel | EM64T) - echo x86_64-unknown-interix${UNAME_RELEASE} + echo x86_64-unknown-interix"$UNAME_RELEASE" exit ;; IA64) - echo ia64-unknown-interix${UNAME_RELEASE} + echo ia64-unknown-interix"$UNAME_RELEASE" exit ;; esac ;; i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin + echo "$UNAME_MACHINE"-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) echo x86_64-unknown-cygwin exit ;; prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`" exit ;; *:GNU:*:*) # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` + echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`" exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland - echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} + echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC" exit ;; - i*86:Minix:*:*) - echo ${UNAME_MACHINE}-pc-minix + *:Minix:*:*) + echo "$UNAME_MACHINE"-unknown-minix exit ;; aarch64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; aarch64_be:Linux:*:*) UNAME_MACHINE=aarch64_be - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in @@ -906,63 +925,63 @@ EOF esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC=gnulibc1 ; fi - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; arc:Linux:*:* | arceb:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; arm*:Linux:*:*) - eval $set_cc_for_build + set_cc_for_build if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_EABI__ then - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" else if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | grep -q __ARM_PCS_VFP then - echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi else - echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf fi fi exit ;; avr32*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; cris:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-${LIBC} + echo "$UNAME_MACHINE"-axis-linux-"$LIBC" exit ;; crisv32:Linux:*:*) - echo ${UNAME_MACHINE}-axis-linux-${LIBC} + echo "$UNAME_MACHINE"-axis-linux-"$LIBC" exit ;; e2k:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; frv:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; hexagon:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; i*86:Linux:*:*) - echo ${UNAME_MACHINE}-pc-linux-${LIBC} + echo "$UNAME_MACHINE"-pc-linux-"$LIBC" exit ;; ia64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; k1om:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; m32r*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; m68*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; mips:Linux:*:* | mips64:Linux:*:*) - eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + set_cc_for_build + sed 's/^ //' << EOF > "$dummy.c" #undef CPU #undef ${UNAME_MACHINE} #undef ${UNAME_MACHINE}el @@ -976,70 +995,70 @@ EOF #endif #endif EOF - eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` - test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } + eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`" + test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; } ;; mips64el:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; openrisc*:Linux:*:*) - echo or1k-unknown-linux-${LIBC} + echo or1k-unknown-linux-"$LIBC" exit ;; or32:Linux:*:* | or1k*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; padre:Linux:*:*) - echo sparc-unknown-linux-${LIBC} + echo sparc-unknown-linux-"$LIBC" exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) - echo hppa64-unknown-linux-${LIBC} + echo hppa64-unknown-linux-"$LIBC" exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in - PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; - PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; - *) echo hppa-unknown-linux-${LIBC} ;; + PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;; + PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;; + *) echo hppa-unknown-linux-"$LIBC" ;; esac exit ;; ppc64:Linux:*:*) - echo powerpc64-unknown-linux-${LIBC} + echo powerpc64-unknown-linux-"$LIBC" exit ;; ppc:Linux:*:*) - echo powerpc-unknown-linux-${LIBC} + echo powerpc-unknown-linux-"$LIBC" exit ;; ppc64le:Linux:*:*) - echo powerpc64le-unknown-linux-${LIBC} + echo powerpc64le-unknown-linux-"$LIBC" exit ;; ppcle:Linux:*:*) - echo powerpcle-unknown-linux-${LIBC} + echo powerpcle-unknown-linux-"$LIBC" exit ;; riscv32:Linux:*:* | riscv64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; s390:Linux:*:* | s390x:Linux:*:*) - echo ${UNAME_MACHINE}-ibm-linux-${LIBC} + echo "$UNAME_MACHINE"-ibm-linux-"$LIBC" exit ;; sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; sh*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; tile*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; vax:Linux:*:*) - echo ${UNAME_MACHINE}-dec-linux-${LIBC} + echo "$UNAME_MACHINE"-dec-linux-"$LIBC" exit ;; x86_64:Linux:*:*) - echo ${UNAME_MACHINE}-pc-linux-${LIBC} + echo "$UNAME_MACHINE"-pc-linux-"$LIBC" exit ;; xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + echo "$UNAME_MACHINE"-unknown-linux-"$LIBC" exit ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. @@ -1053,34 +1072,34 @@ EOF # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} + echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION" exit ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. - echo ${UNAME_MACHINE}-pc-os2-emx + echo "$UNAME_MACHINE"-pc-os2-emx exit ;; i*86:XTS-300:*:STOP) - echo ${UNAME_MACHINE}-unknown-stop + echo "$UNAME_MACHINE"-unknown-stop exit ;; i*86:atheos:*:*) - echo ${UNAME_MACHINE}-unknown-atheos + echo "$UNAME_MACHINE"-unknown-atheos exit ;; i*86:syllable:*:*) - echo ${UNAME_MACHINE}-pc-syllable + echo "$UNAME_MACHINE"-pc-syllable exit ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) - echo i386-unknown-lynxos${UNAME_RELEASE} + echo i386-unknown-lynxos"$UNAME_RELEASE" exit ;; i*86:*DOS:*:*) - echo ${UNAME_MACHINE}-pc-msdosdjgpp + echo "$UNAME_MACHINE"-pc-msdosdjgpp exit ;; i*86:*:4.*:*) - UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` + UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} + echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL" else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL" fi exit ;; i*86:*:5:[678]*) @@ -1090,12 +1109,12 @@ EOF *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac - echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} + echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}" exit ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 @@ -1105,9 +1124,9 @@ EOF && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL + echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL" else - echo ${UNAME_MACHINE}-pc-sysv32 + echo "$UNAME_MACHINE"-pc-sysv32 fi exit ;; pc:*:*:*) @@ -1127,9 +1146,9 @@ EOF exit ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 + echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 + echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4 fi exit ;; mini*:CTIX:SYS*5:*) @@ -1149,9 +1168,9 @@ EOF test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; @@ -1160,28 +1179,28 @@ EOF test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ - && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; + && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} + echo m68k-unknown-lynxos"$UNAME_RELEASE" exit ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit ;; TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} + echo sparc-unknown-lynxos"$UNAME_RELEASE" exit ;; rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} + echo rs6000-unknown-lynxos"$UNAME_RELEASE" exit ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) - echo powerpc-unknown-lynxos${UNAME_RELEASE} + echo powerpc-unknown-lynxos"$UNAME_RELEASE" exit ;; SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} + echo mips-dde-sysv"$UNAME_RELEASE" exit ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 @@ -1192,7 +1211,7 @@ EOF *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` - echo ${UNAME_MACHINE}-sni-sysv4 + echo "$UNAME_MACHINE"-sni-sysv4 else echo ns32k-sni-sysv fi @@ -1212,23 +1231,23 @@ EOF exit ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. - echo ${UNAME_MACHINE}-stratus-vos + echo "$UNAME_MACHINE"-stratus-vos exit ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos exit ;; mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} + echo m68k-apple-aux"$UNAME_RELEASE" exit ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} + echo mips-nec-sysv"$UNAME_RELEASE" else - echo mips-unknown-sysv${UNAME_RELEASE} + echo mips-unknown-sysv"$UNAME_RELEASE" fi exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. @@ -1247,39 +1266,39 @@ EOF echo x86_64-unknown-haiku exit ;; SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} + echo sx4-nec-superux"$UNAME_RELEASE" exit ;; SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} + echo sx5-nec-superux"$UNAME_RELEASE" exit ;; SX-6:SUPER-UX:*:*) - echo sx6-nec-superux${UNAME_RELEASE} + echo sx6-nec-superux"$UNAME_RELEASE" exit ;; SX-7:SUPER-UX:*:*) - echo sx7-nec-superux${UNAME_RELEASE} + echo sx7-nec-superux"$UNAME_RELEASE" exit ;; SX-8:SUPER-UX:*:*) - echo sx8-nec-superux${UNAME_RELEASE} + echo sx8-nec-superux"$UNAME_RELEASE" exit ;; SX-8R:SUPER-UX:*:*) - echo sx8r-nec-superux${UNAME_RELEASE} + echo sx8r-nec-superux"$UNAME_RELEASE" exit ;; SX-ACE:SUPER-UX:*:*) - echo sxace-nec-superux${UNAME_RELEASE} + echo sxace-nec-superux"$UNAME_RELEASE" exit ;; Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} + echo powerpc-apple-rhapsody"$UNAME_RELEASE" exit ;; *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE" exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown - eval $set_cc_for_build + set_cc_for_build if test "$UNAME_PROCESSOR" = unknown ; then UNAME_PROCESSOR=powerpc fi - if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then + if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then if [ "$CC_FOR_BUILD" != no_compiler_found ]; then if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ @@ -1307,7 +1326,7 @@ EOF # that Apple uses in portable devices. UNAME_PROCESSOR=x86_64 fi - echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} + echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE" exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` @@ -1315,22 +1334,25 @@ EOF UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi - echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} + echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE" exit ;; *:QNX:*:4*) echo i386-pc-qnx exit ;; NEO-*:NONSTOP_KERNEL:*:*) - echo neo-tandem-nsk${UNAME_RELEASE} + echo neo-tandem-nsk"$UNAME_RELEASE" exit ;; NSE-*:NONSTOP_KERNEL:*:*) - echo nse-tandem-nsk${UNAME_RELEASE} + echo nse-tandem-nsk"$UNAME_RELEASE" exit ;; NSR-*:NONSTOP_KERNEL:*:*) - echo nsr-tandem-nsk${UNAME_RELEASE} + echo nsr-tandem-nsk"$UNAME_RELEASE" + exit ;; + NSV-*:NONSTOP_KERNEL:*:*) + echo nsv-tandem-nsk"$UNAME_RELEASE" exit ;; NSX-*:NONSTOP_KERNEL:*:*) - echo nsx-tandem-nsk${UNAME_RELEASE} + echo nsx-tandem-nsk"$UNAME_RELEASE" exit ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux @@ -1339,18 +1361,19 @@ EOF echo bs2000-siemens-sysv exit ;; DS/*:UNIX_System_V:*:*) - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE" exit ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. + # shellcheck disable=SC2154 if test "$cputype" = 386; then UNAME_MACHINE=i386 else UNAME_MACHINE="$cputype" fi - echo ${UNAME_MACHINE}-unknown-plan9 + echo "$UNAME_MACHINE"-unknown-plan9 exit ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 @@ -1371,14 +1394,14 @@ EOF echo pdp10-unknown-its exit ;; SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} + echo mips-sei-seiux"$UNAME_RELEASE" exit ;; *:DragonFly:*:*) - echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`" exit ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` - case "${UNAME_MACHINE}" in + case "$UNAME_MACHINE" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; V*) echo vax-dec-vms ; exit ;; @@ -1387,16 +1410,16 @@ EOF echo i386-pc-xenix exit ;; i*86:skyos:*:*) - echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'` + echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`" exit ;; i*86:rdos:*:*) - echo ${UNAME_MACHINE}-pc-rdos + echo "$UNAME_MACHINE"-pc-rdos exit ;; i*86:AROS:*:*) - echo ${UNAME_MACHINE}-pc-aros + echo "$UNAME_MACHINE"-pc-aros exit ;; x86_64:VMkernel:*:*) - echo ${UNAME_MACHINE}-unknown-esx + echo "$UNAME_MACHINE"-unknown-esx exit ;; amd64:Isilon\ OneFS:*:*) echo x86_64-unknown-onefs @@ -1405,7 +1428,7 @@ esac echo "$0: unable to guess system type" >&2 -case "${UNAME_MACHINE}:${UNAME_SYSTEM}" in +case "$UNAME_MACHINE:$UNAME_SYSTEM" in mips:Linux | mips64:Linux) # If we got here on MIPS GNU/Linux, output extra information. cat >&2 </dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` -UNAME_MACHINE = ${UNAME_MACHINE} -UNAME_RELEASE = ${UNAME_RELEASE} -UNAME_SYSTEM = ${UNAME_SYSTEM} -UNAME_VERSION = ${UNAME_VERSION} +UNAME_MACHINE = "$UNAME_MACHINE" +UNAME_RELEASE = "$UNAME_RELEASE" +UNAME_SYSTEM = "$UNAME_SYSTEM" +UNAME_VERSION = "$UNAME_VERSION" EOF exit 1 # Local variables: -# eval: (add-hook 'write-file-functions 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" diff --git a/build-aux/config.sub b/build-aux/config.sub index 00f68b8..b51fb8c 100755 --- a/build-aux/config.sub +++ b/build-aux/config.sub @@ -1,8 +1,8 @@ #! /bin/sh # Configuration validation subroutine script. -# Copyright 1992-2017 Free Software Foundation, Inc. +# Copyright 1992-2018 Free Software Foundation, Inc. -timestamp='2017-11-23' +timestamp='2018-08-29' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -67,7 +67,7 @@ Report bugs and patches to ." version="\ GNU config.sub ($timestamp) -Copyright 1992-2017 Free Software Foundation, Inc. +Copyright 1992-2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -94,7 +94,7 @@ while test $# -gt 0 ; do *local*) # First pass through any local machine types. - echo $1 + echo "$1" exit ;; * ) @@ -110,1251 +110,1159 @@ case $# in exit 1;; esac -# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). -# Here we must recognize all the valid KERNEL-OS combinations. -maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` -case $maybe_os in - nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ - knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ - kopensolaris*-gnu* | cloudabi*-eabi* | \ - storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; - android-linux) - os=-linux-android - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown - ;; - *) - basic_machine=`echo $1 | sed 's/-[^-]*$//'` - if [ $basic_machine != $1 ] - then os=`echo $1 | sed 's/.*-/-/'` - else os=; fi - ;; -esac +# Split fields of configuration type +IFS="-" read -r field1 field2 field3 field4 <&2 + exit 1 ;; - -lynx*) - os=-lynxos + *-*-*-*) + basic_machine=$field1-$field2 + os=$field3-$field4 ;; - -ptx*) - basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` + *-*-*) + # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two + # parts + maybe_os=$field2-$field3 + case $maybe_os in + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \ + | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \ + | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \ + | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \ + | storm-chaos* | os2-emx* | rtmk-nova*) + basic_machine=$field1 + os=$maybe_os + ;; + android-linux) + basic_machine=$field1-unknown + os=linux-android + ;; + *) + basic_machine=$field1-$field2 + os=$field3 + ;; + esac ;; - -psos*) - os=-psos + *-*) + # A lone config we happen to match not fitting any patern + case $field1-$field2 in + decstation-3100) + basic_machine=mips-dec + os= + ;; + *-*) + # Second component is usually, but not always the OS + case $field2 in + # Prevent following clause from handling this valid os + sun*os*) + basic_machine=$field1 + os=$field2 + ;; + # Manufacturers + dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \ + | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \ + | unicom* | ibm* | next | hp | isi* | apollo | altos* \ + | convergent* | ncr* | news | 32* | 3600* | 3100* \ + | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \ + | ultra | tti* | harris | dolphin | highlevel | gould \ + | cbm | ns | masscomp | apple | axis | knuth | cray \ + | microblaze* | sim | cisco \ + | oki | wec | wrs | winbond) + basic_machine=$field1-$field2 + os= + ;; + *) + basic_machine=$field1 + os=$field2 + ;; + esac + ;; + esac ;; - -mint | -mint[0-9]*) - basic_machine=m68k-atari - os=-mint + *) + # Convert single-component short-hands not valid as part of + # multi-component configurations. + case $field1 in + 386bsd) + basic_machine=i386-pc + os=bsd + ;; + a29khif) + basic_machine=a29k-amd + os=udi + ;; + adobe68k) + basic_machine=m68010-adobe + os=scout + ;; + alliant) + basic_machine=fx80-alliant + os= + ;; + altos | altos3068) + basic_machine=m68k-altos + os= + ;; + am29k) + basic_machine=a29k-none + os=bsd + ;; + amdahl) + basic_machine=580-amdahl + os=sysv + ;; + amiga) + basic_machine=m68k-unknown + os= + ;; + amigaos | amigados) + basic_machine=m68k-unknown + os=amigaos + ;; + amigaunix | amix) + basic_machine=m68k-unknown + os=sysv4 + ;; + apollo68) + basic_machine=m68k-apollo + os=sysv + ;; + apollo68bsd) + basic_machine=m68k-apollo + os=bsd + ;; + aros) + basic_machine=i386-pc + os=aros + ;; + aux) + basic_machine=m68k-apple + os=aux + ;; + balance) + basic_machine=ns32k-sequent + os=dynix + ;; + blackfin) + basic_machine=bfin-unknown + os=linux + ;; + cegcc) + basic_machine=arm-unknown + os=cegcc + ;; + convex-c1) + basic_machine=c1-convex + os=bsd + ;; + convex-c2) + basic_machine=c2-convex + os=bsd + ;; + convex-c32) + basic_machine=c32-convex + os=bsd + ;; + convex-c34) + basic_machine=c34-convex + os=bsd + ;; + convex-c38) + basic_machine=c38-convex + os=bsd + ;; + cray) + basic_machine=j90-cray + os=unicos + ;; + crds | unos) + basic_machine=m68k-crds + os= + ;; + da30) + basic_machine=m68k-da30 + os= + ;; + decstation | pmax | pmin | dec3100 | decstatn) + basic_machine=mips-dec + os= + ;; + delta88) + basic_machine=m88k-motorola + os=sysv3 + ;; + dicos) + basic_machine=i686-pc + os=dicos + ;; + djgpp) + basic_machine=i586-pc + os=msdosdjgpp + ;; + ebmon29k) + basic_machine=a29k-amd + os=ebmon + ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=ose + ;; + gmicro) + basic_machine=tron-gmicro + os=sysv + ;; + go32) + basic_machine=i386-pc + os=go32 + ;; + h8300hms) + basic_machine=h8300-hitachi + os=hms + ;; + h8300xray) + basic_machine=h8300-hitachi + os=xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=hms + ;; + harris) + basic_machine=m88k-harris + os=sysv3 + ;; + hp300) + basic_machine=m68k-hp + ;; + hp300bsd) + basic_machine=m68k-hp + os=bsd + ;; + hp300hpux) + basic_machine=m68k-hp + os=hpux + ;; + hppaosf) + basic_machine=hppa1.1-hp + os=osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=proelf + ;; + i386mach) + basic_machine=i386-mach + os=mach + ;; + vsta) + basic_machine=i386-pc + os=vsta + ;; + isi68 | isi) + basic_machine=m68k-isi + os=sysv + ;; + m68knommu) + basic_machine=m68k-unknown + os=linux + ;; + magnum | m3230) + basic_machine=mips-mips + os=sysv + ;; + merlin) + basic_machine=ns32k-utek + os=sysv + ;; + mingw64) + basic_machine=x86_64-pc + os=mingw64 + ;; + mingw32) + basic_machine=i686-pc + os=mingw32 + ;; + mingw32ce) + basic_machine=arm-unknown + os=mingw32ce + ;; + monitor) + basic_machine=m68k-rom68k + os=coff + ;; + morphos) + basic_machine=powerpc-unknown + os=morphos + ;; + moxiebox) + basic_machine=moxie-unknown + os=moxiebox + ;; + msdos) + basic_machine=i386-pc + os=msdos + ;; + msys) + basic_machine=i686-pc + os=msys + ;; + mvs) + basic_machine=i370-ibm + os=mvs + ;; + nacl) + basic_machine=le32-unknown + os=nacl + ;; + ncr3000) + basic_machine=i486-ncr + os=sysv4 + ;; + netbsd386) + basic_machine=i386-pc + os=netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=linux + ;; + news | news700 | news800 | news900) + basic_machine=m68k-sony + os=newsos + ;; + news1000) + basic_machine=m68030-sony + os=newsos + ;; + necv70) + basic_machine=v70-nec + os=sysv + ;; + nh3000) + basic_machine=m68k-harris + os=cxux + ;; + nh[45]000) + basic_machine=m88k-harris + os=cxux + ;; + nindy960) + basic_machine=i960-intel + os=nindy + ;; + mon960) + basic_machine=i960-intel + os=mon960 + ;; + nonstopux) + basic_machine=mips-compaq + os=nonstopux + ;; + os400) + basic_machine=powerpc-ibm + os=os400 + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=ose + ;; + os68k) + basic_machine=m68k-none + os=os68k + ;; + paragon) + basic_machine=i860-intel + os=osf + ;; + parisc) + basic_machine=hppa-unknown + os=linux + ;; + pw32) + basic_machine=i586-unknown + os=pw32 + ;; + rdos | rdos64) + basic_machine=x86_64-pc + os=rdos + ;; + rdos32) + basic_machine=i386-pc + os=rdos + ;; + rom68k) + basic_machine=m68k-rom68k + os=coff + ;; + sa29200) + basic_machine=a29k-amd + os=udi + ;; + sei) + basic_machine=mips-sei + os=seiux + ;; + sequent) + basic_machine=i386-sequent + os= + ;; + sps7) + basic_machine=m68k-bull + os=sysv2 + ;; + st2000) + basic_machine=m68k-tandem + os= + ;; + stratus) + basic_machine=i860-stratus + os=sysv4 + ;; + sun2) + basic_machine=m68000-sun + os= + ;; + sun2os3) + basic_machine=m68000-sun + os=sunos3 + ;; + sun2os4) + basic_machine=m68000-sun + os=sunos4 + ;; + sun3) + basic_machine=m68k-sun + os= + ;; + sun3os3) + basic_machine=m68k-sun + os=sunos3 + ;; + sun3os4) + basic_machine=m68k-sun + os=sunos4 + ;; + sun4) + basic_machine=sparc-sun + os= + ;; + sun4os3) + basic_machine=sparc-sun + os=sunos3 + ;; + sun4os4) + basic_machine=sparc-sun + os=sunos4 + ;; + sun4sol2) + basic_machine=sparc-sun + os=solaris2 + ;; + sun386 | sun386i | roadrunner) + basic_machine=i386-sun + os= + ;; + sv1) + basic_machine=sv1-cray + os=unicos + ;; + symmetry) + basic_machine=i386-sequent + os=dynix + ;; + t3e) + basic_machine=alphaev5-cray + os=unicos + ;; + t90) + basic_machine=t90-cray + os=unicos + ;; + toad1) + basic_machine=pdp10-xkl + os=tops20 + ;; + tpf) + basic_machine=s390x-ibm + os=tpf + ;; + udi29k) + basic_machine=a29k-amd + os=udi + ;; + ultra3) + basic_machine=a29k-nyu + os=sym1 + ;; + v810 | necv810) + basic_machine=v810-nec + os=none + ;; + vaxv) + basic_machine=vax-dec + os=sysv + ;; + vms) + basic_machine=vax-dec + os=vms + ;; + vxworks960) + basic_machine=i960-wrs + os=vxworks + ;; + vxworks68) + basic_machine=m68k-wrs + os=vxworks + ;; + vxworks29k) + basic_machine=a29k-wrs + os=vxworks + ;; + xbox) + basic_machine=i686-pc + os=mingw32 + ;; + ymp) + basic_machine=ymp-cray + os=unicos + ;; + *) + basic_machine=$1 + os= + ;; + esac ;; esac -# Decode aliases for certain CPU-COMPANY combinations. +# Decode 1-component or ad-hoc basic machines case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. - 1750a | 580 \ - | a29k \ - | aarch64 | aarch64_be \ - | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ - | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ - | am33_2.0 \ - | arc | arceb \ - | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ - | avr | avr32 \ - | ba \ - | be32 | be64 \ - | bfin \ - | c4x | c8051 | clipper \ - | d10v | d30v | dlx | dsp16xx \ - | e2k | epiphany \ - | fido | fr30 | frv | ft32 \ - | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ - | hexagon \ - | i370 | i860 | i960 | ia16 | ia64 \ - | ip2k | iq2000 \ - | k1om \ - | le32 | le64 \ - | lm32 \ - | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ - | mips | mipsbe | mipseb | mipsel | mipsle \ - | mips16 \ - | mips64 | mips64el \ - | mips64octeon | mips64octeonel \ - | mips64orion | mips64orionel \ - | mips64r5900 | mips64r5900el \ - | mips64vr | mips64vrel \ - | mips64vr4100 | mips64vr4100el \ - | mips64vr4300 | mips64vr4300el \ - | mips64vr5000 | mips64vr5000el \ - | mips64vr5900 | mips64vr5900el \ - | mipsisa32 | mipsisa32el \ - | mipsisa32r2 | mipsisa32r2el \ - | mipsisa32r6 | mipsisa32r6el \ - | mipsisa64 | mipsisa64el \ - | mipsisa64r2 | mipsisa64r2el \ - | mipsisa64r6 | mipsisa64r6el \ - | mipsisa64sb1 | mipsisa64sb1el \ - | mipsisa64sr71k | mipsisa64sr71kel \ - | mipsr5900 | mipsr5900el \ - | mipstx39 | mipstx39el \ - | mn10200 | mn10300 \ - | moxie \ - | mt \ - | msp430 \ - | nds32 | nds32le | nds32be \ - | nios | nios2 | nios2eb | nios2el \ - | ns16k | ns32k \ - | open8 | or1k | or1knd | or32 \ - | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle \ - | pru \ - | pyramid \ - | riscv32 | riscv64 \ - | rl78 | rx \ - | score \ - | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ - | sh64 | sh64le \ - | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ - | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ - | spu \ - | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ - | ubicom32 \ - | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ - | visium \ - | wasm32 \ - | x86 | xc16x | xstormy16 | xtensa \ - | z8k | z80) - basic_machine=$basic_machine-unknown - ;; - c54x) - basic_machine=tic54x-unknown - ;; - c55x) - basic_machine=tic55x-unknown - ;; - c6x) - basic_machine=tic6x-unknown - ;; - leon|leon[3-9]) - basic_machine=sparc-$basic_machine - ;; - m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) - basic_machine=$basic_machine-unknown - os=-none + # Here we handle the default manufacturer of certain CPU types. It is in + # some cases the only manufacturer, in others, it is the most popular. + w89k) + cpu=hppa1.1 + vendor=winbond ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + op50n) + cpu=hppa1.1 + vendor=oki ;; - ms1) - basic_machine=mt-unknown + op60c) + cpu=hppa1.1 + vendor=oki ;; - - strongarm | thumb | xscale) - basic_machine=arm-unknown + ibm*) + cpu=i370 + vendor=ibm ;; - xgate) - basic_machine=$basic_machine-unknown - os=-none + orion105) + cpu=clipper + vendor=highlevel ;; - xscaleeb) - basic_machine=armeb-unknown + mac | mpw | mac-mpw) + cpu=m68k + vendor=apple ;; - - xscaleel) - basic_machine=armel-unknown + pmac | pmac-mpw) + cpu=powerpc + vendor=apple ;; - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. - i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. - *-*-*) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 - exit 1 - ;; - # Recognize the basic CPU types with company name. - 580-* \ - | a29k-* \ - | aarch64-* | aarch64_be-* \ - | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ - | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ - | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ - | avr-* | avr32-* \ - | ba-* \ - | be32-* | be64-* \ - | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* \ - | c8051-* | clipper-* | craynv-* | cydra-* \ - | d10v-* | d30v-* | dlx-* \ - | e2k-* | elxsi-* \ - | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ - | h8300-* | h8500-* \ - | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ - | hexagon-* \ - | i*86-* | i860-* | i960-* | ia16-* | ia64-* \ - | ip2k-* | iq2000-* \ - | k1om-* \ - | le32-* | le64-* \ - | lm32-* \ - | m32c-* | m32r-* | m32rle-* \ - | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ - | microblaze-* | microblazeel-* \ - | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ - | mips16-* \ - | mips64-* | mips64el-* \ - | mips64octeon-* | mips64octeonel-* \ - | mips64orion-* | mips64orionel-* \ - | mips64r5900-* | mips64r5900el-* \ - | mips64vr-* | mips64vrel-* \ - | mips64vr4100-* | mips64vr4100el-* \ - | mips64vr4300-* | mips64vr4300el-* \ - | mips64vr5000-* | mips64vr5000el-* \ - | mips64vr5900-* | mips64vr5900el-* \ - | mipsisa32-* | mipsisa32el-* \ - | mipsisa32r2-* | mipsisa32r2el-* \ - | mipsisa32r6-* | mipsisa32r6el-* \ - | mipsisa64-* | mipsisa64el-* \ - | mipsisa64r2-* | mipsisa64r2el-* \ - | mipsisa64r6-* | mipsisa64r6el-* \ - | mipsisa64sb1-* | mipsisa64sb1el-* \ - | mipsisa64sr71k-* | mipsisa64sr71kel-* \ - | mipsr5900-* | mipsr5900el-* \ - | mipstx39-* | mipstx39el-* \ - | mmix-* \ - | mt-* \ - | msp430-* \ - | nds32-* | nds32le-* | nds32be-* \ - | nios-* | nios2-* | nios2eb-* | nios2el-* \ - | none-* | np1-* | ns16k-* | ns32k-* \ - | open8-* \ - | or1k*-* \ - | orion-* \ - | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ - | pru-* \ - | pyramid-* \ - | riscv32-* | riscv64-* \ - | rl78-* | romp-* | rs6000-* | rx-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ - | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ - | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ - | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ - | tahoe-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tile*-* \ - | tron-* \ - | ubicom32-* \ - | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ - | vax-* \ - | visium-* \ - | wasm32-* \ - | we32k-* \ - | x86-* | x86_64-* | xc16x-* | xps100-* \ - | xstormy16-* | xtensa*-* \ - | ymp-* \ - | z8k-* | z80-*) - ;; - # Recognize the basic CPU types without company name, with glob match. - xtensa*) - basic_machine=$basic_machine-unknown - ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. - 386bsd) - basic_machine=i386-unknown - os=-bsd - ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) - basic_machine=m68000-att + cpu=m68000 + vendor=att ;; 3b*) - basic_machine=we32k-att - ;; - a29khif) - basic_machine=a29k-amd - os=-udi - ;; - abacus) - basic_machine=abacus-unknown - ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout - ;; - alliant | fx80) - basic_machine=fx80-alliant - ;; - altos | altos3068) - basic_machine=m68k-altos - ;; - am29k) - basic_machine=a29k-none - os=-bsd - ;; - amd64) - basic_machine=x86_64-pc - ;; - amd64-*) - basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) - basic_machine=m68k-unknown - ;; - amigaos | amigados) - basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) - basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) - basic_machine=m68k-apollo - os=-sysv - ;; - apollo68bsd) - basic_machine=m68k-apollo - os=-bsd - ;; - aros) - basic_machine=i386-pc - os=-aros - ;; - asmjs) - basic_machine=asmjs-unknown - ;; - aux) - basic_machine=m68k-apple - os=-aux - ;; - balance) - basic_machine=ns32k-sequent - os=-dynix - ;; - blackfin) - basic_machine=bfin-unknown - os=-linux - ;; - blackfin-*) - basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux + cpu=we32k + vendor=att ;; bluegene*) - basic_machine=powerpc-ibm - os=-cnk - ;; - c54x-*) - basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - c55x-*) - basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - c6x-*) - basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - c90) - basic_machine=c90-cray - os=-unicos - ;; - cegcc) - basic_machine=arm-unknown - os=-cegcc - ;; - convex-c1) - basic_machine=c1-convex - os=-bsd - ;; - convex-c2) - basic_machine=c2-convex - os=-bsd - ;; - convex-c32) - basic_machine=c32-convex - os=-bsd - ;; - convex-c34) - basic_machine=c34-convex - os=-bsd - ;; - convex-c38) - basic_machine=c38-convex - os=-bsd - ;; - cray | j90) - basic_machine=j90-cray - os=-unicos - ;; - craynv) - basic_machine=craynv-cray - os=-unicosmp - ;; - cr16 | cr16-*) - basic_machine=cr16-unknown - os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; - crisv32 | crisv32-* | etraxfs*) - basic_machine=crisv32-axis - ;; - cris | cris-* | etrax*) - basic_machine=cris-axis - ;; - crx) - basic_machine=crx-unknown - os=-elf - ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec + cpu=powerpc + vendor=ibm + os=cnk ;; decsystem10* | dec10*) - basic_machine=pdp10-dec - os=-tops10 + cpu=pdp10 + vendor=dec + os=tops10 ;; decsystem20* | dec20*) - basic_machine=pdp10-dec - os=-tops20 + cpu=pdp10 + vendor=dec + os=tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola - ;; - delta88) - basic_machine=m88k-motorola - os=-sysv3 - ;; - dicos) - basic_machine=i686-pc - os=-dicos - ;; - djgpp) - basic_machine=i586-pc - os=-msdosdjgpp - ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx + cpu=m68k + vendor=motorola ;; dpx2*) - basic_machine=m68k-bull - os=-sysv3 - ;; - e500v[12]) - basic_machine=powerpc-unknown - os=$os"spe" - ;; - e500v[12]-*) - basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - os=$os"spe" - ;; - ebmon29k) - basic_machine=a29k-amd - os=-ebmon - ;; - elxsi) - basic_machine=elxsi-elxsi - os=-bsd + cpu=m68k + vendor=bull + os=sysv3 ;; encore | umax | mmax) - basic_machine=ns32k-encore + cpu=ns32k + vendor=encore ;; - es1800 | OSE68k | ose68k | ose | OSE) - basic_machine=m68k-ericsson - os=-ose + elxsi) + cpu=elxsi + vendor=elxsi + os=${os:-bsd} ;; fx2800) - basic_machine=i860-alliant + cpu=i860 + vendor=alliant ;; genix) - basic_machine=ns32k-ns - ;; - gmicro) - basic_machine=tron-gmicro - os=-sysv - ;; - go32) - basic_machine=i386-pc - os=-go32 + cpu=ns32k + vendor=ns ;; h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - h8300hms) - basic_machine=h8300-hitachi - os=-hms - ;; - h8300xray) - basic_machine=h8300-hitachi - os=-xray - ;; - h8500hms) - basic_machine=h8500-hitachi - os=-hms - ;; - harris) - basic_machine=m88k-harris - os=-sysv3 - ;; - hp300-*) - basic_machine=m68k-hp - ;; - hp300bsd) - basic_machine=m68k-hp - os=-bsd - ;; - hp300hpux) - basic_machine=m68k-hp - os=-hpux + cpu=hppa1.1 + vendor=hitachi + os=hiuxwe2 ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) - basic_machine=hppa1.0-hp + cpu=hppa1.0 + vendor=hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) - basic_machine=m68000-hp + cpu=m68000 + vendor=hp ;; hp9k3[2-9][0-9]) - basic_machine=m68k-hp + cpu=m68k + vendor=hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) - basic_machine=hppa1.0-hp + cpu=hppa1.0 + vendor=hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) - basic_machine=hppa1.1-hp + cpu=hppa1.1 + vendor=hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) - basic_machine=hppa1.0-hp - ;; - hppa-next) - os=-nextstep3 - ;; - hppaosf) - basic_machine=hppa1.1-hp - os=-osf - ;; - hppro) - basic_machine=hppa1.1-hp - os=-proelf - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm + cpu=hppa1.0 + vendor=hp ;; i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 + cpu=`echo "$1" | sed -e 's/86.*/86/'` + vendor=pc + os=sysv32 ;; i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 + cpu=`echo "$1" | sed -e 's/86.*/86/'` + vendor=pc + os=sysv4 ;; i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv + cpu=`echo "$1" | sed -e 's/86.*/86/'` + vendor=pc + os=sysv ;; i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 + cpu=`echo "$1" | sed -e 's/86.*/86/'` + vendor=pc + os=solaris2 ;; - i386mach) - basic_machine=i386-mach - os=-mach - ;; - i386-vsta | vsta) - basic_machine=i386-unknown - os=-vsta + j90 | j90-cray) + cpu=j90 + vendor=cray + os=${os:-unicos} ;; iris | iris4d) - basic_machine=mips-sgi + cpu=mips + vendor=sgi case $os in - -irix*) + irix*) ;; *) - os=-irix4 + os=irix4 ;; esac ;; - isi68 | isi) - basic_machine=m68k-isi - os=-sysv - ;; - leon-*|leon[3-9]-*) - basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` - ;; - m68knommu) - basic_machine=m68k-unknown - os=-linux - ;; - m68knommu-*) - basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux - ;; - m88k-omron*) - basic_machine=m88k-omron - ;; - magnum | m3230) - basic_machine=mips-mips - os=-sysv - ;; - merlin) - basic_machine=ns32k-utek - os=-sysv - ;; - microblaze*) - basic_machine=microblaze-xilinx - ;; - mingw64) - basic_machine=x86_64-pc - os=-mingw64 - ;; - mingw32) - basic_machine=i686-pc - os=-mingw32 - ;; - mingw32ce) - basic_machine=arm-unknown - os=-mingw32ce - ;; miniframe) - basic_machine=m68000-convergent - ;; - *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) - basic_machine=m68k-atari - os=-mint - ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; - mips3*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown - ;; - monitor) - basic_machine=m68k-rom68k - os=-coff - ;; - morphos) - basic_machine=powerpc-unknown - os=-morphos - ;; - moxiebox) - basic_machine=moxie-unknown - os=-moxiebox - ;; - msdos) - basic_machine=i386-pc - os=-msdos - ;; - ms1-*) - basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` - ;; - msys) - basic_machine=i686-pc - os=-msys - ;; - mvs) - basic_machine=i370-ibm - os=-mvs + cpu=m68000 + vendor=convergent ;; - nacl) - basic_machine=le32-unknown - os=-nacl - ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 - ;; - netbsd386) - basic_machine=i386-unknown - os=-netbsd - ;; - netwinder) - basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) - basic_machine=m68k-sony - os=-newsos - ;; - news1000) - basic_machine=m68030-sony - os=-newsos + *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*) + cpu=m68k + vendor=atari + os=mint ;; news-3600 | risc-news) - basic_machine=mips-sony - os=-newsos - ;; - necv70) - basic_machine=v70-nec - os=-sysv + cpu=mips + vendor=sony + os=newsos ;; next | m*-next) - basic_machine=m68k-next + cpu=m68k + vendor=next case $os in - -nextstep* ) + nextstep* ) ;; - -ns2*) - os=-nextstep2 + ns2*) + os=nextstep2 ;; *) - os=-nextstep3 + os=nextstep3 ;; esac ;; - nh3000) - basic_machine=m68k-harris - os=-cxux - ;; - nh[45]000) - basic_machine=m88k-harris - os=-cxux - ;; - nindy960) - basic_machine=i960-intel - os=-nindy - ;; - mon960) - basic_machine=i960-intel - os=-mon960 - ;; - nonstopux) - basic_machine=mips-compaq - os=-nonstopux - ;; np1) - basic_machine=np1-gould - ;; - neo-tandem) - basic_machine=neo-tandem - ;; - nse-tandem) - basic_machine=nse-tandem - ;; - nsr-tandem) - basic_machine=nsr-tandem - ;; - nsx-tandem) - basic_machine=nsx-tandem + cpu=np1 + vendor=gould ;; op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; - openrisc | openrisc-*) - basic_machine=or32-unknown - ;; - os400) - basic_machine=powerpc-ibm - os=-os400 - ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose - ;; - os68k) - basic_machine=m68k-none - os=-os68k + cpu=hppa1.1 + vendor=oki + os=proelf ;; pa-hitachi) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 - ;; - paragon) - basic_machine=i860-intel - os=-osf - ;; - parisc) - basic_machine=hppa-unknown - os=-linux - ;; - parisc-*) - basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` - os=-linux + cpu=hppa1.1 + vendor=hitachi + os=hiuxwe2 ;; pbd) - basic_machine=sparc-tti + cpu=sparc + vendor=tti ;; pbb) - basic_machine=m68k-tti + cpu=m68k + vendor=tti ;; - pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; - pc98) - basic_machine=i386-pc - ;; - pc98-*) - basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; - pentiumpro | p6 | 6x86 | athlon | athlon_*) - basic_machine=i686-pc - ;; - pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; - pentium4) - basic_machine=i786-pc - ;; - pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumpro-* | p6-* | 6x86-* | athlon-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` + pc532) + cpu=ns32k + vendor=pc532 ;; pn) - basic_machine=pn-gould - ;; - power) basic_machine=power-ibm - ;; - ppc | ppcbe) basic_machine=powerpc-unknown - ;; - ppc-* | ppcbe-*) - basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle) - basic_machine=powerpcle-unknown + cpu=pn + vendor=gould ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64) basic_machine=powerpc64-unknown - ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppc64le | powerpc64little) - basic_machine=powerpc64le-unknown - ;; - ppc64le-* | powerpc64little-*) - basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` + power) + cpu=power + vendor=ibm ;; ps2) - basic_machine=i386-ibm - ;; - pw32) - basic_machine=i586-unknown - os=-pw32 - ;; - rdos | rdos64) - basic_machine=x86_64-pc - os=-rdos - ;; - rdos32) - basic_machine=i386-pc - os=-rdos - ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff + cpu=i386 + vendor=ibm ;; rm[46]00) - basic_machine=mips-siemens + cpu=mips + vendor=siemens ;; rtpc | rtpc-*) - basic_machine=romp-ibm - ;; - s390 | s390-*) - basic_machine=s390-ibm - ;; - s390x | s390x-*) - basic_machine=s390x-ibm - ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; - sb1) - basic_machine=mipsisa64sb1-unknown - ;; - sb1el) - basic_machine=mipsisa64sb1el-unknown + cpu=romp + vendor=ibm ;; sde) - basic_machine=mipsisa32-sde - os=-elf + cpu=mipsisa32 + vendor=sde + os=${os:-elf} ;; - sei) - basic_machine=mips-sei - os=-seiux + simso-wrs) + cpu=sparclite + vendor=wrs + os=vxworks ;; - sequent) - basic_machine=i386-sequent + tower | tower-32) + cpu=m68k + vendor=ncr ;; - sh) - basic_machine=sh-hitachi - os=-hms + vpp*|vx|vx-*) + cpu=f301 + vendor=fujitsu ;; - sh5el) - basic_machine=sh5le-unknown + w65) + cpu=w65 + vendor=wdc ;; - sh64) - basic_machine=sh64-unknown + w89k-*) + cpu=hppa1.1 + vendor=winbond + os=proelf ;; - sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks + none) + cpu=none + vendor=none ;; - sps7) - basic_machine=m68k-bull - os=-sysv2 + leon|leon[3-9]) + cpu=sparc + vendor=$basic_machine ;; - spur) - basic_machine=spur-unknown + leon-*|leon[3-9]-*) + cpu=sparc + vendor=`echo "$basic_machine" | sed 's/-.*//'` ;; - st2000) - basic_machine=m68k-tandem + + *-*) + IFS="-" read -r cpu vendor <&2 - exit 1 + # Recognize the cannonical CPU types that are allowed with any + # company name. + case $cpu in + 1750a | 580 \ + | a29k \ + | aarch64 | aarch64_be \ + | abacus \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \ + | alphapca5[67] | alpha64pca5[67] \ + | am33_2.0 \ + | arc | arceb \ + | arm | arm[lb]e | arme[lb] | armv* \ + | avr | avr32 \ + | asmjs \ + | ba \ + | be32 | be64 \ + | bfin | bs2000 \ + | c[123]* | c30 | [cjt]90 | c4x \ + | c8051 | clipper | craynv | csky | cydra \ + | d10v | d30v | dlx | dsp16xx \ + | e2k | elxsi | epiphany \ + | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \ + | h8300 | h8500 \ + | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | hexagon \ + | i370 | i*86 | i860 | i960 | ia16 | ia64 \ + | ip2k | iq2000 \ + | k1om \ + | le32 | le64 \ + | lm32 \ + | m32c | m32r | m32rle \ + | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k | v70 | w65 \ + | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip \ + | m88110 | m88k | maxq | mb | mcore | mep | metag \ + | microblaze | microblazeel \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ + | mips64octeon | mips64octeonel \ + | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa32r6 | mipsisa32r6el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64r6 | mipsisa64r6el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipsr5900 | mipsr5900el \ + | mipstx39 | mipstx39el \ + | mmix \ + | mn10200 | mn10300 \ + | moxie \ + | mt \ + | msp430 \ + | nds32 | nds32le | nds32be \ + | nfp \ + | nios | nios2 | nios2eb | nios2el \ + | none | np1 | ns16k | ns32k \ + | open8 \ + | or1k* \ + | or32 \ + | orion \ + | pdp10 | pdp11 | pj | pjl | pn | power \ + | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \ + | pru \ + | pyramid \ + | riscv | riscv32 | riscv64 \ + | rl78 | romp | rs6000 | rx \ + | score \ + | sh | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \ + | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \ + | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \ + | spu \ + | tahoe \ + | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \ + | tron \ + | ubicom32 \ + | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \ + | vax \ + | visium \ + | wasm32 \ + | we32k \ + | x86 | x86_64 | xc16x | xgate | xps100 \ + | xstormy16 | xtensa* \ + | ymp \ + | z8k | z80) + ;; + + *) + echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2 + exit 1 + ;; + esac ;; esac # Here we canonicalize certain aliases for manufacturers. -case $basic_machine in - *-digital*) - basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` +case $vendor in + digital*) + vendor=dec ;; - *-commodore*) - basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` + commodore*) + vendor=cbm ;; *) ;; @@ -1362,213 +1270,246 @@ esac # Decode manufacturer-specific aliases for certain operating systems. -if [ x"$os" != x"" ] +if [ x$os != x ] then case $os in # First match some system type aliases that might get confused # with valid system types. - # -solaris* is a basic system type, with this one exception. - -auroraux) - os=-auroraux + # solaris* is a basic system type, with this one exception. + auroraux) + os=auroraux ;; - -solaris1 | -solaris1.*) - os=`echo $os | sed -e 's|solaris1|sunos4|'` + bluegene*) + os=cnk ;; - -solaris) - os=-solaris2 + solaris1 | solaris1.*) + os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; - -svr4*) - os=-sysv4 + solaris) + os=solaris2 ;; - -unixware*) - os=-sysv4.2uw + unixware*) + os=sysv4.2uw ;; - -gnu/linux*) + gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; + # es1800 is here to avoid being matched by es* (a different OS) + es1800*) + os=ose + ;; + # Some version numbers need modification + chorusos*) + os=chorusos + ;; + isc) + os=isc2.2 + ;; + sco6) + os=sco5v6 + ;; + sco5) + os=sco3.2v5 + ;; + sco4) + os=sco3.2v4 + ;; + sco3.2.[4-9]*) + os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` + ;; + sco3.2v[4-9]* | sco5v6*) + # Don't forget version if it is 3.2v4 or newer. + ;; + scout) + # Don't match below + ;; + sco*) + os=sco3.2v2 + ;; + psos*) + os=psos + ;; # Now accept the basic system types. # The portable systems comes first. # Each alternative MUST end in a * to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ - | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ - | -sym* | -kopensolaris* | -plan9* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* | -aros* | -cloudabi* | -sortix* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ - | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ - | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ - | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ - | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \ - | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ - | -linux-newlib* | -linux-musl* | -linux-uclibc* \ - | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ - | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ - | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ - | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ - | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ - | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ - | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ - | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ - | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*) + # sysv* is not here because it comes later, after sysvr4. + gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \ + | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\ + | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \ + | sym* | kopensolaris* | plan9* \ + | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \ + | aos* | aros* | cloudabi* | sortix* \ + | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \ + | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \ + | knetbsd* | mirbsd* | netbsd* \ + | bitrig* | openbsd* | solidbsd* | libertybsd* \ + | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \ + | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \ + | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \ + | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \ + | chorusrdb* | cegcc* | glidix* \ + | cygwin* | msys* | pe* | moss* | proelf* | rtems* \ + | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \ + | linux-newlib* | linux-musl* | linux-uclibc* \ + | uxpv* | beos* | mpeix* | udk* | moxiebox* \ + | interix* | uwin* | mks* | rhapsody* | darwin* \ + | openstep* | oskit* | conix* | pw32* | nonstopux* \ + | storm-chaos* | tops10* | tenex* | tops20* | its* \ + | os2* | vos* | palmos* | uclinux* | nucleus* \ + | morphos* | superux* | rtmk* | windiss* \ + | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \ + | skyos* | haiku* | rdos* | toppers* | drops* | es* \ + | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \ + | midnightbsd*) # Remember, each alternative MUST END IN *, to match a version number. ;; - -qnx*) - case $basic_machine in - x86-* | i*86-*) + qnx*) + case $cpu in + x86 | i*86) ;; *) - os=-nto$os + os=nto-$os ;; esac ;; - -nto-qnx*) + hiux*) + os=hiuxwe2 ;; - -nto*) - os=`echo $os | sed -e 's|nto|nto-qnx|'` + nto-qnx*) ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ - | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ - | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) + nto*) + os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` + sim | xray | os68k* | v88r* \ + | windows* | osx | abug | netware* | os9* \ + | macos* | mpw* | magic* | mmixware* | mon960* | lnews*) ;; - -linux-dietlibc) - os=-linux-dietlibc + linux-dietlibc) + os=linux-dietlibc ;; - -linux*) + linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; - -sunos5*) - os=`echo $os | sed -e 's|sunos5|solaris2|'` + lynx*178) + os=lynxos178 ;; - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` + lynx*5) + os=lynxos5 ;; - -opened*) - os=-openedition + lynx*) + os=lynxos ;; - -os400*) - os=-os400 + mac*) + os=`echo "$os" | sed -e 's|mac|macos|'` ;; - -wince*) - os=-wince + opened*) + os=openedition ;; - -osfrose*) - os=-osfrose + os400*) + os=os400 ;; - -osf*) - os=-osf + sunos5*) + os=`echo "$os" | sed -e 's|sunos5|solaris2|'` ;; - -utek*) - os=-bsd + sunos6*) + os=`echo "$os" | sed -e 's|sunos6|solaris3|'` ;; - -dynix*) - os=-bsd + wince*) + os=wince ;; - -acis*) - os=-aos + utek*) + os=bsd ;; - -atheos*) - os=-atheos + dynix*) + os=bsd ;; - -syllable*) - os=-syllable + acis*) + os=aos ;; - -386bsd) - os=-bsd + atheos*) + os=atheos ;; - -ctix* | -uts*) - os=-sysv + syllable*) + os=syllable ;; - -nova*) - os=-rtmk-nova - ;; - -ns2) - os=-nextstep2 + 386bsd) + os=bsd ;; - -nsk*) - os=-nsk + ctix* | uts*) + os=sysv ;; - # Preserve the version number of sinix5. - -sinix5.*) - os=`echo $os | sed -e 's|sinix|sysv|'` + nova*) + os=rtmk-nova ;; - -sinix*) - os=-sysv4 + ns2) + os=nextstep2 ;; - -tpf*) - os=-tpf + nsk*) + os=nsk ;; - -triton*) - os=-sysv3 + # Preserve the version number of sinix5. + sinix5.*) + os=`echo $os | sed -e 's|sinix|sysv|'` ;; - -oss*) - os=-sysv3 + sinix*) + os=sysv4 ;; - -svr4) - os=-sysv4 + tpf*) + os=tpf ;; - -svr3) - os=-sysv3 + triton*) + os=sysv3 ;; - -sysvr4) - os=-sysv4 + oss*) + os=sysv3 ;; - # This must come after -sysvr4. - -sysv*) + svr4*) + os=sysv4 ;; - -ose*) - os=-ose + svr3) + os=sysv3 ;; - -es1800*) - os=-ose + sysvr4) + os=sysv4 ;; - -xenix) - os=-xenix + # This must come after sysvr4. + sysv*) ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - os=-mint + ose*) + os=ose ;; - -aros*) - os=-aros + *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) + os=mint ;; - -zvmoe) - os=-zvmoe + zvmoe) + os=zvmoe ;; - -dicos*) - os=-dicos + dicos*) + os=dicos ;; - -pikeos*) + pikeos*) # Until real need of OS specific support for # particular features comes up, bare metal # configurations are quite functional. - case $basic_machine in + case $cpu in arm*) - os=-eabi + os=eabi ;; *) - os=-elf + os=elf ;; esac ;; - -nacl*) + nacl*) ;; - -ios) + ios) ;; - -none) + none) + ;; + *-eabi) ;; *) - # Get rid of the `-' at the beginning of $os. - os=`echo $os | sed 's/[^-]*-//'` - echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 + echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2 exit 1 ;; esac @@ -1584,264 +1525,265 @@ else # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. -case $basic_machine in +case $cpu-$vendor in score-*) - os=-elf + os=elf ;; spu-*) - os=-elf + os=elf ;; *-acorn) - os=-riscix1.2 + os=riscix1.2 ;; arm*-rebel) - os=-linux + os=linux ;; arm*-semi) - os=-aout + os=aout ;; c4x-* | tic4x-*) - os=-coff + os=coff ;; c8051-*) - os=-elf + os=elf + ;; + clipper-intergraph) + os=clix ;; hexagon-*) - os=-elf + os=elf ;; tic54x-*) - os=-coff + os=coff ;; tic55x-*) - os=-coff + os=coff ;; tic6x-*) - os=-coff + os=coff ;; # This must come before the *-dec entry. pdp10-*) - os=-tops20 + os=tops20 ;; pdp11-*) - os=-none + os=none ;; *-dec | vax-*) - os=-ultrix4.2 + os=ultrix4.2 ;; m68*-apollo) - os=-domain + os=domain ;; i386-sun) - os=-sunos4.0.2 + os=sunos4.0.2 ;; m68000-sun) - os=-sunos3 + os=sunos3 ;; m68*-cisco) - os=-aout + os=aout ;; mep-*) - os=-elf + os=elf ;; mips*-cisco) - os=-elf + os=elf ;; mips*-*) - os=-elf + os=elf ;; or32-*) - os=-coff + os=coff ;; *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 + os=sysv3 ;; sparc-* | *-sun) - os=-sunos4.1.1 + os=sunos4.1.1 ;; pru-*) - os=-elf + os=elf ;; *-be) - os=-beos - ;; - *-haiku) - os=-haiku + os=beos ;; *-ibm) - os=-aix + os=aix ;; *-knuth) - os=-mmixware + os=mmixware ;; *-wec) - os=-proelf + os=proelf ;; *-winbond) - os=-proelf + os=proelf ;; *-oki) - os=-proelf + os=proelf ;; *-hp) - os=-hpux + os=hpux ;; *-hitachi) - os=-hiux + os=hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) - os=-sysv + os=sysv ;; *-cbm) - os=-amigaos + os=amigaos ;; *-dg) - os=-dgux + os=dgux ;; *-dolphin) - os=-sysv3 + os=sysv3 ;; m68k-ccur) - os=-rtu + os=rtu ;; m88k-omron*) - os=-luna + os=luna ;; *-next) - os=-nextstep + os=nextstep ;; *-sequent) - os=-ptx + os=ptx ;; *-crds) - os=-unos + os=unos ;; *-ns) - os=-genix + os=genix ;; i370-*) - os=-mvs - ;; - *-next) - os=-nextstep3 + os=mvs ;; *-gould) - os=-sysv + os=sysv ;; *-highlevel) - os=-bsd + os=bsd ;; *-encore) - os=-bsd + os=bsd ;; *-sgi) - os=-irix + os=irix ;; *-siemens) - os=-sysv4 + os=sysv4 ;; *-masscomp) - os=-rtu + os=rtu ;; f30[01]-fujitsu | f700-fujitsu) - os=-uxpv + os=uxpv ;; *-rom68k) - os=-coff + os=coff ;; *-*bug) - os=-coff + os=coff ;; *-apple) - os=-macos + os=macos ;; *-atari*) - os=-mint + os=mint + ;; + *-wrs) + os=vxworks ;; *) - os=-none + os=none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. -vendor=unknown -case $basic_machine in - *-unknown) +case $vendor in + unknown) case $os in - -riscix*) + riscix*) vendor=acorn ;; - -sunos*) + sunos*) vendor=sun ;; - -cnk*|-aix*) + cnk*|-aix*) vendor=ibm ;; - -beos*) + beos*) vendor=be ;; - -hpux*) + hpux*) vendor=hp ;; - -mpeix*) + mpeix*) vendor=hp ;; - -hiux*) + hiux*) vendor=hitachi ;; - -unos*) + unos*) vendor=crds ;; - -dgux*) + dgux*) vendor=dg ;; - -luna*) + luna*) vendor=omron ;; - -genix*) + genix*) vendor=ns ;; - -mvs* | -opened*) + clix*) + vendor=intergraph + ;; + mvs* | opened*) vendor=ibm ;; - -os400*) + os400*) vendor=ibm ;; - -ptx*) + ptx*) vendor=sequent ;; - -tpf*) + tpf*) vendor=ibm ;; - -vxsim* | -vxworks* | -windiss*) + vxsim* | vxworks* | windiss*) vendor=wrs ;; - -aux*) + aux*) vendor=apple ;; - -hms*) + hms*) vendor=hitachi ;; - -mpw* | -macos*) + mpw* | macos*) vendor=apple ;; - -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) + *mint | mint[0-9]* | *MiNT | MiNT[0-9]*) vendor=atari ;; - -vos*) + vos*) vendor=stratus ;; esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac -echo $basic_machine$os +echo "$cpu-$vendor-$os" exit # Local variables: -# eval: (add-hook 'write-file-functions 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" diff --git a/build-aux/depcomp b/build-aux/depcomp index b39f98f..65cbf70 100755 --- a/build-aux/depcomp +++ b/build-aux/depcomp @@ -1,9 +1,9 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2016-01-11.22; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2017 Free Software Foundation, Inc. +# Copyright (C) 1999-2018 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 @@ -16,7 +16,7 @@ scriptversion=2016-01-11.22; # UTC # 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, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -783,7 +783,7 @@ exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-time-zone: "UTC0" diff --git a/build-aux/install-sh b/build-aux/install-sh index 59990a1..8175c64 100755 --- a/build-aux/install-sh +++ b/build-aux/install-sh @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2014-09-12.12; # UTC +scriptversion=2018-03-11.20; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -271,15 +271,18 @@ do fi dst=$dst_arg - # If destination is a directory, append the input filename; won't work - # if double slashes aren't ignored. + # If destination is a directory, append the input filename. if test -d "$dst"; then if test "$is_target_a_directory" = never; then echo "$0: $dst_arg: Is a directory" >&2 exit 1 fi dstdir=$dst - dst=$dstdir/`basename "$src"` + dstbase=`basename "$src"` + case $dst in + */) dst=$dst$dstbase;; + *) dst=$dst/$dstbase;; + esac dstdir_status=0 else dstdir=`dirname "$dst"` @@ -288,6 +291,11 @@ do fi fi + case $dstdir in + */) dstdirslash=$dstdir;; + *) dstdirslash=$dstdir/;; + esac + obsolete_mkdir_used=false if test $dstdir_status != 0; then @@ -324,14 +332,16 @@ do # is incompatible with FreeBSD 'install' when (umask & 300) != 0. ;; *) - # $RANDOM is not portable (e.g. dash); use it when possible to - # lower collision chance + # Note that $RANDOM variable is not portable (e.g. dash); Use it + # here however when possible just to lower collision chance. tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 - # As "mkdir -p" follows symlinks and we work in /tmp possibly; so - # create the $tmpdir first (and fail if unsuccessful) to make sure - # that nobody tries to guess the $tmpdir name. + # Because "mkdir -p" follows existing symlinks and we likely work + # directly in world-writeable /tmp, make sure that the '$tmpdir' + # directory is successfully created first before we actually test + # 'mkdir -p' feature. if (umask $mkdir_umask && $mkdirprog $mkdir_mode "$tmpdir" && exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 @@ -434,8 +444,8 @@ do else # Make a couple of temp file names in the proper directory. - dsttmp=$dstdir/_inst.$$_ - rmtmp=$dstdir/_rm.$$_ + dsttmp=${dstdirslash}_inst.$$_ + rmtmp=${dstdirslash}_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 @@ -500,9 +510,9 @@ do done # Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff --git a/build-aux/ltmain.sh b/build-aux/ltmain.sh index a736cf9..7f3523d 100644 --- a/build-aux/ltmain.sh +++ b/build-aux/ltmain.sh @@ -31,7 +31,7 @@ PROGRAM=libtool PACKAGE=libtool -VERSION="2.4.6 Debian-2.4.6-2" +VERSION=2.4.6 package_revision=2.4.6 @@ -2068,12 +2068,12 @@ include the following information: compiler: $LTCC compiler flags: $LTCFLAGS linker: $LD (gnu? $with_gnu_ld) - version: $progname $scriptversion Debian-2.4.6-2 + version: $progname (GNU libtool) 2.4.6 automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` Report bugs to . -GNU libtool home page: . +GNU libtool home page: . General help using GNU software: ." exit 0 } @@ -2124,7 +2124,7 @@ fi # a configuration failure hint, and exit. func_fatal_configuration () { - func__fatal_error ${1+"$@"} \ + func_fatal_error ${1+"$@"} \ "See the $PACKAGE documentation for more information." \ "Fatal configuration error." } @@ -7274,11 +7274,10 @@ func_mode_link () # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization # -specs=* GCC specs files # -stdlib=* select c++ std lib with clang - # -fsanitize=* Clang/GCC memory and address sanitizer -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ - -specs=*|-fsanitize=*) + -specs=*) func_quote_for_eval "$arg" arg=$func_quote_for_eval_result func_append compile_command " $arg" @@ -7571,10 +7570,7 @@ func_mode_link () case $pass in dlopen) libs=$dlfiles ;; dlpreopen) libs=$dlprefiles ;; - link) - libs="$deplibs %DEPLIBS%" - test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" - ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; esac fi if test lib,dlpreopen = "$linkmode,$pass"; then @@ -7893,19 +7889,19 @@ func_mode_link () # It is a libtool convenience library, so add in its objects. func_append convenience " $ladir/$objdir/$old_library" func_append old_convenience " $ladir/$objdir/$old_library" - tmp_libs= - for deplib in $dependency_libs; do - deplibs="$deplib $deplibs" - if $opt_preserve_dup_deps; then - case "$tmp_libs " in - *" $deplib "*) func_append specialdeplibs " $deplib" ;; - esac - fi - func_append tmp_libs " $deplib" - done elif test prog != "$linkmode" && test lib != "$linkmode"; then func_fatal_error "'$lib' is not a convenience library" fi + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done continue fi # $pass = conv @@ -8829,9 +8825,6 @@ func_mode_link () revision=$number_minor lt_irix_increment=no ;; - *) - func_fatal_configuration "$modename: unknown library version type '$version_type'" - ;; esac ;; no) diff --git a/build-aux/missing b/build-aux/missing index f62bbae..625aeb1 100755 --- a/build-aux/missing +++ b/build-aux/missing @@ -1,9 +1,9 @@ #! /bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2013-10-28.13; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2018 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify @@ -17,7 +17,7 @@ scriptversion=2013-10-28.13; # UTC # 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, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -101,9 +101,9 @@ else exit $st fi -perl_URL=http://www.perl.org/ -flex_URL=http://flex.sourceforge.net/ -gnu_software_URL=http://www.gnu.org/software +perl_URL=https://www.perl.org/ +flex_URL=https://github.com/westes/flex +gnu_software_URL=https://www.gnu.org/software program_details () { @@ -207,9 +207,9 @@ give_advice "$1" | sed -e '1s/^/WARNING: /' \ exit $st # Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff --git a/build-aux/test-driver b/build-aux/test-driver index 8e575b0..b8521a4 100755 --- a/build-aux/test-driver +++ b/build-aux/test-driver @@ -1,9 +1,9 @@ #! /bin/sh # test-driver - basic testsuite driver script. -scriptversion=2013-07-13.22; # UTC +scriptversion=2018-03-07.03; # UTC -# Copyright (C) 2011-2014 Free Software Foundation, Inc. +# Copyright (C) 2011-2018 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 @@ -16,7 +16,7 @@ scriptversion=2013-07-13.22; # UTC # 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, see . +# along with this program. If not, see . # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -140,9 +140,9 @@ echo ":copy-in-global-log: $gcopy" >> $trs_file # Local Variables: # mode: shell-script # sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) +# eval: (add-hook 'before-save-hook 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC" +# time-stamp-time-zone: "UTC0" # time-stamp-end: "; # UTC" # End: diff --git a/buildsystems/autotools/Makefile.in b/buildsystems/autotools/Makefile.in index 0ce56c4..522263d 100644 --- a/buildsystems/autotools/Makefile.in +++ b/buildsystems/autotools/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15.1 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2017 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -294,7 +294,6 @@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -338,8 +337,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -457,7 +456,10 @@ ctags CTAGS: cscope cscopelist: -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff --git a/buildsystems/cmake/Makefile.in b/buildsystems/cmake/Makefile.in index c5339d2..2c7d6c6 100644 --- a/buildsystems/cmake/Makefile.in +++ b/buildsystems/cmake/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15.1 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2017 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -292,7 +292,6 @@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -335,8 +334,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -383,7 +382,10 @@ ctags CTAGS: cscope cscopelist: -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff --git a/configure b/configure index c2bdd28..558b33d 100755 --- a/configure +++ b/configure @@ -1,8 +1,8 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for gtk-doc 1.30. +# Generated by GNU Autoconf 2.69 for gtk-doc 1.31. # -# Report bugs to . +# Report bugs to . # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -275,11 +275,10 @@ 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: http://bugzilla.gnome.org/enter_bug.cgi?product=gtk-doc -$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 -$0: have one." +$0: https://gitlab.gnome.org/GNOME/gtk-doc/issues about +$0: your system, including any error possibly output before +$0: this message. Then install a modern shell, or manually +$0: run the script under such a shell if you do have one." fi exit 1 fi @@ -591,9 +590,9 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='gtk-doc' PACKAGE_TARNAME='gtk-doc' -PACKAGE_VERSION='1.30' -PACKAGE_STRING='gtk-doc 1.30' -PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=gtk-doc' +PACKAGE_VERSION='1.31' +PACKAGE_STRING='gtk-doc 1.31' +PACKAGE_BUGREPORT='https://gitlab.gnome.org/GNOME/gtk-doc/issues' PACKAGE_URL='' ac_unique_file="gtk-doc.pc.in" @@ -712,7 +711,6 @@ am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE -am__quote am__include DEPDIR OBJEXT @@ -771,7 +769,6 @@ infodir docdir oldincludedir includedir -runstatedir localstatedir sharedstatedir sysconfdir @@ -790,7 +787,8 @@ PACKAGE_VERSION PACKAGE_TARNAME PACKAGE_NAME PATH_SEPARATOR -SHELL' +SHELL +am__quote' ac_subst_files='' ac_user_opts=' enable_option_checking @@ -865,7 +863,6 @@ datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' -runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' @@ -1118,15 +1115,6 @@ do | -silent | --silent | --silen | --sile | --sil) silent=yes ;; - -runstatedir | --runstatedir | --runstatedi | --runstated \ - | --runstate | --runstat | --runsta | --runst | --runs \ - | --run | --ru | --r) - ac_prev=runstatedir ;; - -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ - | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ - | --run=* | --ru=* | --r=*) - runstatedir=$ac_optarg ;; - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1264,7 +1252,7 @@ fi for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir runstatedir + libdir localedir mandir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1377,7 +1365,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 gtk-doc 1.30 to adapt to many kinds of systems. +\`configure' configures gtk-doc 1.31 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1417,7 +1405,6 @@ Fine tuning of the installation directories: --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -1448,7 +1435,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of gtk-doc 1.30:";; + short | recursive ) echo "Configuration of gtk-doc 1.31:";; esac cat <<\_ACEOF @@ -1514,7 +1501,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 . +Report bugs to . _ACEOF ac_status=$? fi @@ -1577,7 +1564,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -gtk-doc configure 1.30 +gtk-doc configure 1.31 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1855,7 +1842,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 gtk-doc $as_me 1.30, which was +It was created by gtk-doc $as_me 1.31, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2236,7 +2223,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. -am__api_version='1.15' +am__api_version='1.16' # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or @@ -2722,7 +2709,7 @@ fi # Define the identity of the package. PACKAGE='gtk-doc' - VERSION='1.30' + VERSION='1.31' cat >>confdefs.h <<_ACEOF @@ -2752,8 +2739,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # For better backward compatibility. To be removed once Automake 1.9.x # dies out for good. For more background, see: -# -# +# +# mkdir_p='$(MKDIR_P)' # We need awk for the "check" target (and possibly the TAP driver). The @@ -2920,7 +2907,7 @@ END Aborting the configuration process, to ensure you take notice of the issue. You can download and install GNU coreutils to get an 'rm' implementation -that behaves properly: . +that behaves properly: . If you want to complete the configuration process using your problematic 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM @@ -3850,45 +3837,45 @@ DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" - -am_make=${MAKE-make} -cat > confinc << 'END' +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5 +$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; } +cat > confinc.mk << 'END' am__doit: - @echo this is the am__doit target + @echo this is the am__doit target >confinc.out .PHONY: am__doit END -# If we don't find an include directive, just comment out the code. -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 -$as_echo_n "checking for style of include used by $am_make... " >&6; } am__include="#" am__quote= -_am_result=none -# First try GNU make style include. -echo "include confinc" > confmf -# Ignore all kinds of additional output from 'make'. -case `$am_make -s -f confmf 2> /dev/null` in #( -*the\ am__doit\ target*) - am__include=include - am__quote= - _am_result=GNU - ;; -esac -# Now try BSD make style include. -if test "$am__include" = "#"; then - echo '.include "confinc"' > confmf - case `$am_make -s -f confmf 2> /dev/null` in #( - *the\ am__doit\ target*) - am__include=.include - am__quote="\"" - _am_result=BSD +# BSD make does it like this. +echo '.include "confinc.mk" # ignored' > confmf.BSD +# Other make implementations (GNU, Solaris 10, AIX) do it like this. +echo 'include confinc.mk # ignored' > confmf.GNU +_am_result=no +for s in GNU BSD; do + { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5 + (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + case $?:`cat confinc.out 2>/dev/null` in #( + '0:this is the am__doit target') : + case $s in #( + BSD) : + am__include='.include' am__quote='"' ;; #( + *) : + am__include='include' am__quote='' ;; +esac ;; #( + *) : ;; - esac -fi - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 -$as_echo "$_am_result" >&6; } -rm -f confinc confmf +esac + if test "$am__include" != "#"; then + _am_result="yes ($s style)" + break + fi +done +rm -f confinc.* confmf.* +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5 +$as_echo "${_am_result}" >&6; } # Check whether --enable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then : @@ -5350,7 +5337,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; -netbsd* | netbsdelf*-gnu) +netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' else @@ -9043,9 +9030,6 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie openbsd* | bitrig*) with_gnu_ld=no ;; - linux* | k*bsd*-gnu | gnu*) - link_all_deplibs=no - ;; esac ld_shlibs=yes @@ -9300,7 +9284,7 @@ _LT_EOF fi ;; - netbsd* | netbsdelf*-gnu) + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -9970,7 +9954,6 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } if test yes = "$lt_cv_irix_exported_symbol"; then archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi - link_all_deplibs=no else archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' @@ -9992,7 +9975,7 @@ $as_echo "$lt_cv_irix_exported_symbol" >&6; } esac ;; - netbsd* | netbsdelf*-gnu) + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -11087,6 +11070,9 @@ fi # before this can be enabled. hardcode_into_libs=yes + # Add ABI-specific directories to the system library path. + sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" + # Ideally, we could use ldconfig to report *all* directores which are # searched for libraries, however this is still not possible. Aside from not # being certain /sbin/ldconfig is available, command @@ -11095,7 +11081,7 @@ fi # appending ld.so.conf contents (and includes) to the search path. if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` - sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" + sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" fi # We used to test for /lib/ld.so.1 and disable shared libraries on @@ -11107,18 +11093,6 @@ fi dynamic_linker='GNU/Linux ld.so' ;; -netbsdelf*-gnu) - version_type=linux - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - dynamic_linker='NetBSD ld.elf_so' - ;; - netbsd*) version_type=sunos need_lib_prefix=no @@ -12289,7 +12263,7 @@ if ${am_cv_pathless_PYTHON+:} false; then : $as_echo_n "(cached) " >&6 else - for am_cv_pathless_PYTHON in python python2 python3 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do + for am_cv_pathless_PYTHON in python python2 python3 python3.9 python3.8 python3.7 python3.6 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do test "$am_cv_pathless_PYTHON" = none && break prog="import sys # split strings by '.' and convert to numeric. Append some zeros @@ -13212,13 +13186,7 @@ install-help: $(_HELP_LC_FILES) elif test "x$$lc" != "xC"; then \ if test "x$(YELP_LC_MEDIA_LINKS)" != "x"; then \ echo "$(LN_S) -f $(HELP_DIR)/C/$(HELP_ID)/$$f $$helpdir$$f"; \ - dname="$$f"; \ - pars="../"; \ - while test "$$dname" != "." -a "$$dname" != "/"; do \ - pars="../$$pars"; \ - dname=$$(dirname "$$dname"); \ - done; \ - $(LN_S) -f $$pars"C/$(HELP_ID)/$$f" "$$helpdir$$f" || exit 1; \ + $(LN_S) -f "$(HELP_DIR)/C/$(HELP_ID)/$$f" "$$helpdir$$f" || exit 1; \ fi; \ fi; \ done; \ @@ -13907,7 +13875,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 gtk-doc $as_me 1.30, which was +This file was extended by gtk-doc $as_me 1.31, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -13958,13 +13926,13 @@ $config_files Configuration commands: $config_commands -Report bugs to ." +Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -gtk-doc config.status 1.30 +gtk-doc config.status 1.31 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -14072,7 +14040,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # # INIT-COMMANDS # -AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" +AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}" # The HP-UX ksh and POSIX shell print the target directory to stdout @@ -14843,29 +14811,35 @@ $as_echo "$as_me: executing $ac_file commands" >&6;} # Older Autoconf quotes --file arguments for eval, but not when files # are listed without --file. Let's play safe and only enable the eval # if we detect the quoting. - case $CONFIG_FILES in - *\'*) eval set x "$CONFIG_FILES" ;; - *) set x $CONFIG_FILES ;; - esac + # TODO: see whether this extra hack can be removed once we start + # requiring Autoconf 2.70 or later. + case $CONFIG_FILES in #( + *\'*) : + eval set x "$CONFIG_FILES" ;; #( + *) : + set x $CONFIG_FILES ;; #( + *) : + ;; +esac shift - for mf + # Used to flag and report bootstrapping failures. + am_rc=0 + for am_mf do # Strip MF so we end up with the name of the file. - mf=`echo "$mf" | sed -e 's/:.*$//'` - # Check whether this is an Automake generated Makefile or not. - # We used to match only the files named 'Makefile.in', but - # some people rename them; so instead we look at the file content. - # Grep'ing the first line is not enough: some people post-process - # each Makefile.in and add a new line on top of each file to say so. - # Grep'ing the whole file is not good either: AIX grep has a line + am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile which includes + # dependency-tracking related rules and includes. + # Grep'ing the whole file directly is not great: AIX grep has a line # limit of 2048, but all sed's we know have understand at least 4000. - if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then - dirpart=`$as_dirname -- "$mf" || -$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$mf" : 'X\(//\)[^/]' \| \ - X"$mf" : 'X\(//\)$' \| \ - X"$mf" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$mf" | + sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ + || continue + am_dirpart=`$as_dirname -- "$am_mf" || +$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$am_mf" : 'X\(//\)[^/]' \| \ + X"$am_mf" : 'X\(//\)$' \| \ + X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$am_mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/ q @@ -14883,53 +14857,48 @@ $as_echo X"$mf" | q } s/.*/./; q'` - else - continue - fi - # Extract the definition of DEPDIR, am__include, and am__quote - # from the Makefile without running 'make'. - DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` - test -z "$DEPDIR" && continue - am__include=`sed -n 's/^am__include = //p' < "$mf"` - test -z "$am__include" && continue - am__quote=`sed -n 's/^am__quote = //p' < "$mf"` - # Find all dependency output files, they are included files with - # $(DEPDIR) in their names. We invoke sed twice because it is the - # simplest approach to changing $(DEPDIR) to its actual value in the - # expansion. - for file in `sed -n " - s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ - sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do - # Make sure the directory exists. - test -f "$dirpart/$file" && continue - fdir=`$as_dirname -- "$file" || -$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$file" : 'X\(//\)[^/]' \| \ - X"$file" : 'X\(//\)$' \| \ - X"$file" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ + am_filepart=`$as_basename -- "$am_mf" || +$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \ + X"$am_mf" : 'X\(//\)$' \| \ + X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$am_mf" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/ q } - /^X\(\/\/\)$/{ + /^X\/\(\/\/\)$/{ s//\1/ q } - /^X\(\/\).*/{ + /^X\/\(\/\).*/{ s//\1/ q } s/.*/./; q'` - as_dir=$dirpart/$fdir; as_fn_mkdir_p - # echo "creating $dirpart/$file" - echo '# dummy' > "$dirpart/$file" - done + { echo "$as_me:$LINENO: cd "$am_dirpart" \ + && sed -e '/# am--include-marker/d' "$am_filepart" \ + | $MAKE -f - am--depfiles" >&5 + (cd "$am_dirpart" \ + && sed -e '/# am--include-marker/d' "$am_filepart" \ + | $MAKE -f - am--depfiles) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } || am_rc=$? done + if test $am_rc -ne 0; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "Something went wrong bootstrapping makefile fragments + for automatic dependency tracking. Try re-running configure with the + '--disable-dependency-tracking' option to at least be able to build + the package (albeit without support for automatic dependency tracking). +See \`config.log' for more details" "$LINENO" 5; } + fi + { am_dirpart=; unset am_dirpart;} + { am_filepart=; unset am_filepart;} + { am_mf=; unset am_mf;} + { am_rc=; unset am_rc;} + rm -f conftest-deps.mk } ;; "libtool":C) @@ -14947,6 +14916,7 @@ $as_echo X"$file" | cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. diff --git a/configure.ac b/configure.ac index ec72565..a7953c7 100644 --- a/configure.ac +++ b/configure.ac @@ -3,9 +3,9 @@ AC_PREREQ([2.63]) dnl We're using a two digit number for the releases and dnl a three digit number for the development version -m4_define(gtk_doc_version, 1.30) +m4_define(gtk_doc_version, 1.31) -AC_INIT([gtk-doc],[gtk_doc_version],[http://bugzilla.gnome.org/enter_bug.cgi?product=gtk-doc],[gtk-doc]) +AC_INIT([gtk-doc],[gtk_doc_version],[https://gitlab.gnome.org/GNOME/gtk-doc/issues],[gtk-doc]) AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_SRCDIR([gtk-doc.pc.in]) diff --git a/gtkdoc/config.py b/gtkdoc/config.py index a8b37e0..1352c9c 100644 --- a/gtkdoc/config.py +++ b/gtkdoc/config.py @@ -1,13 +1,13 @@ -version = "1.30" +version = "1.31" # tools -dblatex = '/usr/bin/dblatex' +dblatex = '' fop = '' pkg_config = '/usr/bin/pkg-config' xsltproc = '/usr/bin/xsltproc' # configured directories -prefix = '/usr' +prefix = '/usr/local' datarootdir = "${prefix}/share".replace('${prefix}', prefix) datadir = "${datarootdir}".replace('${datarootdir}', datarootdir) diff --git a/gtkdoc/highlight.py b/gtkdoc/highlight.py index 8f6e470..ba1c601 100644 --- a/gtkdoc/highlight.py +++ b/gtkdoc/highlight.py @@ -23,7 +23,6 @@ Highlight sourcecode snippets. """ import os -import stat from pygments import highlight from pygments.lexers import CLexer @@ -47,6 +46,6 @@ def highlight_code(code, lang='c'): def append_style_defs(css_file_name): - os.chmod(css_file_name, stat.S_IWRITE) + os.chmod(css_file_name, 0o644) with open(css_file_name, 'at', newline='\n', encoding='utf-8') as css: css.write(HTML_FORMATTER.get_style_defs()) diff --git a/gtkdoc/mkdb.py b/gtkdoc/mkdb.py index b233596..8dc085f 100644 --- a/gtkdoc/mkdb.py +++ b/gtkdoc/mkdb.py @@ -65,10 +65,6 @@ DeclarationOutput = {} Deprecated = {} Since = {} StabilityLevel = {} -# TODO; we can eliminate this, one case that we need to fix is to combine -# struct/union decls with a separate typedef. This works right now since we -# parse the tyedef after the struct/enum decl and thus have the dict filled -# before we output the struct/typedef. StructHasTypedef = {} # These global hashes store the existing documentation. @@ -79,8 +75,7 @@ SymbolAnnotations = {} # These global hashes store documentation scanned from the source files. SourceSymbolDocs = {} SourceSymbolParams = {} -SourceSymbolSourceFile = {} -SourceSymbolSourceLine = {} +SymbolSourceLocation = {} # all documentation goes in here, so we can do coverage analysis AllSymbols = {} @@ -147,7 +142,7 @@ AnnotationDefinition = { 'not-error': "A GError parameter is not to be handled like a normal GError.", 'out': "Parameter for returning results. Default is transfer full.", 'out caller-allocates': "Out parameter, where caller must allocate storage.", - 'out callee-allocates': "Out parameter, where caller must allocate storage.", + 'out callee-allocates': "Out parameter, where callee must allocate storage.", 'ref-func': "The specified function is used to ref a struct, must be a GTypeInstance.", 'rename-to': "Rename the original symbol's name to SYMBOL.", 'scope call': "The callback is valid only during the call to the method.", @@ -199,8 +194,8 @@ MAX_SYMBOL_FIELD_WIDTH = 40 # XML header doctype_header = None -# refentry template -REFENTRY = string.Template('''${header} +# docbook templates +DB_REFENTRY = string.Template('''${header} ${title} @@ -222,14 +217,31 @@ ${extralinks}${long_desc} Functions ${functions_details} - -Types and Values -${other_details} - -${args_desc}${signals_desc}${see_also} +${other_desc}${args_desc}${signals_desc}${see_also} ''') +DB_REFSECT1_SYNOPSIS = string.Template(''' +${title} + + + + + + +${content} + + + + +''') + +DB_REFSECT1_DESC = string.Template(''' +${title} +${content} + +''') + def Run(options): global MODULE, INLINE_MARKUP_MODE, NAME_SPACE, DB_OUTPUT_DIR, doctype_header @@ -327,12 +339,6 @@ def Run(options): logging.info("All files created: %d", changed) - # TODO: eliminate some of those global collections - logging.info('# symbol_docs=%d, source_symbol_docs=%d', - len(SymbolDocs), len(SourceSymbolDocs)) - logging.info('# symbol_params=%d, source_symbol_params=%d', - len(SymbolParams), len(SourceSymbolParams)) - def OutputObjectList(): """This outputs the alphabetical list of objects, in a columned table.""" @@ -380,16 +386,70 @@ def OutputObjectList(): common.UpdateFileIfChanged(old_object_index, new_object_index, 0) -def TrimTextBlock(desc): +def trim_leading_and_trailing_nl(text): + """Trims extra newlines. + + Leaves a single trailing newline. + + Args: + text (str): the text block to trim. May contain newlines. + + Returns: + (str): trimmed text + """ + text = re.sub(r'^\n*', '', text) + return re.sub(r'\n+$', '\n', text) + + +def trim_white_spaces(text): """Trims extra whitespace. - Empty lines inside a block are preserved. + Empty lines inside a block are preserved. All whitespace and the end is + replaced with a single newline. + Args: - desc (str): the text block to trim. May contain newlines. + text (str): the text block to trim. May contain newlines. + + Returns: + (str): trimmed text """ # strip trailing spaces on every line - return re.sub(r'\s+$', '\n', desc.lstrip(), flags=re.MULTILINE) + return re.sub(r'\s+$', '\n', text.lstrip(), flags=re.MULTILINE) + + +def make_refsect1_synopsis(content, title, section_id, section_type, role=None): + # TODO(ensonic): canonicalize xml to use the same string for section_type + # and role. Needs fixes on gtk-doc.xsl + if role is None: + role = section_type.replace('-', '_') + + return DB_REFSECT1_SYNOPSIS.substitute({ + 'content': content, + 'role': role, + 'section_id': section_id, + 'title': title, + 'type': section_type, + }) + + +def make_refsect1_desc(content, title, section_id, section_type, role=None): + content = trim_white_spaces(content) + if content == '': + return '' + + # TODO(ensonic): canonicalize xml to use the same string for section_type + # and role. Needs fixes on gtk-doc.xsl + if role is None: + role = section_type.replace('-', '_') + + return DB_REFSECT1_DESC.substitute({ + 'content': content, + 'role': role, + 'section_id': section_id, + 'title': title, + 'type': section_type, + }) def OutputDB(file, options): @@ -422,6 +482,7 @@ def OutputDB(file, options): other_synop = '' functions_details = '' other_details = '' + other_desc = '' signals_synop = '' signals_desc = '' args_synop = '' @@ -518,146 +579,45 @@ def OutputDB(file, options): if section_includes == '': section_includes = includes - signals_synop = re.sub(r'^\n*', '', signals_synop) - signals_synop = re.sub(r'\n+$', '\n', signals_synop) - + signals_synop = trim_leading_and_trailing_nl(signals_synop) if signals_synop != '': - signals_synop = ''' -Signals - - - - - - -%s - - - - -''' % (section_id, signals_synop) - signals_desc = TrimTextBlock(signals_desc) - signals_desc = ''' -Signal Details -%s - -''' % (section_id, signals_desc) + signals_synop = make_refsect1_synopsis( + signals_synop, 'Signals', section_id, 'signals', 'signal_proto') + signals_desc = make_refsect1_desc(signals_desc, 'Signal Details', + section_id, 'signal-details', 'signals') - args_synop = re.sub(r'^\n*', '', args_synop) - args_synop = re.sub(r'\n+$', '\n', args_synop) + args_synop = trim_leading_and_trailing_nl(args_synop) if args_synop != '': - args_synop = ''' -Properties - - - - - - -%s - - - - -''' % (section_id, args_synop) - args_desc = TrimTextBlock(args_desc) - args_desc = ''' -Property Details -%s - -''' % (section_id, args_desc) + args_synop = make_refsect1_synopsis(args_synop, 'Properties', section_id, 'properties') + args_desc = make_refsect1_desc(args_desc, 'Property Details', section_id, 'property-details') - child_args_synop = re.sub(r'^\n*', '', child_args_synop) - child_args_synop = re.sub(r'\n+$', '\n', child_args_synop) + child_args_synop = trim_leading_and_trailing_nl(child_args_synop) if child_args_synop != '': - args_synop += ''' -Child Properties - - - - - - -%s - - - - -''' % (section_id, child_args_synop) - child_args_desc = TrimTextBlock(child_args_desc) - args_desc += ''' -Child Property Details -%s - -''' % (section_id, child_args_desc) + args_synop += make_refsect1_synopsis(child_args_synop, + 'Child Properties', section_id, 'child-properties') + args_desc += make_refsect1_desc(child_args_desc, 'Child Property Details', + section_id, 'child-property-details') - style_args_synop = re.sub(r'^\n*', '', style_args_synop) - style_args_synop = re.sub(r'\n+$', '\n', style_args_synop) + style_args_synop = trim_leading_and_trailing_nl(style_args_synop) if style_args_synop != '': - args_synop += ''' -Style Properties - - - - - - -%s - - - - -''' % (section_id, style_args_synop) - style_args_desc = TrimTextBlock(style_args_desc) - args_desc += ''' -Style Property Details -%s - -''' % (section_id, style_args_desc) + args_synop += make_refsect1_synopsis(style_args_synop, + 'Style Properties', section_id, 'style-properties') + args_desc += make_refsect1_desc(style_args_desc, 'Style Property Details', + section_id, 'style-property-details') hierarchy_str = AddTreeLineArt(hierarchy) if hierarchy_str != '': - hierarchy_str = ''' -Object Hierarchy -%s - - -''' % (section_id, hierarchy_str) - - interfaces = TrimTextBlock(interfaces) - if interfaces != '': - interfaces = ''' -Implemented Interfaces -%s - -''' % (section_id, interfaces) - - implementations = TrimTextBlock(implementations) - if implementations != '': - implementations = ''' -Known Implementations -%s - -''' % (section_id, implementations) + hierarchy_str = make_refsect1_desc('' + hierarchy_str + '\n', + 'Object Hierarchy', section_id, 'object-hierarchy') - prerequisites = TrimTextBlock(prerequisites) - if prerequisites != '': - prerequisites = ''' -Prerequisites -%s - -''' % (section_id, prerequisites) - - derived = TrimTextBlock(derived) - if derived != '': - derived = ''' -Known Derived Interfaces -%s - -''' % (section_id, derived) + interfaces = make_refsect1_desc(interfaces, 'Implemented Interfaces', section_id, + 'implemented-interfaces', 'impl_interfaces') + implementations = make_refsect1_desc( + implementations, 'Known Implementations', section_id, 'implementations') + prerequisites = make_refsect1_desc(prerequisites, 'Prerequisites', section_id, 'prerequisites') + derived = make_refsect1_desc(derived, 'Known Derived Interfaces', section_id, 'derived-interfaces') - functions_synop = re.sub(r'^\n*', '', functions_synop) - functions_synop = re.sub(r'\n+$', '\n', functions_synop) + functions_synop = trim_leading_and_trailing_nl(functions_synop) if functions_synop != '': functions_synop = ''' Functions @@ -673,8 +633,7 @@ def OutputDB(file, options): ''' % (section_id, functions_synop) - other_synop = re.sub(r'^\n*', '', other_synop) - other_synop = re.sub(r'\n+$', '\n', other_synop) + other_synop = trim_leading_and_trailing_nl(other_synop) if other_synop != '': other_synop = ''' Types and Values @@ -689,11 +648,13 @@ def OutputDB(file, options): ''' % (section_id, other_synop) + other_desc += make_refsect1_desc(other_details, 'Types and Values', + section_id, 'other_details', 'details') file_changed = OutputDBFile(filename, title, section_id, section_includes, functions_synop, other_synop, - functions_details, other_details, + functions_details, other_desc, signals_synop, signals_desc, args_synop, args_desc, hierarchy_str, interfaces, @@ -713,6 +674,7 @@ def OutputDB(file, options): other_synop = '' functions_details = '' other_details = '' + other_desc = '' signals_synop = '' signals_desc = '' args_synop = '' @@ -1220,6 +1182,55 @@ def uri_escape(text): return re.sub(r"([^A-Za-z0-9\-_.!~*'()]", do_escape, text) +def extract_struct_body(symbol, decl, has_typedef, public): + """Returns a normalized struct body. + + Normalizes whitespace and newlines and supresses non public members. + + Returns: + str: the nomalized struct declaration + """ + decl_out = '' + + m = re.search( + r'^\s*(typedef\s+)?struct\s*\w*\s*(?:\/\*.*\*\/)?\s*{(.*)}\s*\w*\s*;\s*$', decl, flags=re.DOTALL) + if m: + new_boby = '' + for line in m.group(2).splitlines(): + logging.info("Struct line: %s", line) + m2 = re.search(r'/\*\s*<\s*public\s*>\s*\*/', line) + m3 = re.search(r'/\*\s*<\s*(private|protected)\s*>\s*\*/', line) + if m2: + public = True + elif m3: + public = False + elif public: + new_boby += line + "\n" + + if new_boby: + # Strip any blank lines off the ends. + new_boby = re.sub(r'^\s*\n', '', new_boby) + new_boby = re.sub(r'\n\s*$', r'\n', new_boby) + + if has_typedef: + decl_out = "typedef struct {\n%s} %s;\n" % (new_boby, symbol) + else: + decl_out = "struct %s {\n%s};\n" % (symbol, new_boby) + else: + common.LogWarning(*GetSymbolSourceLocation(symbol), + "Couldn't parse struct:\n%s" % decl) + + if decl_out == '': + # If we couldn't parse the struct or it was all private, output an + # empty struct declaration. + if has_typedef: + decl_out = "typedef struct _%s %s;" % (symbol, symbol) + else: + decl_out = "struct %s;" % symbol + + return decl_out + + def OutputSymbolExtraLinks(symbol): """Returns extralinks for the symbol (if enabled). @@ -1387,7 +1398,6 @@ def OutputStruct(symbol, declaration): has_typedef = False if symbol in StructHasTypedef or re.search(r'^\s*typedef\s+', declaration): has_typedef = True - logging.info('symbol "%s" has decl "%s"', symbol, declaration) type_output = None desc = None @@ -1416,46 +1426,7 @@ def OutputStruct(symbol, declaration): logging.info("Found opaque struct: %s", symbol) decl_out = "struct %s;" % symbol else: - m = re.search( - r'^\s*(typedef\s+)?struct\s*\w*\s*(?:\/\*.*\*\/)?\s*{(.*)}\s*\w*\s*;\s*$', declaration, flags=re.S) - if m: - struct_contents = m.group(2) - - public = default_to_public - new_declaration = '' - - for decl_line in struct_contents.splitlines(): - logging.info("Struct line: %s", decl_line) - m2 = re.search(r'/\*\s*<\s*public\s*>\s*\*/', decl_line) - m3 = re.search(r'/\*\s*<\s*(private|protected)\s*>\s*\*/', decl_line) - if m2: - public = True - elif m3: - public = False - elif public: - new_declaration += decl_line + "\n" - - if new_declaration: - # Strip any blank lines off the ends. - new_declaration = re.sub(r'^\s*\n', '', new_declaration) - new_declaration = re.sub(r'\n\s*$', r'\n', new_declaration) - - if has_typedef: - decl_out = "typedef struct {\n%s} %s;\n" % (new_declaration, symbol) - else: - decl_out = "struct %s {\n%s};\n" % (symbol, new_declaration) - - else: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), - "Couldn't parse struct:\n%s" % declaration) - - # If we couldn't parse the struct or it was all private, output an - # empty struct declaration. - if decl_out == '': - if has_typedef: - decl_out = "typedef struct _%s %s;" % (symbol, symbol) - else: - decl_out = "struct %s;" % symbol + decl_out = extract_struct_body(symbol, declaration, has_typedef, default_to_public) decl_out = CreateValidSGML(decl_out) desc += "%s\n" % decl_out @@ -1503,7 +1474,7 @@ def OutputStruct(symbol, declaration): field_descr, param_annotations) del field_descrs[field_name] else: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Field description for %s::%s is missing in source code comment block." % (symbol, field_name)) if missing_parameters != '': missing_parameters += ", " + field_name @@ -1522,7 +1493,7 @@ def OutputStruct(symbol, declaration): if m: continue - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Field description for %s::%s is not used from source code comment block." % (symbol, field_name)) if unused_parameters != '': unused_parameters += ", " + field_name @@ -1539,7 +1510,7 @@ def OutputStruct(symbol, declaration): if fields: if symbol not in AllIncompleteSymbols: AllIncompleteSymbols[symbol] = "" - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Field descriptions for struct %s are missing in source code comment block." % symbol) logging.info("Remaining structs fields: " + ':'.join(fields) + "\n") @@ -1576,7 +1547,6 @@ def OutputUnion(symbol, declaration): has_typedef = False if symbol in StructHasTypedef or re.search(r'^\s*typedef\s+', declaration): has_typedef = True - logging.info('symbol "%s" has decl "%s"', symbol, declaration) type_output = None desc = None @@ -1640,7 +1610,7 @@ def OutputUnion(symbol, declaration): field_descr, param_annotations) del field_descrs[field_name] else: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Field description for %s::%s is missing in source code comment block." % (symbol, field_name)) if missing_parameters != '': missing_parameters += ", " + field_name @@ -1653,7 +1623,7 @@ def OutputUnion(symbol, declaration): desc += "\n" for field_name in field_descrs: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Field description for %s::%s is not used from source code comment block." % (symbol, field_name)) if unused_parameters != '': unused_parameters += ", " + field_name @@ -1670,7 +1640,7 @@ def OutputUnion(symbol, declaration): if len(fields) > 0: if symbol not in AllIncompleteSymbols: AllIncompleteSymbols[symbol] = "" - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Field descriptions for union %s are missing in source code comment block." % symbol) logging.info("Remaining union fields: " + ':'.join(fields) + "\n") @@ -1749,7 +1719,7 @@ def OutputEnum(symbol, declaration): del field_descrs[field_name] else: if found: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Value description for %s::%s is missing in source code comment block." % (symbol, field_name)) if missing_parameters != '': missing_parameters += ", " + field_name @@ -1760,7 +1730,7 @@ def OutputEnum(symbol, declaration): desc += "\n" for field_name in field_descrs: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Value description for %s::%s is not used from source code comment block." % (symbol, field_name)) if unused_parameters != '': unused_parameters += ", " + field_name @@ -1778,7 +1748,7 @@ def OutputEnum(symbol, declaration): if len(fields) > 0: if symbol not in AllIncompleteSymbols: AllIncompleteSymbols[symbol] = "" - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Value descriptions for %s are missing in source code comment block." % symbol) desc += OutputSymbolTraits(symbol) @@ -1993,7 +1963,7 @@ def OutputParamDescriptions(symbol_type, symbol, fields): else: if fields: if param_name not in field_descrs: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Parameter description for %s::%s is not used from source code comment block." % (symbol, param_name)) if unused_parameters != '': unused_parameters += ", " + param_name @@ -2008,7 +1978,7 @@ def OutputParamDescriptions(symbol_type, symbol, fields): num_params += 1 for param_name in field_descrs: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Parameter description for %s::%s is missing in source code comment block." % (symbol, param_name)) if missing_parameters != '': missing_parameters += ", " + param_name @@ -2081,7 +2051,7 @@ def ParseStabilityLevel(stability, file, line, message): return str(stability) -def OutputDBFile(file, title, section_id, includes, functions_synop, other_synop, functions_details, other_details, signals_synop, signals_desc, args_synop, args_desc, hierarchy, interfaces, implementations, prerequisites, derived, file_objects, default_stability): +def OutputDBFile(file, title, section_id, includes, functions_synop, other_synop, functions_details, other_desc, signals_synop, signals_desc, args_synop, args_desc, hierarchy, interfaces, implementations, prerequisites, derived, file_objects, default_stability): """Outputs the final DocBook file for one section. Args: @@ -2093,7 +2063,7 @@ def OutputDBFile(file, title, section_id, includes, functions_synop, other_synop functions_synop (str): the DocBook for the Functions Synopsis part. other_synop (str): the DocBook for the Types and Values Synopsis part. functions_details (str): the DocBook for the Functions Details part. - other_details (str): the DocBook for the Types and Values Details part. + other_desc (str): the DocBook for the Types and Values Details part. signal_synop (str): the DocBook for the Signal Synopsis part signal_desc (str): the DocBook for the Signal Description part args_synop (str): the DocBook for the Arg Synopsis part @@ -2147,7 +2117,7 @@ def OutputDBFile(file, title, section_id, includes, functions_synop, other_synop if not stability or re.search(r'^\s*$', stability): stability = '' else: - line_number = GetSymbolSourceLine(file + ":stability") + line_number = GetSymbolSourceLocation(file + ":stability")[1] stability = ParseStabilityLevel(stability, file, line_number, "Section stability level") logging.info("Found stability: %s", stability) @@ -2216,7 +2186,7 @@ def OutputDBFile(file, title, section_id, includes, functions_synop, other_synop # since it changes every day (and it is only used in the man pages): # "" - OUTPUT.write(REFENTRY.substitute({ + OUTPUT.write(DB_REFENTRY.substitute({ 'args_desc': args_desc, 'args_synop': args_synop, 'derived': derived, @@ -2231,7 +2201,7 @@ def OutputDBFile(file, title, section_id, includes, functions_synop, other_synop 'implementations': implementations, 'long_desc': long_desc, 'object_anchors': object_anchors, - 'other_details': other_details, + 'other_desc': other_desc, 'other_synop': other_synop, 'prerequisites': prerequisites, 'section_id': section_id, @@ -2679,7 +2649,7 @@ def ExpandAnnotation(symbol, param_desc): AnnotationsUsed[match_annotation] = 1 param_annotations += "[%s%s]" % (match_annotation, annotation_extra) else: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "unknown annotation \"%s\" in documentation for %s." % (annotation, symbol)) param_annotations += "[%s]" % annotation @@ -2895,7 +2865,7 @@ def ModifyXMLElements(text, symbol, start_tag_regexp, end_tag_func, callback): result += callback(before_tag, symbol, start_tag) result += end_tag else: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Can't find tag end: %s in docs for: %s." % (end_tag_regexp, symbol)) # Just assume it is all inside the tag. result += callback(text, symbol, start_tag) @@ -3412,7 +3382,7 @@ def GetSignals(gobject): desc += indentation else: - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "Can't parse arg: %s\nArgs:%s" % (params[j], SignalPrototypes[i])) xref = MakeXRef("gpointer", tagify("gpointer", "type")) @@ -3563,7 +3533,7 @@ def GetArgs(gobject): if 'X' in flags: if flags_string: flags_string += " / " - flags_string += "Construct Only" + flags_string += "Construct Only" AllSymbols[symbol] = 1 blurb = '' @@ -3602,6 +3572,8 @@ def GetArgs(gobject): arg_desc += MakeDeprecationNote(symbol) + arg_desc += "Owner: %s\n" % gobject + if flags_string: arg_desc += "Flags: %s\n" % flags_string @@ -3718,9 +3690,8 @@ def ScanSourceFile(ifile, ignore_files): def ScanSourceContent(input_lines, ifile=''): """Scans the source code lines for specially-formatted comment blocks. - Updates global state in SourceSymbolDocs, SourceSymbolSourceFile, - SourceSymbolSourceLine. Since, StabilityLevel, Deprecated, - SymbolAnnotations. + Updates global state in SourceSymbolDocs, SymbolSourceLocation, + Since, StabilityLevel, Deprecated, SymbolAnnotations. Might read from global state in DeclarationTypes @@ -3842,6 +3813,12 @@ def SegmentCommentBlock(lines, line_number=0, ifile=''): segments[in_part] += line continue + # We must be in the parameters. Check for the empty line below them. + if re.search(r'^\s*$', line): + # TODO: only switch if next line starts without indent? + in_part = "body" + continue + # Look for a parameter name. m = re.search(r'^\s*@(.+?)\s*:\s*', line) if m: @@ -3857,15 +3834,7 @@ def SegmentCommentBlock(lines, line_number=0, ifile=''): params[param_name] = param_desc in_part = "param" continue - - # We must be in the parameters (or no-part). Check for the empty line below them. - if re.search(r'^\s*$', line): - logging.info("blank line, switching from '%s' to 'body'") - # TODO: only switch if next line starts without indent? - in_part = "body" - continue - - if in_part == '': + elif in_part == '': logging.info("continuation for %s annotation '%s'", symbol, line) annotation = re.sub(r'^\s+|\s+$', '', line) if symbol in SymbolAnnotations: @@ -3934,16 +3903,14 @@ def ParseCommentBlockSegments(symbol, segments, params, line_number=0, ifile='') if param_name in ['image', 'include', 'section_id', 'see_also', 'short_description', 'stability', 'title']: key = real_symbol + ':' + param_name SourceSymbolDocs[key] = param_desc - SourceSymbolSourceFile[key] = ifile - SourceSymbolSourceLine[key] = line_number + SymbolSourceLocation[key] = (ifile, line_number) key = real_symbol + ":long_description" if key not in KnownSymbols or KnownSymbols[key] != 1: common.LogWarning( ifile, line_number, "Section %s is not defined in the %s-sections.txt file." % (real_symbol, MODULE)) SourceSymbolDocs[key] = segments["body"] - SourceSymbolSourceFile[key] = ifile - SourceSymbolSourceLine[key] = line_number + SymbolSourceLocation[key] = (ifile, line_number) elif m2: real_symbol = m2.group(1) section_id = None @@ -3956,8 +3923,7 @@ def ParseCommentBlockSegments(symbol, segments, params, line_number=0, ifile='') key = real_symbol + ':' + param_name logging.info("PROGRAM value %s: '%s'", real_symbol, param_desc.rstrip()) SourceSymbolDocs[key] = param_desc.rstrip() - SourceSymbolSourceFile[key] = ifile - SourceSymbolSourceLine[key] = line_number + SymbolSourceLocation[key] = (ifile, line_number) elif re.search(r'^(-.*)', param_name): logging.info("PROGRAM opts: '%s': '%s'", param_name, param_desc) key = real_symbol + ":options" @@ -3973,8 +3939,7 @@ def ParseCommentBlockSegments(symbol, segments, params, line_number=0, ifile='') key = real_symbol + ":long_description" SourceSymbolDocs[key] = segments["body"] - SourceSymbolSourceFile[key] = ifile - SourceSymbolSourceLine[key] = line_number + SymbolSourceLocation[key] = (ifile, line_number) # TODO(ensonic): we need to track these somehow and output the files # later, see comment in Run() @@ -3990,8 +3955,7 @@ def ParseCommentBlockSegments(symbol, segments, params, line_number=0, ifile='') logging.info("SYMBOL DOCS found in source for : '%s'", symbol) SourceSymbolDocs[symbol] = segments["body"] SourceSymbolParams[symbol] = params - SourceSymbolSourceFile[symbol] = ifile - SourceSymbolSourceLine[symbol] = line_number + SymbolSourceLocation[symbol] = (ifile, line_number) if "since" in segments: arr = segments["since"].splitlines() @@ -4057,9 +4021,6 @@ def OutputMissingDocumentation(): for symbol in sorted(AllSymbols.keys()): # FIXME: should we print common.LogWarnings for undocumented stuff? - # DEBUG - # location = "defined at " + GetSymbolSourceFile(symbol) + ":" + GetSymbolSourceLine(symbol) + "\n" - # DEBUG m = re.search( r':(title|long_description|short_description|see_also|stability|include|section_id|image)', symbol) m2 = re.search(r':(long_description|short_description)', symbol) @@ -4211,12 +4172,12 @@ def CheckParamsDocumented(symbol, params): else: AllIncompleteSymbols[symbol] = param_name - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "%s description for %s::%s is missing in source code comment block." % (item, symbol, param_name)) elif len(params) == 0: AllIncompleteSymbols[symbol] = "" - common.LogWarning(GetSymbolSourceFile(symbol), GetSymbolSourceLine(symbol), + common.LogWarning(*GetSymbolSourceLocation(symbol), "%s descriptions for %s are missing in source code comment block." % (item, symbol)) @@ -4782,11 +4743,6 @@ def GetSymbolParams(symbol): return (params, found) -def GetSymbolSourceFile(symbol): - """Get the filename where the symbol docs where taken from.""" - return SourceSymbolSourceFile.get(symbol, '') - - -def GetSymbolSourceLine(symbol): - """Get the file line where the symbol docs where taken from.""" - return SourceSymbolSourceLine.get(symbol, 0) +def GetSymbolSourceLocation(symbol): + """Get the filename and line where the symbol docs where taken from.""" + return SymbolSourceLocation.get(symbol, ('', 0)) diff --git a/gtkdoc/scan.py b/gtkdoc/scan.py index cff9ec4..d04d4d4 100644 --- a/gtkdoc/scan.py +++ b/gtkdoc/scan.py @@ -75,20 +75,16 @@ CLINE_MATCHER = [ (\w+) # 2: name \)\s*\(""", re.VERBOSE), # 4: FUNCTION POINTER VARIABLES - None, # in ScanHeaderContent() + None, # in InitScanner() # 5-7: ENUMS re.compile( r"""^\s*enum\s+ _?(\w+) # 1: name \s+\{""", re.VERBOSE), - re.compile(r'^\s*typedef\s+enum\s+_?(\w+)\s+\1\s*;'), + None, # in InitScanner() re.compile(r'^\s*typedef\s+enum'), # 8-11: STRUCTS AND UNIONS - re.compile( - r"""^\s*typedef\s+ - (struct|union)\s+ # 1: struct/union - _(\w+) # 2: name - \s+\2\s*;""", re.VERBOSE), + None, # in InitScanner() re.compile(r'^\s*(?:struct|union)\s+_(\w+)\s*;'), re.compile( r"""^\s* @@ -115,7 +111,7 @@ CLINE_MATCHER = [ \s*;""", re.VERBOSE), re.compile(r'^\s*typedef\s+'), # 15: VARIABLES (extern'ed variables) - None, # in ScanHeaderContent() + None, # in InitScanner() # 16: VARIABLES re.compile( r"""^\s* @@ -130,9 +126,9 @@ CLINE_MATCHER = [ (FINAL_TYPE|DERIVABLE_TYPE|INTERFACE) # 1: variant \s*\(""", re.VERBOSE), # 18-21: FUNCTIONS - None, # in ScanHeaderContent() - None, # in ScanHeaderContent() - re.compile(r'^\s*([A-Za-z]\w*)\s*\('), + None, # in InitScanner() + None, # in InitScanner() + re.compile(r'^\s*\(?([A-Za-z]\w*)\)?\s*\('), re.compile(r'^\s*\('), # 22-23: STRUCTS re.compile(r'^\s*struct\s+_?(\w+)\s*\*'), @@ -153,11 +149,14 @@ PLINE_MATCHER = [ """ % RET_TYPE_MODIFIER, re.VERBOSE), re.compile(r'^\s*typedef\s*'), # 2-4 :FUNCTIONS - None, # in ScanHeaderContent() - None, # in ScanHeaderContent() - None, # in ScanHeaderContent() + None, # in InitScanner() + None, # in InitScanner() + None, # in InitScanner() ] +# Matchers for 2nd previous line +PPLINE_MATCHER = None + # Matchers for sub expressions SUB_MATCHER = [ # 0: STRUCTS AND UNIONS @@ -168,6 +167,8 @@ SUB_MATCHER = [ def Run(options): logging.info('options: %s', str(options.__dict__)) + InitScanner(options) + if not os.path.isdir(options.output_dir): os.mkdir(options.output_dir) @@ -236,16 +237,104 @@ def Run(options): open(overrides_file, 'w', encoding='utf-8').close() -# -# Function : ScanHeaders -# Description : This scans a directory tree looking for header files. -# -# Arguments : source_dir - the directory to scan. -# section_list - a reference to the hashmap of sections. -# seen_headers - set to avoid scanning headers twice -# +def InitScanner(options): + """Apply options to regexps. + """ + + # avoid generating regex with |'' (matching no string) + # TODO(ensonic): keep in sync with ScanHeaderContent() + ignore_decorators = '' + optional_decorators_regex = '' + if options.ignore_decorators: + ignore_decorators = '|' + options.ignore_decorators.replace('()', '\(\w*\)') + optional_decorators_regex = '(?:\s+(?:%s))?' % ignore_decorators[1:] + + # FUNCTION POINTER VARIABLES + CLINE_MATCHER[4] = re.compile( + r"""^\s*(?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* + ((?:const\s+|G_CONST_RETURN\s+)?\w+) # 1: 1st const + (\s+const)?\s* # 2: 2nd const + (\**)\s* # 3: ptr + \(\*\s* + (\w+) # 4: name + \)\s*\(""" % ignore_decorators, re.VERBOSE) + + CLINE_MATCHER[6] = re.compile(r'^\s*typedef\s+enum\s+_?(\w+)\s+\1%s\s*;' % optional_decorators_regex) + CLINE_MATCHER[8] = re.compile( + r"""^\s*typedef\s+ + (struct|union)\s+ # 1: struct/union + _(\w+)\s+\2 # 2: name + %s # 3: optional decorator + \s*;""" % optional_decorators_regex, re.VERBOSE) + # OTHER TYPEDEFS + CLINE_MATCHER[15] = re.compile( + r"""^\s* + (?:extern|[A-Za-z_]+VAR%s)\s+ + (?:%s\w+) + (?:\s+\*+|\*+|\s)\s* + (?:const\s+)* + ([A-Za-z]\w*) # 1: name + \s*;""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) + # FUNCTIONS + CLINE_MATCHER[18] = re.compile( + r"""^\s* + (?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* + (%s\w+) # 1: return type + ([\s*]+(?:\s*(?:\*+|\bconst\b|\bG_CONST_RETURN\b))*)\s* # 2: .. cont' + (_[A-Za-z]\w*) # 3: name + \s*\(""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) + CLINE_MATCHER[19] = re.compile( + r"""^\s* + (?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* + (%s\w+) # 1: return type + ([\s*]+(?:\s*(?:\*+|\bconst\b|\bG_CONST_RETURN\b))*)\s* # 2: .. cont' + \(?([A-Za-z]\w*)\)? # 3: name + \s*\(""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) + + PLINE_MATCHER[2] = re.compile( + r"""^\s* + (?:\b(?:extern%s)\s*)* + (%s\w+) # 1: retun type + ((?:\s*(?:\*+|\bconst\b|\bG_CONST_RETURN\b))*) # 2: .. cont' + \s*$""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) + + PLINE_MATCHER[3] = re.compile( + r"""^\s*(?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* + (%s\w+) # 1: return type + ((?:\s*(?:\*+|\bconst\b|\bG_CONST_RETURN\b))*) # 2: .. cont' + \s*$""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) + + PLINE_MATCHER[4] = re.compile( + r"""^\s*(?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* + (%s\w+) # 1: return type + (\s+\*+|\*+|\s)\s* # 2: ptr? + ([A-Za-z]\w*) # 3: symbols + \s*$""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) + + # Matchers for 2nd previous line + global PPLINE_MATCHER + PPLINE_MATCHER = [ + # 0: FUNCTIONS + re.compile( + r"""^\s*(?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* + ( + (?:const\s+|G_CONST_RETURN\s+|signed\s+|unsigned\s+|struct\s+|union\s+|enum\s+)* + \w+ + (?:\**\s+\**(?:const|G_CONST_RETURN))? + (?:\s+|\s*\*+) + )\s*$""" % ignore_decorators, re.VERBOSE) + ] + def ScanHeaders(source_dir, section_list, decl_list, get_types, seen_headers, options): + """Scans a directory tree looking for header files. + + Args: + source_dir (str): the directory to scan. + section_list (dict): map of section to filenames. + seen_headers (set): set to avoid scanning headers twice + """ + logging.info('Scanning source directory: %s', source_dir) # This array holds any subdirectories found. @@ -270,18 +359,19 @@ def ScanHeaders(source_dir, section_list, decl_list, get_types, seen_headers, op get_types, seen_headers, options) -# -# Function : ScanHeader -# Description : This scans a header file, looking for declarations of -# functions, macros, typedefs, structs and unions, which it -# outputs to the decl_list. -# Arguments : input_file - the header file to scan. -# section_list - a map of sections. -# decl_list - a list of declarations -# seen_headers - set to avoid scanning headers twice -# Returns : it adds declarations to the appropriate list. -# def ScanHeader(input_file, section_list, decl_list, get_types, seen_headers, options): + """Scan a header file for doc commants. + + Look for doc comments and extract them. Parse each doc comments and the + symbol declaration. + + Args: + input_file (str): the header file to scan. + section_list (dict): a map of section per filename + decl_list (list): a list of declarations + seen_headers (set): set to avoid scanning headers twice + """ + # Don't scan headers twice canonical_input_file = os.path.realpath(input_file) if canonical_input_file in seen_headers: @@ -313,21 +403,34 @@ def ScanHeader(input_file, section_list, decl_list, get_types, seen_headers, opt with open(input_file, 'r', encoding='utf-8') as hdr: input_lines = hdr.readlines() - slist, doc_comments = ScanHeaderContent(input_lines, decl_list, get_types, options) + try: + slist, doc_comments = ScanHeaderContent(input_lines, decl_list, get_types, options) + logging.info("Scanning %s done", input_file) - logging.info("Scanning %s done", input_file) + liststr = SeparateSubSections(slist, doc_comments) + if liststr != '': + if file_basename not in section_list: + section_list[file_basename] = '' + section_list[file_basename] += "
\n%s\n%s
\n\n" % (file_basename, liststr) - liststr = SeparateSubSections(slist, doc_comments) - if liststr != '': - if file_basename not in section_list: - section_list[file_basename] = '' - section_list[file_basename] += "
\n%s\n%s
\n\n" % (file_basename, liststr) + except RuntimeError as e: + common.LogWarning(input_file, 0, str(e)) -# Scan the the given content lines. -# Returns: a list of symbols found and a set of symbols for which we have a -# doc-comment def ScanHeaderContent(input_lines, decl_list, get_types, options): + """Scan the the given content lines. + + Args: + input_lines (list): + decl_list (list): symbols declarations + get_types (list): lst of symbols that have a get_type function + options: commandline options + + Returns: + list: a list of symbols found and a set of symbols for which we have a + doc-comment + """ + # Holds the resulting list of declarations. slist = [] # Holds the title of the section @@ -337,7 +440,7 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): # The type of declaration we are in, e.g. 'function' or 'macro'. in_declaration = '' # True if we should skip a block. - skip_block = 0 + skip_block = False # The current symbol being declared. symbol = None # Holds the declaration of the current symbol. @@ -372,63 +475,13 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): doc_comment = '' # avoid generating regex with |'' (matching no string) - ignore_decorators = '' + # TODO(ensonic): keep in sync with InitScanner() + # TODO(ensonic): extract the remaining regexps + ignore_decorators = '' # 1 uses + optional_decorators_regex = '' # 4 uses if options.ignore_decorators: - ignore_decorators = '|' + options.ignore_decorators - - # FUNCTION POINTER VARIABLES - CLINE_MATCHER[4] = re.compile( - r"""^\s*(?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* - ((?:const\s+|G_CONST_RETURN\s+)?\w+) # 1: 1st const - (\s+const)?\s* # 2: 2nd const - (\**)\s* # 3: ptr - \(\*\s* - (\w+) # 4: name - \)\s*\(""" % ignore_decorators, re.VERBOSE) - # OTHER TYPEDEFS - CLINE_MATCHER[15] = re.compile( - r"""^\s* - (?:extern|[A-Za-z_]+VAR%s)\s+ - (?:%s\w+) - (?:\s+\*+|\*+|\s)\s* - (?:const\s+)* - ([A-Za-z]\w*) # 1: name - \s*;""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) - # FUNCTIONS - CLINE_MATCHER[18] = re.compile( - r"""^\s* - (?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* - (%s\w+) # 1: return type - ([\s*]+(?:\s*(?:\*+|\bconst\b|\bG_CONST_RETURN\b))*)\s* # 2: .. cont' - (_[A-Za-z]\w*) # 3: name - \s*\(""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) - CLINE_MATCHER[19] = re.compile( - r"""^\s* - (?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* - (%s\w+) # 1: return type - ([\s*]+(?:\s*(?:\*+|\bconst\b|\bG_CONST_RETURN\b))*)\s* # 2: .. cont' - ([A-Za-z]\w*) # 3: name - \s*\(""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) - - PLINE_MATCHER[2] = re.compile( - r"""^\s* - (?:\b(?:extern%s)\s*)* - (%s\w+) # 1: retun type - ((?:\s*(?:\*+|\bconst\b|\bG_CONST_RETURN\b))*) # 2: .. cont' - \s*$""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) - - PLINE_MATCHER[3] = re.compile( - r"""^\s*(?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* - (%s\w+) # 1: return type - ((?:\s*(?:\*+|\bconst\b|\bG_CONST_RETURN\b))*) # 2: .. cont' - \s*$""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) - - PLINE_MATCHER[4] = re.compile( - r"""^\s*(?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* - (%s\w+) # 1: return type - (\s+\*+|\*+|\s)\s* # 2: ptr? - ([A-Za-z]\w*) # 3: symbols - \s*$""" % (ignore_decorators, RET_TYPE_MODIFIER), re.VERBOSE) + ignore_decorators = '|' + options.ignore_decorators.replace('()', '\(\w*\)') + optional_decorators_regex = '(?:\s+(?:%s))?' % ignore_decorators[1:] for line in input_lines: # If this is a private header, skip it. @@ -512,21 +565,24 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): cm = [m.match(line) for m in CLINE_MATCHER] pm = [m.match(previous_line) for m in PLINE_MATCHER] + ppm = [m.match(pre_previous_line) for m in PPLINE_MATCHER] # MACROS if cm[0]: symbol = cm[0].group(1) decl = line - # We assume all macros which start with '_' are private. + # We assume all macros which start with '_' are private, but + # we accept '_' itself which is the standard gettext macro. # We also try to skip the first macro if it looks like the # standard #ifndef HEADER_FILE #define HEADER_FILE etc. # And we only want TRUE & FALSE defined in GLib. if not symbol.startswith('_') \ - and (not re.search(r'#ifndef\s+' + symbol, previous_line) - or first_macro == 0) \ - and ((symbol != 'TRUE' and symbol != 'FALSE') - or options.module == 'glib'): + and (not re.search(r'#ifndef\s+' + symbol, previous_line) + or first_macro == 0) \ + and ((symbol != 'TRUE' and symbol != 'FALSE') + or options.module == 'glib') \ + or symbol == '_': in_declaration = 'macro' logging.info('Macro: "%s"', symbol) else: @@ -700,7 +756,7 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): decl = line[cm[20].end():] if is_inline_func(previous_line): - skip_block = 1 + skip_block = True if pm[3]: ret_type = format_ret_type(pm[3].group(1), None, pm[3].group(2)) logging.info('Function (3): "%s", Returns: "%s"', symbol, ret_type) @@ -715,23 +771,14 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): # on the previous line(s), and the start of the parameters on this. elif cm[21]: decl = line[cm[21].end():] - ppm = re.search( - r"""^\s*(?:\b(?:extern|static|inline|G_INLINE_FUNC%s)\s*)* - ( - (?:const\s+|G_CONST_RETURN\s+|signed\s+|unsigned\s+|struct\s+|union\s+|enum\s+)* - \w+ - (?:\**\s+\**(?:const|G_CONST_RETURN))? - (?:\s+|\s*\*+) - )\s*$""" % ignore_decorators, pre_previous_line, re.VERBOSE) - if pm[4]: ret_type = pm[4].group(1) + ' ' + pm[4].group(2).strip() symbol = pm[4].group(3) in_declaration = 'function' logging.info('Function (5): "%s", Returns: "%s"', symbol, ret_type) - elif re.search(r'^\s*\w+\s*$', previous_line) and ppm: - ret_type = ppm.group(1) + elif re.search(r'^\s*\w+\s*$', previous_line) and ppm[0]: + ret_type = ppm[0].group(1) ret_type = re.sub(r'\s*\n', '', ret_type, flags=re.MULTILINE) in_declaration = 'function' @@ -769,35 +816,19 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): in_declaration = 'union' logging.info('Union(_): "%s"', symbol) else: - logging.info('in decl: skip=%s %s', skip_block, line.strip()) - # If we were already in the middle of a declaration, we simply add - # the current line onto the end of it. - if skip_block == 0: - decl += line - else: - # Remove all nested pairs of curly braces. - brace_remover = r'{[^{]*}' - bm = re.search(brace_remover, line) - while bm: - line = re.sub(brace_remover, '', line) - bm = re.search(brace_remover, line) - # Then hope at most one remains in the line... - bm = re.search(r'(.*?){', line) - if bm: - if skip_block == 1: - decl += bm.group(1) - skip_block += 1 - elif '}' in line: - skip_block -= 1 - if skip_block == 1: - # this is a hack to detect the end of declaration - decl += ';' - skip_block = 0 - logging.info('2: ---') + logging.info('in decl %s: skip=%s %s', in_declaration, skip_block, line.strip()) + decl += line - else: - if skip_block == 1: - decl += line + if skip_block and '{' in decl: + (skip_block, decl) = remove_braced_content(decl) + logging.info('in decl: skip=%s decl=[%s]', skip_block, decl) + + pre_previous_line = previous_line + previous_line = line + + if skip_block: + logging.info('skipping, in decl %s, decl=[%s]', in_declaration, decl) + continue if in_declaration == "g-declare": dm = re.search(r'\s*(\w+)\s*,\s*(\w+)\s*,\s*(\w+)\s*,\s*(\w+)\s*,\s*(\w+)\s*\).*$', decl) @@ -816,9 +847,9 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): ModuleObjName, deprecated) in_declaration = '' - # Note that sometimes functions end in ') G_GNUC_PRINTF (2, 3);' or - # ') __attribute__ (...);'. if in_declaration == 'function': + # Note that sometimes functions end in ') G_GNUC_PRINTF (2, 3);' or + # ') __attribute__ (...);'. regex = r'\)\s*(G_GNUC_.*|.*DEPRECATED.*%s\s*|__attribute__\s*\(.*\)\s*)*;.*$' % ignore_decorators pm = re.search(regex, decl, flags=re.MULTILINE) if pm: @@ -844,7 +875,7 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): internal = 0 deprecated_conditional_nest = int(deprecated_conditional_nest) in_declaration = '' - skip_block = 0 + skip_block = False if in_declaration == 'user_function': if re.search(r'\).*$', decl): @@ -867,24 +898,41 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): if AddSymbolToList(slist, symbol): decl_list.append('\n%s\n%s%s\n' % (symbol, deprecated, decl)) else: + logging.info('skip internal macro: [%s]', symbol) internal = 0 deprecated_conditional_nest = int(deprecated_conditional_nest) in_declaration = '' + else: + logging.info('skip empty macro: [%s]', symbol) if in_declaration == 'enum': - em = re.search(r'\}\s*(\w+)?;\s*$', decl) + # Examples: + # "};" + # "} MyEnum;" + # "} MyEnum DEPRECATED_FOR(NewEnum);" + # "} DEPRECATED_FOR(NewEnum);" + em = re.search(r'\n\s*\}\s*(?:(\w+)?%s)?;\s*$' % optional_decorators_regex, decl) if em: if symbol == '': symbol = em.group(1) + # Enums could contain deprecated values and that doesn't mean + # the whole enum is deprecated, so they are ignored when setting + # deprecated_conditional_nest above. Here we can check if the + # _DEPRECATED is between '}' and ';' which would mean the enum + # as a whole is deprecated. + if re.search(r'\n\s*\}.*_DEPRECATED.*;\s*$', decl): + deprecated = '\n' if AddSymbolToList(slist, symbol): - decl_list.append('\n%s\n%s%s\n' % (symbol, deprecated, decl)) + stripped_decl = re.sub(optional_decorators_regex, '', decl) + decl_list.append('\n%s\n%s%s\n' % (symbol, deprecated, stripped_decl)) deprecated_conditional_nest = int(deprecated_conditional_nest) in_declaration = '' # We try to handle nested structs/unions, but unmatched brackets in # comments will cause problems. if in_declaration == 'struct' or in_declaration == 'union': - sm = re.search(r'\n\}\s*(\w*);\s*$', decl) + # Same regex as for enum + sm = re.search(r'\n\}\s*(?:(\w+)?%s)?;\s*$' % optional_decorators_regex, decl) if level <= 1 and sm: if symbol == '': symbol = sm.group(1) @@ -898,8 +946,9 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): logging.info('Store struct: "%s"', symbol) if AddSymbolToList(slist, symbol): structsym = in_declaration.upper() + stripped_decl = re.sub('(%s)' % optional_decorators_regex, '', decl) decl_list.append('<%s>\n%s\n%s%s\n' % - (structsym, symbol, deprecated, decl, structsym)) + (structsym, symbol, deprecated, stripped_decl, structsym)) if symbol in forward_decls: del forward_decls[symbol] deprecated_conditional_nest = int(deprecated_conditional_nest) @@ -911,8 +960,9 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): level -= line.count('}') logging.info('struct/union level : %d', level) - pre_previous_line = previous_line - previous_line = line + # here we want in_declaration=='', otherwise we have a partial declaration + if in_declaration != '': + raise RuntimeError('partial declaration (%s) : %s ' % (in_declaration, decl)) # print remaining forward declarations for symbol in sorted(forward_decls.keys()): @@ -926,15 +976,45 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options): return slist, doc_comments +def remove_braced_content(decl): + """Remove all nested pairs of curly braces. + + Args: + decl (str): the decl + + Returns: + str: a declaration stripped of braced content + """ + + skip_block = True + # Remove all nested pairs of curly braces. + brace_remover = r'{[^{]*?}' + bm = re.search(brace_remover, decl) + while bm: + decl = re.sub(brace_remover, '', decl) + logging.info('decl=[%s]' % decl) + bm = re.search(brace_remover, decl) + + # If all '{' have been matched and removed, we're done + bm = re.search(r'(.*?){', decl) + if not bm: + # this is a hack to detect the end of declaration + decl = decl.rstrip() + ';' + skip_block = False + logging.info('skip_block done') + + return skip_block, decl + + def is_inline_func(line): line = line.strip() if line.startswith('G_INLINE_FUNC'): logging.info('skip block after G_INLINE_FUNC function') - return 1 + return True if re.search(r'static\s+inline', line): logging.info('skip block after static inline function') - return 1 - return 0 + return True + return False def format_ret_type(base_type, const, ptr): @@ -946,10 +1026,20 @@ def format_ret_type(base_type, const, ptr): return ret_type -# Separate the standard macros and functions, placing them at the -# end of the current section, in a subsection named 'Standard'. -# do this in a loop to catch object, enums and flags def SeparateSubSections(slist, doc_comments): + """Separate the standard macros and functions. + + Place them at the end of the current section, in a subsection named + 'Standard'. Do this in a loop to catch objects, enums and flags. + + Args: + slist (list): list of symbols + doc_comments (dict): comments for each symbol + + Returns: + str: the section doc xml fomatted as string + """ + klass = lclass = prefix = lprefix = None standard_decl = [] liststr = '\n'.join(s for s in slist if s) + '\n' diff --git a/gtkdoc/scangobj.py b/gtkdoc/scangobj.py index 4535458..683634a 100644 --- a/gtkdoc/scangobj.py +++ b/gtkdoc/scangobj.py @@ -1151,12 +1151,14 @@ output_object_args (FILE *fp, GType object_type) g_free (properties); #ifdef GTK_IS_CONTAINER_CLASS +#if !GTK_CHECK_VERSION(3,96,0) if (!child_prop && GTK_IS_CONTAINER_CLASS (class)) { properties = gtk_container_class_list_child_properties (class, &n_properties); child_prop = TRUE; continue; } #endif +#endif #ifdef GTK_IS_CELL_AREA_CLASS if (!child_prop && GTK_IS_CELL_AREA_CLASS (class)) { @@ -1185,14 +1187,14 @@ MAIN_CODE_END = """ """ -def execute_command(options, description, command): +def execute_command(options, description, command, env=None): if options.verbose: call = subprocess.check_call else: call = subprocess.check_output try: - call(command) + call(command, env=env) except subprocess.CalledProcessError as e: logging.warning('%s scanner failed: %d, command: %s', description, e.returncode, ' '.join(command)) @@ -1304,8 +1306,12 @@ def run(options): if res: return res + run_env = os.environ.copy() + run_env['LC_MESSAGES'] = 'C' + run_env.pop('LC_ALL', None) res = execute_command(options, 'Running', - shlex.split(options.run) + ['./' + x_file]) + shlex.split(options.run) + ['./' + x_file], + env=run_env) if res: return res diff --git a/help/Makefile.in b/help/Makefile.in index f32a7c9..0f06cba 100644 --- a/help/Makefile.in +++ b/help/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15.1 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2017 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -135,7 +135,7 @@ am__recursive_targets = \ $(RECURSIVE_CLEAN_TARGETS) \ $(am__extra_recursive_targets) AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ - distdir + distdir distdir-am am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -321,7 +321,6 @@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -351,8 +350,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -469,7 +468,10 @@ cscopelist-am: $(am__tagged_files) distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff --git a/help/manual/C/index.docbook b/help/manual/C/index.docbook index 675523a..794f618 100644 --- a/help/manual/C/index.docbook +++ b/help/manual/C/index.docbook @@ -80,6 +80,12 @@ + + 1.30.1 + 09 May 2019 + ss + development + 1.30 08 May 2019 diff --git a/help/manual/Makefile.in b/help/manual/Makefile.in index 1789b8a..034cb2c 100644 --- a/help/manual/Makefile.in +++ b/help/manual/Makefile.in @@ -1,7 +1,7 @@ -# Makefile.in generated by automake 1.15.1 from Makefile.am. +# Makefile.in generated by automake 1.16.1 from Makefile.am. # @configure_input@ -# Copyright (C) 1994-2017 Free Software Foundation, Inc. +# Copyright (C) 1994-2018 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -261,7 +261,6 @@ program_transform_name = @program_transform_name@ psdir = @psdir@ pyexecdir = @pyexecdir@ pythondir = @pythondir@ -runstatedir = @runstatedir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ srcdir = @srcdir@ @@ -298,8 +297,8 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) @@ -323,7 +322,10 @@ ctags CTAGS: cscope cscopelist: -distdir: $(DISTFILES) +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ list='$(DISTFILES)'; \ diff --git a/help/manual/bn_IN/index.docbook b/help/manual/bn_IN/index.docbook index cb3493b..40caf7c 100644 --- a/help/manual/bn_IN/index.docbook +++ b/help/manual/bn_IN/index.docbook @@ -80,6 +80,12 @@ + + 1.30.1 + 09 May 2019 + ss + development + 1.30 08 May 2019 diff --git a/help/manual/cs/index.docbook b/help/manual/cs/index.docbook index a20bf1c..11b60d3 100644 --- a/help/manual/cs/index.docbook +++ b/help/manual/cs/index.docbook @@ -37,6 +37,12 @@ + + 1.30.1 + 09 May 2019 + ss + development + 1.30 08 May 2019 diff --git a/help/manual/de/index.docbook b/help/manual/de/index.docbook index 9a606d8..c01623d 100644 --- a/help/manual/de/index.docbook +++ b/help/manual/de/index.docbook @@ -37,6 +37,12 @@ + + 1.30.1 + 09 May 2019 + ss + development + 1.30 08 May 2019 diff --git a/help/manual/el/index.docbook b/help/manual/el/index.docbook index 20022a4..d6eb5f0 100644 --- a/help/manual/el/index.docbook +++ b/help/manual/el/index.docbook @@ -37,6 +37,12 @@ + + 1.30.1 + 09 May 2019 + ss + development + 1.30 08 May 2019 diff --git a/help/manual/en_GB/index.docbook b/help/manual/en_GB/index.docbook index 374bbb3..4ed9c24 100644 --- a/help/manual/en_GB/index.docbook +++ b/help/manual/en_GB/index.docbook @@ -67,6 +67,12 @@ + + 1.30.1 + 09 May 2019 + ss + development + 1.30 08 May 2019 diff --git a/help/manual/es/es.po b/help/manual/es/es.po index 07ad767..0fc201b 100644 --- a/help/manual/es/es.po +++ b/help/manual/es/es.po @@ -8,15 +8,15 @@ msgid "" msgstr "" "Project-Id-Version: gtk-doc-help.master\n" -"POT-Creation-Date: 2018-10-03 08:17+0000\n" -"PO-Revision-Date: 2019-03-14 15:46+0100\n" +"POT-Creation-Date: 2019-05-09 19:30+0000\n" +"PO-Revision-Date: 2019-07-02 12:04+0200\n" "Last-Translator: Daniel Mustieles \n" "Language-Team: es \n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Gtranslator 3.31.90\n" +"X-Generator: Gtranslator 3.32.0\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. Put one translator per line, in the form NAME , YEAR1, YEAR2 @@ -89,8 +89,9 @@ msgstr "2000, 2005 Dan Mueth and Chris Lyttle" #. (itstool) path: bookinfo/copyright #: C/index.docbook:52 -msgid "2007-2015 Stefan Sauer (Kost)" -msgstr "2007-2015 Stefan Sauer (Kost)" +#| msgid "2007-2015 Stefan Sauer (Kost)" +msgid "2007-2019 Stefan Sauer (Kost)" +msgstr "2007-2019 Stefan Sauer (Kost)" #. (itstool) path: legalnotice/para #: C/index.docbook:65 @@ -125,24 +126,44 @@ msgstr "" #. (itstool) path: revhistory/revision #: C/index.docbook:83 +#| msgid "" +#| "1.29.1 28 Aug 2018 " +#| "ss development" msgid "" -"1.29.1 28 Aug 2018 ss1.30.1 09 May 2019 ss development" msgstr "" -"1.29.1 28 de agosto de 2018 " +"1.30.1 9 de mayo de 2019 " "ss desarrollo" #. (itstool) path: revhistory/revision #: C/index.docbook:89 +#| msgid "" +#| "1.23 17 May 2015 ss bug fix" +msgid "" +"1.30 08 May 2019 ss more test coverage" +msgstr "" +"1.30 8 de mayo de 2019 " +"ss cobertura para más pruebas" + +#. (itstool) path: revhistory/revision +#: C/index.docbook:95 +#| msgid "" +#| "1.28 24 Mar 2018 ss bug fixes" msgid "" "1.29 28 Aug 2018 ss development" +"authorinitials> bug fixes" msgstr "" "1.29 28 de agosto de 2018 " -"ss desarrollo" +"ss correcciones de errores" #. (itstool) path: revhistory/revision -#: C/index.docbook:95 +#: C/index.docbook:101 msgid "" "1.28 24 Mar 2018 ss bug fixes" @@ -152,7 +173,7 @@ msgstr "" "revremark>" #. (itstool) path: revhistory/revision -#: C/index.docbook:101 +#: C/index.docbook:107 msgid "" "1.27 07 Dec 2017 ss fine tuning of the python port" @@ -162,7 +183,7 @@ msgstr "" "python" #. (itstool) path: revhistory/revision -#: C/index.docbook:107 +#: C/index.docbook:113 msgid "" "1.26 11 Aug 2017 ss port all tools from perl/bash to python" #. (itstool) path: revhistory/revision -#: C/index.docbook:113 +#: C/index.docbook:119 msgid "" "1.25 21 March 2016 ss bug fixes, test cleanups" @@ -183,7 +204,7 @@ msgstr "" "limpieza" #. (itstool) path: revhistory/revision -#: C/index.docbook:119 +#: C/index.docbook:125 msgid "" "1.24 29 May 2015 ss bug fix" @@ -193,7 +214,7 @@ msgstr "" "revremark>" #. (itstool) path: revhistory/revision -#: C/index.docbook:125 +#: C/index.docbook:131 msgid "" "1.23 17 May 2015 ss bug fix" @@ -203,7 +224,7 @@ msgstr "" "revremark>" #. (itstool) path: revhistory/revision -#: C/index.docbook:131 +#: C/index.docbook:137 msgid "" "1.22 07 May 2015 ss bug fixes, dropping deprecated features" #. (itstool) path: revhistory/revision -#: C/index.docbook:137 +#: C/index.docbook:143 msgid "" "1.21 17 Jul 2014 ss bug fixes, dropping deprecated features" #. (itstool) path: revhistory/revision -#: C/index.docbook:143 +#: C/index.docbook:149 msgid "" "1.20 16 Feb 2014 ss bug fixes, markdown support, style improvements" #. (itstool) path: revhistory/revision -#: C/index.docbook:149 +#: C/index.docbook:155 msgid "" "1.19 05 Jun 2013 ss bug fixes" @@ -246,7 +267,7 @@ msgstr "" "revremark>" #. (itstool) path: revhistory/revision -#: C/index.docbook:155 +#: C/index.docbook:161 msgid "" "1.18 14 Sep 2011 ss bug fixes, speedups, markdown support" @@ -256,7 +277,7 @@ msgstr "" "mejoras en la velocidad y soporte de marcado" #. (itstool) path: revhistory/revision -#: C/index.docbook:161 +#: C/index.docbook:167 msgid "" "1.17 26 Feb 2011 sk urgent bug fix update" @@ -266,7 +287,7 @@ msgstr "" "corrección de error" #. (itstool) path: revhistory/revision -#: C/index.docbook:167 +#: C/index.docbook:173 msgid "" "1.16 14 Jan 2011 sk bugfixes, layout improvements" @@ -276,7 +297,7 @@ msgstr "" "mejoras en la distribución" #. (itstool) path: revhistory/revision -#: C/index.docbook:173 +#: C/index.docbook:179 msgid "" "1.15 21 May 2010 sk bug and regression fixes" @@ -286,7 +307,7 @@ msgstr "" "regresiones" #. (itstool) path: revhistory/revision -#: C/index.docbook:179 +#: C/index.docbook:185 msgid "" "1.14 28 March 2010 sk bugfixes and performance improvements" @@ -296,7 +317,7 @@ msgstr "" "mejoras en el rendimiento" #. (itstool) path: revhistory/revision -#: C/index.docbook:185 +#: C/index.docbook:191 msgid "" "1.13 18 December 2009 " "sk broken tarball update" #. (itstool) path: revhistory/revision -#: C/index.docbook:191 +#: C/index.docbook:197 msgid "" "1.12 18 December 2009 " "sk new tool features and " @@ -318,7 +339,7 @@ msgstr "" "nuevas características" #. (itstool) path: revhistory/revision -#: C/index.docbook:197 +#: C/index.docbook:203 msgid "" "1.11 16 November 2008 " "mal GNOME doc-utils migration" #. (itstool) path: chapter/title -#: C/index.docbook:210 +#: C/index.docbook:216 msgid "Introduction" msgstr "Introducción" #. (itstool) path: chapter/para -#: C/index.docbook:212 +#: C/index.docbook:218 msgid "" "This chapter introduces GTK-Doc and gives an overview of what it is and how " "it is used." @@ -343,12 +364,12 @@ msgstr "" "es y cómo usarlo." #. (itstool) path: sect1/title -#: C/index.docbook:218 +#: C/index.docbook:224 msgid "What is GTK-Doc?" msgstr "¿Qué es GTK-Doc?" #. (itstool) path: sect1/para -#: C/index.docbook:220 +#: C/index.docbook:226 msgid "" "GTK-Doc is used to document C code. It is typically used to document the " "public API of libraries, such as the GTK+ and GNOME libraries. But it can " @@ -359,12 +380,12 @@ msgstr "" "Pero también se puede usar para documentar código de aplicaciones." #. (itstool) path: sect1/title -#: C/index.docbook:228 +#: C/index.docbook:234 msgid "How Does GTK-Doc Work?" msgstr "¿Cómo funciona GTK-Doc?" #. (itstool) path: sect1/para -#: C/index.docbook:230 +#: C/index.docbook:236 msgid "" "GTK-Doc works by using documentation of functions placed inside the source " "files in specially-formatted comment blocks, or documentation added to the " @@ -379,7 +400,7 @@ msgstr "" "archivos de cabecera; no produce salida para funciones estáticas)." #. (itstool) path: sect1/para -#: C/index.docbook:237 +#: C/index.docbook:243 msgid "" "GTK-Doc consists of a number of python scripts, each performing a different " "step in the process." @@ -388,13 +409,12 @@ msgstr "" "diferente en el proceso." #. (itstool) path: sect1/para -#: C/index.docbook:242 +#: C/index.docbook:248 msgid "There are 5 main steps in the process:" msgstr "Existen 5 pasos importantes en el proceso:" #. (itstool) path: listitem/para -#: C/index.docbook:249 -#, fuzzy +#: C/index.docbook:255 #| msgid "" #| "Writing the documentation. The author fills in the " #| "source files with the documentation for each function, macro, union etc. " @@ -407,11 +427,10 @@ msgid "" msgstr "" "Escribir la documentación. El autor rellena los " "archivos de fuentes con la documentación para cada función, macro, unión, " -"etc. (En el pasado la información se introducía en archivos de plantillas, " -"lo que ya no se recomienda)." +"etc." #. (itstool) path: listitem/para -#: C/index.docbook:258 +#: C/index.docbook:264 msgid "" "Gathering information about the code. " "gtkdoc-scan scans the header files of the code " @@ -447,7 +466,7 @@ msgstr "" "txt dentro de <module>-overrides.txt." #. (itstool) path: listitem/para -#: C/index.docbook:275 +#: C/index.docbook:281 msgid "" "gtkdoc-scangobj can also be used to dynamically " "query a library about any GObject subclasses it exports. It saves " @@ -461,7 +480,7 @@ msgstr "" "que proporciona." #. (itstool) path: listitem/para -#: C/index.docbook:281 +#: C/index.docbook:287 msgid "" "gtkdoc-scanobj should not be used anymore. It was " "needed in the past when GObject was still GtkObject inside gtk+." @@ -470,7 +489,7 @@ msgstr "" "necesitó en el pasado, cuando GObject todavía era GtkObject dentro de GTK+." #. (itstool) path: listitem/para -#: C/index.docbook:288 +#: C/index.docbook:294 msgid "" "Generating the XML and HTML/PDF. gtkdoc-" "mkdb turns the template files into XML files in the gtkdoc-mkhtml turns the XML files into HTML files " "in the html/ subdirectory. Likewise " @@ -501,7 +520,7 @@ msgstr "" "paquete>.pdf." #. (itstool) path: listitem/para -#: C/index.docbook:303 +#: C/index.docbook:309 msgid "" "Files in xml/ and html/ directories are always overwritten. One " @@ -512,7 +531,7 @@ msgstr "" "Nunca se deben editar directamente." #. (itstool) path: listitem/para -#: C/index.docbook:311 +#: C/index.docbook:317 msgid "" "Fixing up cross-references between documents. After " "installing the HTML files, gtkdoc-fixxref can be " @@ -535,17 +554,17 @@ msgstr "" "esa documentación está instalada)." #. (itstool) path: sect1/title -#: C/index.docbook:329 +#: C/index.docbook:335 msgid "Getting GTK-Doc" msgstr "Obtener GTK-Doc" #. (itstool) path: sect2/title -#: C/index.docbook:332 +#: C/index.docbook:338 msgid "Requirements" msgstr "Requerimientos" #. (itstool) path: sect2/para -#: C/index.docbook:333 +#: C/index.docbook:339 msgid "" "python 2/3 - the main scripts are written in python." msgstr "" @@ -553,7 +572,7 @@ msgstr "" "python." #. (itstool) path: sect2/para -#: C/index.docbook:336 +#: C/index.docbook:342 msgid "" "xsltproc - the xslt processor from libxslt xmlsoft.org/XSLT/" @@ -562,7 +581,7 @@ msgstr "" "\"http://xmlsoft.org/XSLT/\" type=\"http\">xmlsoft.org/XSLT/" #. (itstool) path: sect2/para -#: C/index.docbook:340 +#: C/index.docbook:346 msgid "" "docbook-xsl - the docbook xsl stylesheets sourceforge.net/projects/docbook/files/docbook-xsl" #. (itstool) path: sect2/para -#: C/index.docbook:344 +#: C/index.docbook:350 msgid "" "One of source-highlight, highlight " "or vim - optional - used for syntax highlighting of " @@ -584,12 +603,12 @@ msgstr "" "los ejemplos." #. (itstool) path: sect1/title -#: C/index.docbook:352 +#: C/index.docbook:358 msgid "About GTK-Doc" msgstr "Acerca de GTK-Doc" #. (itstool) path: sect1/para -#: C/index.docbook:354 +#: C/index.docbook:360 msgid "" "Historically GTK-Doc was used to generate template files from the sources " "code. These template files could be used by developers to enter the API " @@ -600,15 +619,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: C/index.docbook:364 C/index.docbook:378 +#: C/index.docbook:370 C/index.docbook:384 msgid "(FIXME)" msgstr "(ARRÉGLAME)" #. (itstool) path: sect1/para -#: C/index.docbook:368 -#| msgid "" -#| "(History, authors, web pages, mailing list, license, future plans, " -#| "comparison with other similar systems.)" +#: C/index.docbook:374 msgid "" "(authors, web pages, mailing list, license, future plans, comparison with " "other similar systems.)" @@ -617,22 +633,22 @@ msgstr "" "comparación con otros sistemas similares.)" #. (itstool) path: sect1/title -#: C/index.docbook:376 +#: C/index.docbook:382 msgid "About this Manual" msgstr "Acerca de este manual" #. (itstool) path: sect1/para -#: C/index.docbook:382 +#: C/index.docbook:388 msgid "(who it is meant for, where you can get it, license)" msgstr "(a quién está dirigido, dónde puede obtenerse, licencia)" #. (itstool) path: chapter/title -#: C/index.docbook:391 +#: C/index.docbook:397 msgid "Project Setup" msgstr "Configuración del proyecto" #. (itstool) path: chapter/para -#: C/index.docbook:393 +#: C/index.docbook:399 msgid "" "This Chapter describes the steps that are necessary to integrate GTK-Doc " "into your project. The integration of GTK-Doc into a project includes the " @@ -640,7 +656,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: C/index.docbook:401 +#: C/index.docbook:407 msgid "" "Preparation of the directory structure and creating required configuration " "files for your GTK-Doc documentation (see Integration with version " @@ -666,7 +682,7 @@ msgid "" msgstr "" #. (itstool) path: chapter/para -#: C/index.docbook:427 +#: C/index.docbook:433 msgid "" "The following sections assume we work on a project called meep. " "This project contains two packages (or modules), a library called " @@ -678,12 +694,12 @@ msgstr "" "llamada meeper." #. (itstool) path: sect1/title -#: C/index.docbook:436 +#: C/index.docbook:442 msgid "Setting up a skeleton documentation" msgstr "Configurar el esquema de la documentación" #. (itstool) path: sect1/para -#: C/index.docbook:438 +#: C/index.docbook:444 msgid "" "A common convention is to place documentation into a folder called " "docs inside your top-level project directory. We usually " @@ -702,13 +718,13 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: C/index.docbook:469 +#: C/index.docbook:475 msgid "Example directory structure of meep project" msgstr "" "Ejemplo de estructura de carpetas para el proyecto meep" #. (itstool) path: example/programlisting -#: C/index.docbook:471 +#: C/index.docbook:477 #, no-wrap msgid "" "\n" @@ -736,7 +752,7 @@ msgstr "" " meeper/\n" #. (itstool) path: sect1/para -#: C/index.docbook:463 +#: C/index.docbook:469 msgid "" "In the following sections we will assume a directory structure for our " "meep project that uses the above conventions. <_:" @@ -744,20 +760,19 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: C/index.docbook:488 -#| msgid "Integration with autoconf" +#: C/index.docbook:494 msgid "Integration with Autotools" msgstr "Integración con Autotools" #. (itstool) path: sect1/para -#: C/index.docbook:489 +#: C/index.docbook:495 msgid "" "Integration of GTK-Doc into an autotools-based build system requires the " "following steps:" msgstr "" #. (itstool) path: listitem/para -#: C/index.docbook:495 +#: C/index.docbook:501 msgid "" "Ensure that gtkdocize is run once before the " "configure script. If an autogen.sh " @@ -766,7 +781,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: C/index.docbook:503 +#: C/index.docbook:509 msgid "" "The main purpose of gtkdocize is to make the " "gtk-doc.make Makefile and the gtk-doc.m4autoconf macros to " "configure.ac to enable GTK-Doc in your build system to " @@ -788,14 +803,14 @@ msgstr "" "configure." #. (itstool) path: listitem/para -#: C/index.docbook:518 +#: C/index.docbook:524 msgid "" "Among others with registers the --enable-gtk-doc option with " "the configure script." msgstr "" #. (itstool) path: listitem/para -#: C/index.docbook:524 +#: C/index.docbook:530 msgid "" "Create an automake script for each application or " "library in your project. In the example used in this documentation this step " @@ -803,7 +818,7 @@ msgid "" msgstr "" #. (itstool) path: sect1/para -#: C/index.docbook:533 +#: C/index.docbook:539 msgid "" "In the following sections, we will perform the above steps in reverse order. " "We start with the automake scripts and work our " @@ -813,21 +828,12 @@ msgid "" msgstr "" #. (itstool) path: sect2/title -#: C/index.docbook:543 +#: C/index.docbook:549 msgid "Integration with automake" msgstr "Integración con automake" #. (itstool) path: sect2/para -#: C/index.docbook:545 -#| msgid "" -#| "First copy the Makefile.am from the examples sub directory of the gtkdoc-" -#| "sources to your project's API documentation directory ( ./docs/reference/<package>). A local " -#| "copy should be available under e.g. /usr/share/doc/gtk-doc-" -#| "tools/examples/Makefile.am. If you have multiple doc-packages " -#| "repeat this for each one." +#: C/index.docbook:551 msgid "" "First copy the Makefile.am from the examples sub-directory of the Makefile.am to the " "AC_CONFIG_FILES macro in configure.acAC_CONFIG_FILES." #. (itstool) path: example/title -#: C/index.docbook:570 +#: C/index.docbook:576 msgid "Example directory structure with Makefiles.am" msgstr "" #. (itstool) path: example/programlisting -#: C/index.docbook:573 +#: C/index.docbook:579 #, no-wrap msgid "" "\n" @@ -900,7 +906,7 @@ msgstr "" " meeper/\n" #. (itstool) path: sect2/para -#: C/index.docbook:589 +#: C/index.docbook:595 #, fuzzy #| msgid "" #| "The next step is to edit the settings inside the Makefile.am--help para listar los parámetros que soportan." #. (itstool) path: listitem/para -#: C/index.docbook:613 +#: C/index.docbook:619 msgid "" " is used to provide the name of the package that " "is being documentated (e.g. meeper, or libmeep)." @@ -936,7 +942,7 @@ msgstr "" "que se está documentando (ej. meeper, o libmeep)." #. (itstool) path: listitem/para -#: C/index.docbook:620 +#: C/index.docbook:626 msgid "" " is used to specify the location of source " "directory which GTK-Doc searches for your API documentation. This will " @@ -945,7 +951,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: C/index.docbook:633 +#: C/index.docbook:639 msgid "" " and are used for " "dependencies. Each option take a file-glob (e.g. HFILE_GLOB=" @@ -954,7 +960,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: C/index.docbook:645 +#: C/index.docbook:651 msgid "" " allows to specify extra header files to " "include when scanning for API documentation, which are not found under " @@ -967,7 +973,7 @@ msgstr "" "contrib/extra.h)." #. (itstool) path: listitem/para -#: C/index.docbook:655 +#: C/index.docbook:661 msgid "" " allows to specify header files or directories " "to ignore when scanning for API documentation. Use the basename of the file " @@ -980,7 +986,7 @@ msgstr "" "private_code_folder)." #. (itstool) path: listitem/para -#: C/index.docbook:665 +#: C/index.docbook:671 msgid "" " allows to specify images files which will be " "copied into the html/ directory of the generated " @@ -990,7 +996,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: C/index.docbook:678 +#: C/index.docbook:684 msgid "" " allows to specify extra files that are " "included by $(DOC_MAIN_SGML_FILE) (e.g. " @@ -998,7 +1004,7 @@ msgid "" msgstr "" #. (itstool) path: listitem/para -#: C/index.docbook:689 +#: C/index.docbook:695 msgid "" " allows to specify files where " "gtk-doc abbreviations such as #GtkWidget " @@ -1006,19 +1012,19 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: C/index.docbook:607 +#: C/index.docbook:613 msgid "" "The following list explains the most relevant options. Check the example " "Makefile.am for additional options. <_:itemizedlist-1/>" msgstr "" #. (itstool) path: sect2/title -#: C/index.docbook:704 +#: C/index.docbook:710 msgid "Integration with autoconf" msgstr "Integración con autoconf" #. (itstool) path: sect2/para -#: C/index.docbook:706 +#: C/index.docbook:712 msgid "" "Integration with autoconf is very simple and " "includes one required step and an additional optional (but recommended) " @@ -1029,7 +1035,7 @@ msgid "" msgstr "" #. (itstool) path: warning/simpara -#: C/index.docbook:718 +#: C/index.docbook:724 msgid "" "Make sure that the GTK_DOC_CHECK macro is not indented. The " "macro must start at the beginning of the line and should not start with " @@ -1037,7 +1043,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: C/index.docbook:725 +#: C/index.docbook:731 msgid "" "The second step is to add the AC_CONFIG_MACRO_DIR(m4) to your " "configure.ac. This is not required but helps " @@ -1050,13 +1056,12 @@ msgid "" msgstr "" #. (itstool) path: example/title -#: C/index.docbook:738 -#| msgid "Integration with autoconf" +#: C/index.docbook:744 msgid "Minimal integration with autoconf" msgstr "Integración mínima con autoconf" #. (itstool) path: example/programlisting -#: C/index.docbook:739 +#: C/index.docbook:745 #, no-wrap msgid "" "\n" @@ -1072,13 +1077,12 @@ msgstr "" "GTK_DOC_CHECK([1.28])\n" #. (itstool) path: example/title -#: C/index.docbook:754 -#| msgid "Integration with autogen" +#: C/index.docbook:760 msgid "Integration with optional gtk-doc dependency" msgstr "Integración con dependencias opcionales de gtk-doc" #. (itstool) path: example/programlisting -#: C/index.docbook:755 +#: C/index.docbook:761 #, no-wrap msgid "" "\n" @@ -1102,7 +1106,7 @@ msgstr "" "])\n" #. (itstool) path: sect2/para -#: C/index.docbook:748 +#: C/index.docbook:754 msgid "" "The above example works, but will require all developers to have gtk-doc " "installed. A better way is to make building the documentation optional as " @@ -1110,7 +1114,7 @@ msgid "" msgstr "" #. (itstool) path: sect2/para -#: C/index.docbook:768 +#: C/index.docbook:774 #, fuzzy #| msgid "" #| "The first argument is used to check for the gtkdocversion at configure " @@ -1129,19 +1133,19 @@ msgstr "" "symbol> también añade diversas opciones de configuración:" #. (itstool) path: listitem/para -#: C/index.docbook:777 +#: C/index.docbook:783 msgid "--with-html-dir=PATH : path to installed docs" msgstr "--with-html-dir=RUTA: ruta a los documentos instalados" #. (itstool) path: listitem/para -#: C/index.docbook:778 +#: C/index.docbook:784 msgid "--enable-gtk-doc : use gtk-doc to build documentation [default=no]" msgstr "" "--enable-gtk-doc: usar gtk-doc para construir la documentación " "[predeterminado=no]" #. (itstool) path: listitem/para -#: C/index.docbook:779 +#: C/index.docbook:785 msgid "" "--enable-gtk-doc-html : build documentation in html format [default=yes]" msgstr "" @@ -1149,14 +1153,14 @@ msgstr "" "[predeterminado=sí]" #. (itstool) path: listitem/para -#: C/index.docbook:780 +#: C/index.docbook:786 msgid "--enable-gtk-doc-pdf : build documentation in pdf format [default=no]" msgstr "" "--enable-gtk-doc: usar gtk-doc para construir la documentación " "[predeterminado=no]" #. (itstool) path: important/para -#: C/index.docbook:784 +#: C/index.docbook:790 msgid "" "GTK-Doc is disabled by default! Remember to pass the option to the next configure run. " @@ -1170,7 +1174,7 @@ msgstr "" "desarrolladores)." #. (itstool) path: sect2/para -#: C/index.docbook:792 +#: C/index.docbook:798 #, fuzzy #| msgid "" #| "After all changes to configure.ac are made, update " @@ -1186,12 +1190,12 @@ msgstr "" "volviendo a ejecutar autoreconf -i o autogen.sh." #. (itstool) path: sect2/title -#: C/index.docbook:800 +#: C/index.docbook:806 msgid "Integration with autogen" msgstr "Integración con autogen" #. (itstool) path: sect2/para -#: C/index.docbook:802 +#: C/index.docbook:808 #, fuzzy #| msgid "" #| "Most projects will have an autogen.sh script to " @@ -1214,17 +1218,17 @@ msgstr "" "automake o autoconf." #. (itstool) path: sect2/para -#: C/index.docbook:810 +#: C/index.docbook:816 msgid "It should be run before autoreconf, autoheader, automake or autoconf." msgstr "" #. (itstool) path: example/title -#: C/index.docbook:815 +#: C/index.docbook:821 msgid "Running gtkdocize from autogen.sh" msgstr "Ejecutar gtkdocize desde autogen.sh" #. (itstool) path: example/programlisting -#: C/index.docbook:816 +#: C/index.docbook:822 #, no-wrap msgid "" "\n" @@ -1234,13 +1238,12 @@ msgstr "" "gtkdocize || exit 1\n" #. (itstool) path: example/title -#: C/index.docbook:824 -#| msgid "Running gtkdocize from autogen.sh" +#: C/index.docbook:830 msgid "Conditionally run gtkdocize from autogen.sh" msgstr "Condicionalmente, ejecutar gtkdocize desde autogen.sh" #. (itstool) path: example/programlisting -#: C/index.docbook:825 +#: C/index.docbook:831 #, no-wrap msgid "" "\n" @@ -1260,7 +1263,7 @@ msgstr "" "fi\n" #. (itstool) path: sect2/para -#: C/index.docbook:836 +#: C/index.docbook:842 #, fuzzy #| msgid "" #| "When running gtkdocize it copies gtk-" @@ -1282,7 +1285,7 @@ msgstr "" "gtkdocize." #. (itstool) path: sect2/para -#: C/index.docbook:842 +#: C/index.docbook:848 #, fuzzy #| msgid "" #| "When running gtkdocize it copies gtk-" @@ -1306,7 +1309,7 @@ msgstr "" "gtkdocize." #. (itstool) path: sect2/para -#: C/index.docbook:851 +#: C/index.docbook:857 msgid "" "Alternatively, additional arguments can also be passed to " "gtkdocize via the GTKDOCIZE_FLAGSautogen.sh. If this script runs configure for you, then " @@ -1334,7 +1337,7 @@ msgstr "" "configure con esta opción." #. (itstool) path: sect2/para -#: C/index.docbook:871 +#: C/index.docbook:877 msgid "" "The first make run generates several additional files in the doc-" "directories. The important ones are: <package>.types<paquete>-sections.txt." #. (itstool) path: example/title -#: C/index.docbook:879 +#: C/index.docbook:885 msgid "Running the doc build" msgstr "Ejecutar la construcción de la documentación" #. (itstool) path: example/programlisting -#: C/index.docbook:880 +#: C/index.docbook:886 #, no-wrap msgid "" "\n" @@ -1364,7 +1367,7 @@ msgstr "" "make\n" #. (itstool) path: sect2/para -#: C/index.docbook:887 +#: C/index.docbook:893 msgid "" "Now you can point your browser to docs/reference/<package>/" "index.html. With this initial setup you will only see a very " @@ -1377,12 +1380,12 @@ msgid "" msgstr "" #. (itstool) path: sect1/title -#: C/index.docbook:903 +#: C/index.docbook:909 msgid "Integration with CMake build systems" msgstr "Integración con sistemas de construcción CMake" #. (itstool) path: sect1/para -#: C/index.docbook:905 +#: C/index.docbook:911 msgid "" "GTK-Doc now provides a GtkDocConfig.cmake module (and " "the corresponding GtkDocConfigVersion.cmake module). " @@ -1396,12 +1399,12 @@ msgstr "" "filename>." #. (itstool) path: example/title -#: C/index.docbook:915 +#: C/index.docbook:921 msgid "Example of using GTK-Doc from CMake" msgstr "Ejeplo de uso de GTK-Doc desde CMake" #. (itstool) path: example/programlisting -#: C/index.docbook:916 +#: C/index.docbook:922 #, no-wrap msgid "" "\n" @@ -1443,17 +1446,17 @@ msgstr "" " DESTINATION ${CMAKE_INSTALL_DOCDIR})\n" #. (itstool) path: sect1/para -#: C/index.docbook:913 +#: C/index.docbook:919 msgid "The following example shows how to use this command. <_:example-1/>" msgstr "El siguiente ejemplo muestra cómo usar este comando. <_:example-1/>" #. (itstool) path: sect1/title -#: C/index.docbook:940 +#: C/index.docbook:946 msgid "Integration with plain makefiles or other build systems" msgstr "Integración con makefiles u otros sistemas de construcción" #. (itstool) path: sect1/para -#: C/index.docbook:942 +#: C/index.docbook:948 msgid "" "In the case one does not want to use automake and therefore gtk-" "doc.mak one will need to call the gtkdoc tools in the right order " @@ -1464,12 +1467,12 @@ msgstr "" "makefiles propios (o en otras herramientas de construcción)." #. (itstool) path: example/title -#: C/index.docbook:949 +#: C/index.docbook:955 msgid "Documentation build steps" msgstr "Pasos de construcción de la documentación" #. (itstool) path: example/programlisting -#: C/index.docbook:950 +#: C/index.docbook:956 #, no-wrap msgid "" "\n" @@ -1495,7 +1498,7 @@ msgstr "" "gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html\n" #. (itstool) path: sect1/para -#: C/index.docbook:964 +#: C/index.docbook:970 msgid "" "One will need to look at the Makefile.am and " "gtk-doc.mak to pick the extra options needed." @@ -1504,12 +1507,12 @@ msgstr "" "doc.mak para elegir las opciones adicionales necesarias." #. (itstool) path: sect1/title -#: C/index.docbook:971 +#: C/index.docbook:977 msgid "Integration with version control systems" msgstr "Integración con los sistemas de control de versiones" #. (itstool) path: sect1/para -#: C/index.docbook:973 +#: C/index.docbook:979 msgid "" "As a rule of thumb, it's the files you edit which should go under version " "control. For typical projects it's these files: <package>." @@ -1524,7 +1527,7 @@ msgstr "" "txt, Makefile.am." #. (itstool) path: sect1/para -#: C/index.docbook:981 +#: C/index.docbook:987 msgid "" "Files in the xml/ and html/ " "directories should not go under version control. Neither should any of the " @@ -1535,12 +1538,12 @@ msgstr "" "los archivos .stamp." #. (itstool) path: chapter/title -#: C/index.docbook:991 +#: C/index.docbook:997 msgid "Documenting the code" msgstr "Documentar el código" #. (itstool) path: chapter/para -#: C/index.docbook:993 +#: C/index.docbook:999 msgid "" "GTK-Doc uses source code comment with a special syntax for code " "documentation. Further it retrieves information about your project structure " @@ -1553,12 +1556,12 @@ msgstr "" "acerca de la sintaxis de los comentarios." #. (itstool) path: example/title -#: C/index.docbook:1004 C/index.docbook:1030 +#: C/index.docbook:1010 C/index.docbook:1036 msgid "GTK-Doc comment block" msgstr "Bloque de comentario de GTK-Doc" #. (itstool) path: example/programlisting -#: C/index.docbook:1005 +#: C/index.docbook:1011 #, no-wrap msgid "" "\n" @@ -1572,7 +1575,7 @@ msgstr "" "#endif\n" #. (itstool) path: chapter/para -#: C/index.docbook:1000 +#: C/index.docbook:1006 #, fuzzy #| msgid "" #| "The scanner can handle the majority of C headers fine. In the case of " @@ -1588,12 +1591,12 @@ msgstr "" "GTK-Doc que los omita. <_:example-1/>" #. (itstool) path: note/title -#: C/index.docbook:1014 +#: C/index.docbook:1020 msgid "Limitations" msgstr "Limitaciones" #. (itstool) path: note/para -#: C/index.docbook:1015 +#: C/index.docbook:1021 msgid "" "Note, that GTK-Doc's supports #ifndef(__GTK_DOC_IGNORE__) but " "not #if !defined(__GTK_DOC_IGNORE__) or other combinations." @@ -1602,12 +1605,12 @@ msgstr "" "pero #if !defined(__GTK_DOC_IGNORE__) u otras combinaciones." #. (itstool) path: sect1/title -#: C/index.docbook:1025 +#: C/index.docbook:1031 msgid "Documentation comments" msgstr "Comentarios de la documentación" #. (itstool) path: example/programlisting -#: C/index.docbook:1031 +#: C/index.docbook:1037 #, no-wrap msgid "" "\n" @@ -1623,7 +1626,7 @@ msgstr "" " */\n" #. (itstool) path: sect1/para -#: C/index.docbook:1027 +#: C/index.docbook:1033 msgid "" "A multiline comment that starts with an additional '*' marks a documentation " "block that will be processed by the GTK-Doc tools. <_:example-1/>" @@ -1632,7 +1635,7 @@ msgstr "" "bloque de documentación que GTK-Doc tools procesarán. <_:example-1/>" #. (itstool) path: sect1/para -#: C/index.docbook:1040 +#: C/index.docbook:1046 msgid "" "The 'identifier' is one line with the name of the item the comment is " "related to. The syntax differs a little depending on the item. (TODO add " @@ -1643,7 +1646,7 @@ msgstr "" "hacer: añadir una tabla mostrando los identificadores)" #. (itstool) path: sect1/para -#: C/index.docbook:1046 +#: C/index.docbook:1052 msgid "" "The 'documentation' block is also different for each symbol type. Symbol " "types that get parameters such as functions or macros have the parameter " @@ -1663,7 +1666,7 @@ msgstr "" "espacio). Esto es útil para texto preformateado (listados de código)." #. (itstool) path: listitem/para -#: C/index.docbook:1063 +#: C/index.docbook:1069 msgid "" "What it is: The name for a class or function can sometimes be misleading for " "people coming from a different background." @@ -1672,24 +1675,24 @@ msgstr "" "personas que provengan de otros entornos." #. (itstool) path: listitem/para -#: C/index.docbook:1069 +#: C/index.docbook:1075 msgid "" "What it does: Tell about common uses. Put it in relation with the other API." msgstr "Qué hace: indique los usos comunes, en relación con las otras API." #. (itstool) path: tip/para -#: C/index.docbook:1059 +#: C/index.docbook:1065 msgid "When documenting code, describe two aspects: <_:itemizedlist-1/>" msgstr "Al documentar código, describa dos aspectos: <_:itemizedlist-1/>" #. (itstool) path: listitem/para -#: C/index.docbook:1084 +#: C/index.docbook:1090 msgid "Use function() to refer to functions or macros which take arguments." msgstr "" "Use función() para referirse a funciones o macros que toman argumentos." #. (itstool) path: listitem/para -#: C/index.docbook:1089 +#: C/index.docbook:1095 msgid "" "Use @param to refer to parameters. Also use this when referring to " "parameters of other functions, related to the one being described." @@ -1698,12 +1701,12 @@ msgstr "" "parámetros de otras funciones, relacionados al que se describe." #. (itstool) path: listitem/para -#: C/index.docbook:1095 +#: C/index.docbook:1101 msgid "Use %constant to refer to a constant, e.g. %G_TRAVERSE_LEAFS." msgstr "Use %constant para referirse a una constante, ej: %G_TRAVERSE_LEAFS." #. (itstool) path: listitem/para -#: C/index.docbook:1100 +#: C/index.docbook:1106 msgid "" "Use #symbol to refer to other types of symbol, e.g. structs and enums and " "macros which don't take arguments." @@ -1712,17 +1715,17 @@ msgstr "" "estructuras, enumeraciones y macros que no toman argumentos." #. (itstool) path: listitem/para -#: C/index.docbook:1106 +#: C/index.docbook:1112 msgid "Use #Object::signal to refer to a GObject signal." msgstr "Use #Object::signal para referirse a una señal de GObject." #. (itstool) path: listitem/para -#: C/index.docbook:1111 +#: C/index.docbook:1117 msgid "Use #Object:property to refer to a GObject property." msgstr "Use #Object:property para referirse a una propiedad de GObject." #. (itstool) path: listitem/para -#: C/index.docbook:1116 +#: C/index.docbook:1122 msgid "" "Use #Struct.field to refer to a field inside a structure and #GObjectClass." "foo_bar() to refer to a vmethod." @@ -1731,7 +1734,7 @@ msgstr "" "#GObjectClass.foo_bar() para referirse a un vmethod." #. (itstool) path: sect1/para -#: C/index.docbook:1078 +#: C/index.docbook:1084 msgid "" "One advantage of hyper-text over plain-text is the ability to have links in " "the document. Writing the correct markup for a link can be tedious though. " @@ -1744,7 +1747,7 @@ msgstr "" "itemizedlist-1/>" #. (itstool) path: tip/para -#: C/index.docbook:1125 +#: C/index.docbook:1131 msgid "" "If you need to use the special characters '<', '>', '()', '@', '%', or " "'#' in your documentation without GTK-Doc changing them you can use the XML " @@ -1759,7 +1762,7 @@ msgstr "" "doble «\\»." #. (itstool) path: sect1/para -#: C/index.docbook:1134 +#: C/index.docbook:1140 msgid "" "DocBook can do more than just links. One can also have lists, examples, " "headings, and images. As of version 1.20, the preferred way is to use a " @@ -1777,7 +1780,7 @@ msgstr "" "elementos de una lista aparecerán como líneas que empiezan con un guión." #. (itstool) path: sect1/para -#: C/index.docbook:1145 +#: C/index.docbook:1151 msgid "" "While markdown is now preferred one can mix both. One limitation here is " "that one can use docbook xml within markdown, but markdown within docbook " @@ -1788,7 +1791,7 @@ msgstr "" "xml no está soportado." #. (itstool) path: sect1/para -#: C/index.docbook:1151 +#: C/index.docbook:1157 msgid "" "In older GTK-Doc releases, if you need support for additional formatting, " "you would need to enable the usage of docbook XML tags inside doc-comments " @@ -1803,12 +1806,12 @@ msgstr "" "Makefile.am." #. (itstool) path: example/title -#: C/index.docbook:1160 +#: C/index.docbook:1166 msgid "GTK-Doc comment block using Markdown" msgstr "Bloque de comentario de GTK-Doc usando marcado" #. (itstool) path: example/programlisting -#: C/index.docbook:1161 +#: C/index.docbook:1167 #, no-wrap msgid "" "\n" @@ -1884,7 +1887,7 @@ msgstr "" " */\n" #. (itstool) path: sect1/para -#: C/index.docbook:1200 +#: C/index.docbook:1206 msgid "" "More examples of what markdown tags are supported can be found in the ." #. (itstool) path: tip/para -#: C/index.docbook:1206 +#: C/index.docbook:1212 #, fuzzy #| msgid "" #| "As already mentioned earlier GTK-Doc is for documenting public API. Thus " @@ -1927,12 +1930,12 @@ msgstr "" "secciones." #. (itstool) path: sect1/title -#: C/index.docbook:1221 +#: C/index.docbook:1227 msgid "Documenting sections" msgstr "Documentar secciones" #. (itstool) path: sect1/para -#: C/index.docbook:1223 +#: C/index.docbook:1229 msgid "" "Each section of the documentation contains information about one class or " "module. To introduce the component one can write a section block. The short " @@ -1945,12 +1948,12 @@ msgstr "" "los campos @ son opcionales." #. (itstool) path: example/title -#: C/index.docbook:1231 +#: C/index.docbook:1237 msgid "Section comment block" msgstr "Bloque de comentarios en una sección" #. (itstool) path: example/programlisting -#: C/index.docbook:1232 +#: C/index.docbook:1238 #, no-wrap msgid "" "\n" @@ -1982,12 +1985,12 @@ msgstr "" " */\n" #. (itstool) path: varlistentry/term -#: C/index.docbook:1251 +#: C/index.docbook:1257 msgid "SECTION:<name>" msgstr "SECCIÓN <nombre>" #. (itstool) path: listitem/para -#: C/index.docbook:1253 +#: C/index.docbook:1259 msgid "" "The name links the section documentation to the respective part in the " "<package>-sections.txt file. The name given here " @@ -2000,12 +2003,12 @@ msgstr "" "archivo <paquete>-sections.txt." #. (itstool) path: varlistentry/term -#: C/index.docbook:1262 +#: C/index.docbook:1268 msgid "@short_description" msgstr "@short_description" #. (itstool) path: listitem/para -#: C/index.docbook:1264 +#: C/index.docbook:1270 msgid "" "A one line description of the section, that later will appear after the " "links in the TOC and at the top of the section page." @@ -2014,12 +2017,12 @@ msgstr "" "TOC y en la página de la sección." #. (itstool) path: varlistentry/term -#: C/index.docbook:1271 +#: C/index.docbook:1277 msgid "@title" msgstr "@title" #. (itstool) path: listitem/para -#: C/index.docbook:1273 +#: C/index.docbook:1279 msgid "" "The section title defaults to <name> from the SECTION declaration. It " "can be overridden with the @title field." @@ -2028,12 +2031,12 @@ msgstr "" "declaración SECTION. Se puede sobrescribir con el campo @title." #. (itstool) path: varlistentry/term -#: C/index.docbook:1280 +#: C/index.docbook:1286 msgid "@section_id" msgstr "@section_id" #. (itstool) path: listitem/para -#: C/index.docbook:1282 +#: C/index.docbook:1288 msgid "" "Overrides the use of title as a section identifier. For GObjects the <" "title> is used as a section_id and for other sections it is <" @@ -2044,22 +2047,22 @@ msgstr "" "para otra sección es <MÓDULO>-<title>." #. (itstool) path: varlistentry/term -#: C/index.docbook:1290 +#: C/index.docbook:1296 msgid "@see_also" msgstr "@see_also" #. (itstool) path: listitem/para -#: C/index.docbook:1292 +#: C/index.docbook:1298 msgid "A list of symbols that are related to this section." msgstr "Una lista de símbolos relacionados con esta sección." #. (itstool) path: varlistentry/term -#: C/index.docbook:1298 +#: C/index.docbook:1304 msgid "@stability" msgstr "@stability" #. (itstool) path: listitem/para -#: C/index.docbook:1305 +#: C/index.docbook:1311 msgid "" "Stable - The intention of a Stable interface is to enable arbitrary third " "parties to develop applications to these interfaces, release them, and have " @@ -2077,7 +2080,7 @@ msgstr "" "de haberlos habrá buenas razones para ello." #. (itstool) path: listitem/para -#: C/index.docbook:1317 +#: C/index.docbook:1323 msgid "" "Unstable - Unstable interfaces are experimental or transitional. They are " "typically used to give outside developers early access to new or rapidly " @@ -2093,7 +2096,7 @@ msgstr "" "publicación menor a la siguiente." #. (itstool) path: listitem/para -#: C/index.docbook:1329 +#: C/index.docbook:1335 msgid "" "Private - An interface that can be used within the GNOME stack itself, but " "that is not documented for end-users. Such functions should only be used in " @@ -2104,7 +2107,7 @@ msgstr "" "deberían usar de formas especificadas y documentadas." #. (itstool) path: listitem/para -#: C/index.docbook:1338 +#: C/index.docbook:1344 msgid "" "Internal - An interface that is internal to a module and does not require " "end-user documentation. Functions that are undocumented are assumed to be " @@ -2115,7 +2118,7 @@ msgstr "" "son internas." #. (itstool) path: listitem/para -#: C/index.docbook:1300 +#: C/index.docbook:1306 msgid "" "An informal description of the stability level this API has. We recommend " "the use of one of these terms: <_:itemizedlist-1/>" @@ -2124,12 +2127,12 @@ msgstr "" "recomienda el uso de uno de estos términos: <_:itemizedlist-1/>" #. (itstool) path: varlistentry/term -#: C/index.docbook:1350 +#: C/index.docbook:1356 msgid "@include" msgstr "@include" #. (itstool) path: listitem/para -#: C/index.docbook:1352 +#: C/index.docbook:1358 msgid "" "The #include files to show in the section synopsis (a " "comma separated list), overriding the global value from the --default-stability argument to " @@ -2258,17 +2261,17 @@ msgstr "" "siguientes valores." #. (itstool) path: variablelist/title -#: C/index.docbook:1430 +#: C/index.docbook:1436 msgid "Stability Tags" msgstr "Etiquetas de estabilidad" #. (itstool) path: varlistentry/term -#: C/index.docbook:1431 +#: C/index.docbook:1437 msgid "Stability: Stable" msgstr "Estabilidad: estable" #. (itstool) path: listitem/para -#: C/index.docbook:1433 +#: C/index.docbook:1439 msgid "" "Mark the element as stable. This is for public APIs which are guaranteed to " "remain stable for all future minor releases of the project." @@ -2278,12 +2281,12 @@ msgstr "" "proyecto." #. (itstool) path: varlistentry/term -#: C/index.docbook:1440 +#: C/index.docbook:1446 msgid "Stability: Unstable" msgstr "Estabilidad: inestable" #. (itstool) path: listitem/para -#: C/index.docbook:1442 +#: C/index.docbook:1448 msgid "" "Mark the element as unstable. This is for public APIs which are released as " "a preview before being stabilised." @@ -2292,12 +2295,12 @@ msgstr "" "publican como versión previa antes de estabilizarse." #. (itstool) path: varlistentry/term -#: C/index.docbook:1448 +#: C/index.docbook:1454 msgid "Stability: Private" msgstr "Estabilidad: privado" #. (itstool) path: listitem/para -#: C/index.docbook:1450 +#: C/index.docbook:1456 msgid "" "Mark the element as private. This is for interfaces which can be used by " "tightly coupled modules, but not by arbitrary third parties." @@ -2306,7 +2309,7 @@ msgstr "" "en módulos fuertemente acoplados, pero no en terceras partes aleatorias." #. (itstool) path: example/programlisting -#: C/index.docbook:1460 +#: C/index.docbook:1466 #, no-wrap msgid "" "\n" @@ -2345,12 +2348,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: example/title -#: C/index.docbook:1480 C/index.docbook:1490 +#: C/index.docbook:1486 C/index.docbook:1496 msgid "Annotations" msgstr "Anotaciones" #. (itstool) path: sect2/para -#: C/index.docbook:1482 +#: C/index.docbook:1488 msgid "" "Documentation blocks can contain annotation-tags. These tags will be " "rendered with tooltips describing their meaning. The tags are used by " @@ -2366,7 +2369,7 @@ msgstr "" "type=\"http\">el wiki." #. (itstool) path: example/programlisting -#: C/index.docbook:1491 +#: C/index.docbook:1497 #, no-wrap msgid "" "\n" @@ -2407,12 +2410,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: example/title -#: C/index.docbook:1512 C/index.docbook:1541 +#: C/index.docbook:1518 C/index.docbook:1547 msgid "Function comment block" msgstr "Bloque de comentario de función" #. (itstool) path: listitem/para -#: C/index.docbook:1518 +#: C/index.docbook:1524 msgid "" "Document whether returned objects, lists, strings, etc, should be freed/" "unrefed/released." @@ -2421,26 +2424,26 @@ msgstr "" "debería liberarse/desreferenciarse/etc." #. (itstool) path: listitem/para -#: C/index.docbook:1524 +#: C/index.docbook:1530 msgid "Document whether parameters can be NULL, and what happens if they are." msgstr "" "El documento, dependiendo de si sus parámetros pueden ser nulos, y qué " "sucede si lo son." #. (itstool) path: listitem/para -#: C/index.docbook:1529 +#: C/index.docbook:1535 msgid "" "Mention interesting pre-conditions and post-conditions where appropriate." msgstr "" "Mencionar precondiciones y postcondiciones interesantes donde sea apropiado." #. (itstool) path: sect2/para -#: C/index.docbook:1514 C/index.docbook:1600 +#: C/index.docbook:1520 C/index.docbook:1606 msgid "Please remember to: <_:itemizedlist-1/>" msgstr "Recuerde: <_:itemizedlist-1/>" #. (itstool) path: sect2/para -#: C/index.docbook:1536 +#: C/index.docbook:1542 msgid "" "Gtk-doc assumes all symbols (macros, functions) starting with '_' are " "private. They are treated like static functions." @@ -2449,7 +2452,7 @@ msgstr "" "«_» son privados. Se tratan como funciones estáticas." #. (itstool) path: example/programlisting -#: C/index.docbook:1542 +#: C/index.docbook:1548 #, no-wrap msgid "" "\n" @@ -2491,27 +2494,27 @@ msgstr "" " */\n" #. (itstool) path: variablelist/title -#: C/index.docbook:1563 +#: C/index.docbook:1569 msgid "Function tags" msgstr "Etiquetas de funciones" #. (itstool) path: varlistentry/term -#: C/index.docbook:1564 C/index.docbook:1771 +#: C/index.docbook:1570 C/index.docbook:1777 msgid "Returns:" msgstr "Devuelve:" #. (itstool) path: listitem/para -#: C/index.docbook:1566 +#: C/index.docbook:1572 msgid "Paragraph describing the returned result." msgstr "Párrafo que describe el resultado devuelto." #. (itstool) path: varlistentry/term -#: C/index.docbook:1571 +#: C/index.docbook:1577 msgid "@...:" msgstr "@...:" #. (itstool) path: listitem/para -#: C/index.docbook:1573 +#: C/index.docbook:1579 msgid "" "In case the function has variadic arguments, you should use this tag " "(@Varargs: does also work for historic reasons)." @@ -2521,12 +2524,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: example/title -#: C/index.docbook:1583 C/index.docbook:1585 +#: C/index.docbook:1589 C/index.docbook:1591 msgid "Property comment block" msgstr "Bloque de comentario de propiedad" #. (itstool) path: example/programlisting -#: C/index.docbook:1586 +#: C/index.docbook:1592 #, no-wrap msgid "" "\n" @@ -2547,12 +2550,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: example/title -#: C/index.docbook:1598 C/index.docbook:1617 +#: C/index.docbook:1604 C/index.docbook:1623 msgid "Signal comment block" msgstr "Bloque de comentario de señal" #. (itstool) path: listitem/para -#: C/index.docbook:1604 +#: C/index.docbook:1610 msgid "" "Document when the signal is emitted and whether it is emitted before or " "after other signals." @@ -2561,12 +2564,12 @@ msgstr "" "otras señales." #. (itstool) path: listitem/para -#: C/index.docbook:1610 +#: C/index.docbook:1616 msgid "Document what an application might do in the signal handler." msgstr "Documentar qué aplicación debe gestionar las señales." #. (itstool) path: example/programlisting -#: C/index.docbook:1618 +#: C/index.docbook:1624 #, no-wrap msgid "" "\n" @@ -2597,12 +2600,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: example/title -#: C/index.docbook:1635 C/index.docbook:1636 +#: C/index.docbook:1641 C/index.docbook:1642 msgid "Struct comment block" msgstr "Bloque de comentario de estructura" #. (itstool) path: example/programlisting -#: C/index.docbook:1637 +#: C/index.docbook:1643 #, no-wrap msgid "" "\n" @@ -2632,7 +2635,7 @@ msgstr "" "} FooWidget;\n" #. (itstool) path: sect2/para -#: C/index.docbook:1652 +#: C/index.docbook:1658 msgid "" "Use /*< private >*/ before the private struct fields you " "want to hide. Use /*< public >*/ for the reverse " @@ -2643,7 +2646,7 @@ msgstr "" "revertir el comportamiento anterior." #. (itstool) path: sect2/para -#: C/index.docbook:1658 +#: C/index.docbook:1664 msgid "" "If the first field is \"g_iface\", \"parent_instance\" or \"parent_class\" " "it will be considered private automatically and doesn't need to be mentioned " @@ -2654,7 +2657,7 @@ msgstr "" "bloque de comentario." #. (itstool) path: sect2/para -#: C/index.docbook:1664 +#: C/index.docbook:1670 msgid "" "Struct comment blocks can also be used for GObjects and GObjectClasses. It " "is usually a good idea to add a comment block for a class, if it has " @@ -2674,12 +2677,12 @@ msgstr "" #. (itstool) path: sect2/title #. (itstool) path: example/title -#: C/index.docbook:1676 C/index.docbook:1677 +#: C/index.docbook:1682 C/index.docbook:1683 msgid "Enum comment block" msgstr "Enumerar bloques de comentarios" #. (itstool) path: example/programlisting -#: C/index.docbook:1678 +#: C/index.docbook:1684 #, no-wrap msgid "" "\n" @@ -2713,7 +2716,7 @@ msgstr "" "} Something;\n" #. (itstool) path: sect2/para -#: C/index.docbook:1695 +#: C/index.docbook:1701 msgid "" "Use /*< private >*/ before the private enum values you " "want to hide. Use /*< public >*/ for the reverse " @@ -2724,12 +2727,12 @@ msgstr "" "comportamiento anterior." #. (itstool) path: sect1/title -#: C/index.docbook:1706 +#: C/index.docbook:1712 msgid "Inline program documentation" msgstr "Documentación en línea del programa" #. (itstool) path: sect1/para -#: C/index.docbook:1707 +#: C/index.docbook:1713 msgid "" "You can document programs and their commandline interface using inline " "documentation." @@ -2738,37 +2741,37 @@ msgstr "" "documentación en línea." #. (itstool) path: variablelist/title -#: C/index.docbook:1713 +#: C/index.docbook:1719 msgid "Tags" msgstr "Etiquetas" #. (itstool) path: varlistentry/term -#: C/index.docbook:1715 +#: C/index.docbook:1721 msgid "PROGRAM" msgstr "PROGRAM" #. (itstool) path: listitem/para -#: C/index.docbook:1718 +#: C/index.docbook:1724 msgid "Defines the start of a program documentation." msgstr "Define el inicio de la documentación de un programa." #. (itstool) path: varlistentry/term -#: C/index.docbook:1725 +#: C/index.docbook:1731 msgid "@short_description:" msgstr "@short_description:" #. (itstool) path: listitem/para -#: C/index.docbook:1727 +#: C/index.docbook:1733 msgid "Defines a short description of the program. (Optional)" msgstr "Define una descripción corta del programa. (Opcional)" #. (itstool) path: varlistentry/term -#: C/index.docbook:1734 +#: C/index.docbook:1740 msgid "@synopsis:" msgstr "@synopsis:" #. (itstool) path: listitem/para -#: C/index.docbook:1736 +#: C/index.docbook:1742 msgid "" "Defines the arguments, or list of arguments that the program can take. " "(Optional)" @@ -2777,54 +2780,54 @@ msgstr "" "(Opcional)" #. (itstool) path: varlistentry/term -#: C/index.docbook:1744 +#: C/index.docbook:1750 msgid "@see_also:" msgstr "@see_also:" #. (itstool) path: listitem/para -#: C/index.docbook:1746 +#: C/index.docbook:1752 msgid "See Also manual page section. (Optional)" msgstr "Página del manual Ver también. (Opcional)" #. (itstool) path: varlistentry/term -#: C/index.docbook:1753 +#: C/index.docbook:1759 msgid "@arg:" msgstr "@arg:" #. (itstool) path: listitem/para -#: C/index.docbook:1755 +#: C/index.docbook:1761 msgid "Argument(s) passed to the program and their description. (Optional)" msgstr "Argumentos pasados al programa y su descripción. (Opcional)" #. (itstool) path: varlistentry/term -#: C/index.docbook:1762 +#: C/index.docbook:1768 msgid "Description:" msgstr "Description:" #. (itstool) path: listitem/para -#: C/index.docbook:1764 +#: C/index.docbook:1770 msgid "A longer description of the program." msgstr "Una descripción más larga del programa." #. (itstool) path: listitem/para -#: C/index.docbook:1773 +#: C/index.docbook:1779 #, fuzzy #| msgid "Specificy what value(s) the program returns. (Optional)" msgid "Specify what value(s) the program returns. (Optional)" msgstr "Especifique qué valores devuelve el programa. (Opcional)" #. (itstool) path: sect2/title -#: C/index.docbook:1782 +#: C/index.docbook:1788 msgid "Example of program documentation." msgstr "Ejemplo de documentación de un programa." #. (itstool) path: example/title -#: C/index.docbook:1783 +#: C/index.docbook:1789 msgid "Program documentation block" msgstr "Bloque de documentación del programa" #. (itstool) path: example/programlisting -#: C/index.docbook:1784 +#: C/index.docbook:1790 #, no-wrap msgid "" "\n" @@ -2868,19 +2871,19 @@ msgstr "" "}\n" #. (itstool) path: sect1/title -#: C/index.docbook:1810 +#: C/index.docbook:1816 msgid "Useful DocBook tags" msgstr "Etiquetas DocBook útiles" #. (itstool) path: sect1/para -#: C/index.docbook:1812 +#: C/index.docbook:1818 msgid "" "Here are some DocBook tags which are most useful when documenting the code." msgstr "" "Aquí están varias etiquetas de DocBook muy útiles al documentar código." #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1821 +#: C/index.docbook:1827 #, no-wrap msgid "" "\n" @@ -2890,7 +2893,7 @@ msgstr "" "<link linkend=\"glib-Hash-Tables\">Hash Tables</link>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1817 +#: C/index.docbook:1823 msgid "" "To link to another section in the GTK docs: <_:informalexample-1/> The " "linkend is the SGML/XML id on the top item of the page you want to link to. " @@ -2906,7 +2909,7 @@ msgstr "" "ajustarse a SGML/XML." #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1834 +#: C/index.docbook:1840 #, no-wrap msgid "" "\n" @@ -2916,7 +2919,7 @@ msgstr "" "<function>...</function>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1831 +#: C/index.docbook:1837 msgid "" "To refer to an external function, e.g. a standard C function: <_:" "informalexample-1/>" @@ -2925,13 +2928,21 @@ msgstr "" "informalexample-1/>" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1843 +#: C/index.docbook:1849 #, no-wrap +#| msgid "" +#| "\n" +#| "<example>\n" +#| " <title>Using a GHashTable.</title>\n" +#| " <programlisting>\n" +#| " ...\n" +#| " </programlisting>\n" +#| "</example>\n" msgid "" "\n" "<example>\n" " <title>Using a GHashTable.</title>\n" -" <programlisting>\n" +" <programlisting language=\"C\">\n" " ...\n" " </programlisting>\n" "</example>\n" @@ -2939,42 +2950,70 @@ msgstr "" "\n" "<example>\n" " <title>Using a GHashTable.</title>\n" -" <programlisting>\n" +" <programlisting language=\"C\">\n" " ...\n" " </programlisting>\n" "</example>\n" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1854 +#: C/index.docbook:1860 #, no-wrap +#| msgid "" +#| "\n" +#| "<informalexample>\n" +#| " <programlisting>\n" +#| " ...\n" +#| " </programlisting>\n" +#| "</informalexample>\n" msgid "" "\n" "<informalexample>\n" -" <programlisting>\n" +" <programlisting language=\"C\">\n" " ...\n" " </programlisting>\n" "</informalexample>\n" msgstr "" "\n" "<informalexample>\n" -" <programlisting>\n" +" <programlisting language=\"C\">\n" " ...\n" " </programlisting>\n" "</informalexample>\n" +#. (itstool) path: informalexample/programlisting +#: C/index.docbook:1872 +#, no-wrap +msgid "" +"\n" +"|[<!-- language=\"C\" -->\n" +" ...\n" +"]|\n" +msgstr "" +"\n" +"|[<!-- language=\"C\" -->\n" +" ...\n" +"]|\n" + #. (itstool) path: sect1/para -#: C/index.docbook:1840 +#: C/index.docbook:1846 +#, fuzzy +#| msgid "" +#| "To include example code: <_:informalexample-1/> or possibly this, for " +#| "very short code fragments which don't need a title: <_:informalexample-2/" +#| "> For the latter GTK-Doc also supports an abbreviation: |[ ... ]|" msgid "" "To include example code: <_:informalexample-1/> or possibly this, for very " -"short code fragments which don't need a title: <_:informalexample-2/> For " -"the latter GTK-Doc also supports an abbreviation: |[ ... ]|" +"short code fragments which don't need a title: <_:informalexample-2/> In " +"both cases, the language attribute is optional and is used as a hint to the " +"syntax highlighting engine (pygments for html output). For the latter GTK-" +"Doc also supports an abbreviation: <_:informalexample-3/>" msgstr "" "Para incluir un código de ejemplo: <_:informalexample-1/> o posiblemente " "este, para fragmentos de código muy cortos que no necesitan título: <_:" "informalexample-2/>. El último GTK-Doc también soporta abreviación: |[ ... ]|" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1873 +#: C/index.docbook:1883 #, no-wrap msgid "" "\n" @@ -3006,12 +3045,12 @@ msgstr "" "</itemizedlist>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1870 +#: C/index.docbook:1880 msgid "To include bulleted lists: <_:informalexample-1/>" msgstr "Para incluir listas de topos: <_:informalexample-1/>" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1893 +#: C/index.docbook:1903 #, no-wrap msgid "" "\n" @@ -3029,13 +3068,13 @@ msgstr "" "</note>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1890 +#: C/index.docbook:1900 msgid "" "To include a note which stands out from the text: <_:informalexample-1/>" msgstr "Para incluir una nota que sobresale del texto: <_:informalexample-1/>" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1906 +#: C/index.docbook:1916 #, no-wrap msgid "" "\n" @@ -3045,12 +3084,12 @@ msgstr "" "<type>unsigned char</type>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1903 +#: C/index.docbook:1913 msgid "To refer to a type: <_:informalexample-1/>" msgstr "Para referirse a un tipo: <_:informalexample-1/>" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1915 +#: C/index.docbook:1925 #, no-wrap msgid "" "\n" @@ -3060,7 +3099,7 @@ msgstr "" "<structname>XFontStruct</structname>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1912 +#: C/index.docbook:1922 msgid "" "To refer to an external structure (not one described in the GTK docs): <_:" "informalexample-1/>" @@ -3069,7 +3108,7 @@ msgstr "" "de GTK): <_:informalexample-1/>" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1924 +#: C/index.docbook:1934 #, no-wrap msgid "" "\n" @@ -3079,12 +3118,12 @@ msgstr "" "<structfield>len</structfield>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1921 +#: C/index.docbook:1931 msgid "To refer to a field of a structure: <_:informalexample-1/>" msgstr "Para referirse a un campo o a una estructura: <_:informalexample-1/>" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1933 +#: C/index.docbook:1943 #, no-wrap msgid "" "\n" @@ -3094,7 +3133,7 @@ msgstr "" "<classname>GtkWidget</classname>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1930 +#: C/index.docbook:1940 msgid "" "To refer to a class name, we could possibly use: <_:informalexample-1/> but " "you'll probably be using #GtkWidget instead (to automatically create a link " @@ -3107,7 +3146,7 @@ msgstr "" "\"documenting_syntax\">abreviaciones)." #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1944 +#: C/index.docbook:1954 #, no-wrap msgid "" "\n" @@ -3117,12 +3156,12 @@ msgstr "" "<emphasis>This is important</emphasis>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1941 +#: C/index.docbook:1951 msgid "To emphasize text: <_:informalexample-1/>" msgstr "Para enfatizar un texto: <_:informalexample-1/>" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1953 +#: C/index.docbook:1963 #, no-wrap msgid "" "\n" @@ -3132,12 +3171,12 @@ msgstr "" "<filename>/home/user/documents</filename>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1950 +#: C/index.docbook:1960 msgid "For filenames use: <_:informalexample-1/>" msgstr "Para uso de nombres de archivo: <_:informalexample-1/>" #. (itstool) path: informalexample/programlisting -#: C/index.docbook:1962 +#: C/index.docbook:1972 #, no-wrap msgid "" "\n" @@ -3147,17 +3186,17 @@ msgstr "" "<keycombo><keycap>Control</keycap><keycap>L</keycap></keycombo>\n" #. (itstool) path: sect1/para -#: C/index.docbook:1959 +#: C/index.docbook:1969 msgid "To refer to keys use: <_:informalexample-1/>" msgstr "Para referirse a claves: <_:informalexample-1/>" #. (itstool) path: chapter/title -#: C/index.docbook:1972 +#: C/index.docbook:1982 msgid "Filling the extra files" msgstr "Rellenar campos adicionales" #. (itstool) path: chapter/para -#: C/index.docbook:1974 +#: C/index.docbook:1984 msgid "" "There are a couple of extra files, that need to be maintained along with the " "inline source code comments: <package>.types, " @@ -3170,12 +3209,12 @@ msgstr "" "pasado) y <paquete>-sections.txt." #. (itstool) path: sect1/title -#: C/index.docbook:1983 +#: C/index.docbook:1993 msgid "Editing the types file" msgstr "Editar los tipos de archivo" #. (itstool) path: sect1/para -#: C/index.docbook:1985 +#: C/index.docbook:1995 msgid "" "If your library or application includes GObjects, you want their signals, " "arguments/parameters and position in the hierarchy to be shown in the " @@ -3190,13 +3229,12 @@ msgstr "" "<paquete>.types." #. (itstool) path: example/title -#: C/index.docbook:1994 -#| msgid "<package>.types" +#: C/index.docbook:2004 msgid "Example <package>.types file" msgstr "Ejemplo de archivo <paquete>.tipos" #. (itstool) path: example/programlisting -#: C/index.docbook:1995 +#: C/index.docbook:2005 #, no-wrap msgid "" "\n" @@ -3216,7 +3254,7 @@ msgstr "" "gtk_arrow_get_type\n" #. (itstool) path: sect1/para -#: C/index.docbook:2006 +#: C/index.docbook:2016 msgid "" "Since GTK-Doc 1.8 gtkdoc-scan can generate this " "list for you. Just add \"--rebuild-types\" to SCAN_OPTIONS in " @@ -3229,12 +3267,12 @@ msgstr "" "los tipos de archivo ni tenerlos bajo el control de versiones." #. (itstool) path: sect1/title -#: C/index.docbook:2015 +#: C/index.docbook:2025 msgid "Editing the master document" msgstr "Editar la sección maestra del documento" #. (itstool) path: sect1/para -#: C/index.docbook:2017 +#: C/index.docbook:2027 msgid "" "GTK-Doc produces documentation in DocBook SGML/XML. When processing the " "inline source comments, the GTK-Doc tools generate one documentation page " @@ -3247,7 +3285,7 @@ msgstr "" "documento maestro las incluye y ordena." #. (itstool) path: sect1/para -#: C/index.docbook:2024 +#: C/index.docbook:2034 msgid "" "While GTK-Doc creates a template master document for you, later runs will " "not touch it again. This means that one can freely structure the " @@ -3264,7 +3302,7 @@ msgstr "" "vez en cuando para ver si se han introducido algunas mejoras." #. (itstool) path: tip/para -#: C/index.docbook:2034 +#: C/index.docbook:2044 msgid "" "Do not create tutorials as extra documents. Just write extra chapters. The " "benefit of directly embedding the tutorial for your library into the API " @@ -3279,7 +3317,7 @@ msgstr "" "el tutorial junto con la biblioteca son mayores." #. (itstool) path: sect1/para -#: C/index.docbook:2043 +#: C/index.docbook:2053 msgid "" "So what are the things to change inside the master document? For a start is " "only a little. There are some placeholders (text in square brackets) there " @@ -3290,12 +3328,12 @@ msgstr "" "que habría que encargarse." #. (itstool) path: example/title -#: C/index.docbook:2050 +#: C/index.docbook:2060 msgid "Master document header" msgstr "Cabecera del documento maestro" #. (itstool) path: example/programlisting -#: C/index.docbook:2051 +#: C/index.docbook:2061 #, no-wrap msgid "" "\n" @@ -3325,7 +3363,7 @@ msgstr "" " <title>[Insert title here]</title>\n" #. (itstool) path: sect1/para -#: C/index.docbook:2067 +#: C/index.docbook:2077 msgid "" "In addition a few option elements are created in commented form. You can " "review these and enable them as you like." @@ -3334,12 +3372,12 @@ msgstr "" "Puede revisarlos y activarlos como quiera." #. (itstool) path: example/title -#: C/index.docbook:2073 +#: C/index.docbook:2083 msgid "Optional part in the master document" msgstr "Parte opcional en el documento maestro" #. (itstool) path: example/programlisting -#: C/index.docbook:2074 +#: C/index.docbook:2084 #, no-wrap msgid "" "\n" @@ -3353,7 +3391,7 @@ msgstr "" " --> \n" #. (itstool) path: sect1/para -#: C/index.docbook:2082 +#: C/index.docbook:2092 msgid "" "Finally you need to add new section whenever you introduce one. The gtkdoc-check tool will remind " @@ -3365,12 +3403,12 @@ msgstr "" "todavía en la documentación." #. (itstool) path: example/title -#: C/index.docbook:2090 C/index.docbook:2125 +#: C/index.docbook:2100 C/index.docbook:2135 msgid "Including generated sections" msgstr "Incluir secciones generadas" #. (itstool) path: example/programlisting -#: C/index.docbook:2091 +#: C/index.docbook:2101 #, no-wrap msgid "" "\n" @@ -3386,12 +3424,12 @@ msgstr "" " ...\n" #. (itstool) path: sect1/title -#: C/index.docbook:2103 +#: C/index.docbook:2113 msgid "Editing the section file" msgstr "Editar el archivo de sección" #. (itstool) path: sect1/para -#: C/index.docbook:2105 +#: C/index.docbook:2115 msgid "" "The section file is used to organise the documentation output by GTK-Doc. " "Here one specifies which symbol belongs to which module or class and control " @@ -3402,7 +3440,7 @@ msgstr "" "y el control de la visibilidad (pública o privada)." #. (itstool) path: sect1/para -#: C/index.docbook:2111 +#: C/index.docbook:2121 msgid "" "The section file is a plain text file with tags delimiting sections. Blank " "lines are ignored and lines starting with a '#' are treated as comment lines." @@ -3412,7 +3450,7 @@ msgstr "" "comiencen con «#» se tratan como comentarios." #. (itstool) path: note/para -#: C/index.docbook:2118 +#: C/index.docbook:2128 msgid "" "While the tags make the file look like xml, it is not. Please do not close " "tags like <SUBSECTION>." @@ -3421,7 +3459,7 @@ msgstr "" "etiquetas del tipo <SUBSECTION>." #. (itstool) path: example/programlisting -#: C/index.docbook:2126 +#: C/index.docbook:2136 #, no-wrap msgid "" "\n" @@ -3453,7 +3491,7 @@ msgstr "" "</SECTION>\n" #. (itstool) path: sect1/para -#: C/index.docbook:2143 +#: C/index.docbook:2153 msgid "" "The <FILE> ... </FILE> tag is used to specify the file name, " "without any suffix. For example, using '<FILE>gnome-config</" @@ -3476,7 +3514,7 @@ msgstr "" "clase de GObject convertido a minúscula.)" #. (itstool) path: sect1/para -#: C/index.docbook:2155 +#: C/index.docbook:2165 msgid "" "The <TITLE> ... </TITLE> tag is used to specify the title of the " "section. It is only useful before the templates (if used) are initially " @@ -3490,7 +3528,7 @@ msgstr "" "obsoleto." #. (itstool) path: sect1/para -#: C/index.docbook:2162 +#: C/index.docbook:2172 msgid "" "You can group items in the section by using the <SUBSECTION> tag. " "Currently it outputs a blank line between subsections in the synopsis " @@ -3520,7 +3558,7 @@ msgstr "" "públicas (variables, vmethods)." #. (itstool) path: sect1/para -#: C/index.docbook:2181 +#: C/index.docbook:2191 msgid "" "You can also use <INCLUDE> ... </INCLUDE> to specify the " "#include files which are shown in the synopsis sections. It contains a comma-" @@ -3536,12 +3574,12 @@ msgstr "" "a esa sección." #. (itstool) path: chapter/title -#: C/index.docbook:2195 +#: C/index.docbook:2205 msgid "Controlling the result" msgstr "Controlar el resultado" #. (itstool) path: chapter/para -#: C/index.docbook:2197 +#: C/index.docbook:2207 msgid "" "A GTK-Doc run generates report files inside the documentation directory. The " "generated files are named: <package>-undocumented.txt<package>-undocumented.txt file starts with " "the documentation coverage summary. Below are two sections divided by blank " @@ -3572,7 +3610,7 @@ msgstr "" "documentación pero dónde; p.e. se ha añadido un parámetro nuevo." #. (itstool) path: chapter/para -#: C/index.docbook:2215 +#: C/index.docbook:2225 msgid "" "The <package>-undeclared.txt file lists symbols " "given in the <package>-sections.txt but not found " @@ -3584,7 +3622,7 @@ msgstr "" "eliminado o no se han escrito correctamente." #. (itstool) path: chapter/para -#: C/index.docbook:2222 +#: C/index.docbook:2232 msgid "" "The <package>-unused.txt file lists symbol names, " "where the GTK-Doc scanner has found documentation, but does not know where " @@ -3597,7 +3635,7 @@ msgstr "" "todavía al archivo <paquete>-sections.txt." #. (itstool) path: tip/para -#: C/index.docbook:2230 +#: C/index.docbook:2240 msgid "" "Enable or add the line in Makefile." "am. If at least GTK-Doc 1.9 is installed, this will run sanity checks during " @@ -3608,7 +3646,7 @@ msgstr "" "de integridad durante la ejecución de make check." #. (itstool) path: chapter/para -#: C/index.docbook:2237 +#: C/index.docbook:2247 msgid "" "One can also look at the files produced by the source code scanner: " "<package>-decl-list.txt and <" @@ -3625,7 +3663,7 @@ msgstr "" "si este archivo lo contiene." #. (itstool) path: chapter/para -#: C/index.docbook:2246 +#: C/index.docbook:2256 msgid "" "If the project is GObject based, one can also look into the files produced " "by the object scanner: <package>.args.txt, " @@ -3646,12 +3684,12 @@ msgstr "" "ejecutándolo como GTK_DOC_KEEP_INTERMEDIATE=1 make." #. (itstool) path: chapter/title -#: C/index.docbook:2261 +#: C/index.docbook:2271 msgid "Modernizing the documentation" msgstr "Modernizar la documentación" #. (itstool) path: chapter/para -#: C/index.docbook:2263 +#: C/index.docbook:2273 msgid "" "GTK-Doc has been around for quite some time. In this section we list new " "features together with the version since when it is available." @@ -3660,12 +3698,12 @@ msgstr "" "características nuevas junto con la versión desde la que están disponibles." #. (itstool) path: sect1/title -#: C/index.docbook:2269 +#: C/index.docbook:2279 msgid "GTK-Doc 1.9" msgstr "GTK-Doc 1.9" #. (itstool) path: sect1/para -#: C/index.docbook:2271 +#: C/index.docbook:2281 msgid "" "When using xml instead of sgml, one can actually name the master document " "<package>-docs.xml." @@ -3674,7 +3712,7 @@ msgstr "" "maestro <paquete>-docs.xml." #. (itstool) path: sect1/para -#: C/index.docbook:2276 +#: C/index.docbook:2286 msgid "" "This version supports in " "Makefile.am. When this is enabled, the <" @@ -3695,7 +3733,7 @@ msgstr "" "paquete>-decl-list.txt <paquete>-sections.txt." #. (itstool) path: sect1/para -#: C/index.docbook:2287 +#: C/index.docbook:2297 msgid "" "Version 1.8 already introduced the syntax for documenting sections in the " "sources instead of the separate files under configure.ac y lo tendrá hecho." #. (itstool) path: sect1/title -#: C/index.docbook:2299 +#: C/index.docbook:2309 msgid "GTK-Doc 1.10" msgstr "GTK-Doc 1.10" #. (itstool) path: sect1/para -#: C/index.docbook:2301 +#: C/index.docbook:2311 msgid "" "This version supports in " "Makefile.am. When this is enabled, the <" @@ -3740,17 +3778,17 @@ msgstr "" "condicional." #. (itstool) path: sect1/title -#: C/index.docbook:2312 +#: C/index.docbook:2322 msgid "GTK-Doc 1.16" msgstr "GTK-Doc 1.16" #. (itstool) path: example/title -#: C/index.docbook:2318 +#: C/index.docbook:2328 msgid "Enable gtkdoc-check" msgstr "Activar gtkdoc-check" #. (itstool) path: example/programlisting -#: C/index.docbook:2319 +#: C/index.docbook:2329 #, no-wrap msgid "" "\n" @@ -3770,7 +3808,7 @@ msgstr "" "endif\n" #. (itstool) path: sect1/para -#: C/index.docbook:2314 +#: C/index.docbook:2324 msgid "" "This version includes a new tool called gtkdoc-check. This tool can run a " "set of sanity checks on your documentation. It is enabled by adding these " @@ -3782,12 +3820,12 @@ msgstr "" "archivo Makefile.am. <_:example-1/>" #. (itstool) path: sect1/title -#: C/index.docbook:2332 +#: C/index.docbook:2342 msgid "GTK-Doc 1.20" msgstr "GTK-Doc 1.20" #. (itstool) path: sect1/para -#: C/index.docbook:2334 +#: C/index.docbook:2344 msgid "" "Version 1.18 brought some initial markdown support. Using markdown in doc " "comments is less intrusive than writing docbook xml. This version improves a " @@ -3801,17 +3839,17 @@ msgstr "" "comentarios contiene todos los detalles." #. (itstool) path: sect1/title -#: C/index.docbook:2344 +#: C/index.docbook:2354 msgid "GTK-Doc 1.25" msgstr "GTK-Doc 1.25" #. (itstool) path: example/title -#: C/index.docbook:2355 +#: C/index.docbook:2365 msgid "Use pre-generated entities" msgstr "Usar entidades generadas previamenet" #. (itstool) path: example/programlisting -#: C/index.docbook:2356 +#: C/index.docbook:2366 #, no-wrap msgid "" "\n" @@ -3853,7 +3891,7 @@ msgstr "" " </bookinfo>\n" #. (itstool) path: sect1/para -#: C/index.docbook:2346 +#: C/index.docbook:2356 #, fuzzy #| msgid "" #| "The makefiles shipped with this version generate an entity file at " @@ -3882,12 +3920,12 @@ msgstr "" "archivos XML generados. <_:example-1/>" #. (itstool) path: chapter/title -#: C/index.docbook:2381 +#: C/index.docbook:2391 msgid "Documenting other interfaces" msgstr "Documentar otras interfaces" #. (itstool) path: chapter/para -#: C/index.docbook:2383 +#: C/index.docbook:2393 msgid "" "So far we have been using GTK-Doc to document the API of code. The next " "sections contain suggestions how the tools can be used to document other " @@ -3898,12 +3936,12 @@ msgstr "" "herramientas para documentar otras interfaces." #. (itstool) path: sect1/title -#: C/index.docbook:2390 +#: C/index.docbook:2400 msgid "Command line options and man pages" msgstr "Opciones de la línea de comandos y páginas man" #. (itstool) path: sect1/para -#: C/index.docbook:2392 +#: C/index.docbook:2402 msgid "" "As one can generate man pages for a docbook refentry as well, it sounds like " "a good idea to use it for that purpose. This way the interface is part of " @@ -3914,12 +3952,12 @@ msgstr "" "interfaz es parte de la referencia y se obtienen las páginas man sin trabajo." #. (itstool) path: sect2/title -#: C/index.docbook:2399 +#: C/index.docbook:2409 msgid "Document the tool" msgstr "Documentar la herramienta" #. (itstool) path: sect2/para -#: C/index.docbook:2401 +#: C/index.docbook:2411 msgid "" "Create one refentry file per tool. Following our example we would call it meep/" @@ -3934,17 +3972,17 @@ msgstr "" "así como los ejemplos en, por ejemplo, glib." #. (itstool) path: sect2/title -#: C/index.docbook:2411 +#: C/index.docbook:2421 msgid "Adding the extra configure check" msgstr "Añadir la comprobación de configuración adicional" #. (itstool) path: example/title -#: C/index.docbook:2414 C/index.docbook:2432 +#: C/index.docbook:2424 C/index.docbook:2442 msgid "Extra configure checks" msgstr "Comprobaciones de configuración adicionales" #. (itstool) path: example/programlisting -#: C/index.docbook:2415 +#: C/index.docbook:2425 #, no-wrap msgid "" "\n" @@ -3966,12 +4004,12 @@ msgstr "" "AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)\n" #. (itstool) path: sect2/title -#: C/index.docbook:2429 +#: C/index.docbook:2439 msgid "Adding the extra makefile rules" msgstr "Añadir reglas de makefile adicionales" #. (itstool) path: example/programlisting -#: C/index.docbook:2433 +#: C/index.docbook:2443 #, no-wrap msgid "" "\n" @@ -4007,12 +4045,12 @@ msgstr "" "EXTRA_DIST += meep.xml\n" #. (itstool) path: sect1/title -#: C/index.docbook:2455 +#: C/index.docbook:2465 msgid "DBus interfaces" msgstr "Interfaces de DBus" #. (itstool) path: sect1/para -#: C/index.docbook:2457 +#: C/index.docbook:2467 msgid "" "(FIXME: http://hal.freedesktop.org/docs/DeviceKit/DeviceKit.html, http://" "cgit.freedesktop.org/DeviceKit/DeviceKit/tree/doc/dbus)" @@ -4021,27 +4059,27 @@ msgstr "" "cgit.freedesktop.org/DeviceKit/DeviceKit/tree/doc/dbus)" #. (itstool) path: chapter/title -#: C/index.docbook:2466 +#: C/index.docbook:2476 msgid "Frequently asked questions" msgstr "Preguntas más frecuentes" #. (itstool) path: segmentedlist/segtitle -#: C/index.docbook:2470 +#: C/index.docbook:2480 msgid "Question" msgstr "Pregunta" #. (itstool) path: segmentedlist/segtitle -#: C/index.docbook:2471 +#: C/index.docbook:2481 msgid "Answer" msgstr "Respuesta" #. (itstool) path: seglistitem/seg -#: C/index.docbook:2473 +#: C/index.docbook:2483 msgid "No class hierarchy." msgstr "Sin jerarquía de clases." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2474 +#: C/index.docbook:2484 msgid "" "The objects xxx_get_type() function has not been " "entered into the <package>.types file." @@ -4050,12 +4088,12 @@ msgstr "" "introducido en el archivo <package>.types." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2480 +#: C/index.docbook:2490 msgid "Still no class hierarchy." msgstr "Aún sin jerarquía de clases." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2481 +#: C/index.docbook:2491 msgid "" "Missing or wrong naming in <package>-sections.txt " "file (see explicación)." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2487 +#: C/index.docbook:2497 msgid "Damn, I have still no class hierarchy." msgstr "Maldición, aún no hay una jerarquía de clases." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2488 +#: C/index.docbook:2498 msgid "" "Is the object name (name of the instance struct, e.g. GtkWidget) part of the normal section (don't put this into Standard or Private " @@ -4082,12 +4120,12 @@ msgstr "" "Estándar o Privado)." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2495 +#: C/index.docbook:2505 msgid "No symbol index." msgstr "Sin índice de símbolos." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2496 +#: C/index.docbook:2506 msgid "" "Does the <package>-docs.{xml,sgml} contain a " "index that xi:includes the generated index?" @@ -4096,12 +4134,12 @@ msgstr "" "«xi:includes» el índice generado?" #. (itstool) path: seglistitem/seg -#: C/index.docbook:2502 +#: C/index.docbook:2512 msgid "Symbols are not linked to their doc-section." msgstr "Los símbolos no se enlazan con su sección en el documento." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2503 +#: C/index.docbook:2513 msgid "" "Is the doc-comment using the correct markup (added #,% or ())? Check if the " "gtkdoc-fixxref warns about unresolvable xrefs." @@ -4110,12 +4148,12 @@ msgstr "" "si gtk-doc-fixxref avisa de alguna referencia xref sin resolver." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2509 +#: C/index.docbook:2519 msgid "A new class does not appear in the docs." msgstr "Una clase nueva no aparece en la documentación." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2510 +#: C/index.docbook:2520 msgid "" "Is the new page xi:included from <package>-docs.{xml,sgml}." @@ -4124,12 +4162,12 @@ msgstr "" "sgml}." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2516 +#: C/index.docbook:2526 msgid "A new symbol does not appear in the docs." msgstr "Un símbolo nuevo no aparece en la documentación." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2517 +#: C/index.docbook:2527 msgid "" "Is the doc-comment properly formatted. Check for spelling mistakes in the " "begin of the comment. Check if the gtkdoc-fixxref warns about unresolvable " @@ -4143,12 +4181,12 @@ msgstr "" "txt en una subsección pública." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2525 +#: C/index.docbook:2535 msgid "A type is missing from the class hierarchy." msgstr "Falta un tipo en la clase de jerarquías" #. (itstool) path: seglistitem/seg -#: C/index.docbook:2526 +#: C/index.docbook:2536 msgid "" "If the type is listed in <package>.hierarchy but " "not in xml/tree_index.sgml then double check that the " @@ -4164,14 +4202,14 @@ msgstr "" "privada." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2535 +#: C/index.docbook:2545 msgid "I get foldoc links for all gobject annotations." msgstr "" "Obtengo enlaces de seguimiento de documentos para todas las anotaciones " "gobject." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2536 +#: C/index.docbook:2546 msgid "" "Check that xml/annotation-glossary.xml is xi:included " "from <package>-docs.{xml,sgml}." @@ -4180,14 +4218,14 @@ msgstr "" "included» desde <package>-docs.{xml,sgml}." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2544 +#: C/index.docbook:2554 msgid "Parameter described in source code comment block but does not exist" msgstr "" "Parámetro descrito en el bloque de comentarios del código fuente pero no " "existe" #. (itstool) path: seglistitem/seg -#: C/index.docbook:2545 +#: C/index.docbook:2555 msgid "" "Check if the prototype in the header has different parameter names as in the " "source." @@ -4196,12 +4234,12 @@ msgstr "" "diferentes de la fuente." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2550 +#: C/index.docbook:2560 msgid "multiple \"IDs\" for constraint linkend: XYZ" msgstr "múltiples «ID» para la restricción enlazada: XYZ" #. (itstool) path: seglistitem/seg -#: C/index.docbook:2551 +#: C/index.docbook:2561 msgid "" "Symbol XYZ appears twice in <package>-sections.txt file." @@ -4210,7 +4248,7 @@ msgstr "" "sections.txt." #. (itstool) path: seglistitem/seg -#: C/index.docbook:2554 +#: C/index.docbook:2564 msgid "" "Element typename in namespace '' encountered in para, but no template " "matches." @@ -4219,12 +4257,12 @@ msgstr "" "coincide." #. (itstool) path: chapter/title -#: C/index.docbook:2561 +#: C/index.docbook:2571 msgid "Tools related to gtk-doc" msgstr "Herramientas relacionadas con GTK-Doc" #. (itstool) path: chapter/para -#: C/index.docbook:2563 +#: C/index.docbook:2573 msgid "" "GtkDocPlugin - a Trac " "GTK-Doc integration plugin, that adds API docs to a trac site and " @@ -4235,7 +4273,7 @@ msgstr "" "a un sitio «trac» y se integra con la búsqueda de «trac»." #. (itstool) path: chapter/para -#: C/index.docbook:2568 +#: C/index.docbook:2578 msgid "" "Gtkdoc-depscan - a tool (part of gtk-doc) to check used API against since " "tags in the API to determine the minimum required version." @@ -6201,6 +6239,13 @@ msgstr "" "libre que usted elija, como la <_:ulink-1/>, para permitir su uso en " "software libre." +#~ msgid "" +#~ "1.29 28 Aug 2018 ss development" +#~ msgstr "" +#~ "1.29 28 de agosto de 2018 " +#~ "ss desarrollo" + #~ msgid "Setting up your project" #~ msgstr "Configurando su proyecto" diff --git a/help/manual/es/index.docbook b/help/manual/es/index.docbook index 71eb464..bfb1c65 100644 --- a/help/manual/es/index.docbook +++ b/help/manual/es/index.docbook @@ -19,10 +19,7 @@ Proyecto GTK-Doc
gtk-doc-list@gnome.org
2000, 2005 Dan Mueth and Chris Lyttle - - 2007-2019 - Stefan Sauer (Kost) - + 2007-2019 Stefan Sauer (Kost)